Surface current pack number during batched bootstrap

main

Commit

Soph4mo ago

Bootstrap's checkpoint loop already knew it was on "batch 3 of 8" and logged it via slog. Pipe that through to the live --progress ticker so the user can see which packfile is in flight on a long batched bootstrap, not just the cumulative byte counter.

The path: statsCollector grows a setPhase / getPhase pair backed by atomic.Pointer[string]; bstrap.Params grows an OnPhase func hook that the syncer wires to setPhase; the renderer reads the phase and appends "(pack 3/8)" to live frames (suppressed on the final frame, where it would read as still-running). The same hook also covers the one-shot push ("pushing pack") and the post-batch tag push ("pushing tags"), so the user sees something meaningful during whichever bootstrap shape runs.

Entire-Checkpoint: 35446bef46fa

Checkpoints

can you rebase soph/progress-indicators onto soph/smart-subdivision

Claude CodeOpus 4.7[1m]
View session
Checkpoint 1