---
id: TST-PFM-TNL-026
title: Crm participant default application
kind: integration
product_area: platform
module: tenant-lifecycle
revision: 1
status: draft
source_sha:
  services-crm: a8d1364f1dd44b723bb5f9acba12f983e9ec8d69
repository: services-crm
files:
  - modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
implements:
  - ATS-PFM-TNL-008-06
  - ATS-PFM-TNL-008-07
environment: local
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 5
isolation: >-
  Run-owned target and comparison workspace records in the prepared test database; owner access is limited to
  fixture arrangement, independent inspection and cleanup of those records.
evidence:
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../entities/db/contact-roles.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../db/tenant-seed-applications.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/entities-participant
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/regions-participant
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/tasks-participant
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../entities/db/address-types.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../entities/db/phone-number-types.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/collection-type-seeds
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/task-type-seeds
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/affiliation-type-seeds
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../entities/services/persistence/affiliation-types
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../entities/db/affiliation-types.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/duplicate-rule-seeds
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../duplicates/db/duplicate-rules.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../duplicates/services/persistence/duplicate-rules
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../services/participants/duplicates-participant
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../tasks/db/task-queues.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../tasks/db/task-types.table
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../../../../tasks/services/persistence/task-types
  - >-
    services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js
    imports ../../support
binding_scope: >-
  Each implements link names a scenario whose retained cited checks all occur in this file. Partial assertions
  for other scenarios remain evidence only.
partial_scenario_evidence:
  - scenario: ATS-PFM-TNL-008-01
    references:
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#records
        every seed in the ledger, against the run that applied them
    provenance: test
    scope: partial assertions; no complete scenario implementation claimed
  - scenario: ATS-PFM-TNL-008-02
    references:
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#does
        not recreate a default the customer deleted
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#does
        not recreate an affiliation type the customer deleted
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#leaves
        a type the customer renamed after it was seeded exactly as they left it
    provenance: test
    scope: partial assertions; no complete scenario implementation claimed
  - scenario: ATS-PFM-TNL-008-03
    references:
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#adopts
        a role the customer made first with a seed’s id, rather than duplicating it
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#records
        an adopted role in the ledger too, so it is never written over later
    provenance: test
    scope: partial assertions; no complete scenario implementation claimed
  - scenario: ATS-PFM-TNL-008-04
    references:
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#answers
        not ready, naming every seed, before it has provisioned
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#answers
        ready, with nothing missing, once it has provisioned
    provenance: test
    scope: partial assertions; no complete scenario implementation claimed
  - scenario: ATS-PFM-TNL-009-01
    references:
      - >-
        services-crm:modules/tenant-lifecycle/tests/integration/services/participants/provisioning.integration.spec.js#applies
        one type set alone when an initialization names it by key
    provenance: test
    scope: partial assertions; no complete scenario implementation claimed
---
# Crm participant default application

## Verification Boundary

The suite invokes production lifecycle services or persistence against its test database. Each fixture and directly called participant belongs to the repository named in the register; this is a local integration boundary.

## What This Suite Proves

Participant default application is the inspected subject. The implements links identify scenarios whose cited checks occur in this file. The original test-title references delimit those checks; partial contributions to other combined scenarios remain evidence only.

## What It Does Not Prove

Source inspection supplies no passing run. The suite does not establish console behavior, deployment configuration, complete removal in every application or recovery from a provider failure beyond its declared seams. A local zero inventory covers declared and seeded resources only.

## Real Dependencies and Test Doubles

The suite retains its database and production functions as shown by the cited source. Fixture clocks, contexts, seeded Platform facts or callback dependencies remain test inputs. The imported support is recorded as evidence; no external provider result is inferred from a local fixture.

## Must Not Be Doubled

Keep the production service or persistence function and the database constraints, row policies and guarded removal functions under test real. For dispatcher cases, keep route selection and authorization real as well. Provider and remote-application seams must remain explicit and cannot stand in for deployed cross-application qualification.
