From 91b4e4ff7cc52f20568dc3950afd1e6cfe94183f Mon Sep 17 00:00:00 2001 From: Timmy Date: Thu, 14 May 2026 10:42:16 +0100 Subject: [PATCH] diag: log merge-reap values to debug disappearance bug Temporary diagnostic added to reap_stale_merge_jobs to surface the t, current_boot, and decoded values being compared on every reap pass. Will revert once the disappearance bug is understood. --- server/src/agents/pool/pipeline/merge/runner.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/server/src/agents/pool/pipeline/merge/runner.rs b/server/src/agents/pool/pipeline/merge/runner.rs index e6337759..426a3d07 100644 --- a/server/src/agents/pool/pipeline/merge/runner.rs +++ b/server/src/agents/pool/pipeline/merge/runner.rs @@ -39,10 +39,23 @@ impl AgentPool { if job.status != "running" { continue; } - let stale = match decode_server_start_time(job.error.as_deref()) { + let decoded = decode_server_start_time(job.error.as_deref()); + let stale = match decoded { Some(t) => t < current_boot, None => true, // Legacy (pid-encoded) or malformed: stale }; + // DIAGNOSTIC: log the values being compared so we can see why + // fresh jobs are being marked stale. Remove once the disappearance + // bug is understood. + slog!( + "[merge-reap] job='{}' status='{}' error={:?} decoded={:?} current_boot={} stale={}", + job.story_id, + job.status, + job.error, + decoded, + current_boot, + stale, + ); if stale { slog!( "[merge] Cleared stale Running merge job for '{}' (server restarted) — re-dispatching",