01must proveConfirmed | Publishing and restoring earlier expressions require the sensitive publish permission; lacking it rejects the request without a change. | permission | api | test |
02must proveConfirmed | Publication rejects validation errors and unlicensed application conditions, including those reached through references, while warnings remain nonblocking. | validation | service | test |
03must proveConfirmed | Publication assigns the draft its next permanent version number and supersedes the previous publication when their effective periods overlap. | lifecycle | service, database | test |
04must proveConfirmed | Effective periods include their starting day and exclude their ending day; overlap with an older publication is rejected, while a disjoint latest publication remains effective for its own period. | validation | service | test |
05must proveConfirmed | Effective dates must exist in the calendar, and an impossible date is rejected with its field identified. | validation | api, service | test |
06must proveConfirmed | Publication rejects a version that no longer fits an active following use unless explicitly forced, in which case incompatible followers are suspended. | policy | service | test |
07must proveConfirmed | Publication removes plans for the changed rule and every expression that follows it through references; a direct pin to the unchanged earlier version retains its plan. | invariant | service | test |
08must proveConfirmed | Rollback revalidates an earlier expression and copies its dependencies into the next publication with a rollback note, preserving any current draft. | lifecycle | service | test |
09must proveConfirmed | Only one concurrent attempt publishes a draft; the losing attempt receives the winning version and publication time in a stale-change refusal without the publisher’s identity. | invariant | service, database | test |
10must proveConfirmed | The published expression is the expression validated for that request; a racing save can land beforehand, remain as a later draft or produce a stale-change or retryable-conflict refusal. | invariant | service | test |
11must proveConfirmed | History presents versions newest first, includes the draft and compares any pair through readable additions, removals and changes. | calculation | service | test |
12must proveConfirmed | Rule and binding writes create attributable change events, with publication versions, change counts and the simulation choice; refused writes create none. | invariant | service | test |
13Confirmed | Publication has no second-approver requirement because the console’s conditional approval stage has no setting that activates it. | policy | console | observed |