feat(voice-packs): tracked tunables, the bats seam, and its wiring
scripts/voice-packs.env carries the decisions worth a diff and nothing else: the pack list, each voice's source file, crop offset, crop length and pinned source digest, the extractor path with its engine repo and commit, and the artifact arithmetic. Paths and numbers only — the pack directories themselves stay host state under /home/dank/voices. tests/voice_pack_unit.bats pins behaviour, from inputs to observable output: a crop inside the first ten seconds exits nonzero naming the invariant and creates nothing, a legal one builds the whole pack, the reference comes out 24 kHz mono inside 18-25 s (ffprobe, on a locally generated tone), the manifest round-trips through jq with offsets and a sha256 that matches the source bytes, a re-run without --force leaves every byte untouched, --force retires rather than deletes, --dry-run needs no extractor at all, and a stub extractor that changed its artifact size cannot publish a voice. No engine binary, no GPU, no network, no fleet host: qwen-codec is stood in by a stub with the real tool's I/O shape, the way frank_tts_unit.bats drives its backends. test-changed.sh routes both new paths to that seam instead of letting them land on the generic scripts/* syntax fallback.
This commit is contained in:
1 parent
2242fcfec0
commit
042003a969
3 files changed
+399
No files matched your search
@@ -229,6 +229,14 @@ for path in "${CHANGED[@]}"; do
|
||||
add_test tests/scripts_syntax.bats
|
||||
add_test tests/deployment_scoping.bats
|
||||
;;
|
||||
# The voice-pack builder is the only thing that enforces the 10-second
|
||||
# source-material invariant and the artifact sizes the packs are pinned
|
||||
# to, so it selects its own seam rather than landing on the generic
|
||||
# scripts/* syntax fallback. This case has to precede that fallback.
|
||||
scripts/build-voice-pack.sh|scripts/voice-packs.env)
|
||||
add_test tests/voice_pack_unit.bats
|
||||
add_test tests/scripts_syntax.bats
|
||||
;;
|
||||
scripts/*)
|
||||
add_test tests/scripts_syntax.bats
|
||||
;;
|
||||
|
||||
Reference in new issue
Block a user