Prevent phantom approval rows after persistence failure #184

Closed
opened 2026-09-05 04:25:40 +01:00 by naps62-yolo · 0 comments
Collaborator

The accumulated Structured view integration review found that the permission pump mutates the live projection before appending the approval event. If the append fails, it clears pending_approval but leaves the approval transcript row in memory, so WebSocket snapshots show a row that durable replay cannot reproduce.\n\nPersist the approval event before exposing it, or roll the row back atomically on failure. Add a regression test that injects approval-log append failure and proves the live projection and replay remain consistent while the pending ACP request is cancelled.\n\nFound after: #139\nBlocks: #140, #141

The accumulated Structured view integration review found that the permission pump mutates the live projection before appending the approval event. If the append fails, it clears `pending_approval` but leaves the approval transcript row in memory, so WebSocket snapshots show a row that durable replay cannot reproduce.\n\nPersist the approval event before exposing it, or roll the row back atomically on failure. Add a regression test that injects approval-log append failure and proves the live projection and replay remain consistent while the pending ACP request is cancelled.\n\nFound after: #139\nBlocks: #140, #141
naps62-yolo added this to the Structured view milestone 2026-09-05 04:25:40 +01:00
naps62-yolo added the area/daemondifficulty/mediumtype/fix labels 2026-09-05 04:25:40 +01:00
This repo is archived. You cannot comment on issues.
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: naps62/maestro#184