From 54d97374288b10358a849576b876b074620f5844 Mon Sep 17 00:00:00 2001 From: dave Date: Thu, 14 May 2026 19:26:22 +0000 Subject: [PATCH] huskies: merge 1060 --- server/src/agents/pool/pipeline/merge/runner.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/server/src/agents/pool/pipeline/merge/runner.rs b/server/src/agents/pool/pipeline/merge/runner.rs index 616067d5..f04026a2 100644 --- a/server/src/agents/pool/pipeline/merge/runner.rs +++ b/server/src/agents/pool/pipeline/merge/runner.rs @@ -138,6 +138,19 @@ impl AgentPool { return; } + // Story 1060: if the story was deleted while the merge was running, + // discard the result silently — no MergeFailure notification, no + // state-machine transition. Writing failure for a tombstoned story + // would emit a spurious "merge failed" notification to chat. + if crate::crdt_state::is_tombstoned(&sid) { + slog!( + "[merge] Merge for '{}' completed but story is tombstoned; skipping result write", + sid + ); + crate::crdt_state::delete_merge_job(&sid); + return; + } + let success = matches!( &report, Ok(r) if matches!(r.result, crate::agents::merge::MergeResult::Success { .. })