[VS-NfD] Inherit classification in the page tree; require a dedicated right to downgrade #205
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#205
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
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?
Plan reference:
20-massnahmenplan.md-> P1-2ADR: ADR 0022
Effort: M (3 AT)
Depends on: #204
Context
A subpage of a classified page must not silently be unclassified — that is
how classified content escapes marking in practice. Downgrading is the
sensitive direction and needs its own right plus an audit record.
Current state
parentIdwith a max depth of 6 enforced in the service,cycles rejected at write time (
apps/api/prisma/schema.prisma:255–266);trashed pages keep
parentIdand purge promotes children explicitly.apps/api/src/permissions/(deny-wins, default-closed) — the place to add a capability rather than
an ad-hoc check.
Acceptance criteria
page moved under a higher-classified parent is raised.
capability expressed in the central permission model, never an ad-hoc
check.
page.
(proven by test), including the purge-promotes-children path.
the capability, lower audited with the capability.
docs/architecture/permissions.mddocuments the capability.Out of scope
Output marking, and a UI for bulk re-classification.
Done in PR #264 (commit
488d0d0, CI run 539 green, fast-forward merged on Stefan's standing merge instruction).Evidence: