---
id: TST-PFM-ELG-415
title: Eligibility registry checks
kind: api-lifecycle
product_area: platform
module: eligibility
revision: 1
status: draft
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
repository: services-platform
files:
  - modules/eligibility/tests/e2e/eligibility-registry.e2e.spec.js
implements:
  - ATS-PFM-ELG-006-05
  - ATS-PFM-ELG-006-07
environment: local
implementation_state: implemented
latest_result: not-run
conformance: not-verified
estimated_minutes: 5
isolation: Prepared local test database with suite-owned fixture keys and cleanup.
evidence:
  - provenance: test
    source: >-
      services-platform:modules/eligibility/tests/e2e/eligibility-registry.e2e.spec.js
    cases:
      - 'answers the record of a condition type, every property'
      - 'answers a type without args, options or a window with nulls'
      - answers the registry’s stamp
      - >-
        lists the active types of the tenant’s applications in key order,
        without a deprecated or withdrawn one or an unlicensed application’s
      - >-
        lists a deprecated type, with its status, when asked to include
        deprecated ones
      - 'never lists a withdrawn type, even with deprecated ones included'
      - lists only the types a subject of the asked kind can be judged by
      - 'refuses an include_deprecated that is neither true nor false, 400'
      - 'refuses a subject_kind that is not an entity kind, 400'
      - 'refuses a caller without platform.eligibility.read, 403'
      - 'answers the record of a consumer kind, every property'
      - >-
        lists the kinds of the tenant’s applications, without an unlicensed
        application’s
      - 'refuses a caller without platform.eligibility.read, 403'
      - lists Membership’s condition types beside CRM’s
      - lists Membership’s consumer kinds beside CRM’s
  - provenance: documented
    source: >-
      services-platform:modules/eligibility/tests/e2e/eligibility-registry.e2e.spec.js:suite
      header
    note: >-
      The source header describes the verification boundary and declared
      substitutions.
proof_limit: >-
  Only the named scenario checkpoints have a verified source binding; execution
  has not been attempted.
---

# Eligibility registry checks

## Verification Boundary

This suite checks the module through real local service and database code at the entry points used by its test cases.

## What This Suite Proves

The mapped scenarios identify the capability and feature checkpoints this file exercises. The source test titles preserve the assertion-level evidence.

## What It Does Not Prove

Registration supplies no execution result or conformance decision. Checks beyond the file’s reachable assertions remain unverified, including production configuration.

## Real Dependencies and Test Doubles

The suite uses local integration fixtures. Signing, caches, provider responses or outbound delivery may be supplied by fixtures where the source declares a substitution. The source imports and suite header identify the exact dependencies.

## Must Not Be Doubled

The module behavior under assertion, transaction boundary and database constraint being checked remain real. Fixture setup cannot stand in for the asserted write or refusal.
