Skip to content

CAP-MBR-STR-010Set a program’s affiliation requirements

Markdown

CAP-MBR-STR-010

Set a program’s affiliation requirements

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
Program unit requirements express the intended affiliation structure.Removing a category respects retained affiliations that still use it.
Surfaces
api

Controls

32 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-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-SEC-001 TC-SEC-004 TC-TEN-001 TC-TEN-002 TC-TEN-003

Permissions

KeyChecked atScope
membership.programs.manageapitenant
membership.programs.readapitenant
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
Replacing program unit requirements saves the complete list at the program’s version and advances that version.
no proof recorded yet
policyserviceobserved
02must prove
Proposed
A nonempty unit-kind list requires affiliation binding, while an empty replacement is permitted for other bindings.
no proof recorded yet
validationserviceobserved
03must prove
Proposed
Listed kinds must exist, allow member affiliations and appear once, with any maximum at least the minimum; validation reports all detected problems.
no proof recorded yet
validationserviceobserved
04must prove
Proposed
A kind cannot be removed while a non-cancelled program term has an affiliation of that kind with no end or an end on or after today.
no proof recorded yet
validationserviceobserved
05
Proposed
Each category records primary-designation, portal-change and suggestion choices, but portal and suggestion choices have no implemented consumer.
policyserviceobserved
06
Proposed
Reducing a maximum does not automatically rewrite existing affiliations.
policyservicedocumented

Scenarios

IdGivenWhenThenProvenance
01National membership permits up to three chapters and unrestricted sections.Staff replace the list with those two category requirements.The saved program returns the selected counts for both categories.test
services-membership:tests/acceptance/configuration/MBR-ACC-0080.acceptance.ts#MBR-ACC-0080: An administrator builds an association's membership configuration from nothing and a first member is enrolled on it

Edge Cases

IdGivenWhenThenProvenance
02Retained affiliations still use the chapter category.Staff remove chapters from the program requirements.Removal fails while the qualifying affiliations still depend on that category.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.