---
id: ATS-CMT-MTG-012
scope: CAP-CMT-MTG-012
product_area: committees
module: meetings
revision: 1
status: proposed
approved_by: null
approved_at: null
source_sha:
  services-committees: 36129c24daeaadcdb339218c38cdeaff9861359d
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
scenarios:
- id: ATS-CMT-MTG-012-01
  title: A consequence that cannot be made undoes the close
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-01
  preconditions: An open removal whose member has since resigned.
  steps: Close it carried.
  expected: The close is refused, nothing changes and the decision stays open; a failed decision makes nothing.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#makes nothing when the decision fails
  - services-committees:modules/decisions/tests/integration/services/removal-of-ended.integration.spec.ts#leaves the removal open
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0324.spec.ts#CMT-ACC-0324
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#makes nothing when the decision fails
- id: ATS-CMT-MTG-012-02
  title: The board appoints a treasurer by vote
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-02
  preconditions: An open appointment decision proposing a treasurer from 1 January.
  steps: Carry it.
  expected: The appointment exists from 1 January naming the decision, and the decision records it.
  negative: false
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#makes the proposed appointment, naming the decision
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#records what the decision did
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0321.spec.ts#CMT-ACC-0321
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#makes the proposed appointment, naming the decision
- id: ATS-CMT-MTG-012-03
  title: A removal ends a serving member and never rewrites a resignation
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-03
  preconditions: A removal of a serving director and one of a director who resigned.
  steps: Carry each.
  expected: The first ends the appointment as removed; the second is refused, naming the resignation, which stays as recorded.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#ends the removed appointment, reason removed, naming the decision
  - services-committees:modules/decisions/tests/integration/services/removal-of-ended.integration.spec.ts#refuses the close 409 appointment_already_ended
  - services-committees:modules/decisions/tests/integration/services/removal-of-ended.integration.spec.ts#keeps the resignation as it was recorded
  - services-committees:modules/decisions/tests/integration/services/removal-of-ended.integration.spec.ts#still carries a removal of a serving member
  - services-committees:modules/decisions/tests/unit/services/removal-rule.spec.ts#refuses exactly the ended and vacated appointments
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#ends the removed appointment, reason removed, naming the decision
- id: ATS-CMT-MTG-012-04
  title: The board charters an audit committee and later dissolves it
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-04
  preconditions: A charter decision for an audit committee.
  steps: Carry it, then carry a charter dissolving it.
  expected: The committee is created naming the first decision and dissolved naming the second.
  negative: false
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#creates the chartered committee, naming the decision
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0343.spec.ts#CMT-ACC-0343
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#creates the chartered committee, naming the decision
- id: ATS-CMT-MTG-012-05
  title: The finance committee cannot change the audit committee’s roster
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-05
  preconditions: Two committees.
  steps: Draft a removal of the other committee’s member and an appointment to its seat; carry an old draft that names it.
  expected: The drafts are refused; the old draft refuses to carry and stays open; the other committee is untouched.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/own-committee.integration.spec.ts#refuses to draft a removal of another committee’s appointment
  - services-committees:modules/decisions/tests/integration/services/own-committee.integration.spec.ts#refuses to draft an appointment to another committee
  - services-committees:modules/decisions/tests/integration/services/own-committee.integration.spec.ts#refuses to carry a draft written before the rule that removes another committee’s appointment
  - services-committees:modules/decisions/tests/unit/services/decision-targets.spec.ts#refuses a proposed appointment to another committee’s seat
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0359.spec.ts#CMT-ACC-0359
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/own-committee.integration.spec.ts#refuses to draft a removal of another committee’s appointment
- id: ATS-CMT-MTG-012-06
  title: An amendment supersedes the travel policy
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-06
  preconditions: A carried policy decision.
  steps: Amend it and carry the amendment; try to amend the superseded original.
  expected: The original is superseded with its number and text; amending it again is refused.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#drafts the amendment naming the original
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#supersedes the original when the amendment carries, keeping its number and text
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#refuses to amend a superseded decision, 409 decision_not_carried
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0326.spec.ts#CMT-ACC-0326
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#drafts the amendment naming the original
- id: ATS-CMT-MTG-012-07
  title: Rescinding an appointment ends it
  level: api
  proves:
  - BR-CAP-CMT-MTG-012-07
  preconditions: A carried appointment decision.
  steps: Rescind it with a proposal of its own; rescind it properly and carry.
  expected: The first is refused; the second ends the appointment as rescinded and supersedes the original.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#refuses a rescission that proposes appointments of its own
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#ends the appointment the original made that day, naming the rescission
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#supersedes the original
  - services-committees:modules/decisions/tests/unit/services/rescission-rule.spec.ts#leaves one starting later and one pending, saying why
  - react-console:acceptance/committees/playwright/journeys/decisions/CMT-ACC-0327.spec.ts#CMT-ACC-0327
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#refuses a rescission that proposes appointments of its own
- id: ATS-CMT-MTG-012-08
  title: What an ending cannot undo is not rescinded
  level: unit
  proves:
  - BR-CAP-CMT-MTG-012-08
  preconditions: Carried removals, charters, approvals of minutes and rescissions.
  steps: Ask whether each may be rescinded.
  expected: Each is refused; every other kind may be.
  negative: true
  data_needs: A committee with a seated roster in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/unit/services/rescission-rule.spec.ts#refuses a removal and a charter, and lets every other kind be rescinded
  - services-committees:modules/decisions/tests/unit/services/rescission-rule.spec.ts#refuses approved minutes
  - services-committees:modules/decisions/tests/unit/services/rescission-rule.spec.ts#refuses another rescission
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#refuses to rescind a carried removal
  provenance: test
  source: services-committees:modules/decisions/tests/unit/services/rescission-rule.spec.ts#refuses a removal and a charter, and lets every other kind be rescinded
