gabriel / musehub public
refactor BREAKING task/rip-legacy-pack #1 / 1
AI Agent gabriel · 160 days ago · Apr 18, 2026 · Diff

refactor: delete legacy /fetch and /fetch/objects routes and all associated code

- Delete POST /{owner}/{slug}/fetch route and handler (wire.py) - Delete POST /{owner}/{slug}/fetch/objects route and handler (wire.py) - Delete _stream_objects, _pack_objects_response, _stream_pack_response helpers - Delete _STREAM_CHUNK_BYTES and _MSGPACK_STREAM_CT constants (only used by deleted code) - Delete wire_fetch() service function (musehub_wire.py) - Delete WireFetchResponse and WireFetchObjectsRequest models (models/wire.py) - Delete 7 test files that exclusively tested the legacy two-phase protocol: test_wire_protocol.py, test_wire_fetch_all_snapshots.py, test_wire_fetch_concurrency.py, test_wire_fetch_decompression.py, test_wire_object_streaming.py, test_clone_integrity.py, test_wire_stress_performance.py - Update module docstrings to reflect active-only endpoints

sha256:a678e4eba10fffa5d5d7c248b8cf4f56eeb7d85b9521caa596b783b61dff53a9 sha
~29 −333 symbols
sha256:ab1762f87cb9519b48a2ad0a603088badfe0f659ed43587dec9db2a070403f89 snapshot
~29
symbols modified
−333
symbols removed
0
dead code introduced
Semantic Changes 362 symbols
~ tests/test_clone_integrity.py .py 26 symbols removed
− _clone_and_verify function async_function _clone_and_verify L155–213
− _corrupt_with_compressed function function _corrupt_with_compressed L78–85
− _get_backend function function _get_backend L73–75
− _mp function function _mp L65–66
− _push_full_bundle function async_function _push_full_bundle L88–152
− _sha256_oid function function _sha256_oid L48–49
− _utc_now function function _utc_now L69–70
− _verify_integrity function function _verify_integrity L52–62
− AsyncClient import import AsyncClient L35–35
− AsyncSession import import AsyncSession L36–36
− StrDict import import StrDict L40–40
− annotations import import annotations L26–26
− compute_commit_id import import compute_commit_id L39–39
− compute_snapshot_id import import compute_snapshot_id L39–39
− datetime import import datetime L31–31
− factory_create_repo import import factory_create_repo L38–38
− hashlib import import hashlib L28–28
− msgpack import import msgpack L33–33
− pytest import import pytest L34–34
− stat import import stat L29–29
− timezone import import timezone L31–31
− zlib import import zlib L30–30
− test_clone_integrity_fresh_repo function async_function test_clone_integrity_fresh_repo L222–254
− test_clone_integrity_legacy_compressed_objects function async_function test_clone_integrity_legacy_compressed_objects L258–293
− test_clone_integrity_multiple_commits function async_function test_clone_integrity_multiple_commits L359–394
− test_corrupted_object_omitted_and_deleted_from_r2 function async_function test_corrupted_object_omitted_and_deleted_from_r2 L297–355
~ tests/test_wire_fetch_all_snapshots.py .py 19 symbols removed
− _mp function function _mp L37–38
− _push_commit_chain function async_function _push_commit_chain L49–105
− _sha256_oid function function _sha256_oid L45–46
− _utc function function _utc L41–42
− AsyncClient import import AsyncClient L26–26
− AsyncSession import import AsyncSession L27–27
− StrDict import import StrDict L30–30
− annotations import import annotations L18–18
− datetime import import datetime L22–22
− factory_create_repo import import factory_create_repo L29–29
− hashlib import import hashlib L20–20
− msgpack import import msgpack L24–24
− pytest import import pytest L25–25
− timezone import import timezone L22–22
− uuid import import uuid L21–21
− test_clone_then_verify_all_snapshots_present function async_function test_clone_then_verify_all_snapshots_present L232–275
− test_wire_fetch_have_excludes_snapshots_for_known_commits function async_function test_wire_fetch_have_excludes_snapshots_for_known_commits L154–194
− test_wire_fetch_more_than_100_snapshots function async_function test_wire_fetch_more_than_100_snapshots L198–228
− test_wire_fetch_returns_all_snapshots_not_just_tip function async_function test_wire_fetch_returns_all_snapshots_not_just_tip L114–150
~ tests/test_wire_fetch_concurrency.py .py 23 symbols removed
− _CONCURRENCY_LIMIT variable variable _CONCURRENCY_LIMIT L37–37
− _get_backend function function _get_backend L52–54
− _mp function function _mp L40–41
− _push_and_commit_to_r2 function async_function _push_and_commit_to_r2 L57–98
− _sha256_oid function function _sha256_oid L48–49
− _utc function function _utc L44–45
− AsyncClient import import AsyncClient L29–29
− AsyncSession import import AsyncSession L30–30
− StrDict import import StrDict L35–35
− annotations import import annotations L19–19
− asyncio import import asyncio L21–21
− datetime import import datetime L25–25
− db import import db L34–34
− factory_create_repo import import factory_create_repo L33–33
− hashlib import import hashlib L22–22
− msgpack import import msgpack L27–27
− pytest import import pytest L28–28
− stat import import stat L23–23
− timezone import import timezone L25–25
− update import import update L31–31
− uuid import import uuid L24–24
− test_fetch_objects_all_correct_with_bounded_concurrency function async_function test_fetch_objects_all_correct_with_bounded_concurrency L166–197
− test_fetch_objects_bounded_concurrency function async_function test_fetch_objects_bounded_concurrency L102–162
~ tests/test_wire_fetch_decompression.py .py 22 symbols removed
− _compress function function _compress L52–53
− _corrupt_with_compressed function function _corrupt_with_compressed L62–74
− _fetch_objects function async_function _fetch_objects L96–116
− _get_backend function function _get_backend L56–59
− _mp function function _mp L48–49
− _push_raw function async_function _push_raw L77–93
− _sha256_oid function function _sha256_oid L44–45
− AsyncClient import import AsyncClient L32–32
− AsyncSession import import AsyncSession L33–33
− StrDict import import StrDict L36–36
− annotations import import annotations L24–24
− factory_create_repo import import factory_create_repo L35–35
− hashlib import import hashlib L26–26
− msgpack import import msgpack L30–30
− pytest import import pytest L31–31
− stat import import stat L27–27
− zlib import import zlib L28–28
− test_fetch_objects_content_passes_hash_verification function async_function test_fetch_objects_content_passes_hash_verification L172–189
− test_fetch_objects_mixed_compressed_and_plain function async_function test_fetch_objects_mixed_compressed_and_plain L193–213
− test_fetch_objects_plain_bytes_not_double_decompressed function async_function test_fetch_objects_plain_bytes_not_double_decompressed L154–168
− test_fetch_objects_returns_plain_bytes_for_legacy_compressed function async_function test_fetch_objects_returns_plain_bytes_for_legacy_compressed L125–150
− test_fetch_objects_unknown_oid_not_in_response function async_function test_fetch_objects_unknown_oid_not_in_response L217–238
~ tests/test_wire_object_streaming.py .py 59 symbols removed
− TestDocstrings class class TestDocstrings L610–623
− test_fetch_objects_route_has_docstring method method test_fetch_objects_route_has_docstring L616–618
− test_msgpack_stream_ct_constant_documented_in_module method method test_msgpack_stream_ct_constant_documented_in_module L620–623
− test_stream_objects_has_docstring method method test_stream_objects_has_docstring L613–614
− TestE2E class class TestE2E L424–483
− test_empty_object_ids_returns_200_empty_body method async_method test_empty_object_ids_returns_200_empty_body L451–465
− test_private_repo_unauthenticated_returns_403 method async_method test_private_repo_unauthenticated_returns_403 L467–483
− test_push_then_stream_fetch_roundtrip method async_method test_push_then_stream_fetch_roundtrip L427–449
− TestIntegration class class TestIntegration L298–345
− test_multiple_objects_all_received method async_method test_multiple_objects_all_received L301–324
− test_partial_oids_returns_only_known method async_method test_partial_oids_returns_only_known L326–345
− TestPerformance class class TestPerformance L489–536
− test_20_objects_under_200ms method async_method test_20_objects_under_200ms L513–536
− test_single_object_under_50ms method async_method test_single_object_under_50ms L492–511
− TestSchema class class TestSchema L213–292
− test_each_object_has_required_keys method async_method test_each_object_has_required_keys L235–255
− test_fetch_objects_returns_msgpack_stream_content_type method async_method test_fetch_objects_returns_msgpack_stream_content_type L216–233
− test_object_content_matches_pushed_bytes method async_method test_object_content_matches_pushed_bytes L257–274
− test_unknown_oid_produces_empty_stream method async_method test_unknown_oid_produces_empty_stream L276–292
− TestSecurity class class TestSecurity L542–604
− test_corrupt_object_omitted_from_stream method async_method test_corrupt_object_omitted_from_stream L545–564
− test_empty_object_ids_accepted method async_method test_empty_object_ids_accepted L566–580
− test_unauthenticated_public_repo_fetch_succeeds method async_method test_unauthenticated_public_repo_fetch_succeeds L582–604
− TestStress class class TestStress L351–418
− test_100_objects_all_received method async_method test_100_objects_all_received L354–372
− test_stream_arrives_before_slowest_r2_fetch method async_method test_stream_arrives_before_slowest_r2_fetch L374–418
− TestUnit class class TestUnit L174–207
− test_concatenated_msgpack_parseable_by_unpacker method method test_concatenated_msgpack_parseable_by_unpacker L189–196
− test_empty_obj_map_yields_nothing method method test_empty_obj_map_yields_nothing L181–187
− test_msgpack_unpacker_partial_feed method method test_msgpack_unpacker_partial_feed L198–207
− test_stream_content_type_constant_value method method test_stream_content_type_constant_value L177–179
− _OWNER variable variable _OWNER L42–42
− _mp function function _mp L55–56
− _parse_stream function function _parse_stream L59–63
− _push_object function async_function _push_object L71–116
− _push_objects_batch function async_function _push_objects_batch L119–168
− _sha256_oid function function _sha256_oid L51–52
− _stream_headers function function _stream_headers L66–68
− _utc_now function function _utc_now L47–48
− AsyncClient import import AsyncClient L31–31
− AsyncMock import import AsyncMock L27–27
− AsyncSession import import AsyncSession L32–32
− JSONObject import import JSONObject L37–37
− _MSGPACK_STREAM_CT import import _MSGPACK_STREAM_CT L36–36
− _stream_objects import import _stream_objects L36–36
− annotations import import annotations L19–19
− asyncio import import asyncio L21–21
− datetime import import datetime L26–26
− db import import db L34–34
− factory_create_repo import import factory_create_repo L35–35
− hashlib import import hashlib L22–22
− inspect import import inspect L23–23
− msgpack import import msgpack L29–29
− patch import import patch L27–27
− pytest import import pytest L30–30
− time import import time L24–24
− timezone import import timezone L26–26
− uuid import import uuid L25–25
− pytestmark variable variable pytestmark L39–39
~ tests/test_wire_protocol.py .py 134 symbols removed
− _EMPTY_OID variable variable _EMPTY_OID L1831–1831
− _make_commit function function _make_commit L44–55
− _make_object function function _make_object L58–64
− _make_snapshot function function _make_snapshot L67–72
− _mp function function _mp L77–79
− _sha256_id function function _sha256_id L39–41
− _utc_now function function _utc_now L35–36
− AsyncClient import import AsyncClient L23–23
− AsyncSession import import AsyncSession L24–24
− JSONObject import import JSONObject L30–30
− MusehubCollaborator import import MusehubCollaborator L27–27
− StrDict import import StrDict L30–30
− annotations import import annotations L14–14
− app import import app L28–28
− datetime import import datetime L19–19
− db import import db L26–26
− factory_create_repo import import factory_create_repo L29–29
− hashlib import import hashlib L16–16
− msgpack import import msgpack L21–21
− pytest import import pytest L22–22
− time import import time L17–17
− timezone import import timezone L19–19
− uuid import import uuid L18–18
− test_bulk_upsert_snapshot_entries_skips_existing function async_function test_bulk_upsert_snapshot_entries_skips_existing L1667–1708
− test_confirm_registers_object_that_exists_in_storage function async_function test_confirm_registers_object_that_exists_in_storage L826–873
− test_confirm_registers_zero_for_nonexistent_objects function async_function test_confirm_registers_zero_for_nonexistent_objects L797–822
− test_confirm_rejects_non_owner function async_function test_confirm_rejects_non_owner L777–793
− test_confirm_rejects_over_limit_object_ids function async_function test_confirm_rejects_over_limit_object_ids L918–931
− test_confirm_rejects_slash_in_object_id function async_function test_confirm_rejects_slash_in_object_id L730–742
− test_confirm_requires_auth function async_function test_confirm_requires_auth L762–773
− test_delete_branch_cannot_delete_default function async_function test_delete_branch_cannot_delete_default L1272–1291
− test_delete_branch_missing_branch_404 function async_function test_delete_branch_missing_branch_404 L1317–1327
− test_delete_branch_non_owner_gets_403 function async_function test_delete_branch_non_owner_gets_403 L1295–1313
− test_delete_branch_owner_can_delete function async_function test_delete_branch_owner_can_delete L1248–1268
− test_delete_release_missing_tag_404 function async_function test_delete_release_missing_tag_404 L1347–1357
− test_delete_release_non_owner_gets_403 function async_function test_delete_release_non_owner_gets_403 L1333–1343
− test_fetch_404_for_unknown_repo function async_function test_fetch_404_for_unknown_repo L385–391
− test_fetch_empty_want_returns_empty_bundle function async_function test_fetch_empty_want_returns_empty_bundle L395–408
− test_fetch_have_excludes_known_commits function async_function test_fetch_have_excludes_known_commits L1506–1538
− test_fetch_objects_cross_repo_dedup function async_function test_fetch_objects_cross_repo_dedup L2069–2152
− test_fetch_objects_returns_bytes function async_function test_fetch_objects_returns_bytes L2013–2047
− test_fetch_objects_returns_empty_object_inline function async_function test_fetch_objects_returns_empty_object_inline L1918–1941
− test_fetch_objects_unknown_ids_returns_empty function async_function test_fetch_objects_unknown_ids_returns_empty L2051–2065
− test_fetch_private_repo_returns_404_for_stranger function async_function test_fetch_private_repo_returns_404_for_stranger L1144–1155
− test_fetch_returns_missing_commits function async_function test_fetch_returns_missing_commits L413–448
− test_fetch_two_phase_separates_metadata_from_bytes function async_function test_fetch_two_phase_separates_metadata_from_bytes L2156–2212
− test_filter_objects_accepts_json_body function async_function test_filter_objects_accepts_json_body L608–622
− test_filter_objects_all_missing function async_function test_filter_objects_all_missing L558–572
− test_filter_objects_empty_list_returns_empty function async_function test_filter_objects_empty_list_returns_empty L541–554
− test_filter_objects_rejects_slash_in_object_id function async_function test_filter_objects_rejects_slash_in_object_id L746–758
− test_filter_objects_requires_auth function async_function test_filter_objects_requires_auth L527–537
− test_filter_objects_returns_only_missing function async_function test_filter_objects_returns_only_missing L576–603
− test_is_ancestor_in_bundle_direct_parent function function test_is_ancestor_in_bundle_direct_parent L1579–1586
− test_is_ancestor_in_bundle_merge_commit function function test_is_ancestor_in_bundle_merge_commit L1599–1613
− test_is_ancestor_in_bundle_not_in_chain function function test_is_ancestor_in_bundle_not_in_chain L1589–1596
− test_negotiate_404_for_unknown_repo function async_function test_negotiate_404_for_unknown_repo L1006–1012
− test_negotiate_acks_known_have_ids function async_function test_negotiate_acks_known_have_ids L970–1002
− test_negotiate_full_clone_ready_immediately function async_function test_negotiate_full_clone_ready_immediately L937–966
− test_object_cdn_has_immutable_cache_headers function async_function test_object_cdn_has_immutable_cache_headers L1099–1113
− test_object_cdn_returns_404_for_missing function async_function test_object_cdn_returns_404_for_missing L454–456
− test_object_cdn_serves_pushed_object function async_function test_object_cdn_serves_pushed_object L1075–1095
− test_presign_get_local_backend_returns_all_inline function async_function test_presign_get_local_backend_returns_all_inline L662–677
− test_presign_get_rejects_non_owner function async_function test_presign_get_rejects_non_owner L877–897
− test_presign_local_backend_returns_all_inline function async_function test_presign_local_backend_returns_all_inline L628–644
− test_presign_rejects_dotdot_in_object_id function async_function test_presign_rejects_dotdot_in_object_id L714–726
− test_presign_rejects_over_limit_object_ids function async_function test_presign_rejects_over_limit_object_ids L901–914
− test_presign_rejects_slash_in_object_id function async_function test_presign_rejects_slash_in_object_id L698–710
− test_presign_requires_auth function async_function test_presign_requires_auth L648–658
− test_push_404_for_unknown_repo function async_function test_push_404_for_unknown_repo L236–245
− test_push_accepts_json_content_type function async_function test_push_accepts_json_content_type L1558–1574
− test_push_bundle_stores_empty_content_object function async_function test_push_bundle_stores_empty_content_object L1861–1914
− test_push_commit_with_list_structured_delta function async_function test_push_commit_with_list_structured_delta L2359–2386
− test_push_commit_with_nested_structured_delta function async_function test_push_commit_with_nested_structured_delta L2317–2355
− test_push_commit_with_null_structured_delta function async_function test_push_commit_with_null_structured_delta L2286–2313
− test_push_force_overwrites_branch function async_function test_push_force_overwrites_branch L354–379
− test_push_heals_missing_bytes function async_function test_push_heals_missing_bytes L1947–2007
− test_push_ingests_commit_and_branch function async_function test_push_ingests_commit_and_branch L270–302
− test_push_is_idempotent function async_function test_push_is_idempotent L306–322
− test_push_large_bundle_completes_under_budget function async_function test_push_large_bundle_completes_under_budget L2218–2279
− test_push_non_fast_forward_rejected function async_function test_push_non_fast_forward_rejected L326–350
− test_push_object_pack_admin_collaborator_allowed function async_function test_push_object_pack_admin_collaborator_allowed L2846–2872
− test_push_object_pack_concurrent_overlapping_objects function async_function test_push_object_pack_concurrent_overlapping_objects L2787–2842
− test_push_object_pack_cross_repo_dedup function async_function test_push_object_pack_cross_repo_dedup L2739–2783
− test_push_object_pack_empty_pack function async_function test_push_object_pack_empty_pack L2686–2707
− test_push_object_pack_exact_object_limit function async_function test_push_object_pack_exact_object_limit L2711–2735
− test_push_object_pack_idempotent function async_function test_push_object_pack_idempotent L2420–2440
− test_push_object_pack_mixed_new_and_existing function async_function test_push_object_pack_mixed_new_and_existing L2444–2469
− test_push_object_pack_non_html_extension_allowed function async_function test_push_object_pack_non_html_extension_allowed L2907–2934
− test_push_object_pack_path_traversal_rejected function async_function test_push_object_pack_path_traversal_rejected L2629–2648
− test_push_object_pack_read_collaborator_rejected function async_function test_push_object_pack_read_collaborator_rejected L2876–2903
− test_push_object_pack_rejects_invalid_hash function async_function test_push_object_pack_rejects_invalid_hash L2473–2494
− test_push_object_pack_rejects_non_owner function async_function test_push_object_pack_rejects_non_owner L2516–2533
− test_push_object_pack_rejects_over_limit_count function async_function test_push_object_pack_rejects_over_limit_count L2537–2555
− test_push_object_pack_rejects_polyglot_file function async_function test_push_object_pack_rejects_polyglot_file L2652–2682
− test_push_object_pack_requires_auth function async_function test_push_object_pack_requires_auth L2498–2512
− test_push_object_pack_respects_total_size_limit function async_function test_push_object_pack_respects_total_size_limit L2559–2595
− test_push_object_pack_stores_objects function async_function test_push_object_pack_stores_objects L2398–2416
− test_push_object_pack_write_collaborator_allowed function async_function test_push_object_pack_write_collaborator_allowed L2599–2625
− test_push_objects_cross_repo_object_globally_deduped function async_function test_push_objects_cross_repo_object_globally_deduped L1761–1819
− test_push_objects_requires_auth function async_function test_push_objects_requires_auth L1059–1069
− test_push_objects_skips_duplicates function async_function test_push_objects_skips_duplicates L1037–1055
− test_push_objects_stores_empty_content_object function async_function test_push_objects_stores_empty_content_object L1835–1857
− test_push_objects_stores_objects function async_function test_push_objects_stores_objects L1018–1033
− test_push_read_collaborator_is_rejected function async_function test_push_read_collaborator_is_rejected L1190–1214
− test_push_rejected_for_non_owner function async_function test_push_rejected_for_non_owner L249–266
− test_push_requires_auth function async_function test_push_requires_auth L225–232
− test_push_tags_invalid_body_422 function async_function test_push_tags_invalid_body_422 L1386–1397
− test_push_tags_requires_auth function async_function test_push_tags_requires_auth L1401–1411
− test_push_tags_stores_tags function async_function test_push_tags_stores_tags L1363–1382
− test_push_then_fetch_round_trip function async_function test_push_then_fetch_round_trip L1459–1502
− test_push_unaccepted_invite_is_rejected function async_function test_push_unaccepted_invite_is_rejected L1218–1242
− test_push_write_collaborator_is_allowed function async_function test_push_write_collaborator_is_allowed L1161–1186
− test_refs_advertises_pack_origin_when_both_settings_set function async_function test_refs_advertises_pack_origin_when_both_settings_set L147–162
− test_refs_empty_repo_has_empty_branch_heads function async_function test_refs_empty_repo_has_empty_branch_heads L132–140
− test_refs_no_pack_origin_when_key_missing function async_function test_refs_no_pack_origin_when_key_missing L166–181
− test_refs_no_pack_origin_when_neither_set function async_function test_refs_no_pack_origin_when_neither_set L204–219
− test_refs_no_pack_origin_when_url_missing function async_function test_refs_no_pack_origin_when_url_missing L185–200
− test_refs_private_repo_returns_404_for_unauthenticated function async_function test_refs_private_repo_returns_404_for_unauthenticated L1119–1126
− test_refs_private_repo_visible_to_owner function async_function test_refs_private_repo_visible_to_owner L1130–1140
− test_refs_returns_404_for_unknown_owner_slug function async_function test_refs_returns_404_for_unknown_owner_slug L85–87
− test_refs_returns_branch_heads function async_function test_refs_returns_branch_heads L91–112
− test_refs_returns_json_when_no_msgpack_accept function async_function test_refs_returns_json_when_no_msgpack_accept L1544–1554
− test_refs_url_is_owner_slash_slug function async_function test_refs_url_is_owner_slash_slug L116–128
− test_remote_url_format_matches_git_pattern function async_function test_remote_url_format_matches_git_pattern L502–521
− test_topological_sort_handles_empty_list function function test_topological_sort_handles_empty_list L1616–1618
− test_topological_sort_handles_orphan_commits function function test_topological_sort_handles_orphan_commits L1621–1628
− test_topological_sort_large_linear_chain_o_n function function test_topological_sort_large_linear_chain_o_n L1631–1663
− test_topological_sort_orders_parents_first function async_function test_topological_sort_orders_parents_first L488–498
− test_wire_bundle_rejects_too_many_commits function function test_wire_bundle_rejects_too_many_commits L1436–1443
− test_wire_bundle_rejects_too_many_objects function function test_wire_bundle_rejects_too_many_objects L1426–1433
− test_wire_fetch_request_rejects_too_many_wants function function test_wire_fetch_request_rejects_too_many_wants L1446–1453
− test_wire_models_parse_correctly function async_function test_wire_models_parse_correctly L462–484
− test_wire_object_rejects_oversized_content function function test_wire_object_rejects_oversized_content L1416–1423
− test_wire_push_objects_bulk_select_skips_duplicates function async_function test_wire_push_objects_bulk_select_skips_duplicates L1712–1746
~ tests/test_wire_stress_performance.py .py 36 symbols removed
− _MP_HEADERS variable variable _MP_HEADERS L88–88
− _make_commit function function _make_commit L45–56
− _make_object function function _make_object L59–65
− _make_snapshot function function _make_snapshot L68–73
− _mp function function _mp L37–38
− _push_payload function function _push_payload L76–85
− _sha256_id function function _sha256_id L41–42
− _utc_now function function _utc_now L33–34
− AsyncClient import import AsyncClient L21–21
− AsyncSession import import AsyncSession L22–22
− JSONObject import import JSONObject L27–27
− MAX_OBJECTS_PER_PUSH import import MAX_OBJECTS_PER_PUSH L25–25
− StrDict import import StrDict L27–27
− annotations import import annotations L12–12
− datetime import import datetime L17–17
− db import import db L24–24
− factory_create_repo import import factory_create_repo L26–26
− hashlib import import hashlib L14–14
− msgpack import import msgpack L19–19
− pytest import import pytest L20–20
− time import import time L15–15
− timezone import import timezone L17–17
− uuid import import uuid L16–16
− test_bfs_fetch_shallow_faster_than_deep function async_function test_bfs_fetch_shallow_faster_than_deep L437–491
− test_deep_commit_chain_bfs_fetch function async_function test_deep_commit_chain_bfs_fetch L230–277
− test_fetch_latency_10_commits_under_budget function async_function test_fetch_latency_10_commits_under_budget L364–401
− test_filter_objects_100_ids_under_budget function async_function test_filter_objects_100_ids_under_budget L408–430
− test_filter_objects_large_set function async_function test_filter_objects_large_set L284–304
− test_high_volume_fetches_same_repo function async_function test_high_volume_fetches_same_repo L129–167
− test_high_volume_pushes_to_separate_repos_all_succeed function async_function test_high_volume_pushes_to_separate_repos_all_succeed L95–122
− test_large_object_bundle_push_and_fetch function async_function test_large_object_bundle_push_and_fetch L174–223
− test_negotiate_latency_under_budget function async_function test_negotiate_latency_under_budget L520–551
− test_push_objects_large_batch function async_function test_push_objects_large_batch L311–328
− test_refs_latency_under_budget function async_function test_refs_latency_under_budget L498–513
− test_sequential_push_throughput function async_function test_sequential_push_throughput L558–584
− test_single_push_latency_under_budget function async_function test_single_push_latency_under_budget L335–357
~ musehub/api/routes/wire.py .py 10 symbols removed, 9 symbols modified
− _EMPTY_OID variable variable _EMPTY_OID L148–148
− _MSGPACK_STREAM_CT variable variable _MSGPACK_STREAM_CT L155–155
− _R2_CONCURRENCY_LIMIT variable variable _R2_CONCURRENCY_LIMIT L150–150
− _STREAM_CHUNK_BYTES variable variable _STREAM_CHUNK_BYTES L145–145
− _pack_objects_response function async_function _pack_objects_response L246–313
− _stream_objects function async_function _stream_objects L158–243
− _stream_pack_response function async_function _stream_pack_response L332–365
− fetch function async_function fetch L643–672
− fetch_objects function async_function fetch_objects L681–728
− wire_fetch import import wire_fetch L67–67
~ musehub/models/wire.py .py 2 symbols removed
− WireFetchObjectsRequest class class WireFetchObjectsRequest L291–301
− WireFetchResponse class class WireFetchResponse L278–288
← Older Oldest on task/rip-legacy-pack
All commits
Newer → Latest on task/rip-legacy-pack

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