[Feature] Enforce temporal, purpose-aware, and institutional case governance #6

Closed
opened 2026-08-24 19:47:37 +02:00 by zemion · 1 comment
Owner

Outcome

Restricted cases require an exact declared access purpose; historical case reads continue to use current authorization; and case actions preserve explicit tenant, organization, function, acting/delegation, and source context.

This is the next module-owned adoption slice under GovOPlaN/govoplan#40. Retention remains contract-only until Cases owns or consumes explicit schedules, legal holds, and disposition gates.

Acceptance criteria

  • Restricted-case grants carry bounded exact purposes and every read/write/share/decision/evidence path evaluates one.
  • Search and provider access use stable documented purposes.
  • Historical revisions never restore expired or removed access.
  • Institutional context is validated, persisted per revision, and exposed in user/admin documentation.
  • Search, DSAR, UI, and administrator workflows reflect the purpose policy without leaking restricted cases.
  • Manifest claims name executable evidence; targeted and workspace checks pass.
## Outcome Restricted cases require an exact declared access purpose; historical case reads continue to use current authorization; and case actions preserve explicit tenant, organization, function, acting/delegation, and source context. This is the next module-owned adoption slice under `GovOPlaN/govoplan#40`. Retention remains contract-only until Cases owns or consumes explicit schedules, legal holds, and disposition gates. ## Acceptance criteria - Restricted-case grants carry bounded exact purposes and every read/write/share/decision/evidence path evaluates one. - Search and provider access use stable documented purposes. - Historical revisions never restore expired or removed access. - Institutional context is validated, persisted per revision, and exposed in user/admin documentation. - Search, DSAR, UI, and administrator workflows reflect the purpose policy without leaking restricted cases. - Manifest claims name executable evidence; targeted and workspace checks pass.
Author
Owner

Implemented and published in Cases v0.1.23.

  • Cases commit 17415d8 and tag v0.1.23; workspace composition commit 1cec4ee.
  • Restricted grants now carry bounded allowed_purposes; account, identity, membership, group, role, function, assignment, organization-unit, service-account, and delegation subjects are supported.
  • List, detail, history, timeline, update/share, evidence, formal Decision, Search, and Records-source paths reauthorize the exact action and purpose. Missing or different purposes fail closed, and current grants govern historical reads.
  • cases.casework is the interactive default, Search uses cases.search, and Records forwards its declared filing purpose. Lifecycle timeline entries preserve the evaluated purpose.
  • Migration a7c4e2f9b1d6 upgrades existing grants safely; bilingual UI/help and module documentation explain the policy. Temporal, purpose-aware, and institutional governance are now declared enforced. Retention deliberately remains contract_only with the schedule/legal-hold/disposition limitation recorded.

Verification: Cases 40 passed, 4 subtests; manifest registry 72/72, governance aggregate enforced=7, contract_only=281; full focused workspace gate passed, including 63 WebUI module permutations and 13 Playwright conformance tests.

Implemented and published in Cases v0.1.23. - Cases commit `17415d8` and tag `v0.1.23`; workspace composition commit `1cec4ee`. - Restricted grants now carry bounded `allowed_purposes`; account, identity, membership, group, role, function, assignment, organization-unit, service-account, and delegation subjects are supported. - List, detail, history, timeline, update/share, evidence, formal Decision, Search, and Records-source paths reauthorize the exact action and purpose. Missing or different purposes fail closed, and current grants govern historical reads. - `cases.casework` is the interactive default, Search uses `cases.search`, and Records forwards its declared filing purpose. Lifecycle timeline entries preserve the evaluated purpose. - Migration `a7c4e2f9b1d6` upgrades existing grants safely; bilingual UI/help and module documentation explain the policy. Temporal, purpose-aware, and institutional governance are now declared enforced. Retention deliberately remains `contract_only` with the schedule/legal-hold/disposition limitation recorded. Verification: Cases `40 passed, 4 subtests`; manifest registry `72/72`, governance aggregate `enforced=7`, `contract_only=281`; full focused workspace gate passed, including 63 WebUI module permutations and 13 Playwright conformance tests.
zemion removed the
status
in-progress
label 2026-08-24 20:28:30 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-cases#6