---
id: TST-PFM-OPS-071
title: Job notices
kind: integration
product_area: platform
module: operations
revision: 1
status: draft
source_sha:
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
repository: services-platform
files:
  - modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js
implements:
  - ATS-PFM-OPS-003-02
  - ATS-PFM-OPS-003-03
  - ATS-PFM-OPS-003-11
  - ATS-PFM-OPS-003-12
environment: local
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 5
estimate_basis: Scheduling estimate only; no duration is measured during this documentation pass.
isolation: >-
  The prepared local test database and suite-owned identifiers; existing hooks control rollback or
  cleanup.
evidence:
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js
    at ad3f6a6582843008ed0f5a17b131878d15829af1: existing suite body, setup, assertions and cleanup.
binding_note: Bindings apply only to the listed specification scenarios.
assertion_sources:
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#answers
    the claimed notice, which is the right to send it
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#gives
    it an identifier of the notice grammar
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#leaves
    it unsent: no delivery instant, no provider id, no error
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#was
    delivered by the first claim’s send
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#answers
    nothing at all to the second claim, so nothing is sent twice
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#does
    not count the refused claim as an attempt
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#records
    when the environment withheld it, which is when it was handled
  - >-
    services-platform:modules/jobs/tests/integration/services/persistence/job-notices.integration.spec.js#answers
    nothing to a second claim: a withheld message was handled, not missed
---

# Job notices

## Verification Boundary

This suite exercises background work through production operations against the local database. Its implementation is present at the pinned source revision, and this register records no execution result.

## What This Suite Proves

The checks claim and settle notice rows, compare completed and unfinished outcomes, count repeat attempts and distinguish the two outcomes of one run. The scenario bindings name the attributed outcomes.

## What It Does Not Prove

Local execution does not establish deployed infrastructure, live commercial-provider configuration or authorization-cache completion. Registration and an implemented suite do not establish a passing result.

## Real Dependencies and Test Doubles

The prepared PostgreSQL database and production operations under test are real.

## Must Not Be Doubled

The persistence operations, database constraints and reads under assertion remain real.
