Assignment policy switch and currency
The Lifecycle
Transitions Explained
These are derived policy conditions rather than stored status values. Before the first save, assignment is disabled. Accepted policy changes raise generation. With assignment enabled, a completed recalculation must cover that generation before the read reports current. Completion describes traversal coverage, including records that processing skipped.
What Cannot Happen
Saving coverage never updates placements. Enabling assignment does not apply it to every existing record, and a run beginning before a later change cannot clear that change’s outstanding-work flag. Disabled assignment suppresses the flag but does not erase stored regions.
Concurrency and Timing
The counter records change order without comparing clocks. Existing policy writes serialize, while initialization and unlocked multi-statement reads retain concurrency gaps. A settings write without a supplied version can overwrite newer settings.