---
id: FAS-CRM-ACT-03
feature: FEAT-CRM-ACT-03
product_area: crm
module: activities-tasks
revision: 1
status: proposed
product_intent: proposed
source_sha:
  services-crm: a8d1364f1dd44b723bb5f9acba12f983e9ec8d69
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  rhythm-v2-docs: 18a49edf30ee6bda18b159b65a2b91e093ea713d
capabilities:
- CAP-CRM-ACT-010
- CAP-CRM-ACT-011
- CAP-CRM-ACT-012
- CAP-CRM-ACT-013
- CAP-CRM-ACT-014
- CAP-CRM-ACT-015
scenarios:
- id: FAS-CRM-ACT-03-01
  title: Manage personal work through the task screen
  kind: behaviour
  exercises:
  - CAP-CRM-ACT-010
  - CAP-CRM-ACT-012
  - CAP-CRM-ACT-014
  relies_on:
  - ATS-CRM-ACT-010-04
  - ATS-CRM-ACT-012-01
  - ATS-CRM-ACT-014-01
  preconditions: The run owns a task type, queue and invited teammate.
  steps:
  - do: Create work in the task screen and assign the teammate.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-014
    provenance: test
    source: react-console:e2e/dev/tasks.dev.spec.ts
  - do: Find it in Assigned by Me and inspect its drawer and direct API read.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-014
    provenance: test
    source: react-console:e2e/dev/tasks.dev.spec.ts
  expected: The view identifies the created task and the read confirms its holder, type and supported
    details.
  negative: false
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to:
  - TST-CRM-ACT-079
  provenance: test
  source: react-console:e2e/dev/tasks.dev.spec.ts
- id: FAS-CRM-ACT-03-02
  title: Claim and release shared overdue work
  kind: interaction
  exercises:
  - CAP-CRM-ACT-012
  - CAP-CRM-ACT-013
  - CAP-CRM-ACT-014
  - CAP-CRM-ACT-015
  relies_on:
  - ATS-CRM-ACT-012-06
  - ATS-CRM-ACT-013-04
  - ATS-CRM-ACT-015-02
  preconditions: An overdue queued task also carries a candidate role and publishing is enabled.
  steps:
  - do: Find queued work, claim it without holding the role and inspect the attention audience.
    exercises:
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-013
    - CAP-CRM-ACT-014
    - CAP-CRM-ACT-015
    provenance: proposed
    source: services-crm:modules/tasks/services/persistence/tasks.ts
  - do: Release it and inspect queue arrival, candidate role and shared audience.
    exercises:
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-013
    - CAP-CRM-ACT-014
    - CAP-CRM-ACT-015
    provenance: proposed
    source: services-crm:modules/tasks/services/persistence/tasks.ts
  expected: The same task returns to shared work with its original arrival; attention follows the holder
    and then the queue responsibility.
  negative: false
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to: []
  provenance: proposed
  source: services-crm:modules/tasks/services/persistence/tasks.ts
- id: FAS-CRM-ACT-03-03
  title: Complete visible work through the console
  kind: lifecycle
  exercises: &id001
  - CAP-CRM-ACT-010
  - CAP-CRM-ACT-011
  - CAP-CRM-ACT-014
  relies_on:
  - ATS-CRM-ACT-011-03
  - ATS-CRM-ACT-014-03
  preconditions: A run-owned task is open and visible to an updater.
  steps:
  - do: Complete an open task from its task-list action.
    exercises: *id001
    provenance: test
    source: react-console:e2e/dev/tasks.dev.spec.ts
  - do: Read the stored task, inspect its list status and find it in Completed.
    exercises: *id001
    provenance: test
    source: react-console:e2e/dev/tasks.dev.spec.ts
  expected: The stored task is Completed and names the completing user; the row no longer offers Complete
    and the Completed view contains it.
  negative: false
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to:
  - TST-CRM-ACT-079
  provenance: test
  source: react-console:e2e/dev/tasks.dev.spec.ts
  binding_note: The bound console suite asserts completion and completing user, but does not execute reopening
    or assert the completion instant.
