Now that backlog runs happen in isolated worktrees, the trunk clone sits idle while work lands on the remote. So a backlog run can now spawn a watcher session alongside it: ensureWatcher notices a run is starting, createWatcherSession opens a session in the clone running assist watch, and the clone keeps pulling and building as the branch moves. It’s gated behind a new worktree.watcher config key, which I’ve enabled for this repo.

Resuming a session whose worktree had been reaped used to fail outright. It now allocates a fresh tree and carryTranscriptToTree brings the transcript across, so resume works from a card that’s been sitting around since the tree was cleaned up.

Runs also nest under the card that launched them. toSessionRunInfo splits the run’s own identity out of toSessionInfo, so the sessions list shows a launcher with its runs underneath rather than a flat spray of cards with no indication of what started what.

On the review side, findings that couldn’t be anchored to a line in the diff are no longer dropped — partitionFindings splits them out and carriedUnanchoredFindings folds them into the review body instead, so a finding about a file that isn’t in the diff still gets said.