ATS-PFM-ELG-013 Assign accountability for an area of work: Capability Test Specification
Markdown Design / Platform / Eligibility, Responsibilities and Attention / Responsibility Coverage / Capability Test Specification Show evidence (sources, provenance, origins, pinned commits)Coverage Rule gap: FND-PFM-ELG-065 Transition gap: FND-PFM-ELG-065 Validation covered Permission gap: FND-PFM-ELG-065 Edge covered Failure gap: FND-PFM-ELG-065 Boundary covered Concurrency gap: FND-PFM-ELG-065 Invariant gap: FND-PFM-ELG-065 Interaction covered Test Scenarios 17 scenarios proving CAP-PFM-ELG-013 ; 14 bound to an existing test.
01 Keep accountability outside access checks invariant unit test
Proves BR-CAP-PFM-ELG-013-01 INV-DOM-PFM-ELG-004-01 Preconditions Authorization source and package files are available. Steps Scan imports, table references and deliberately planted violations. Expected No responsibility dependency exists, and planted imports, reads or calls fail the guard. Data No fixtures beyond the described setup. Bound to Source services-platform:tests/unit/responsibilities-not-in-authorization.spec.ts #imports nothing of the responsibilities module into the authorizer or the grant slice, and names none of its tables 05 Reject identical active holding duplicates invariant api negative test
Proves BR-CAP-PFM-ELG-013-05 INV-DOM-PFM-ELG-004-02 Preconditions Pat already holds unit batch posting. Steps Repeat the same holding as a backup with identical validity endpoints, vary its scope, end and recreate it, then race two identical creates. Expected The identical duplicate is refused, another scope remains valid, ending permits recreation and the identical-create race leaves one holding. Data No fixtures beyond the described setup. Bound to Source services-platform:modules/responsibilities/tests/e2e/responsibilities.e2e.spec.js #refuses a second identical active assignment, 409 already_assigned 06 Replay assignment requests edge api test
Proves BR-CAP-PFM-ELG-013-06 INV-DOM-PFM-ELG-004-04 Preconditions An idempotency key identifies a creation. Steps Repeat its body, replay after ending and reuse it with a different body. Expected Replays return the original without writes and changed bodies fail; the key is absent from responses. Data No fixtures beyond the described setup. Bound to Source services-platform:modules/responsibilities/tests/e2e/responsibilities.e2e.spec.js #answers a replay of the same Idempotency-Key and body with the first assignment, same id 11 Resolve scope and fallback rule api test
Proves BR-CAP-PFM-ELG-013-12 Preconditions A unit primary, broader holding, backup, delegate and fallback exist. Steps Resolve held and unheld scopes with normal and always coverage. Expected Specific primaries lead, wider coverage follows policy, delegates identify cover and fallback supplies unheld areas. Data No fixtures beyond the described setup. Bound to Source services-platform:modules/responsibilities/tests/e2e/responsibilities.e2e.spec.js #answers the holders at a scope chain, the unit’s primary first 12 Notify affected people selectively rule api test
Proves BR-CAP-PFM-ELG-013-13 Preconditions A manager can assign a colleague or self. Steps Assign both and a default, then end the colleague before its notice is read. Expected The colleague receives creation and ending notices and the unread first notice is withdrawn; self-action and defaults create none. Data No fixtures beyond the described setup. Bound to Source services-platform:modules/responsibilities/tests/e2e/responsibilities-notifications.e2e.spec.js #puts the assignment in the person’s inbox and nothing in the administrator’s, who made it 17 Expose unequal overlapping periods as a contract discrepancy edge api negative proposed
Proves INV-DOM-PFM-ELG-004-02 BR-CAP-PFM-ELG-013-05 Preconditions One active direct holding covers a bounded period. Steps Create another holding for the same person, area and scope with different endpoints inside that period. Expected The current database permits two rows, exposing the unresolved discrepancy with the broader planned overlap guard. Data Run-owned fixtures, separate caller contexts and a controlled clock where required. Source services-platform:modules/responsibilities/db/responsibility-assignments.table.ts :responsibility_assignments_live_holder_uidx ← Previous Capability Test Specification ATS-PFM-ELG-012 · Monitor eligibility failures and delays: Capability Test Specification Next Capability Test Specification → ATS-PFM-ELG-014 · Arrange temporary responsibility cover: Capability Test Specification