- id: FAS-CRM-ACT-03-04
  title: Keep read-only work access separate from mutation
  kind: permission
  exercises:
  - CAP-CRM-ACT-010
  - CAP-CRM-ACT-011
  - CAP-CRM-ACT-012
  - CAP-CRM-ACT-014
  relies_on:
  - ATS-CRM-ACT-014-03
  - ATS-CRM-ACT-019-04
  preconditions: Read-only, contributor and administrator personas access the same task.
  steps:
  - do: Read the task, then attempt editing, claim and deletion with each persona.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-011
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-014
    provenance: test
    source: react-console:acceptance/crm/playwright/journeys/cross-application/CRM-ACC-0716.spec.ts
  - do: Inspect the corresponding console actions.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-011
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-014
    provenance: test
    source: react-console:acceptance/crm/playwright/journeys/cross-application/CRM-ACC-0716.spec.ts
  expected: Reads and actions follow task authority; forbidden mutations preserve the record.
  negative: true
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to:
  - TST-CRM-ACT-060
  provenance: test
  source: react-console:acceptance/crm/playwright/journeys/cross-application/CRM-ACC-0716.spec.ts
- id: FAS-CRM-ACT-03-05
  title: Select one holder in competing shared-work claims
  kind: regression
  exercises:
  - CAP-CRM-ACT-012
  - CAP-CRM-ACT-013
  relies_on:
  - ATS-CRM-ACT-012-06
  - ATS-CRM-ACT-013-03
  preconditions: Several users can claim queued work and two users hold a role offered separate work.
  steps:
  - do: Race queued claims, then race role-only claims.
    exercises:
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-013
    provenance: test
    source: services-crm:modules/tasks/tests/integration/services/persistence/tasks.concurrency.integration.spec.js
  - do: Read each task and the losing replies.
    exercises:
    - CAP-CRM-ACT-012
    - CAP-CRM-ACT-013
    provenance: test
    source: services-crm:modules/tasks/tests/integration/services/persistence/tasks.concurrency.integration.spec.js
  expected: Each task has one holder; losing claimants receive a conflict that identifies the winner.
  negative: false
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to:
  - TST-CRM-ACT-024
  provenance: test
  source: services-crm:modules/tasks/tests/integration/services/persistence/tasks.concurrency.integration.spec.js
- id: FAS-CRM-ACT-03-06
  title: Resolve attention on closure and republish after reopening
  kind: interaction
  exercises:
  - CAP-CRM-ACT-010
  - CAP-CRM-ACT-011
  - CAP-CRM-ACT-015
  relies_on:
  - ATS-CRM-ACT-015-04
  - ATS-CRM-ACT-011-06
  preconditions: Enabled local attention fixtures hold an open overdue task.
  steps:
  - do: Complete the task and inspect attention.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-011
    - CAP-CRM-ACT-015
    provenance: test
    source: services-crm:modules/tasks/tests/integration/services/persistence/task-attention-items.integration.spec.js
  - do: Reopen it and inspect its next attention generation.
    exercises:
    - CAP-CRM-ACT-010
    - CAP-CRM-ACT-011
    - CAP-CRM-ACT-015
    provenance: test
    source: services-crm:modules/tasks/tests/integration/services/persistence/task-attention-items.integration.spec.js
  expected: Closing resolves the item and reopening overdue work publishes a new generation.
  negative: false
  data_needs: Run-owned records, classifications and users; isolated workspace for lifecycle or calendar
    changes.
  bound_to:
  - TST-CRM-ACT-018
  provenance: test
  source: services-crm:modules/tasks/tests/integration/services/persistence/task-attention-items.integration.spec.js
evidence:
- Pinned capability test specifications, related workflows and the scenario-specific code or suite sources.
coverage_findings:
- FND-CRM-ACT-056
- FND-CRM-ACT-057
- FND-CRM-ACT-058
- FND-CRM-ACT-059
- FND-CRM-ACT-060
- FND-CRM-ACT-061
---

# Managing Task Work: Feature Acceptance Suite

## What the Feature Must Do as a Whole

The feature acceptance checks follow personal and shared work across discovery, routing, progress and overdue attention. Role-offered work and general task views retain their separate access and discovery contracts.

## Interactions Between Capabilities

Claims change task holders and overdue audiences, while closure changes list placement and attention standing. Combined queue and role routing receives its own interaction case.

## Regression Record

| Revision | Change | Scenario | Why |
|---|---|---|---|
| 1 | initial | all | Establish cumulative acceptance across the feature and its related capabilities. |
