Migrate Addresses interface patterns

This commit is contained in:
2026-08-03 13:40:34 +02:00
parent 2c421022d4
commit f9a7185ce3
7 changed files with 384 additions and 35 deletions
+35
View File
@@ -0,0 +1,35 @@
# Addresses Interface Pattern Migration
This migration applies the GovOPlaN interface pattern language to the Address
Book route, source tree, contact directory/detail workspace, governance facts,
imports, synchronization, quality review, and reversible merge operations.
## Surface Inventory
| Surface | Archetype | Consequence class | Contract |
| --- | --- | --- | --- |
| `/address-book` source tree | Governed directory | Select, create, archive, restore, import, or connect source | Shared loading/empty/error, permission, read-only, help, and destructive confirmation states |
| Contact list/detail | Directory/list-detail | Inspect, create, revise, archive, restore, export, or add to list | Server pagination, stable selection, contextual contact semantics, and guarded drafts |
| Address-list editor/membership | Reference collection editor | Group reusable contact points | Same-book constraint, duplicate explanation, read-only provenance, and retained references |
| Communication governance | Effective-policy fact editor | Allow, suppress, prefer, or end a channel fact | Effective dates, legal/evidence context, required permissions, and retained history |
| CardDAV/LDAP/import/sync | External-provider operation | Preview and apply bounded external change | Explicit authority/direction, credentials, diagnostics, conflicts, stale state, and outcome evidence |
| Quality and merge | Governed correction workflow | Record quality, merge, undo, or split | Required reason, chosen survivor/field provenance, confirmation, redirects, and reversible evidence |
## Consequence And Availability Rules
- User, group, tenant, and authorized system scopes determine discovery and
management authority. Visible inherited or external sources can be read-only.
- Address lists group contact points in one address book. Cross-module reusable
recipient expansion remains owned by Distribution Lists.
- Archive/delete actions are confirmed and preserve governed history according
to retention. External-source disconnect retains local contacts but removes
source diagnostics and conflict state as explicitly stated.
- Imports and synchronization separate preview from apply; incomplete external
reads never infer deletions.
- Merge and communication-governance operations append auditable evidence and
never silently erase prior state.
Backend and WebUI manifests publish matching route/section/action surfaces.
English and German catalogues include the owned interaction vocabulary; major
object drafts are guarded, and optional modules remain behind declared
capabilities rather than private imports.