Files
govoplan-access/docs/INTERFACE_PATTERN_MIGRATION.md
zemion 2d1b1e356e
Module Package Release / publish-packages (push) Successful in 12s
docs(access): add credential lifecycle contextual help
2026-08-21 21:14:31 +02:00

64 lines
4.2 KiB
Markdown

# Access interface pattern migration
This document records the Access-owned surfaces covered by the platform
interface pattern language. Shared primitives remain owned by Core and
optional Mail, Files, Organizations, IDM, and Docs behavior is consumed only
through declared capabilities or metadata.
## Surface inventory
| Surface | Archetype | Authority and state model |
| --- | --- | --- |
| `/admin` tree and unavailable state | Tree-navigated administration workspace | The effective principal and active View determine which branches exist. A missing administration grant is an explained blocker, not an empty route. |
| System and tenant users | Server-authoritative directory plus list/detail editor | Delta reads refresh accounts and memberships. Create, update, assignment, suspension, and final-owner safeguards remain independent permissions. |
| System and tenant roles | Governed definition directory | Built-in and system-managed definitions remain visible but immutable. Assigned roles cannot be deleted. |
| Tenant groups | Governed definition and membership editor | Definition, membership, and role-assignment rights remain independent. Required system groups cannot be deactivated. |
| Tenant API keys | Immutable-secret lifecycle directory | A key is created once, its secret is shown once, and revocation is consequential and confirmed. |
| Function mappings | Governed cross-module mapping editor | Organizations supplies function choices, IDM supplies accepted facts, and Access maps facts to assignable roles. |
| Credential scopes | Adaptive configuration panel | Core owns the reusable credential manager. Access supplies system, tenant, group, and user ownership choices. |
| Mail and Files scope panels | Optional capability host | Access supplies owner selection; the owning module supplies configuration UI. A missing capability names the required module, actor, and destination. |
## Consequence classes
- Reload, inspect, filter, select, and open-help actions are reversible.
- User, group, role, mapping, and credential edits are governed mutations and
expose permission or validation blockers before submission.
- Account or membership deactivation, group deactivation, role deletion,
mapping deletion, API-key revocation, and credential deletion are
consequential actions and use the shared confirmation contract.
- Secret values and temporary passwords are never placed in list rows or
persistent notices. One-time values remain inside dedicated dialogs.
## Interaction evidence
- `WorkspaceLayout`, headerless `PageLayout`, `AdminPageLayout`, `TreeSubnav`,
`DataGrid`, `Dialog`, `ConfirmDialog`,
`TableActionGroup`, `PasswordField`, `ActionBlockerHint`, and
`DocumentationHelpLink` come from Core.
- The administration tree and its contributed panels now share Core-owned pane
sizing, scrolling, content inset, responsive collapse, region labels, and
contextual-help identity; Access no longer carries a raw workspace or page
frame exception.
- Dialog focus trapping and restoration, disabled-action tooltips, keyboard
ordering, responsive grid overflow, and alert semantics therefore inherit
the tested Core behavior.
- All Access-owned labels added by this migration are present in the English
and German module catalogs.
- The WebUI structural test rejects browser-native confirmation calls, private
sibling imports, missing contextual-help references, and unexplained
optional-module blockers.
## Documentation contexts
- `access.workflow.grant-user-access` covers the user, group, and role path.
- `access.reference.admin-access-fields` covers accounts, roles, API keys, and
their backing administration fields.
- `access.workflow.manage-api-keys` owns exact help for accountable ownership,
bounded scopes and expiry, one-time secret custody, and immediate revocation.
- `access.workflow.manage-service-account-credentials` owns exact help for the
account ceiling, activation state, credential rotation/revocation, one-time
secret custody, concurrency, and retirement consequences.
- `access.reference.external-function-role-mappings` explains the
Organizations, IDM, and Access responsibility split.
- Files and Mail blockers link to documentation supplied by the owning module.