[Feature] Add encryption custodian and recovery administration UI #4

Closed
opened 2026-08-02 04:12:42 +02:00 by zemion · 2 comments
Owner

Context

The provider-neutral vault, envelope, migration, rotation, disable-preflight, destruction, and recovery APIs are intentionally usable headlessly, but the high-assurance custodian operations need a governed administration surface. This UI gap was identified by GovOPlaN #26.

Acceptance criteria

  • Add permission-aware vault/key-version status and envelope reconciliation views without exposing key material.
  • Surface rotation, revocation, destruction, migration, and disable preflight with explicit consequences and confirmations.
  • Add recovery request/decision views that explain quorum, distinct-custodian, assurance, expiry, and post-recovery obligations.
  • Keep content-owner actions in owning modules and preserve headless provider contracts.
  • Cover unavailable providers, stale revisions, repeated requests, quorum failures, and module disable permutations.
  • Update security/administrator documentation and endpoint-surface declarations.
## Context The provider-neutral vault, envelope, migration, rotation, disable-preflight, destruction, and recovery APIs are intentionally usable headlessly, but the high-assurance custodian operations need a governed administration surface. This UI gap was identified by GovOPlaN #26. ## Acceptance criteria - Add permission-aware vault/key-version status and envelope reconciliation views without exposing key material. - Surface rotation, revocation, destruction, migration, and disable preflight with explicit consequences and confirmations. - Add recovery request/decision views that explain quorum, distinct-custodian, assurance, expiry, and post-recovery obligations. - Keep content-owner actions in owning modules and preserve headless provider contracts. - Cover unavailable providers, stale revisions, repeated requests, quorum failures, and module disable permutations. - Update security/administrator documentation and endpoint-surface declarations.
Author
Owner

Closure audit (2026-08-03)

The provider-neutral vault, envelope, key lifecycle, migration, disable-preflight, destruction, and recovery command APIs are implemented. This issue is not yet closable and is larger than a panel-only task: the module has no WebUI package, and its backend lacks bounded list/query APIs for vaults, migrations, and recoveries, so an administrator cannot discover work safely.

Shortest closure path:

  1. Add permission-filtered list/detail projections with revision/action-state data and no key material.
  2. Scaffold the Encryption WebUI and admin contributions.
  3. Implement vault/key reconciliation, lifecycle confirmations, migration, disable preflight, and recovery/quorum views.
  4. Complete this after Identity Trust #2 so assurance/device provenance can be explained rather than duplicated.
## Closure audit (2026-08-03) The provider-neutral vault, envelope, key lifecycle, migration, disable-preflight, destruction, and recovery command APIs are implemented. This issue is **not yet closable** and is larger than a panel-only task: the module has no WebUI package, and its backend lacks bounded list/query APIs for vaults, migrations, and recoveries, so an administrator cannot discover work safely. Shortest closure path: 1. Add permission-filtered list/detail projections with revision/action-state data and no key material. 2. Scaffold the Encryption WebUI and admin contributions. 3. Implement vault/key reconciliation, lifecycle confirmations, migration, disable preflight, and recovery/quorum views. 4. Complete this after Identity Trust #2 so assurance/device provenance can be explained rather than duplicated.
Author
Owner

Codex State: done

Summary

  • Added tenant-scoped, bounded, secret-free vault, envelope, migration, and recovery read models.
  • Added governed lifecycle, migration, recovery quorum, and disable-preflight administration using shared platform components.
  • Full envelope registration and migration outcome attestation remain intentionally headless and owned by feature modules/workers.

Changed Files

  • govoplan-encryption ba92d8b; govoplan-core 14351b0; govoplan 1a68565

Verification

  • 15 module tests, Ruff, manifest registry, endpoint inventory, Core WebUI production build, and all-module PostgreSQL startup smoke passed.
## Codex State: done ### Summary - Added tenant-scoped, bounded, secret-free vault, envelope, migration, and recovery read models. - Added governed lifecycle, migration, recovery quorum, and disable-preflight administration using shared platform components. - Full envelope registration and migration outcome attestation remain intentionally headless and owned by feature modules/workers. ### Changed Files - `govoplan-encryption ba92d8b; govoplan-core 14351b0; govoplan 1a68565` ### Verification - `15 module tests, Ruff, manifest registry, endpoint inventory, Core WebUI production build, and all-module PostgreSQL startup smoke passed.`
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-encryption#4