01must proveConfirmed | Responsibility holdings confer no access rights and remain outside authorization reads. | invariant | service | test |
02must proveConfirmed | The responsibility catalogue includes Platform areas and licensed applications’ areas, with readable scope-kind names. | policy | service | test |
03must proveConfirmed | Reading responsibilities requires the baseline read permission, while assigning, ending and removing holdings requires sensitive management authority. | permission | api | test |
04must proveConfirmed | Assignments accept one active customer console user or role at an allowed resource or workspace scope, rejecting teams, multiple subjects, unsupported scopes and foreign-customer users. | validation | api, service, database | test |
05must proveConfirmed | A holder has one assignment per area, scope and overlapping validity period regardless of primary or backup designation, including concurrent attempts; other scopes, holders and nonoverlapping or ended periods remain valid. | invariant | service, database | test |
06must proveConfirmed | Repeating an assignment’s idempotency key with the same body returns the existing assignment; reusing it with another body is rejected without a write. | policy | api, service, database | test |
07must proveConfirmed | An assignment can begin later and contributes no effective holding before that time, with its end required to follow its start. | validation | service, database | test |
08must proveConfirmed | Ending a direct assignment at the read version also ends its delegations atomically; derived holdings reject manual ending and role defaults use removal instead. | lifecycle | service | test |
09must proveConfirmed | Removing a role default retains a removed history row that reconciliation does not recreate, while a resource-specific role assignment narrows the default there. | lifecycle | service | test |
10must proveConfirmed | A workspace with no assignments receives its role-default holdings on first use before nightly reconciliation. no proof recorded yet | lifecycle | service | documented |
11must proveConfirmed | My Responsibilities presents current holdings and their direct, role, derived or cover origin, with named roles and delegations in both directions. | calculation | service | test |
12must proveConfirmed | Holder resolution selects the deepest primaries, eligible backups at that depth or below, permitted wider cover and delegates, falling back to another area only when no scope holds the requested area. | calculation | database | test |
13must proveConfirmed | Assignment and handover changes notify affected people, excluding self-actions and role defaults, and ending an assignment retracts its unread notice. | policy | service | test |
14must proveConfirmed | Responsibility writes are audited, and assignment lists return 50 entries by default with a maximum of 200. | policy | api, service | test |