3.6 KiB
Production data and consumer inventory
All additions are independently authored general rules under the repository MIT license. No optional target pitches, rhythm fingerprints, statistics, fitted weights, or derivatives were added. Existing source songs and target files are untouched.
| Resource | Action / count | Live consumer and reason |
|---|---|---|
data/songs/*.xml |
Keep both authoritative sources | Import/immutable analysis; no source archive overwrite |
data/scales |
Keep 21 patterns | Seven modes each of major, melodic minor, harmonic minor; ordinary mapped permission |
data/sequences |
Keep 2,954 paths (14/196/2,744) | Exact degree-route utility; not uniform lick sampling |
data/rhythms |
Keep 3,538 snippets (34 2/4, 146 3/4, 630 4/4, 2,728 5/4) | Meter-indexed retrieval; 5/4 does not compete in 4/4 |
composition/rhythms.json |
Extend nine cells with entry/exit/subdivision semantics; keep six comping figures | vocabulary.rhythm_cells, themes.rhythm_windows, comping.Canonical |
composition/melodic_vocabulary.json |
Extend eleven cells similarly; retain four chord traversal rules | Complete rhythmic groups plus transposable chord-member paths |
composition/grammar.json |
Add reachable operation chooser, answer/extend/fragment contracts, authoritative evaluation configuration | themes.operation_choices, feature, scoring.musical; preserves existing development contracts where applicable |
composition/harmony.json |
Keep eleven optional color policies; add bounded prepared step-down suspension policy | Typed full-duration expression validation and candidate construction |
composition/lead_ins.json |
Keep seven formulas and two blues rules | Whole approach/target contracts, direct alternatives always available |
composition/roles.json |
Replace source octave offsets and fixed register cycles with overlapping soft centers and alternative regions | Both instruments use all six strings, frets 1–12; no equal-use quotas |
data/expected/performance_summary.json |
Keep validation-only | Form/layout compatibility check, never winner selection |
audition/controls/original_lead_theme.json |
Already migrated outside production; keep optional | No production read; runtime read boundary excludes audition files |
Saved outputs and references under build/ |
Keep comparison-only | Separate explicitly invoked audition commands |
The JSON version remains 1 with additive named fields; loader rejects missing provenance, duplicate IDs and unsupported subdivision groups. Event/runtime/score schemas did not change. composer-report-2 and joint-musical-1 identify diagnostic and evaluation schemas. Semantic generation is joint-gestures-1; instrumentation does not intentionally reseed music.
The old “prefix then cheap suffix” constructor and overriding thematic scorer were removed. Legacy nonproduction fixture helpers remain explicit, with no fallback from the current production route. Exhaustive path inventories and other meters are useful and were not deleted for directory size.
Evaluation-only additions: tests/evaluation_sources/{after-youve-gone,indiana,hindustan}.xml plus provenance JSON and README; audition.transfer_review is their sole consumer. These are four-measure original-song excerpts with declared piano-harmony reductions, not expected generated output or a production phrase bank. They were transcribed from cited original editions after the production vocabulary was authored. Neither ordinary builds nor required regression tests load them. The separate optional command records generation failures without relaxing policy.