ATS-CRM-ACT-012 Assign shared work and claim it from a queue: Capability Test Specification
Markdown Design / CRM / Activities, Follow-ups and Task Work / Managing Task Work / Capability Test Specification Assign shared work and claim it from a queue: Capability Test Specification Coverage Category coverage counts specified proof. Unbound cases remain proposed; registered assertions do not establish a passing run.
Publishing is enabled; overdue work carries a queue and a candidate role. Claim as an updater who does not hold the role, inspect audience, release and inspect routing and attention again.
The interaction scenario names the capabilities and rules it exercises. The coverage finding retains incomplete permission combinations and failure variants.
Show evidence (sources, provenance, origins, pinned commits)Coverage Rule gap: FND-CRM-ACT-058 Transition covered Validation covered Permission gap: FND-CRM-ACT-058 Edge covered Failure covered Boundary gap: FND-CRM-ACT-058 Concurrency covered Invariant covered Interaction covered Test Scenarios 17 scenarios proving CAP-CRM-ACT-012 ; 8 bound to an existing test.
01 Attribute assignment once for an unchanged holder invariant api test
Proves BR-CAP-CRM-ACT-012-01 Preconditions An open task can be assigned. Steps Assign a colleague, repeat that holder and clear assignment. Expected The first assignment stamps persist until clearing removes them. Data Each run creates and isolates the records it needs. Bound to Source services-crm:modules/tasks/tests/e2e/tasks.e2e.spec.js #stamps who holds the task, who gave it to them and when 04 Reject invalid or service holders validation api negative test
Proves BR-CAP-CRM-ACT-012-06 Preconditions An open task accepts user assignment. Steps Supply malformed user and service-principal references. Expected Both are rejected against the holder field. Data Each run creates and isolates the records it needs. Bound to Source services-crm:modules/tasks/tests/e2e/tasks.e2e.spec.js #answers 400 for an assignee that is not a Rhythm user id 11 Persist task routing from Unrouted to Held transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Unrouted standing. The task is unfinished, updates are unlocked and the user reference has the accepted syntax. Steps Assign a user directly, including through ordinary editing. Read the resulting record and affected projections after commit. Expected The resulting task routing has Held standing. Set holder and assignment attribution; enabled attention updates its audience. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/tests/e2e/tasks.e2e.spec.js #stamps who holds the task, who gave it to them and when 12 Persist task routing from Held to Unrouted transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Held standing. The task is unfinished and updates are unlocked. Steps Clear the directly assigned user. Read the resulting record and affected projections after commit. Expected The resulting task routing has Unrouted standing. Remove assignment attribution; enabled attention falls back to workspace administrators. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/services/persistence/tasks.ts :assignmentValues 13 Persist task routing from Unrouted to Queued waiting transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Unrouted standing. The queue exists locally; updates require unfinished and unlocked work. Inactive queues are accepted. Steps Place unheld work in a queue, including on creation. Read the resulting record and affected projections after commit. Expected The resulting task routing has Queued waiting standing. Record arrival at the queue and use queue responsibility for enabled attention. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/tests/integration/services/persistence/tasks.integration.spec.js #moves a task to another queue and re-stamps when it entered, so it joins the back of that one 14 Persist task routing from Queued waiting to Queued claimed transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Queued waiting standing. The conditional write requires an unfinished, unlocked, queued and unheld task, and a user caller. Steps Claim available queued work. Read the resulting record and affected projections after commit. Expected The resulting task routing has Queued claimed standing. Set the caller as holder and assigner while retaining queue arrival. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/tests/integration/services/persistence/tasks.concurrency.integration.spec.js #lets exactly one of them have it 15 Persist task routing from Queued claimed to Queued waiting transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Queued claimed standing. The task is unfinished, update-unlocked, held and queued. Steps Release held queued work. Read the resulting record and affected projections after commit. Expected The resulting task routing has Queued waiting standing. Clear holder and assignment stamps without changing queue arrival. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/tests/integration/services/persistence/tasks.integration.spec.js #leaves the task in its queue, in the place it had: a release is not a re-queue 16 Persist task routing from Queued waiting to Queued claimed transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Queued waiting standing. The task is unfinished and updates are unlocked. Steps Assign a user while retaining the queue. Read the resulting record and affected projections after commit. Expected The resulting task routing has Queued claimed standing. Record assignment attribution without changing its retained queue position. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/services/persistence/tasks.ts :assignTask 17 Persist task routing from Held to Queued claimed transition api proposed
Proves INV-DOM-CRM-ACT-003-03 INV-DOM-CRM-ACT-003-04 INV-DOM-CRM-ACT-003-05 INV-DOM-CRM-ACT-003-06 Preconditions Run-owned task routing has Held standing. The task is unfinished, unlocked and references a local queue. Steps Add a queue while retaining the holder. Read the resulting record and affected projections after commit. Expected The resulting task routing has Queued claimed standing. Stamp arrival in the newly selected queue. Data Run-owned records in an isolated workspace; fixed clock for calendar checks. Source services-crm:modules/tasks/services/persistence/tasks.ts :queueValues ← Previous Capability Test Specification ATS-CRM-ACT-011 · Complete, cancel and reopen work with clear attribution: Capability Test Specification Next Capability Test Specification → ATS-CRM-ACT-013 · Offer work to a security role and reserve it by claim: Capability Test Specification