Skip to content

Regression: worktree add remains silent beyond five minutes before retry succeeds #1132

Description

@chubes4

Problem

A current workspace worktree add for one Homeboy branch emitted no stdout or stderr and exceeded a 300-second caller timeout:

studio wp datamachine-code workspace worktree add homeboy fix/13093-rustfmt-main \
  --from=origin/main \
  --task-url=https://github.com/Extra-Chill/homeboy/issues/13093 \
  --reuse-policy=isolated \
  --purpose=manual_agent_task \
  --cleanup-policy=remove_on_success

After timeout, targeted worktree get returned 404 and no directory existed. Retrying the identical command with a larger caller bound succeeded. No lock owner, queue position, active phase, durable request identity, or safe retry timing was emitted.

This regresses the bounded/observable add contracts from #1023 and #1026 on a workspace with roughly 124 worktree-like directories.

Expected

  • Persist and print operation identity before lock or capacity waiting.
  • Emit bounded phase/lock/queue progress before normal caller timeouts.
  • Enforce the aggregate operation deadline and return typed retryable status.
  • Timeout/retry is idempotent and states whether any reservation, branch, directory, or metadata committed.
  • Same-repository serialization remains observable; independent repositories proceed concurrently.
  • Deterministic acceptance coverage holds the relevant lock and proves bounded output plus clean retry.

AI assistance

OpenAI GPT-5.6 Sol via OpenCode executed the timed-out and successful retry, reconciled disk/registry state, deduplicated against #1023 and #1026, and drafted this report. Chris Huber is responsible for the issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions