Skip to content

CAP-MBR-MEM-004Withhold membership through suspension and restore its standing

Markdown

CAP-MBR-MEM-004

Withhold membership through suspension and restore its standing

Markdown
  • DocumentDraft
  • Product intentConfirmed
  • ImplementationObserved

KindCapabilityProduct areaMembershipModuleMemberships, Applications and Membership BillingRevision1

Read atservices-membership 5994c270react-console baf6dae3

The Formal Contract

The narrative above explains; the sections below are authoritative — the rules, scenarios and tests this document binds.

Outcomes
Suspension overrides term-based standing and propagates to dependent memberships.Restoration derives standing from the terms that remain.
Surfaces
consoleapi
Intent sources
services-membership:README.md#2026-10-18 — Final acceptance

Controls

45 controls apply, from the corpus control catalogue.

TC-AVL-002 TC-AVL-003 TC-AVL-004 TC-AZ-001 TC-AZ-002 TC-AZ-003 TC-AZ-004 TC-AZ-005 TC-AZ-006 TC-CHG-001 TC-CHG-002 TC-CHG-003 TC-CHG-004 TC-CRY-001 TC-CRY-002 TC-CRY-003 TC-DAT-001 TC-DAT-002 TC-DAT-003 TC-DAT-007 TC-IAM-001 TC-IAM-002 TC-IAM-004 TC-IAM-005 TC-IAM-006 TC-LOG-001 TC-LOG-002 TC-LOG-003 TC-LOG-004 TC-LOG-005 TC-MON-001 TC-MON-002 TC-MON-004 TC-PI-001 TC-PI-002 TC-PI-003 TC-PI-004 TC-PI-005 TC-PRV-001 TC-PRV-002 TC-SEC-001 TC-SEC-004 TC-TEN-001 TC-TEN-002 TC-TEN-003

Permissions

KeyChecked atScope
membership.memberships.suspendapitenant

Business Rules

6 rules, 5 to be proved before approval. A rule's product intent is derived from its origin: 6 confirmed by a product decision, the rest inheriting this capability's confirmed.

IdRuleKindEnforced atProvenance
01must prove
Confirmed
Suspension requires an applicable suspension reason and the current read version; repeated suspension and restoration of an unsuspended record are rejected.
validationservicetest
services-membership:tests/acceptance/memberships/MBR-ACC-0174.acceptance.ts#MBR-ACC-0174: A membership is suspended over its terms and restored to whatever the terms give, once each way, with no detections while suspended and the history showing the suspension
02must prove
Confirmed
While its suspension flag is set, a membership resolves as suspended for every requested date and produces no expiry or lapse detections during the sweep.
policyservice, databasetest
services-membership:tests/acceptance/memberships/MBR-ACC-0174.acceptance.ts#MBR-ACC-0174: A membership is suspended over its terms and restored to whatever the terms give, once each way, with no detections while suspended and the history showing the suspension
03must prove
Confirmed
Restoration requires an explanation and derives standing again from the membership’s terms.
lifecycleservicetest
04must prove
Confirmed
Suspending or restoring an organizational parent updates its linked children and records a lifecycle event for each.
policyserviceobserved
05must prove
Confirmed
Direct suspension and restoration are restricted to principal memberships; dependent memberships follow their parent.
policyserviceobserved
06
Confirmed
Suspension and restoration record lifecycle events on the workspace’s business date and publish matching business events; the suspension event carries its reason identifier.
lifecycleservicetest
services-membership:modules/events/tests/integration/business-events.integration.spec.ts#states membership.membership.suspended with the reason, then membership.membership.restored

Scenarios

IdGivenWhenThenProvenance
01A corporate parent has linked employee memberships.Staff suspend the parent and subsequently restore it.The parent and linked employees follow both changes, with standing recomputed after restoration.observed

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.