3.2 KiB
Reproduction commands and release gate
Prefix from the repository root:
build/build_common/python/bin/python3 build/build_tools/python_runner.py build/build_common/modulus
The commands below go after that prefix. They write only the consolidated repair directory. Existing published assets and the baseline remain separate.
-m unittest discover -s tests -p 'test_*.py'
-m audition.dependency_check --output build/solo_reference_comparison/repair/dependency
Development-only derivation/fitting (use explain instead of fit for coverage alone):
-m audition.fit_selection fit --passes 200 \
--source all_me_a=data/songs/all-of-me.xml --source all_me_e=data/songs/all-of-me.xml \
--source autumn_a=data/songs/autumn_leaves.xml --source autumn_e=data/songs/autumn_leaves.xml \
--reference all_me_a=build/all-of-me-solo-1.xml --reference all_me_e=build/all-of-me-solo-2.xml \
--reference autumn_a=build/autumn-leaves-solo-1.xml --reference autumn_e=build/autumn-leaves-solo-2.xml \
--role all_me_a=acoustic_solo --role all_me_e=electric_solo \
--role autumn_a=acoustic_solo --role autumn_e=electric_solo \
--form-start all_me_a=1 --form-start all_me_e=1 --form-start autumn_a=2 --form-start autumn_e=2 \
--cache-dir build/solo_reference_comparison/repair/cache --output build/solo_reference_comparison/repair/fitting
Production stage (no reference arguments):
-m generator --data-dir data --output-dir build/solo_reference_comparison/repair/staged \
--static-assets-dir package/assets --check --jobs 2 --composition-jobs 2 \
--composition-cache build/solo_reference_comparison/repair/cache \
--engraving-cache build/build_common/engraving_cache --export-solo-xml --trace-level full \
--profile-output build/solo_reference_comparison/repair/build-profile.json --progress
Exact gate after generation:
-m audition.solo_compare --generated-dir build/solo_reference_comparison/repair/staged/solo_xml \
--reference all_of_me/acoustic=build/all-of-me-solo-1.xml --reference all_of_me/electric=build/all-of-me-solo-2.xml \
--reference autumn_leaves/acoustic=build/autumn-leaves-solo-1.xml --reference autumn_leaves/electric=build/autumn-leaves-solo-2.xml \
--form-start all_of_me/acoustic=1 --form-start all_of_me/electric=1 \
--form-start autumn_leaves/acoustic=2 --form-start autumn_leaves/electric=2 \
--reference-pitch guitar-written --output build/solo_reference_comparison/repair/comparison --require-exact
--require-exact returns 1 on any sounding-event/rest mismatch; it does not reinterpret a similar style as success. Add --assets <completed-assets> for consistent neutral rendering. A failed fit or exact gate is not permission to copy targets, promote a target-constrained derivation, or publish a mismatched stage. Normal CMake publication is intentionally deferred until the approved acceptance gate passes.
Individual roles remain available through -m generator.compose --song ... --role acoustic_solo --data-dir data --cache-dir ... --output ... --solo-xml .... Use -m audition.benchmark --source ... --role ... --cache ... --output ... for an isolated measurement after other builds/tests/fits stop. Profiling changes measured runtime; do not compare a cProfile run to an unprofiled build as a speedup ratio.