- id: ATS-CMT-MTG-012-09
  title: 'Journey end state: the carried decision records the appointment it made and the appointment names the decision'
  level: api
  proves:
  - AS-JNY-CMT-MTG-003-01
  preconditions: The journey’s earlier steps have run.
  steps: Run the journey to this point and read the records.
  expected: The carried decision records the appointment it made and the appointment names the decision.
  negative: false
  data_needs: The journey’s fixtures in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#records what the decision did
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/consequences.integration.spec.ts#records what the decision did
- id: ATS-CMT-MTG-012-10
  title: 'Journey end state: after the rescission carries the original is superseded, keeping its number and text'
  level: api
  proves:
  - AS-JNY-CMT-MTG-003-02
  preconditions: The journey’s earlier steps have run.
  steps: Run the journey to this point and read the records.
  expected: After the rescission carries the original is superseded, keeping its number and text.
  negative: false
  data_needs: The journey’s fixtures in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#supersedes the original
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#supersedes the original
- id: ATS-CMT-MTG-012-11
  title: 'Journey end state: the rescinded appointment is ended once and never duplicated'
  level: api
  proves:
  - AS-JNY-CMT-MTG-003-03
  preconditions: The journey’s earlier steps have run.
  steps: Run the journey to this point and read the records.
  expected: The rescinded appointment is ended once and never duplicated.
  negative: false
  data_needs: The journey’s fixtures in a disposable workspace
  bound_to:
  - services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#leaves Taylor one appointment, never a second
  provenance: test
  source: services-committees:modules/decisions/tests/integration/services/rescission.integration.spec.ts#leaves Taylor one appointment, never a second
evidence:
- 'services-committees at 36129c24: consequences, decision targets, removal and rescission rules, decisions persistence, appointments and committees operations they call'
- 'react-console at baf6dae3: acceptance inventory CAP-CMT-DEC-008, 010 and the journeys cited'
---

# Let a carried decision act on the committee’s roster, minutes or charter: Acceptance Test Set

## Coverage

| Rule | Proved by |
|---|---|
| `BR-CAP-CMT-MTG-012-01` | `ATS-CMT-MTG-012-01` |
| `BR-CAP-CMT-MTG-012-02` | `ATS-CMT-MTG-012-02` |
| `BR-CAP-CMT-MTG-012-03` | `ATS-CMT-MTG-012-03` |
| `BR-CAP-CMT-MTG-012-04` | `ATS-CMT-MTG-012-04` |
| `BR-CAP-CMT-MTG-012-05` | `ATS-CMT-MTG-012-05` |
| `BR-CAP-CMT-MTG-012-06` | `ATS-CMT-MTG-012-06` |
| `BR-CAP-CMT-MTG-012-07` | `ATS-CMT-MTG-012-07` |
| `BR-CAP-CMT-MTG-012-08` | `ATS-CMT-MTG-012-08` |
