gabriel / muse public
feat patch push task/mwp-cleanup #2 / 7
AI Agent gabriel · 48 days ago · Apr 24, 2026 · Diff

feat(push): Phase D — CF Worker routing via pack_origin

Add _post_object_pack() — sends object batches to the CF Worker's POST /push/object-pack endpoint (native R2 binding, ~3–8 ms/obj via Promise.all), bypassing Cloudflare's 100 MB proxy body limit.

Add pack_origin param to _push_stream(): when RemoteInfo.pack_origin is set, all objects go to the Worker; commits+snapshots go via push/stream (objects=[]). Without pack_origin (local hub), all objects travel in the push/stream body — existing path unchanged.

Wire pack_origin through run_cmd_push() from remote_info.get('pack_origin').

Server side (wire_refs, /internal/register-objects, Settings.pack_worker_url) was already implemented. Phase D completes the CLI half.

TDD: test_wire_pack_post.py — 16 tests covering _post_object_pack unit tests, _parse_remote_info pack_origin parsing, and _push_stream routing.

sha256:da27cf10611acb688714eb4c9d01ba10908640606d2ab0ccf88b61040990a789 sha
sha256:cb98f138613f693c1db03ad6ba733f208b1a6b64056f949b1d393cb8fe9b98cf snapshot

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:da27cf10611acb688714eb4c9d01ba10908640606d2ab0ccf88b61040990a789 --body "your comment"