gabriel / musehub public
feat patch task/bundle-push #2 / 3
AI Agent gabriel · 127 days ago · May 11, 2026 · Diff

feat: wire step 3 — presigned bundle upload (bundle-presign + unpack-bundle)

sha256:fa205f8bdf4a6a3adafb3c5117fadd0edb2a8bb0e8d1529cf12d35983c2e23b1 sha
+48 ~16 symbols
sha256:154478472c26ecc22661b9ea21f6f8e0f25de6dea0827392b75a66047f370828 snapshot
+48
symbols added
~16
symbols modified
0
dead code introduced
Semantic Changes 64 symbols
~ tests/test_wire_step3_upload.py .py 39 symbols added
+ _AUTH_CTX variable variable _AUTH_CTX L67–72
+ _BLOB_SIZE variable variable _BLOB_SIZE L57–57
+ _N_COMMITS variable variable _N_COMMITS L55–55
+ _N_OBJECTS variable variable _N_OBJECTS L56–56
+ _PRESIGN_GATE_MS variable variable _PRESIGN_GATE_MS L58–58
+ _TOTAL_GATE_MS variable variable _TOTAL_GATE_MS L60–60
+ _UNPACK_GATE_MS variable variable _UNPACK_GATE_MS L59–59
+ _make_repo function function _make_repo L119–129
+ _populate function function _populate L132–181
+ client function async_function client L80–94
+ ASGITransport import import ASGITransport L30–30
+ AsyncClient import import AsyncClient L30–30
+ AsyncSession import import AsyncSession L31–31
+ CommitRecord import import CommitRecord L41–41
+ MSignContext import import MSignContext L33–33
+ SnapshotRecord import import SnapshotRecord L41–41
+ annotations import import annotations L20–20
+ app import import app L35–35
+ blob_id import import blob_id L48–48
+ build_mpack import import build_mpack L38–38
+ compute_commit_id import import compute_commit_id L40–40
+ compute_snapshot_id import import compute_snapshot_id L40–40
+ datetime import import datetime L22–22
+ get_db import import get_db L34–34
+ httpx import import httpx L26–26
+ msgpack import import msgpack L27–27
+ muse_dir import import muse_dir L39–39
+ optional_signed_request import import optional_signed_request L33–33
+ pathlib import import pathlib L23–23
+ pytest import import pytest L28–28
+ pytest_asyncio import import pytest_asyncio L29–29
+ require_signed_request import import require_signed_request L33–33
+ time import import time L24–24
+ write_branch_ref import import write_branch_ref L41–41
+ write_commit import import write_commit L41–41
+ write_object import import write_object L37–37
+ write_snapshot import import write_snapshot L41–41
+ repo function async_function repo L102–112
+ test_upload_step3_performance_gate function async_function test_upload_step3_performance_gate L189–286
~ musehub/api/routes/wire.py .py 4 symbols added, 12 symbols modified
+ wire_push_bundle_presign import import wire_push_bundle_presign L48–48
+ wire_push_unpack_bundle import import wire_push_unpack_bundle L48–48
+ push_bundle_presign function async_function push_bundle_presign L444–472
+ push_unpack_bundle function async_function push_unpack_bundle L481–509
~ musehub/services/musehub_wire.py .py 2 symbols added
+ wire_push_bundle_presign function async_function wire_push_bundle_presign L1105–1121
+ wire_push_unpack_bundle function async_function wire_push_unpack_bundle L1124–1310
~ musehub/storage/backends.py .py 3 symbols added, 4 symbols modified
+ _bundle_key method method _bundle_key L354–355
+ get_bundle method async_method get_bundle L373–386
+ presign_bundle_put method async_method presign_bundle_put L357–371
~ exists

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