---
id: TST-COM-FUL-071
title: Reconciler candidates queries
kind: integration
product_area: commerce
module: fulfillment
revision: 1
status: draft
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
repository: services-commerce
files:
  - >-
    modules/operations/tests/integration/services/persistence/reconciler-candidates.queries.integration.spec.js
implements:
  - ATS-COM-FUL-009-02
  - ATS-COM-FUL-009-05
environment: local
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 3
isolation: >-
  Run-created workspace identifiers and fixture records in the prepared test database; concurrency
  cases own their extra connections.
evidence:
  - repository: services-commerce
    path: >-
      modules/operations/tests/integration/services/persistence/reconciler-candidates.queries.integration.spec.js
    test_titles:
      - >-
        listPlacedOrdersWithoutInvoiceAcrossTenants answers the unbilled and the blocked placed
        before the instant (the forty-day-old orders of the obligations among them), never the
        billed, the fresh or the accepted
      - >-
        listTenderUncertainOrdersAcrossTenants answers the one uncertain since before the instant
        alone
      - >-
        listOrdersVoidedByTenderWindowAcrossTenants answers the window’s void since the instant,
        never a staff void
      - >-
        listAcceptedOrdersWithoutInvoiceLineAcrossTenants answers the accepted, billed order whose
        line names no invoice line, never one billed whole
      - >-
        listMigratedUnfulfilledObligationsAcrossTenants answers the migrated one blocked since
        before the instant, never one blocked for approval
      - >-
        listAppliedReceiptsSinceAcrossTenants answers the applied receipts received since the
        instant, never an ignored or an older one
      - >-
        listHeldReservationsPastExpiryAcrossTenants answers the held one past its expiry, never a
        live or a committed one
      - refuses every read inside another transaction
      - >-
        listTenantsWithOrdersPlacedAcrossTenants answers the tenant with an order placed in the
        range, never one whose orders there are migrated or outside it
      - 'listTenantsWithOrdersPlacedAcrossTenants answers the page after a tenant, at most the limit'
      - >-
        listPromotionCounterDriftAcrossTenants answers the promotion counted up and the code counted
        down, with the two numbers and the limit
      - >-
        listPromotionCounterDriftAcrossTenants never answers a promotion or code whose release gave
        the use back (premise: it was redeemed and released)
      - listPromotionCounterDriftAcrossTenants answers at most the limit
    scenario_anchors:
      - >-
        services-commerce:modules/operations/tests/integration/services/persistence/reconciler-candidates.queries.integration.spec.js#listPlacedOrdersWithoutInvoiceAcrossTenants
        answers the unbilled and the blocked placed before the instant (the forty-day-old orders of
        the obligations among them), never the billed, the fresh or the accepted
      - >-
        services-commerce:modules/operations/tests/integration/services/persistence/reconciler-candidates.queries.integration.spec.js#refuses
        every read inside another transaction
---

# Reconciler candidates queries

## Verification Boundary

This suite checks reconciler candidates queries against the prepared PostgreSQL database. Its entry points are the persistence and service functions used by the tests.

## What This Suite Proves

The bound scenarios identify the assertions this suite contributes. Source anchors retain the exact test cases; where a capability scenario has several contributing suites, a single binding does not imply that every branch runs here.

## What It Does Not Prove

Direct service and persistence calls do not establish the full HTTP permission contract, deployed scheduling or browser behavior. No execution result is claimed by this register.

## Real Dependencies and Test Doubles

The database and imported Commerce persistence services are real. Fixtures create the records owned by this run. Time-sensitive cases use a controlled clock where the source fixture supplies one.

## Must Not Be Doubled

Keep the database constraints, row visibility and persistence writes real when claiming this integration coverage. A canned repository response cannot replace the boundary being checked.
