#243: VS_NFD_MODE and the machine-readable hardening-profile catalog #292
No reviewers
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#292
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "issue-243-vs-nfd-mode"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
First issue of M32 (chain start; #244–#246 will build on this branch's state).
VS_NFD_MODE(off | marked | hidden | enforced, defaultoff): validated in the shared env schema, passed through compose, documented in.env.example. Deploy-level likeBACKUP_ALLOWED_TARGETS— a compromised Site Admin must not be able to widen it.packages/shared/src/vs-nfd-profile.ts): every profile-relevant setting with a decidable compliant value (equals / upper bound / non-empty) and its hardening-guide section; judgement calls in an explicit advisory list. Fence test parses the guide's reference tables (§1.1/§1.2) and fails when a switch is neither triaged into the catalog nor the advisory list (pattern of the audit-catalogue fence #201).GET /admin/system/vs-nfd-profile(Site-Admin only) reports mode + per-entry verdict + violation count, evaluated against the typed settings registry and the validated env; the admin settings view shows the card whenever the mode is notoff. No UI behaviour beyond display — the treatments are #244 (marked), #245 (hidden), #246 (enforced).offis the default, and why pond-level opt-ins are deliberately absent from the catalog.VS_NFD_MODErow in the same PR (maintenance rule).Tests: shared suite 195 green (incl. new predicate/mode tests), api full suite 99 files / 550 green against a fresh DB (incl. the new fence and the e2e endpoint pack: admin-only, truthful verdict, verdict follows a settings change).
Issue #243 will be closed manually after green CI + merge.
🤖 Generated with Claude Code
https://claude.ai/code/session_01AUtYMxwTCMHG9mVHnwbFg8