Fiscal year and period standing
The Lifecycle
Transitions Explained
Generation supplies monthly coverage. Unit creation supplies two years automatically; later extensions are explicit administrator requests. All new periods begin open.
Close owns the moves between open, closing, closed and reopening. The database updates year standing from its periods. Books can rename a year or directly remove the latest year while every period is currently open.
What Cannot Happen
A date lookup never generates missing coverage. Calendar maintenance cannot alter dates or period standing. The direct deletion guard checks current standing, not whether a period has ever participated in Close.
Concurrency and Timing
A generation writes its whole extension in one transaction and serializes planning on the unit. It uses the workspace’s local date. Database structural checks apply at commit, but the draft’s broad concurrency guarantee needs separate proof for generation, deletion and Close together.