---
id: TST-COM-ORD-139
title: Which price binds at placement
kind: unit
product_area: commerce
module: orders
revision: 1
status: draft
source_sha:
  services-commerce: c8b66a98e2490617aec38ba5c8165dd9bd0a8f9b
repository: services-commerce
files:
  - modules/orders/tests/unit/placement/price-binding.spec.js
implements:
  - ATS-COM-ORD-005-03
environment: mock
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 1
isolation: 'The suite owns its in-memory inputs, scripted responses and rendered component state.'
evidence:
  - provenance: test
    source: 'services-commerce:modules/orders/tests/unit/placement/price-binding.spec.js'
    test_cases:
      - binds everything as recomputed when the preview equals it
      - 'refuses PRICE_CHANGED with both prices when the price moved, however young the preview'
      - refuses a price that fell as well as one that rose
      - never binds a previewed price nor writes a price_tolerance adjustment
      - >-
        never honours a line whose qualified audiences changed since the preview, at the same amount too
        (member pricing 05 §4)
      - treats a changed quantity as a changed price
      - treats a moved engine line total at the same unit price as a changed price
      - 'refuses a moved order-level discount or fee of the engine, naming the figure'
      - 'binds an item the preview did not price, and every item without a preview, as recomputed'
scenario_coverage:
  - scenario: ATS-COM-ORD-005-03
    test_cases:
      - >-
        never honours a line whose qualified audiences changed since the preview, at the same amount too
        (member pricing 05 §4)
    scope: >-
      The cited cases exercise the scenario’s listed fixture outcomes; this register makes no verified
      conformance claim.
dependency_evidence:
  provenance: test
  source: 'services-commerce:modules/orders/tests/unit/placement/price-binding.spec.js'
  declared_by_test: 'the rule. Doubled: nothing (the inputs are literals).'
---

# Which price binds at placement

## Verification Boundary

The unit suite checks the named contract or helper with controlled inputs.

## What This Suite Proves

The registered cases check which price binds at placement with their fixture records and assertions. Scenario bindings name only the examples those cases exercise.

## What It Does Not Prove

A registered file supplies no run result or verified conformance by itself. Local fixtures do not establish deployed cross-service behavior or complete browser journeys.

## Real Dependencies and Test Doubles

Inputs and external responses are controlled in process; this suite establishes no deployed service behavior.

## Must Not Be Doubled

The named contract validation or component behavior under assertion must use its actual implementation.
