---
id: TST-PFM-ELG-392
title: Attention items checks
kind: integration
product_area: platform
module: eligibility
revision: 1
status: draft
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
repository: services-platform
files:
  - >-
    modules/attention/tests/integration/services/persistence/items.integration.spec.js
implements:
  - ATS-PFM-ELG-016-03
  - ATS-PFM-ELG-016-04
  - ATS-PFM-ELG-016-05
  - ATS-PFM-ELG-016-06
  - ATS-PFM-ELG-016-07
  - ATS-PFM-ELG-017-05
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/attention/tests/integration/services/persistence/items.integration.spec.js
    cases:
      - 'opens an item of the first generation, in the partition of its month'
      - 'refreshes the open item in place on a second publish: one row, new facts'
      - replaces the audiences of the open item whole
      - 'opens the next generation, a new item, when a resolved condition recurs'
      - resolves a role product key to the role that carries it
      - appends the tenant to the scope chain
      - >-
        masks the surfaces to the tenant’s: a console-and-portal definition the
        tenant keeps on the console
      - >-
        ranks the item by the rule rules.ts states, with the definition’s and
        the tenant’s adjustments
      - >-
        lets Platform’s own role publish another application’s definition, as
        its evaluator does
      - refuses a tenant other than the transaction’s (42501)
      - refuses a source service that is not the invoking role’s
      - refuses a definition nobody registered
      - refuses a retired definition
      - refuses another application’s definition
      - refuses a fact the definition does not declare
      - refuses a fact of the wrong type
      - refuses an audience kind the definition does not address
      - refuses a scope kind the definition does not scope by
      - refuses more than ten audiences
      - >-
        refuses a responsibility audience with no key when the definition
        declares no default
      - 'refuses a team audience: teams do not exist yet'
      - refuses a role product key no role carries
      - refuses an eligibility audience from any service but platform
      - writes nothing when it refuses
      - resolves the open item once and answers false the second time
      - refuses another tenant
      - >-
        resolves the open items not confirmed since the instant, in the scope
        given, and leaves the confirmed
      - north
      - north
      - south
      - north
      - north
      - 'stamps the sweep, and a second stamp replaces the first'
      - >-
        reaches no table directly: a provider cannot write an item but through
        the functions
      - holds EXECUTE on exactly the four functions
  - provenance: documented
    source: >-
      services-platform:modules/attention/tests/integration/services/persistence/items.integration.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.
---

# Attention items 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 exercises its real module dependencies and declares no test doubles. Its source header and imports identify the database, transaction and service boundaries it uses.

## 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.
