ATS-CRM-DQ-007 Review duplicate groups in a shared queue: Capability Test Specification
Markdown Design / CRM / Duplicate Review and Record Merging / Review Suspected Duplicate Records / Capability Test Specification Review duplicate groups in a shared queue: Capability Test Specification Coverage The rule matrix names the authored checks. A covered category means that a scenario exists; it does not report a passing execution. The coverage notes and findings identify missing checks, while execution sources retain the exact assertions inspected.
Required Rule Scenarios BR-CAP-CRM-DQ-007-01ATS-CRM-DQ-007-01 , ATS-CRM-DQ-007-08 , ATS-CRM-DQ-007-09 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-02ATS-CRM-DQ-007-02 , ATS-CRM-DQ-007-08 , ATS-CRM-DQ-007-10 , ATS-CRM-DQ-007-11 , ATS-CRM-DQ-007-12 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-03ATS-CRM-DQ-007-03 , ATS-CRM-DQ-007-09 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-04ATS-CRM-DQ-007-04 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-05ATS-CRM-DQ-007-05 , ATS-CRM-DQ-007-08 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-06ATS-CRM-DQ-007-05 , ATS-CRM-DQ-007-08 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-07ATS-CRM-DQ-007-06 , ATS-CRM-DQ-007-08 , ATS-CRM-DQ-007-15BR-CAP-CRM-DQ-007-09ATS-CRM-DQ-007-07 , ATS-CRM-DQ-007-15
Sort, search surname prefixes and numbers, filter evidence, page and share an opened group. Open a group, dismiss and restore it, follow each returned group identity, then launch its selected records into a merge preview.
These sequences test the handoffs named in the interaction coverage record. A proposed sequence remains unbound until an executable run checks its combined outcome; component assertions alone leave that obligation open.
Show evidence (sources, provenance, origins, pinned commits)Coverage Rule covered Transition covered Validation covered Permission covered Edge covered Failure gap: FND-CRM-DQ-058 Boundary covered Concurrency gap: FND-CRM-DQ-058 Invariant covered Interaction covered Test Scenarios 15 scenarios proving CAP-CRM-DQ-007 ; 10 bound to an existing test.
02 Group identities survive structural changes transition unit test
Proves BR-CAP-CRM-DQ-007-02 Preconditions Start with a two-record group. Steps Grow, split, join and reduce its connected records. Expected Growth keeps identity, the largest split and join contribution retain it and an isolated record removes the group. Data The existing scenario setup supplies the required records. Bound to Source services-crm:modules/duplicates/tests/unit/services/groups/group-components.spec.js #KEEPS the id the group already had, so the console is still looking at the same group 05 Queue parameters reject unsupported requests validation api negative test
Proves BR-CAP-CRM-DQ-007-05 BR-CAP-CRM-DQ-007-06 Preconditions Prepare several groups. Steps Filter and page them, then change sort with an old cursor and supply unknown evidence. Expected Supported filters return matching pages; the incompatible cursor and unknown evidence are refused. Data The existing scenario setup supplies the required records. Bound to Source services-crm:modules/duplicates/tests/e2e/duplicate-groups.e2e.spec.js #answers only the groups of the band asked for or above it 06 Prefix search narrows groups rule api test
Proves BR-CAP-CRM-DQ-007-07 Preconditions Create groups with recognizable record names. Steps Search a valid prefix and an unmatched prefix. Expected Only the first search returns its matching groups. Data The existing scenario setup supplies the required records. Bound to Source services-crm:modules/duplicates/tests/e2e/duplicate-groups.e2e.spec.js #answers only the groups the records of a typed prefix are in, which is the search box 07 Queue access respects authority and existence permission api negative test
Proves BR-CAP-CRM-DQ-007-09 Preconditions Use anonymous and permissionless callers and an absent group identity. Steps List groups and open that group. Expected Unauthorized reads fail and the absent group is not found. Data The existing scenario setup supplies the required records. Bound to Source services-crm:modules/duplicates/tests/e2e/duplicate-groups.e2e.spec.js #refuses the anonymous call, the queue being the tenant’s own 09 Observe none becoming open group after at least two records become connected by open comparisons transition api proposed
Proves BR-CAP-CRM-DQ-007-01 BR-CAP-CRM-DQ-007-03 Preconditions Arrange none standing with the transition guard satisfied: The component must contain two or more records. Steps At least two records become connected by open comparisons. Expected Read the open group standing and inspect the associated changes: store counts, strength and timing; attach the grouped pairs; invoke the held attention seam. Data Fixtures for none, the guard and the affected records; a fixed clock for time-dependent changes. Source services-crm:modules/duplicates/tests/integration/services/detection/duplicate-detection.integration.spec.js #grouped every pair it stored, the groups of a batch being written in the pass’s own transaction (§14) 10 Observe open group becoming open group after comparison changes resize, join or rescore a component transition api proposed
Proves BR-CAP-CRM-DQ-007-02 Preconditions Arrange open group standing with the transition guard satisfied: At least two connected records remain. Steps Comparison changes resize, join or rescore a component. Expected Read the open group standing and inspect the associated changes: choose the prior identity with the largest contribution; recompute counts; flag traversal truncated by the ten-record limit. Data Fixtures for open group, the guard and the affected records; a fixed clock for time-dependent changes. Source services-crm:modules/duplicates/tests/unit/services/groups/group-components.spec.js #keeps the id for the part holding MORE of the group’s records, the other part being a new group 11 Observe open group becoming none after pair changes or record removal leave no component of two records transition api proposed
Proves BR-CAP-CRM-DQ-007-02 Preconditions Arrange open group standing with the transition guard satisfied: No additional permission check occurs during regrouping. Steps Pair changes or record removal leave no component of two records. Expected Read the none standing and inspect the associated changes: delete the empty or undersized group; invoke the held attention resolution. Data Fixtures for open group, the guard and the affected records; a fixed clock for time-dependent changes. Source services-crm:modules/duplicates/services/groups/group-components.ts 12 Observe dismissed group becoming none after the dismissed component loses its final connected pair transition api proposed
Proves BR-CAP-CRM-DQ-007-02 Preconditions Arrange dismissed group standing with the transition guard satisfied: No additional guard applies during regrouping. Steps The dismissed component loses its final connected pair. Expected Read the none standing and inspect the associated changes: remove the dismissed group. Data Fixtures for dismissed group, the guard and the affected records; a fixed clock for time-dependent changes. Source services-crm:modules/duplicates/services/groups/group-components.ts 13 A detection batch publishes its groups with its pairs invariant api test
Proves INV-DOM-CRM-DQ-001-07 Preconditions Two contacts created together in a detection batch. Steps Detect the batch and read each stored comparison and its group assignment. Expected Every stored pair has the expected group membership at the same committed boundary. Data Records, versions and caller contexts owned by the run; transaction failure injection when the invariant concerns rollback. Bound to Source services-crm:modules/duplicates/tests/integration/services/detection/duplicate-detection.integration.spec.js #grouped every pair it stored, the groups of a batch being written in the pass’s own transaction (§14) 14 A bounded group reports the connections it omits invariant unit test
Proves INV-DOM-CRM-DQ-001-08 Preconditions A connected chain containing eleven records. Steps Build the group components and inspect the cut component. Expected The component has no more than ten members and reports its bounded traversal. Data Records, versions and caller contexts owned by the run; transaction failure injection when the invariant concerns rollback. Bound to Source services-crm:modules/duplicates/tests/unit/services/groups/group-components.spec.js #says the group it cut short is bounded, so a reader knows there may be more of it ← Previous Capability Test Specification ATS-CRM-DQ-006 · Reuse a contact during portal registration: Capability Test Specification Next Capability Test Specification → ATS-CRM-DQ-008 · Dismiss false matches and reopen review: Capability Test Specification