Third review round follow-through: enqueue_tx stamp source, sweep_expired handle form, with_tx signature, and B-block ambiguity pins
This commit is contained in:
1 parent
08dc1bf011
commit
83767e880b
11 files changed
+258
-101
No files matched your search
@@ -1,6 +1,6 @@
|
||||
---
|
||||
status: draft
|
||||
last_updated: 2026-10-07 (ADR-021 — third review round: tx reads, claimed_at, schedule queue validation)
|
||||
last_updated: 2026-10-07 (ADR-021 + third-round follow-through: handle-form sweep_expired, ack_batch predicate, opts types)
|
||||
---
|
||||
|
||||
# Queues, scheduler, outbox — semantics depth
|
||||
@@ -88,9 +88,10 @@ made under; the ADRs carry the WHY.
|
||||
▼
|
||||
(gone)
|
||||
|
||||
expires lapse (any state) — sweep_expired(q) moves the row to
|
||||
dead with last_error='expired'; also enforces dead-letter
|
||||
retention. ack/cancel leave no row; get_job sees dead rows.
|
||||
expires lapse (any state) — sweep_expired() on the queue handle
|
||||
moves the row to dead with last_error='expired'; also enforces
|
||||
dead-letter retention. ack/cancel leave no row; get_job sees
|
||||
dead rows.
|
||||
```
|
||||
|
||||
- **States**: `pending` → `processing` → `dead` (+ absence:
|
||||
@@ -151,7 +152,9 @@ made under; the ADRs carry the WHY.
|
||||
|
||||
## Sweep / maintenance (ADR-010 §5–§6)
|
||||
|
||||
- `sweep_expired(queue)` moves *every* past-`expires_at` row (pending
|
||||
- `sweep_expired()` on the queue handle (the queue-scoped form,
|
||||
[ADR-019](decisions/019-mechanism-handle-surfaces.md) §1) moves
|
||||
*every* past-`expires_at` row (pending
|
||||
**and** processing) to dead, and enforces dead-letter retention —
|
||||
the **no-stranded-rows property**
|
||||
([ADR-010](decisions/010-queue-semantics-depth.md) §5): a job with
|
||||
|
||||
Reference in new issue
Block a user