---
id: FAS-CRM-DQ-05
feature: FEAT-CRM-DQ-05
product_area: crm
module: data-quality
revision: 1
status: proposed
product_intent: proposed
source_sha:
  services-crm: a8d1364f1dd44b723bb5f9acba12f983e9ec8d69
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  rhythm-v2-docs: 61315bb0538e230286687677da2b04b1d33f162b
capabilities:
  - CAP-CRM-DQ-018
  - CAP-CRM-DQ-019
scenarios:
  - id: FAS-CRM-DQ-05-01
    title: Old identities resolve to an auditable outcome
    kind: behaviour
    exercises:
      - CAP-CRM-DQ-018
      - CAP-CRM-DQ-019
    relies_on:
      - ATS-CRM-DQ-018-04
      - ATS-CRM-DQ-019-02
      - ATS-CRM-DQ-019-04
    preconditions: A run-owned merge has completed and retained its outcome.
    steps: >-
      Read an absorbed identity, follow its destination and inspect merged-from
      history and outcome details.
    expected: >-
      The alias destination and readable retained lineage identify the same
      merge.
    negative: false
    data_needs: >-
      Use an isolated workspace, run-owned records and the permission personas
      described by the scenario. Failures and changed dependent records must be
      supplied by fixtures owned by the run.
    bound_to: []
    provenance: proposed
    source: ATS-CRM-DQ-018-04; ATS-CRM-DQ-019-02; ATS-CRM-DQ-019-04
    execution_gap: FND-CRM-DQ-072
    note: >-
      The capability assertions define the component evidence. No executable
      binding is claimed for this complete feature sequence.
  - id: FAS-CRM-DQ-05-02
    title: A second merge preserves the oldest destination link
    kind: interaction
    exercises:
      - CAP-CRM-DQ-018
      - CAP-CRM-DQ-019
    relies_on:
      - ATS-CRM-DQ-018-02
      - ATS-CRM-DQ-019-03
    preconditions: A survivor already carries an alias from an earlier merge.
    steps: >-
      Merge that survivor into another record and read the oldest identity and
      lineage.
    expected: >-
      The oldest alias reaches the final survivor while retained historical
      identity stays readable.
    negative: false
    data_needs: >-
      Use an isolated workspace, run-owned records and the permission personas
      described by the scenario. Failures and changed dependent records must be
      supplied by fixtures owned by the run.
    bound_to: []
    provenance: proposed
    source: ATS-CRM-DQ-018-02; ATS-CRM-DQ-019-03
    execution_gap: FND-CRM-DQ-072
    note: >-
      The capability assertions define the component evidence. No executable
      binding is claimed for this complete feature sequence.
  - id: FAS-CRM-DQ-05-03
    title: Identity reuse cannot replace absorbed history
    kind: lifecycle
    exercises:
      - CAP-CRM-DQ-018
      - CAP-CRM-DQ-019
    relies_on:
      - ATS-CRM-DQ-018-03
      - ATS-CRM-DQ-018-07
      - ATS-CRM-DQ-019-05
    preconditions: An absorbed identity and permanent outcome already exist.
    steps: >-
      Attempt to recreate the absorbed identity and alter or delete the retained
      alias and outcome.
    expected: >-
      The protected identities and retained originals remain intact after
      refused writes.
    negative: false
    data_needs: >-
      Use an isolated workspace, run-owned records and the permission personas
      described by the scenario. Failures and changed dependent records must be
      supplied by fixtures owned by the run.
    bound_to: []
    provenance: proposed
    source: ATS-CRM-DQ-018-03; ATS-CRM-DQ-018-07; ATS-CRM-DQ-019-05
    execution_gap: FND-CRM-DQ-072
    note: >-
      The capability assertions define the component evidence. No executable
      binding is claimed for this complete feature sequence.
  - id: FAS-CRM-DQ-05-04
    title: Record readers receive restricted merge lineage
    kind: permission
    exercises:
      - CAP-CRM-DQ-019
      - CAP-CRM-DQ-018
    relies_on:
      - ATS-CRM-DQ-019-06
      - ATS-CRM-DQ-018-05
    preconditions: Read-only personas have different record-type and workspace access.
    steps: >-
      Read permitted merge lineage, then request lineage and aliases outside
      each persona’s scope.
    expected: Authorized history remains readable and out-of-scope data is unavailable.
    negative: true
    data_needs: >-
      Use an isolated workspace, run-owned records and the permission personas
      described by the scenario. Failures and changed dependent records must be
      supplied by fixtures owned by the run.
    bound_to: []
    provenance: proposed
    source: ATS-CRM-DQ-019-06; ATS-CRM-DQ-018-05
    execution_gap: FND-CRM-DQ-072
    note: >-
      The capability assertions define the component evidence. No executable
      binding is claimed for this complete feature sequence.
  - id: FAS-CRM-DQ-05-05
    title: Stale console links reach the surviving record
    kind: regression
    exercises:
      - CAP-CRM-DQ-018
      - CAP-CRM-DQ-019
    relies_on:
      - ATS-CRM-DQ-018-08
      - ATS-CRM-DQ-019-07
    preconditions: A browser entry point still names an absorbed contact.
    steps: >-
      Open the old address, inspect the explanation and navigate to retained
      merge details.
    expected: >-
      Navigation reaches the survivor or reports the documented missing
      destination rather than silently showing an unrelated record.
    negative: false
    data_needs: >-
      Use an isolated workspace, run-owned records and the permission personas
      described by the scenario. Failures and changed dependent records must be
      supplied by fixtures owned by the run.
    bound_to: []
    provenance: proposed
    source: ATS-CRM-DQ-018-08; ATS-CRM-DQ-019-07
    execution_gap: FND-CRM-DQ-072
    note: >-
      The capability assertions define the component evidence. No executable
      binding is claimed for this complete feature sequence.
evidence:
  - provenance: documented
    source: FEAT-CRM-DQ-05
  - provenance: proposed
    source:
      - ATS-CRM-DQ-018-04
      - ATS-CRM-DQ-019-02
      - ATS-CRM-DQ-019-04
      - ATS-CRM-DQ-018-02
      - ATS-CRM-DQ-019-03
      - ATS-CRM-DQ-018-03
      - ATS-CRM-DQ-018-07
      - ATS-CRM-DQ-019-05
      - ATS-CRM-DQ-019-06
      - ATS-CRM-DQ-018-05
      - ATS-CRM-DQ-018-08
      - ATS-CRM-DQ-019-07
---

# Follow Absorbed Identities and Outcomes: Feature Acceptance Suite

## What the Feature Must Do as a Whole

An absorbed identity must remain a useful route to the surviving record and the retained account of the merge. Readers need that account without gaining authority to combine records.

## Interactions Between Capabilities

Alias redirection, repeated absorption and retained lineage share the identity history. The suite follows the oldest address through another merge and compares its destination with readable historical outcomes. Every sequence remains proposed until one executable selection asserts its full outcome. Existing capability assertions supply evidence for parts of the sequence.

## Regression Record

| Revision | Change | Scenario | Why |
|---|---|---|---|
| 1 | initial | all | Establish feature-level handoffs from the landed capability checks. |
