#245: mode hidden — hide profile-violating options, mark the hiding #294

Merged
fable-5 merged 1 commits from issue-245-vs-nfd-hidden into main 2026-07-31 19:43:28 +02:00
Collaborator

Third issue of M32, chained on #293 (already merged) — base is current main.

In mode hidden (and enforced, which renders the same, #246): catalog-listed controls whose only purpose is enabling a violation are not rendered while their saved value is compliant (api/mcp/feeds/plugins master switches, the Nextcloud backup block incl. its fieldset); value-listed selects keep only their compliant choices (registration mode, new-page classification default, upload policy, SVG policy). Every affected section shows one accessible policy note (i18n de+en) — policy stays distinguishable from missing features. A value that was already non-compliant is surfaced exactly like in marked, never silently hidden. The API is unchanged.

e2e: the marking pack gains its hidden part — compliant rows disappear (2 of 4 master-switch rows remain), the policy note is visible, the already-violating feeds row keeps its marking, and the whole hidden state passes an axe WCAG A/AA scan. Verified live locally; CI runs it against a second api (VS_NFD_MODE=hidden, same database — mode is env-only, so that is exactly the deploy semantics) behind its own static server on port 5176.

Issue #245 will be closed manually after green CI + merge.

🤖 Generated with Claude Code

https://claude.ai/code/session_01AUtYMxwTCMHG9mVHnwbFg8

Third issue of M32, chained on #293 (already merged) — base is current main. In mode `hidden` (and `enforced`, which renders the same, #246): catalog-listed controls whose only purpose is enabling a violation are not rendered while their saved value is compliant (api/mcp/feeds/plugins master switches, the Nextcloud backup block incl. its fieldset); value-listed selects keep only their compliant choices (registration mode, new-page classification default, upload policy, SVG policy). Every affected section shows one accessible policy note (i18n de+en) — policy stays distinguishable from missing features. A value that was already non-compliant is surfaced exactly like in `marked`, never silently hidden. The API is unchanged. e2e: the marking pack gains its hidden part — compliant rows disappear (2 of 4 master-switch rows remain), the policy note is visible, the already-violating feeds row keeps its marking, and the whole hidden state passes an axe WCAG A/AA scan. **Verified live locally**; CI runs it against a second api (`VS_NFD_MODE=hidden`, same database — mode is env-only, so that is exactly the deploy semantics) behind its own static server on port 5176. Issue #245 will be closed manually after green CI + merge. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01AUtYMxwTCMHG9mVHnwbFg8
fable-5 added 1 commit 2026-07-31 19:11:07 +02:00
#245: mode hidden — hide profile-violating options, mark the hiding
Some checks failed
CI / Lint, typecheck, test (pull_request) Successful in 6m17s
CI / Build container images (pull_request) Successful in 3m58s
CI / Auth e2e pack (pull_request) Failing after 8m26s
CI / Import/export fidelity gate (pull_request) Has been skipped
9b1d4de426
In hidden (and later enforced) mode, catalog-listed controls whose only
purpose is enabling a violation are not rendered while their saved value
is compliant (the four master switches, the Nextcloud backup block);
value-listed selects keep only their compliant choices (registration
mode, new-page classification, upload policy, SVG policy). Every
affected section shows one accessible policy note (i18n de+en) so
policy is distinguishable from missing features. A value that was
already violating is surfaced exactly like in marked — never silently
hidden. The API stays unchanged; enforcement is #246. e2e: hidden half
of the marking pack (rows disappear, note visible, already-violating
row stays marked, axe WCAG A/AA clean) — verified live locally; CI runs
it against a second api (VS_NFD_MODE=hidden, same database) behind its
own static server.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AUtYMxwTCMHG9mVHnwbFg8
fable-5 force-pushed issue-245-vs-nfd-hidden from 9b1d4de426 to 0d95e1304e 2026-07-31 19:27:19 +02:00 Compare
fable-5 merged commit 0d95e1304e into main 2026-07-31 19:43:28 +02:00
Sign in to join this conversation.
No description provided.