Skip to content

DOM-MBR-MEM-005Billing Run

Markdown

DOM-MBR-MEM-005

Billing Run

Markdown
  • DocumentDraft
  • ImplementationPartially observed

Planning

Specified by
CON-MBR-MEM-005

Design

Owned by
SVC-MBR-MEM-billing

KindDomain objectProduct areaMembershipModuleMemberships, Applications and Membership BillingRevision1

Read atservices-membership 5994c270react-console baf6dae3

Relationships

ToCardinalityOwnershipCrosses a serviceOn archive or delete
DOM-MBR-MEM-002one-to-manyActions reference selected terms and preserve the reviewed version.no
DOM-MBR-MEM-001one-to-manyAction selection reads suspension, origin and member preferences from the referenced holding.no

Invariants

InvariantProtectsEnforced atProvenance
INV-DOM-MBR-MEM-005-01
Selection bounds and recurring offset bounds must be ordered.
databaseobserved
INV-DOM-MBR-MEM-005-02
One recurring configuration cannot create two runs for the same local occurrence date.
databaseobserved
INV-DOM-MBR-MEM-005-03
A run cannot contain duplicate actions for the same kind, reminder index and candidate term.
databaseobserved
INV-DOM-MBR-MEM-005-04
Planning, execution and cancellation require a current version and a permitted run state.
servicetest
INV-DOM-MBR-MEM-005-05
Only planned actions are attempted; local database effects settle with their action, while order placement settles afterward.
servicetest
services-membership:modules/billing/tests/integration/billing-runs.integration.spec.ts#refuses as stale an action whose term changed after planning
INV-DOM-MBR-MEM-005-06
A candidate whose term version differs from the plan becomes stale without performing the action.
servicetest
services-membership:modules/billing/tests/integration/billing-runs.integration.spec.ts#refuses as stale an action whose term changed after planning
INV-DOM-MBR-MEM-005-07
Order placement uses a stable action-based key so a cooperating Commerce port recognizes repeats.
serviceobserved
INV-DOM-MBR-MEM-005-08
A dropping template must reference a reason valid for term termination.
servicetest
INV-DOM-MBR-MEM-005-09
Concurrent recurring changes at the same version allow one winner and reject the stale writer.
servicetest

The Markdown files under specs/ in rhythmsoftware/rhythm-v2-docs are the canonical source of truth. This reader is a generated, read-only projection of them.