Skip to content

fix: check lane branch for .DONE after grace period expires - #274

Merged
HenryLach merged 1 commit into
mainfrom
fix/done-branch-reconciliation
Mar 27, 2026
Merged

fix: check lane branch for .DONE after grace period expires#274
HenryLach merged 1 commit into
mainfrom
fix/done-branch-reconciliation

Conversation

@HenryLach

Copy link
Copy Markdown
Owner

When a tmux session exits without the poll detecting .DONE on the
filesystem, the engine now checks the lane git branch via
'git show :/.DONE' before declaring failure.

This handles the race condition where the worker completes all work,
commits .DONE to the lane branch, and exits — but the worktree
filesystem is stale or the poll timing barely misses the file.

Previously this was the #1 cause of false task failures in production
batches (seen in TP-065, TP-067, TP-072, TP-075, and user reports).

When a tmux session exits without the poll detecting .DONE on the
filesystem, the engine now checks the lane git branch via
'git show <branch>:<path>/.DONE' before declaring failure.

This handles the race condition where the worker completes all work,
commits .DONE to the lane branch, and exits — but the worktree
filesystem is stale or the poll timing barely misses the file.

Previously this was the #1 cause of false task failures in production
batches (seen in TP-065, TP-067, TP-072, TP-075, and user reports).
@HenryLach
HenryLach merged commit 49f27a0 into main Mar 27, 2026
1 check passed
@HenryLach
HenryLach deleted the fix/done-branch-reconciliation branch March 27, 2026 04:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant