01must proveProposed | The dispatcher runs every minute and is nudged when work is queued, publishes workspace, obligation and authorization pointers, and removes only entries accepted by the queue. | lifecycle | service | test |
02must proveProposed | A failed or rejected publication leaves the dispatch entries available for a later run. | invariant | service | test |
03must proveProposed | The worker invokes the owning application with the operation envelope only for the current authorization, acknowledges obsolete or repeated pointers and records the stale attempt without changing delivery state. | invariant | service | test |
04must proveProposed | A completed response stores the delivered record; a partial response retains progress and completed units until the remainder arrives, rejecting completion beyond the owed quantity. origin: D-P4-12 (build decision, not a product ruling): services-commerce:docs/migrations/obligation-register/README.md#D-P4-12 proved by ATS-COM-FUL-002-13, ATS-COM-FUL-003-06, ATS-COM-FUL-004-03, ATS-COM-FUL-004-08, ATS-COM-FUL-004-11, ATS-COM-FUL-004-12, ATS-COM-FUL-006-06, ATS-COM-FUL-008-08, ATS-COM-FUL-014-06, ATS-COM-FUL-018-08, TST-COM-FUL-018, TST-COM-FUL-023, TST-COM-FUL-024, TST-COM-FUL-040, TST-COM-FUL-078 | calculation | service, database | test |
05must proveProposed | Permanent refusal fails delivery and raises an exception, while retryable refusal or an unreachable application leaves delivery in flight for another attempt. | lifecycle | service | test |
06must proveProposed | The fifth queue delivery fails the obligation for exhausted attempts and raises its exception before the message is dead-lettered. origin: D-P4-07 (build decision, not a product ruling): services-commerce:docs/migrations/obligation-register/README.md#D-P4-07 | lifecycle | service | test |
07must proveProposed | An application can report delivery in progress and later complete, fail or report readiness through callbacks using its current authorization; repetition returns the stored result and obsolete authorization is rejected. origin: D-P4-09 (build decision, not a product ruling): services-commerce:docs/migrations/obligation-register/README.md#D-P4-09 | lifecycle | api, service | test |
08must proveProposed | Callback access is restricted to application service identities, rejects console and portal callers, and validates the request contract. | permission | api | observed |
09must proveProposed | An expired acknowledgement deadline causes one redispatch with an extended deadline, followed by acknowledgement-lost failure and an exception at the next expiry; the default deadline is one hour. origin: D-P4-08 (build decision, not a product ruling): services-commerce:docs/migrations/obligation-register/README.md#D-P4-08 | lifecycle | service | test |
10must proveProposed | Database lifecycle guards reject invalid transitions, permit completed obligations only to be superseded, retain cancellation and resolution as terminal states, and require authorization for delivery in flight. | invariant | database | test |
11must proveProposed | A sold line can have only one obligation for each operation and unit, preventing duplicate obligations on retried placement. | invariant | database | test |
12Proposed | The application role can append delivery attempts but cannot alter or remove the attempt history. | invariant | database | test |
13Proposed | The worker logs a warning and acknowledges terminate and allocation-release operations without delivering them while no document produces them. | policy | service | observed |