gabriel / musehub public
fix BREAKING dev
AI Agent gabriel · 155 days ago · May 19, 2026 · Diff

fix: port security checks inline, remove repo_id from MusehubCommit in tests

- wire_push_unpack_mpack: add zip bomb guard (mpack_max_decompressed_bytes) and blocked hash check with quarantine — parity with process_mpack_index_job - test_intel_fidelity, test_symbol_detail_pagination: replace MusehubCommit(repo_id=) with MusehubCommitRef rows — commits are globally content-addressed - conftest._make_commit_row: same fix; shared helper unblocks multiple test files - test_mpack_index_job_phase3: rewrite for synchronous inline unpack-mpack design - test_wire_fetch_step1: add get_mpack/put_mpack/presign_mpack_get to stub backend - test_wire_step3_upload: use build_wire_mpack instead of raw msgpack bytes - musehub_wire: add _is_ancestor_db via walk_dag_async; fix objects_written return key

sha256:b8884c81af5e135510894a537784c16158ee9c2c05d074f978611bbcb611ca10 sha
+96 ~346 −40 symbols
sha256:0349c7761f913701a8de5d6e6ba523aa81a57da5ed1121103127f1333b6f1380 snapshot
+96
symbols added
~346
symbols modified
−40
symbols removed
0
dead code introduced
Semantic Changes 482 symbols
~ musehub/services/musehub_wire.py .py 1 symbol added, 2 symbols modified
+ _is_ancestor_db function async_function _is_ancestor_db L319–344
~ musehub/templates/musehub/pages/docs_muse_wire.html .html 24 symbols added, 28 symbols removed, 13 symbols modified
− h2: Fetch stream section h2: Fetch stream L546–546
− h2: Frame format section h2: Frame format L133–133
− h2: Negotiation — ACK / NAK section h2: Negotiation — ACK / NAK L512–512
− h2: Object encodings section h2: Object encodings L752–752
− h2: Presigned fetch section h2: Presigned fetch L622–622
− h2: Presigned push section h2: Presigned push L406–406
− h2: Push session transcript section h2: Push session transcript L310–310
− h2: Push stream section h2: Push stream L158–158
− h3: COMMIT_PACK frame ( ) section h3: COMMIT_PACK frame ( ) L198–198
− h3: Compression pipeline section h3: Compression pipeline L798–798
− h3: END frame ( ) section h3: END frame ( ) L215–215
− h3: HEADER frame ( ) section h3: HEADER frame ( ) L167–167
− h3: HEADER frame — msgpack hex decode section h3: HEADER frame — msgpack hex decode L368–368
− h3: OBJECT frame ( ) section h3: OBJECT frame ( ) L180–180
− h3: Server response frames section h3: Server response frames L283–283
− h3: Shallow clone — parameter section h3: Shallow clone — parameter L574–574
− h3: Step 2 — R2 PUT section h3: Step 2 — R2 PUT L453–453
− h3: Step 2 — parallel R2 GETs section h3: Step 2 — parallel R2 GETs L683–683
− h3: Step 4 — (zero O frames) section h3: Step 4 — (zero O frames) L486–486
− h3: Thresholds section h3: Thresholds L413–413
− h3: Which path does a clone use? section h3: Which path does a clone use? L925–925
− h3: WireSnapshotDelta fields section h3: WireSnapshotDelta fields L270–270
− section#encodings section section#encodings L751–829
− section#framing section section#framing L132–154
− section#negotiate section section#negotiate L511–542
− section#presign-fetch section section#presign-fetch L621–722
− section#presign-push section section#presign-push L405–508
− section#transcript section section#transcript L309–402
+ h2: Fetch — MPack download section h2: Fetch — MPack download L345–345
+ h2: Fetch — individual objects section h2: Fetch — individual objects L487–487
+ h2: Fetch — per-object presign section h2: Fetch — per-object presign L439–439
+ h2: MPack binary format section h2: MPack binary format L226–226
+ h2: Push — MPack upload section h2: Push — MPack upload L122–122
+ h2: Snapshot delta encoding section h2: Snapshot delta encoding L299–299
+ h2: Wire types section h2: Wire types L544–544
+ h3: 503 — objects not yet indexed section h3: 503 — objects not yet indexed L401–401
+ h3: Byte-level layout — 5-section MPack header section h3: Byte-level layout — 5-section MPack header L274–274
+ h3: Error responses section h3: Error responses L205–205
+ h3: Integrity model section h3: Integrity model L257–257
+ h3: MPack integrity section h3: MPack integrity L615–615
+ h3: Other error responses section h3: Other error responses L414–414
+ h3: Reconstruction section h3: Reconstruction L317–317
+ h3: Section types section h3: Section types L245–245
+ h3: SnapshotDelta schema section h3: SnapshotDelta schema L307–307
+ h3: Step 2 — GET and verify the MPack section h3: Step 2 — GET and verify the MPack L383–383
+ h3: Step 2 — PUT MPack to section h3: Step 2 — PUT MPack to L158–158
+ h3: WireSnapshotDelta fields (inside MPack SNAPSHOTS section) section h3: WireSnapshotDelta fields (inside MPack SNAPSHOTS section) L590–590
+ section#fetch-objects section section#fetch-objects L486–513
+ section#fetch-presign section section#fetch-presign L438–483
+ section#mpack-format section section#mpack-format L225–295
+ section#snapshot-deltas section section#snapshot-deltas L298–341
+ section#wire-types section section#wire-types L543–600
~ tests/conftest.py .py 1 symbol modified
~ tests/factories.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L35–35
~ tests/test_api_snapshots.py .py 1 symbol added, 5 symbols modified
+ MusehubSnapshotRef import import MusehubSnapshotRef L35–35
~ tests/test_blame_page_perf.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L40–40
+ MusehubSnapshotRef import import MusehubSnapshotRef L40–40
~ _snap
~ tests/test_blob_page_perf.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L43–43
+ MusehubSnapshotRef import import MusehubSnapshotRef L43–43
~ _snap
~ tests/test_branch_reset.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L29–29
~ tests/test_clone_xs_unit.py .py 1 symbol modified
~ tests/test_context.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L31–31
~ tests/test_coupling_provider.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L33–33
~ tests/test_diff_page_ssr.py .py 1 symbol added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L48–48
~ tests/test_divergence.py .py 1 symbol added, 5 symbols modified
~ tests/test_entangle_provider.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L33–33
~ tests/test_intel_fidelity.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L30–30
~ tests/test_mist_advanced.py .py 2 symbols added, 8 symbols modified
~ tests/test_mist_phase8_smoke.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L33–33
+ MusehubSnapshotRef import import MusehubSnapshotRef L33–33
~ tests/test_mpack_delta_e2e.py .py 1 symbol removed, 1 symbol modified
− process_mpack_index_job import import process_mpack_index_job L29–29
~ tests/test_mpack_index_job_phase3.py .py 7 symbols added, 10 symbols removed, 4 symbols modified
− _push_mpack function async_function _push_mpack L155–186
− AsyncMock import import AsyncMock L28–28
− MusehubBackgroundJob import import MusehubBackgroundJob L31–31
− asyncio import import asyncio L17–17
− func function import func L26–26
− msgpack import import msgpack L22–22
− patch import import patch L28–28
− test_failed_job_resets_to_pending_for_retry function async_function test_failed_job_resets_to_pending_for_retry L327–401
− test_partial_minio_failure_retry_produces_correct_state function async_function test_partial_minio_failure_retry_produces_correct_state L192–265
− test_worker_full_lifecycle_pending_to_done function async_function test_worker_full_lifecycle_pending_to_done L269–323
+ _push_and_unpack function async_function _push_and_unpack L151–181
+ MusehubCommit import import MusehubCommit L26–26
+ MusehubSnapshot import import MusehubSnapshot L26–26
+ build_wire_mpack import import build_wire_mpack L31–31
+ test_unpack_mpack_idempotent function async_function test_unpack_mpack_idempotent L187–213
+ test_unpack_mpack_retry_after_rollback function async_function test_unpack_mpack_retry_after_rollback L251–297
+ test_unpack_mpack_writes_all_entities function async_function test_unpack_mpack_writes_all_entities L217–247
~ select
~ tests/test_mpack_phase2.py .py 1 symbol added, 2 symbols modified
+ presign_mpack_get method async_method presign_mpack_get L93–94
~ tests/test_mpack_phase3.py .py 1 symbol added, 2 symbols modified
+ presign_mpack_get method async_method presign_mpack_get L93–94
~ tests/test_musehub_context.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L36–36
~ tests/test_musehub_issues_branch_reachability.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L27–27
~ tests/test_musehub_issues_commit_graph.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L22–22
~ tests/test_musehub_labels.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L26–26
~ tests/test_musehub_proposals_touched_symbols.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L23–23
~ tests/test_musehub_search.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L43–43
~ tests/test_musehub_topics.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L32–32
~ tests/test_musehub_ui_commits_enhanced.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L47–47
~ tests/test_musehub_ui_commits_ssr.py .py 1 symbol added, 4 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L33–33
~ tests/test_musehub_ui_issue_detail_ssr.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L38–38
~ tests/test_musehub_ui_user_profile.py .py 1 symbol added, 3 symbols modified
~ tests/test_proposal_detail_delta_ssr.py .py 1 symbol added, 4 symbols modified
~ tests/test_proposal_reopen.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L28–28
~ tests/test_proposals_no_commit_meta.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L9–9
~ tests/test_push_xs_unit.py .py 1 symbol added, 1 symbol removed, 1 symbol modified
− test_p3_pushed_object_bytes_in_minio_match_content function function test_p3_pushed_object_bytes_in_minio_match_content L220–298
+ test_p3_pushed_mpack_in_minio_is_muse_format function function test_p3_pushed_mpack_in_minio_is_muse_format L220–288
~ tests/test_raw_endpoint.py .py 2 symbols added, 6 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L30–30
+ MusehubSnapshotRef import import MusehubSnapshotRef L30–30
~ tests/test_release_analysis_no_commit_meta.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L9–9
+ MusehubSnapshotRef import import MusehubSnapshotRef L9–9
~ tests/test_repository_no_commit_meta.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L9–9
+ MusehubSnapshotRef import import MusehubSnapshotRef L9–9
~ tests/test_search.py .py 1 symbol added, 3 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L68–68
~ tests/test_symbol_indexer_no_commit_meta.py .py 2 symbols added, 5 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L10–10
+ MusehubSnapshotRef import import MusehubSnapshotRef L10–10
~ tests/test_symbols_v2_p1_coupling_count.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L38–38
~ tests/test_symbols_v2_p4_intel_fields.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L45–45
~ tests/test_velocity_provider.py .py 1 symbol added, 2 symbols modified
+ MusehubCommitRef import import MusehubCommitRef L34–34
~ tests/test_walk_commit_delta_scale.py .py 1 symbol added, 1 symbol modified
+ MusehubCommitGraph import import MusehubCommitGraph L20–20
~ tests/test_wire_fetch_step1.py .py 1 symbol added, 2 symbols modified
+ parse_wire_mpack import import parse_wire_mpack L36–36
~ tests/test_wire_step3_upload.py .py 1 symbol added, 2 symbols modified
+ build_wire_mpack import import build_wire_mpack L38–38
← Older Oldest on dev
All commits
Newer → Latest on dev

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