fix(FN-4806): silently recover when worktree/branch reclaimed mid-retry
The executor's no-fn_task_done retry loop has two reclaim signals (retryAbortedDueToReclaim=true): (1) pre-retry liveness recheck where the task DB shows worktree/branch was cleared, and (2) session-start failure because the worktree path no longer exists. Both are engine self-heal situations triggered by FN-4546 stale-active-branch reclaim, FN-4742 self-healing removals, or related housekeeping paths — the agent never got a fair retry attempt. Previously these surfaced as task status=failed with error 'Worktree/branch reclaimed during no-fn_task_done retry — requeueing', fired onError, and burned the taskDoneRetryCount budget. Three legitimate problems followed: tasks accumulated spurious failures in the UI, the exhausted-budget branch escalated reclaimed tasks to in-review instead of retrying, and the noise masked the underlying worktree-removal regression (FN-4811). Now the reclaim branch silently: - clears stale worktree/branch metadata so the next pickup creates a fresh worktree - requeues to todo with preserveProgress - logs an informational 'engine self-heal, no failure' line - does NOT set status=failed, does NOT bump taskDoneRetryCount, does NOT call onError The genuine 'agent finished without calling fn_task_done after N retries' exhaustion path (retryAbortedDueToReclaim=false) is unchanged. Tests updated in packages/engine/src/__tests__/reliability-interactions/executor-no-task-done-vs-worktree-reclaim.test.ts to assert the new silent-recovery contract on all three reclaim paths. Fusion-Task-Id: FN-4806
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"id": "fusion-plugin-dependency-graph",
|
||||
"name": "Dependency Graph",
|
||||
"version": "0.1.0",
|
||||
"description": "Top-level dependency graph dashboard view",
|
||||
"dashboardViews": [
|
||||
{
|
||||
"viewId": "graph",
|
||||
"label": "Graph",
|
||||
"componentPath": "./dashboard-view",
|
||||
"icon": "Network",
|
||||
"placement": "more",
|
||||
"order": 40
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user