feat
BREAKING
wire
task/w16-snapshot-delta
#1 / 1
feat(wire): snapshot delta encoding in push stream
Wall 16 root cause: C frames sent full 1071-entry snapshot manifests for every commit (50 commits × 128KB = ~4MB per frame), exceeding CF's gRPC per-message limit of ~248KB.
Fix: delta-encode snapshots in _frame_generator. - First snapshot in stream: full manifest - Each subsequent: delta(added, removed) against previous - Frame size now proportional to what changed (2-5 files ≈ 1KB per delta) - Server reconstructs full manifests via stream-local _snap_manifest_cache
New: compute_snapshot_delta, apply_snapshot_delta in muse.core.mpack New: write_commit_pack accepts snapshot_deltas=[...] Tests: test_snapshot_delta.py (10), test_wire_snapshot_delta.py (8)
sha256:5a2df6e01f1482d1c058a7a5b12d1adad04c1985114ab930377398edb786640e
sha
+35
~8
−1
symbols
sha256:dc19dd1ca110866686432bdca8480a6dca90450aecfe47330ec04b8777ed6104
snapshot
+35
symbols added
~8
symbols modified
−1
symbol removed
0
dead code introduced
Semantic Changes
44 symbols
+
test_delta_smaller_than_full_for_typical_commit
function
function test_delta_smaller_than_full_for_typical_commit L140–154
+
test_c_frames_under_grpc_limit_large_repo
function
function test_c_frames_under_grpc_limit_large_repo L156–172
+
test_delta_chain_full_reconstruction
function
function test_delta_chain_full_reconstruction L254–283
+
test_delta_chain_references_valid_base
function
function test_delta_chain_references_valid_base L179–197
+
test_single_commit_sends_full_snapshot_no_deltas
function
function test_single_commit_sends_full_snapshot_no_deltas L204–215
+
test_subsequent_snapshots_are_deltas
function
function test_subsequent_snapshots_are_deltas L134–149
+
test_write_commit_pack_includes_snapshot_deltas
function
function test_write_commit_pack_includes_snapshot_deltas L222–239
+
test_write_commit_pack_no_deltas_key_when_empty
function
function test_write_commit_pack_no_deltas_key_when_empty L242–247
−
Wall 16 — Large C frame (~4MB commits) truncated at ~248KB mid-stream 🔴 ACTIVE
section Wall 16 — Large C frame (~4MB commits) truncated at ~248KB mid-stream 🔴 ACTIVE L532–606
+
Wall 16 — Large C frame (~4MB commits) truncated at ~248KB mid-stream ✅ FIXED
section Wall 16 — Large C frame (~4MB commits) truncated at ~248KB mid-stream ✅ FIXED L532–634
~
Wall log
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:5a2df6e01f1482d1c058a7a5b12d1adad04c1985114ab930377398edb786640e --body "your comment"
No comments yet. Be the first to start the discussion.