01must proveConfirmed | Repeated intentions identify one job; a concurrent uniqueness conflict resolves to the existing job outside a caller transaction but aborts an open caller transaction for the caller to retry. ✓ A repeated workspace-provisioning submission returns the existing job.✗ A unique submission key prevents two job records for the same intention. | invariant | service, database | observed |
02must proveConfirmed | Creating a job records its queued steps and submission event; starting its execution inside the submitting transaction is refused. | lifecycle | service | test |
03must proveConfirmed | When execution cannot start after submission commits, the API-facing start helper leaves the job pending for reconciliation and preserves the successful submission response. ✓ A repeated workspace-provisioning submission returns the existing job.✗ A unique submission key prevents two job records for the same intention. | policy | service | observed |
04must proveConfirmed | A final job or step cannot transition to another status; late reports for settled jobs are discarded and logged, and another settlement is refused. | invariant | service | test |
05must proveConfirmed | Job progress cannot decrease, and settlement timestamps are present only on final jobs. | invariant | service, database | test |
06must proveConfirmed | A permanent task refusal ends the job with its safe explanation; transient failures are retried without copying their details into the job or execution history. | policy | service | test |
07Confirmed | Asynchronous job inputs contain identifying references and request context, with secrets and customer content retained outside the execution payload. | policy | service | documented |
08Confirmed | The monitor obtains the job’s step catalog from its published history, preserving the definition used for that execution rather than substituting the current declaration. | policy | service | test |
09must proveConfirmed | Each registered job kind must declare its business failure consequence or explicitly declare that failure changes nothing outside the job. | policy | service | test |
10must proveConfirmed | Workspace deletion removes its job records, steps, events and notices while preserving the deletion’s own scheduled and executing jobs. | lifecycle | service, database | observed |
11must proveConfirmed | Default progress rounds the fraction of settled steps to a percentage capped at one hundred; declared progress weights instead use the highest settled-step weight. no proof recorded yet | calculation | service | observed |
12must proveConfirmed | Execution continuation records the successor handle and continuation history together, accepts replay of the same move and refuses a source execution that does not match the job. | invariant | service | observed |