FORKLINEDELIVERY LABLoading execution recordOriginal workbench ↗

THE QUEUE IS NOT THE FINISH LINE

The event vanished.
The ticket did not.

Test the gap between approving an order and carrying out its delivery. Keep the receiver’s receipt, even when the supporting chain changes.

Step 0

Loading the recorded database run…

COMPARISON CONSUMER

Check only at enqueue

Same waiting rule

Confirms the event before queueing; skips revalidation when sending. This intentionally limited comparison is not a production indexer.

0Receiver tickets
0Currently orphan-backed
0Worker receipts

Durable outbox

Independent receiver ledger

FORKLINE WORKER

Recheck, then reconcile

Single worker, local lab

Rechecks the observed head before sending. A missing acknowledgement pauses work until the receiver’s outcome is reconciled.

0Receiver tickets
0Currently orphan-backed
0Worker receipts

Durable outbox

Independent receiver ledger

WHAT THIS STEP ESTABLISHES

A recorded run is not a live mainnet guarantee.

RUN IT AGAINST REAL LOCAL STORAGE

One command to reproduce.
Then break your assumptions.

The local lab uses the same page with active controls, a SQLite outbox, a loopback HTTP receiver and a second SQLite ledger. The hosted page steps through those executed records. It does not secretly call a delivery service.

npm ci
npm run evm
npm run outbox:record
npm run lab
# open the printed local URL with ?live=1

Boundaries that matter

A reorg after dispatch can still orphan a ticket. The worker retains its receipt and pauses; it cannot take the ticket back. Idempotency is provided by this receiver, not by every external API.

The lab trusts block-hash-pinned local-EVM observations. Confirmation waits are not consensus finality. It is a single-worker test adapter, not a production security review or multi-worker queue.

Raw SQLite files and a separate Python ledger check are included in the executed evidence. Synthetic orders only; no measured user or financial outcome.