enrich: start the branch cache refresh in its own session - #436
Conversation
rt cd runs inside the shell's $(...), which shares the shell's process group. The warm-cache revalidation it kicked off stayed in that group for its whole network round trip, so herdr (and flock's launcher, waiting for the pane to go idle after rt cd) read the pane as busy for 10 to 15 seconds after the picker closed. detached: true gives it a session of its own, as rt's other background spawns already do. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LW34UkBwoPSwp672E7Bh3Y
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. Warning Review limit reachedNext included review available in 50 minutes. View limit detailsLimit details: You’ve used the included review currently available. Your 84 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Your organization has reached its usage spending cap. Adjust your spending cap in the billing tab. Review configuration: ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
Included review availability: 0 reviews are currently available. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour. 📝 WalkthroughWalkthroughThe cache refresh spawn options now come from an exported helper. The helper preserves the child environment, ignores all three stdio streams, and sets detached mode. A test checks these option values. ChangesCache refresh process spawning
Priority: ➖ Normal Estimated code review effort: 2 (Simple) | ~8 minutes Change: Bug fix Merge Risk: ⚪ Minimal · up to The cache refresh is configured to run detached, and the focused test checks its spawn options. No actionable merge-blocking risk is evidenced; the PR is ready for normal checks. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01LW34UkBwoPSwp672E7Bh3Y
rt cd: the background cache refresh leaves the shell's process group
rt cdruns inside the shell's$(...), which shares the shell's process group. With a warm branch cache, the picker kicks off a background revalidation (spawnCacheRefresh) that stayed in that group for its whole GitLab/Linear round trip. herdr counts it as the pane's foreground job, so flock's launcher, which waits for the pane to go idle afterrt cd, came back 10 to 15 seconds late.What changed
spawnCacheRefreshspawns withdetached: true, as rt's other background spawns (trash.ts,prune.ts,user-path.ts) already do.cacheRefreshSpawnOptions()so a test can pin them.Verification
enrich-refresh-detached.test.ts; the enrich suite (35 tests) passes.Bun.spawnchild inside$(...)stays in the shell's pgid; withdetached: trueit gets its own.🤖 Generated with Claude Code
https://claude.ai/code/session_01LW34UkBwoPSwp672E7Bh3Y
Summary by CodeRabbit