gabriel / musehub public
test task/bench-cli-seed-phase1 #1 / 1
AI Agent gabriel · 120 days ago · May 14, 2026 · Diff

test: Phase 1 TDD skeleton for bench_cli persistent seeding

11 failing tests define the contract for ensure_local_seed, ensure_hub_seed, purge_stale exclusion, and per-verb fast paths. Stubs added to bench_cli.py (SEED_PREFIX, CACHE_DIR, ensure_local_seed, ensure_hub_seed). No implementation — all 11 tests fail as required.

Closes #60 phase 1 gate. Ref: staging.musehub.ai issue #60.

sha256:a8623b003cdf4c311288c0076673d02acfe017d25838132194cb6651983fe80b sha
+64 symbols
sha256:7e2ec3d9ac9349dd50ba2de65d6a0eaba9bf129d7693c87bc5b933dee2731e84 snapshot
+64
symbols added
0
dead code introduced
Semantic Changes 64 symbols
~ tests/bench_cli.py .py 39 symbols added
+ BENCH_PREFIX variable variable BENCH_PREFIX L27–27
+ CACHE_DIR variable variable CACHE_DIR L29–29
+ GATES variable variable GATES L41–82
+ HUB_URLS variable variable HUB_URLS L26–26
+ LOCALHOST variable variable LOCALHOST L24–24
+ REPO_ROOT variable variable REPO_ROOT L23–23
+ SEED_PREFIX variable variable SEED_PREFIX L28–28
+ SIZE_MATRIX variable variable SIZE_MATRIX L32–38
+ STAGING variable variable STAGING L25–25
+ VERB_FNS variable variable VERB_FNS L301–306
+ _bench_fetch_or_pull function function _bench_fetch_or_pull L233–288
+ bench_clone function function bench_clone L197–230
+ bench_fetch function function bench_fetch L291–292
+ bench_pull function function bench_pull L295–296
+ bench_push function function bench_push L172–194
+ create_repo function function create_repo L111–119
+ delete_repo function function delete_repo L122–124
+ ensure_hub_seed function function ensure_hub_seed L165–167
+ ensure_local_seed function function ensure_local_seed L160–162
+ gate_str function function gate_str L311–315
+ Path import import Path L21–21
+ annotations import import annotations L10–10
+ argparse import import argparse L12–12
+ json import import json L13–13
+ os import import os L14–14
+ shutil import import shutil L15–15
+ statistics import import statistics L16–16
+ subprocess import import subprocess L17–17
+ sys import import sys L18–18
+ tempfile import import tempfile L19–19
+ time import import time L20–20
+ main function function main L363–407
+ make_local_repo function function make_local_repo L141–155
+ markdown_table function function markdown_table L340–358
+ muse function function muse L87–91
+ muse_check function function muse_check L94–98
+ print_table function function print_table L318–337
+ purge_stale function function purge_stale L127–136
+ timed_muse function function timed_muse L101–106
~ tests/test_bench_cli_seed.py .py 25 symbols added
+ TestHubSeedRepos class class TestHubSeedRepos L105–160
+ test_purge_stale_excludes_seed_repos method method test_purge_stale_excludes_seed_repos L142–160
+ test_pushes_if_not_present method method test_pushes_if_not_present L106–123
+ test_skips_push_if_present method method test_skips_push_if_present L125–140
+ TestLocalSeedCache class class TestLocalSeedCache L33–100
+ test_creates_cache_on_first_call method method test_creates_cache_on_first_call L34–49
+ test_invalidates_on_size_matrix_change method method test_invalidates_on_size_matrix_change L63–87
+ test_reseed_flag_forces_rebuild method method test_reseed_flag_forces_rebuild L89–100
+ test_reuses_cache_on_second_call method method test_reuses_cache_on_second_call L51–61
+ TestVerbFastPaths class class TestVerbFastPaths L165–232
+ _patch_infra method method _patch_infra L166–176
+ test_clone_uses_hub_seed method method test_clone_uses_hub_seed L186–198
+ test_fetch_uses_hub_seed_plus_one_delta method method test_fetch_uses_hub_seed_plus_one_delta L200–215
+ test_pull_uses_hub_seed_plus_one_delta method method test_pull_uses_hub_seed_plus_one_delta L217–232
+ test_push_uses_local_seed method method test_push_uses_local_seed L178–184
+ _hub_list_response function function _hub_list_response L26–28
+ MagicMock import import MagicMock L17–17
+ annotations import import annotations L12–12
+ bc import import bc L21–21
+ call import import call L17–17
+ json import import json L14–14
+ os import import os L15–15
+ patch import import patch L17–17
+ pathlib import import pathlib L16–16
+ pytest import import pytest L19–19
← Older Oldest on task/bench-cli-seed-phase1
All commits
Newer → Latest on task/bench-cli-seed-phase1

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