Files
product-vamp/docs/composer/commands.md
T
khodowany ef62af892b Cleanup
2026-10-04 22:29:06 -05:00

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.