Skip to content

CAP-MBR-STR-017Maintain reasons for membership status actions

Markdown

CAP-MBR-STR-017

Maintain reasons for membership status actions

Markdown
  • DocumentDraft
  • Product intentProposed
  • ImplementationObserved

KindCapabilityProduct areaMembershipModuleOrganizational Structure, Membership Configuration and TermsRevision1

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
Status actions can refer to a reason matching their use.Existing records retain their explanation when a reason is retired.
Surfaces
api

Controls

34 controls apply, from the corpus control catalogue.

TC-AVL-002 TC-AVL-003 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-004 TC-DAT-007 TC-IAM-001 TC-IAM-002 TC-IAM-004 TC-IAM-005 TC-LOG-001 TC-LOG-002 TC-LOG-003 TC-LOG-004 TC-PI-001 TC-PI-003 TC-PI-005 TC-SEC-001 TC-SEC-004 TC-TEN-001 TC-TEN-002 TC-TEN-003

Permissions

KeyChecked atScope
membership.configuration.readapitenant
membership.configuration.manageapitenant
membership.application.accessapitenant

Business Rules

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

IdRuleKindEnforced atProvenance
01must prove
Proposed
Each configured reason selects one use: termination, suspension or cancellation.
no proof recorded yet
validationapi, databaseobserved
02must prove
Proposed
A supplied action reason must be active and match the action’s use, otherwise the action is refused with an explanation.
no proof recorded yet
validationserviceobserved
03
Proposed
Retiring a reason leaves records already referencing it unchanged.
lifecycleservicedocumented
04must prove
Proposed
Reason priorities do not affect ordering and duplicate names are allowed.
no proof recorded yet
calculationserviceobserved
05
Proposed
A reason’s use can be changed while terms still refer to it.
policyserviceobserved
06must prove
Proposed
The reason list supports filtering by its selected use.
no proof recorded yet
calculationapiobserved

Scenarios

IdGivenWhenThenProvenance
01Staff need separate explanations for termination, cancellation and suspension.They save a reason for each action category.Each reason records its intended action category.documented

Edge Cases

IdGivenWhenThenProvenance
02A cancellation request selects a suspension-only reason.Staff submit the cancellation.The mismatch is rejected, although the documented message describes termination.documented

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.