From 067c10e388fc0a3057799387587413243300f79f Mon Sep 17 00:00:00 2001 From: Fusion Date: Thu, 14 May 2026 16:06:00 -0700 Subject: [PATCH] =?UTF-8?q?fix(FN-4508):=20complete=20Step=203=20=E2=80=94?= =?UTF-8?q?=20invalidate=20stale-resolved=20cache=20metadata?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fusion-Task-Id: FN-4508 Fusion-Task-Lineage: 948a9cae-3975-4f15-bd47-2f88b379171d --- packages/engine/src/self-healing.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/packages/engine/src/self-healing.ts b/packages/engine/src/self-healing.ts index 14378ba92..58ef1c829 100644 --- a/packages/engine/src/self-healing.ts +++ b/packages/engine/src/self-healing.ts @@ -1481,7 +1481,19 @@ export class SelfHealingManager { startPoint: task.baseCommitSha ?? task.mergeDetails?.mergeTargetBranch ?? "main", }); - if (inspection.kind === "stale" || inspection.kind === "stale-resolved") { + if (inspection.kind === "stale") { + continue; + } + if (inspection.kind === "stale-resolved") { + await this.store.updateTask(task.id, { + worktree: null, + branch: null, + baseCommitSha: null, + }); + await this.store.logEntry( + task.id, + `[recovery] cache-invalidate ${task.id} branch=${task.branch ?? "?"} reason=stale-resolved-no-live-ref-or-mapping`, + ); continue; } if (inspection.kind === "tip-already-merged") {