01must proveProposed | A new task can be offered by custom role identifier or built-in role key, but cannot be created both assigned to a person and offered to a role. origin: Andrew 2026-10-18 (role claim), recorded at services-crm:docs/workstreams/crm-tasks-role-claim.md no proof recorded yet | validation | service, database | test |
02must proveProposed | Claiming an unqueued role offer requires Platform to confirm the caller holds that role for the workspace; a non-holder receives Forbidden and leaves the offer unchanged. origin: Andrew 2026-10-18 (role claim), recorded at services-crm:docs/workstreams/crm-tasks-role-claim.md no proof recorded yet | permission | service | test |
03must proveProposed | Concurrent role-holder claims produce one winner and conflicts naming that winner for later claimants. origin: Andrew 2026-10-18 (role claim), recorded at services-crm:docs/workstreams/crm-tasks-role-claim.md no proof recorded yet | invariant | service | test |
04must proveProposed | Claim preserves the candidate role, and release makes the task available to that role again. origin: Andrew 2026-10-18 (role claim), recorded at services-crm:docs/workstreams/crm-tasks-role-claim.md no proof recorded yet | policy | service | test |
05must proveProposed | Reassignment to a different person clears the role offer, while removing the current holder retains it. no proof recorded yet | policy | service | test |
06Proposed | Queued tasks use queue claim rules regardless of any candidate role, so a task updater need not hold that role to claim them. | policy | service | test |
07must proveProposed | The offered list returns unassigned open tasks outside queues for the user’s roles, ordered oldest first and paged with a maximum of 200 items. no proof recorded yet | policy | api, service | test |
08Proposed | Ordinary task replacement preserves the candidate role. | policy | service | test |
09must proveProposed | The console has no role-offer creation control or offered-to-me task view. no proof recorded yet | policy | console | unknown |
10must proveProposed | Role-offer creation checks reference syntax without verifying that the role exists for the customer. no proof recorded yet | validation | service | observed |
11must proveProposed | Offered-task listing omits an active-user check, allowing a service to obtain offers for a user Platform would prevent from claiming. no proof recorded yet | policy | service | documented |
12must proveProposed | Role claims pass no related-record resource and therefore use workspace-wide or customer-wide role holdings. no proof recorded yet | permission | service | observed |