bug(worktrees): madt_worktrees add blocks ~120s after the git worktree add already completed #469
Labels
No labels
breaking
bug
documentation
enhancement
epic
good first issue
help wanted
refactoring
resolution/duplicate
resolution/invalid
resolution/wontfix
security
severity/critical
severity/high
severity/low
severity/medium
status/abandoned
status/blocked
status/needs-decision
status/needs-info
status/needs-verification
testing
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sixfold-space/madtea#469
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
madt_worktrees action=adddid not return for over 120s and was moved to the background. The git work was already done almost immediately.What I saw
action=add(new branch, a foreign target viadir=).git worktree listalready showed the new worktree at the right sha and branch, the directory was on disk, and there were no index locks..gitis about 44M), so this is not a checkout-size cost.Read
The delay is in the wrapper's post-add step, not in
git worktree add. Candidates to investigate later:Repro
Run
madt_worktrees action=addon any repo. Compare when the tool returns against whengit worktree listfirst shows the new worktree. The gap is the bug.Acceptance
madt_worktrees addreturns promptly once the git op completes.Probably the same root as #470 (
status --jsonblocks 25-120s+ on cold calls).There I saw
madtea status --jsonblock 25-120s+ on the first calls of a session, with noremoteStale/remoteWarningfallback, then run under 2s once warm, even 8 at a time. The ~120s signature and the same candidates listed here (an unexpected network or fetch step, a lock wait) point at one unbounded cold-network/credential path shared byworktrees addandstatus. If the fix bounds that path once, it likely closes both.