gabriel / muse public
feat BREAKING transport task/streaming-object-fetch #1 / 1
gabriel · 62 days ago · Apr 15, 2026 · Diff

feat(transport): stream fetch_objects via msgpack.Unpacker for TTFO improvement

Replace buffered _execute_fetch + _parse_bundle with _iter_object_stream generator that feeds HTTP chunks into msgpack.Unpacker and yields ObjectPayload as frames arrive — callers write objects to disk before the full response is received.

Changes: - HttpTransport._iter_object_stream(): new streaming generator - HttpTransport.fetch_objects(): now sends Accept: application/x-msgpack-stream, yields from _iter_object_stream — returns Iterator[ObjectPayload] - LocalFileTransport.fetch_objects(): converted to generator (yield instead of append) - _build_request(): added extra_headers parameter - Protocol class fetch_objects signature updated to Iterator[ObjectPayload] - clone.py + pull.py: wrap iteration in try/except TransportError

sha256:ffc1f005a517c8c728b2dc4a04c478d673fb0b0b8ef51e8eafb91ecb3f5b6259 sha
sha256:7ba169813f47b1bb84b453c2e0dd56a0522bb454db745a0fcb85770bda0c6d15 snapshot
← Older Oldest on task/streaming-object-fetch
All commits
Newer → Latest on task/streaming-object-fetch

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