Skip to content

CAP-ACC-CLS-004Assess a month’s readiness to close

Markdown

CAP-ACC-CLS-004

Assess a month’s readiness to close

Markdown
  • DocumentDraft
  • Product intentConfirmed
  • ImplementationObserved

KindCapabilityProduct areaAccountingModuleMonth-End ClosingRevision1

Read atservices-accounting f47cb263react-console baf6dae3

The Formal Contract

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

Outcomes
Controllers see required work, advisory concerns and planned close effects together.Unavailable evidence remains visible instead of appearing successful.
Surfaces
consoleapi
Intent sources
services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 73 (class A: Close Readiness checks period ended, batches posted, transactions accounted, payments reconciled, revenue recognised, authorised)

Controls

22 controls apply, from the corpus control catalogue.

TC-IAM-001 TC-IAM-002 TC-IAM-004 TC-IAM-005 TC-AZ-001 TC-AZ-002 TC-AZ-003 TC-AZ-004 TC-AZ-005 TC-AZ-006 TC-TEN-001 TC-TEN-002 TC-TEN-003 TC-DAT-001 TC-LOG-001 TC-LOG-002 TC-LOG-003 TC-LOG-004 TC-LOG-005 TC-PI-001 TC-PI-003 TC-PI-005

Permissions

KeyChecked atScope
accounting.fiscal-periods.readapitenant
accounting.fiscal-periods.closeservicetenant

Business Rules

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

IdRuleKindEnforced atProvenance
01
Confirmed
Each readiness check identifies its requirement and outcome, with a headline and any supporting figures, records or actions.
origin: services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 73 (class A; plan approved 2026-10-21)
policyserviceobserved
02must prove
Confirmed
A required check that is blocked, pending or in error makes the month not ready.
origin: services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 73 (class A; plan approved 2026-10-21)
calculationservicetest
services-accounting:modules/fiscal-close/tests/unit/readiness/readiness-verdict.spec.js#is not ready for a required check pending: missing evidence never passes
03must prove
Confirmed
Without a required blocker, warnings or unsuccessful advisory checks produce ready with warnings; otherwise the verdict is ready.
origin: services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 73 (class A; plan approved 2026-10-21)
calculationservicetest
services-accounting:modules/fiscal-close/tests/unit/readiness/readiness-verdict.spec.js#is ready with warnings for an advisory check blocked, which never blocks
04must prove
Confirmed
An evaluator failure produces an error check with its applicable requirement, and evaluation continues for other checks.
policyservicetest
services-accounting:modules/fiscal-close/tests/unit/readiness/other-checks.spec.js#is an error, never passed, keeping the requirement the tenant’s policy gives it
05must prove
Confirmed
Period scope evaluates nine checks in order, and fiscal-year scope appends three year checks.
policyservicetest
06must prove
Confirmed
An independent readiness evaluation runs in a read-only transaction shared by its checks, without an established guarantee that all reads use one unchanged database snapshot.
invariantservice, databaseobserved
07must prove
Confirmed
A check returns no more than fifty supporting items alongside its total item count.
policyservicetest
08must prove
Confirmed
The effects preview describes period closure, due revenue, the skipped cost of goods sold work and the aging request, adding year-end effects for the final month.
calculationservicetest
09must prove
Confirmed
Viewer authorization is a required readiness check, so a person without close permission sees a clean month as not ready.
origin: services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 73 (class A: authorised)
permissionservicetest
services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-readiness.e2e.spec.js#answers a reader not ready, blocked by close_authorization alone
10must prove
Confirmed
Readiness requests require read permission, a valid period from one to twelve, a supported scope and a year in the workspace.
validationapi, servicetest
11
Confirmed
A readiness result does not authorize execution; the close performs its own evaluation.
origin: services-accounting:docs/milestones/plans/ACCT-M4-plan.md#4a row 74 (class A; plan approved 2026-10-21)
policyservicedocumented
services-accounting:docs/fiscal-close/README.md#3. Readiness checks (month-end)

Scenarios

IdGivenWhenThenProvenance
01September contains no required blocker.An authorized closer evaluates readiness.The verdict is ready, with cost of goods sold marked not applicable.test
02The integration fixture contains twenty-three unposted batches and its other period and reconciliation blockers.The controller evaluates the fixture’s readiness.The fixture returns six blocking checks and explanations of the outstanding work.test
03A read-only auditor inspects the same clean period.Readiness runs with the auditor’s authority.The missing close grant alone makes the verdict not ready.test
services-accounting:modules/fiscal-close/tests/e2e/fiscal-close-readiness.e2e.spec.js#answers a reader not ready, blocked by close_authorization alone

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.