gabriel / muse public
feat minor feat/object-pack-client #1 / 1
AI Agent gabriel · 65 days ago · Apr 12, 2026 · Diff

feat: add pack endpoint client for MWP phase 2a

Replace N presigned PUT round-trips with M pack POSTs (M = ceil(N/1000)) for objects ≤ 1 MB. Objects > 1 MB still use presign/direct R2.

- transport.py: add push_object_pack() to MuseTransport Protocol, HttpTransport, and LocalFileTransport - push.py: add PACK_OBJECT_THRESHOLD/PACK_MAX_OBJECTS/PACK_MAX_BYTES constants; add _push_objects_as_packs() helper; refactor _push_mwp() phase 2 into 2a (pack, small objects) + 2b (presign, large objects); 404 fallback to presign-all if server does not support pack endpoint

7476 objects → 8 POSTs instead of 7476 TLS handshakes.

sha256:784412d35bb6e2733b0d96d76c7db7b86ce9e2e70de69a88ede0bf6623069b13 sha
sha256:403ef09f3a43dcf83fd75d097ed0a41ffd2f11254a50f45db5a32d7bf2b044b6 snapshot
← Older Oldest on feat/object-pack-client
All commits
Newer → Latest on feat/object-pack-client

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:784412d35bb6e2733b0d96d76c7db7b86ce9e2e70de69a88ede0bf6623069b13 --body "your comment"