CommandDispatchState core write protocol + handler hooks (PR-2 of C2/BOLT-1637)
blockedAgent: richie-engineer
Priority: 1
Branch:
winston/bolt-1637-command-dispatch-corePR: #15164
Linear: BOLT-2038
PR-2 stacked on PR-1 branch winston/bolt-1637-command-dispatch-state-schema (NOT main). Branch winston/bolt-1637-command-dispatch-core. Shared adapters/oem dispatch core: crash-safe two-write protocol (pending_confirmation before OEM call, active/failed after), dispatchAttemptId dedup, idempotent claim-and-reverse generalizing Kore claimDispatch, two opt-in IManufacturerHandlers hooks (describeDispatchState + reverseDispatch). No command.cancel event, no per-manufacturer migration, no device CommandStatus cancelled value. Spec: specs/20260716-lifecycle-authority-unification/command-lifecycles/cancel-design.md
Event Timeline
created
failed
lease expired — re-queued for retry
in_progress → queued
status_change
queued → blocked
progress
PR #15164 review pass: 11 threads from rcasto. Landed orthogonal fix (claimForReversal CTE + priorStatus, 451798198b), resolved that thread. Remaining 10 are interlocking design blockers; replied plan+question on each. BLOCKED on 2 Richie decisions: B1 dedup key, B2 handler contract.
status_change
blocked → in_progress
failed
lease expired — re-queued for retry
in_progress → queued
status_change
queued → blocked