You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Feature request: show progress feedback during worktree setup #54
When running treehouse get on a large repository, the only feedback shown is a single static message:
🌳 Setting up worktree...
There is no indication of what step is running or how long it will take. For large repos where git fetch can take a significant amount of time, this leaves the user waiting with no visibility into progress.
Proposed Solution
Add step-by-step progress output to internal/pool/pool.go during the worktree setup flow, so users can see what is happening and roughly how long to expect. For example:
🌳 Setting up worktree...
🌳 Fetching from origin...
🌳 Creating worktree...
🌳 Running post-create hooks...
🌳 Done.
Each message would be printed to stderr as the corresponding step begins.
It would be great if we can have something like a progress bar, not sure if that's feasible though.
Motivation
Large repositories can take a long time to fetch, and without any feedback users have no way to know if the process is still running or how long to wait.
Incremental step messages make the tool feel more responsive and trustworthy.
This is a low-effort change with high usability impact.
changed the title [-]feat: show progress feedback during worktree setup[/-][+]Feature request: show progress feedback during worktree setup[/+]on Jul 6, 2026
Speaking as Kun's firstmate: stale-restamp — still real on latest main (db06078c). No open PR covers this.
internal/pool/pool.goacquire still prints a single 🌳 Setting up worktree... then runs vcs.Fetch with no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leaving ready-for-pr.
contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main VISION.md; inspected acquire stderr around the fetch/create/hooks path):
Isolation and reuse: aligns — progress text does not change who can claim a slot.
Safe lifecycle operations: aligns — diagnostics on stderr, no destructive change.
Ownership and interface: aligns — users should see why setup is slow; keep the 🌳 prefix; keep machine-facing stdout clean.
Scope and evaluation: aligns as step messages on the existing setup path. No daemon or extra Git workflow surface.
Speaking as Kun's firstmate: stale-restamp — still real on latest main (6d33753e). No open PR covers this.
internal/pool/pool.goacquire still prints a single 🌳 Setting up worktree... then runs vcs.Fetch with no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leaving ready-for-pr.
contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main VISION.md; inspected acquire stderr around the fetch/create/hooks path on 6d33753e):
Isolation and reuse: aligns — progress text does not change who can claim a slot.
Safe lifecycle operations: aligns — diagnostics on stderr, no destructive change.
Ownership and interface: aligns — users should see why setup is slow; keep the 🌳 prefix; keep machine-facing stdout clean.
Scope and evaluation: aligns as step messages on the existing setup path. No daemon or extra Git workflow surface.
Speaking as Kun's firstmate: stale-restamp — still real on latest main (476002d / v3.1.1). No open PR covers this.
internal/pool/pool.go acquire path still prints a single 🌳 Setting up worktree... then runs fetch/create/hooks with no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leaving ready-for-pr.
contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main VISION.md; inspected acquire stderr around the fetch/create/hooks path on 476002d):
Isolation and reuse: aligns — progress text does not change who can claim a slot.
Safe lifecycle operations: aligns — diagnostics on stderr, no destructive change.
Ownership and interface: aligns — users should see why setup is slow; keep the 🌳 prefix; keep machine-facing stdout clean.
Scope and evaluation: aligns as step messages on the existing setup path. No daemon or extra Git workflow surface.
Speaking as Kun's firstmate: stale-restamp — still real on latest main (acf59c8 / v3.1.4). No open PR covers this.
The acquire path in internal/pool/pool.go still prints a single 🌳 Setting up worktree... and then runs fetch, create, and hooks with no per-step stderr. The requested step lines are still missing. Leaving ready-for-pr.
contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main VISION.md @ acf59c8):
Isolation and reuse: aligns — progress text does not change who can claim a slot.
Safe lifecycle operations: aligns — diagnostics on stderr, no destructive change.
Ownership and interface: aligns — users should see why setup is slow; keep the 🌳 prefix; keep machine-facing stdout clean.
Scope and evaluation: aligns as step messages on the existing setup path. No daemon or extra Git workflow surface.
Speaking as Kun's firstmate: thanks @bearomorphism. #192 is the PR for this. I've approved its fork CI and will review it once checks finish. I'm tracking it there, so I'm not labeling anything new here.
Speaking as Kun's firstmate: stale-restamp. This is still real on latest main (f168807): the acquire path in internal/pool/pool.go still prints only 🌳 Setting up worktree.... The help is open PR #192 from @bearomorphism, which is green and waiting on Kun's decision. Tracking it there.
Activity
[-]feat: show progress feedback during worktree setup[/-][+]Feature request: show progress feedback during worktree setup[/+]kunchenguid commentedon Aug 20, 2026
Speaking as Kun's firstmate: in scope. Labeling
ready-for-pr.VISION (per rule):
Please print each step to stderr as it starts. Do not add a daemon or extra Git workflow surface.
kunchenguid commentedon Sep 3, 2026
Speaking as Kun's firstmate: stale-restamp — still real on latest main (
db06078c). No open PR covers this.internal/pool/pool.goacquirestill prints a single🌳 Setting up worktree...then runsvcs.Fetchwith no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leavingready-for-pr.contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main
VISION.md; inspectedacquirestderr around the fetch/create/hooks path):kunchenguid commentedon Sep 17, 2026
Speaking as Kun's firstmate: stale-restamp — still real on latest main (
6d33753e). No open PR covers this.internal/pool/pool.goacquirestill prints a single🌳 Setting up worktree...then runsvcs.Fetchwith no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leavingready-for-pr.contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main
VISION.md; inspectedacquirestderr around the fetch/create/hooks path on6d33753e):kunchenguid commentedon Oct 2, 2026
Speaking as Kun's firstmate: stale-restamp — still real on latest main (
476002d/ v3.1.1). No open PR covers this.internal/pool/pool.goacquire path still prints a single🌳 Setting up worktree...then runs fetch/create/hooks with no per-step stderr. The requested fetch / create / post-create step lines are still missing. Leavingready-for-pr.contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main
VISION.md; inspected acquire stderr around the fetch/create/hooks path on476002d):kunchenguid commentedon Oct 17, 2026
Speaking as Kun's firstmate: stale-restamp — still real on latest main (
acf59c8/ v3.1.4). No open PR covers this.The acquire path in
internal/pool/pool.gostill prints a single🌳 Setting up worktree...and then runs fetch, create, and hooks with no per-step stderr. The requested step lines are still missing. Leavingready-for-pr.contract-class: restore (promised interface: callers should see what setup is doing; extra stderr step labels, not a new worktree path).
VISION per-rule (main
VISION.md@acf59c8):no-mistakes(ci): Fixed preserve-hook-terminals. Hooks now receive the…
bearomorphism commentedon Oct 19, 2026
PR is ready
kunchenguid commentedon Oct 20, 2026
Speaking as Kun's firstmate: thanks @bearomorphism. #192 is the PR for this. I've approved its fork CI and will review it once checks finish. I'm tracking it there, so I'm not labeling anything new here.
kunchenguid commentedon Nov 3, 2026
Speaking as Kun's firstmate: stale-restamp. This is still real on latest
main(f168807): the acquire path ininternal/pool/pool.gostill prints only🌳 Setting up worktree.... The help is open PR #192 from @bearomorphism, which is green and waiting on Kun's decision. Tracking it there.