---
id: TST-MBR-MEM-005
title: Concurrent recurring schedule changes
kind: integration
product_area: membership
module: memberships
revision: 1
status: draft
source_sha:
  services-membership: 5994c270e8a37a30f848e99ba5b5ee6b87c08893
repository: services-membership
files:
  - >-
    modules/billing/tests/integration/recurring-billing-run-concurrency.integration.spec.ts
implements:
  - ATS-MBR-MEM-013-11
environment: local
implementation_state: implemented
latest_result: not-run
latest_run_at: null
latest_run_ref: null
conformance: not-verified
estimated_minutes: 3
isolation: >-
  A suite-owned workspace and test identifiers; suites that use shared seed data
  require the source’s serial execution and cleanup policy.
verification_notes: >-
  Bindings describe the assertions reviewed at the pinned commit; the suite is
  not executed by this documentation job.
coverage_gap: null
evidence:
  - >-
    services-membership:modules/billing/tests/integration/recurring-billing-run-concurrency.integration.spec.ts
assertion_anchors:
  - scenario: ATS-MBR-MEM-013-11
    source: >-
      services-membership:modules/billing/tests/integration/recurring-billing-run-concurrency.integration.spec.ts#applies
      one of two changes made at the same version and refuses the other with
      version_mismatch
---

# Concurrent recurring schedule changes

## Verification Boundary

Billing candidates, planned actions and durable execution run against the prepared database.

## What This Suite Proves

The structured bindings identify the capability and feature cases whose reviewed assertions this suite executes. Source anchors preserve the evidence for each binding.

## What It Does Not Prove

A local pass does not prove deployed job admission, live payment collection or successful external communication delivery. Registration records existing code and leaves execution and conformance unverified.

## Real Dependencies and Test Doubles

Billing persistence and the local jobs engine remain real where the suite invokes them. Commerce placement, communication object storage, clocks and callers use the test fixtures described by the source.

## Must Not Be Doubled

Keep the prepared database, workspace boundary, exercised owner constraints and the business operation under test real. A partner double cannot substitute for the Membership write this suite claims to exercise.
