fix: wire clone — all snapshots + bounded R2 concurrency
Two fixes for muse clone correctness and speed:
1. wire_fetch returns ALL snapshots (not just tip) - The 'lazy fetch' comment was aspirational — never implemented - muse verify walks all commits and fails on every missing snapshot - Fix: collect all snapshot IDs from all returned commits and batch-load - Snapshot manifests are small (path→hash) so sending all is safe
2. _pack_objects_response bounded to 32 concurrent R2 GETs - Unbounded asyncio.gather on 665 objects floods R2 → rate limits + OOM - Fix: asyncio.Semaphore(32) caps concurrent backend.get() calls - All objects still returned; peak memory and R2 load stay bounded
TDD: 8 tests covering both behaviours, all green.
sha256:cc96d33afd14450354ddf00bad3f1996c588aee01c3fc7c5f2d359562afc9c2d
sha
sha256:6a0e77075c7f475bb524897a6496d3391725e98e41612ce8168948449337d798
snapshot
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:cc96d33afd14450354ddf00bad3f1996c588aee01c3fc7c5f2d359562afc9c2d --body "your comment"
No comments yet. Be the first to start the discussion.