music/exemplars/instruments/LAYER_CENSUS_VALIDATION.md
Tier: MEASURED INSTRUMENT. Produced by harness/music_gen/instr_layer_census.py (v1).
Machine record: build/audio/exemplars/instruments/LAYER_CENSUS_VALIDATION.json.
Governing ruling: docs/spine/DECISIONS_PENDING_JOSH.md :: MUSIC ROUND 1 GRADED + THE COMPOSITION FLOOR (commit da627060).
Legal posture: Analysis for understanding only. Cards read from disk; lawfully-obtained audio decoded for measurement and never copied, redistributed, or used as model input.
Generated: 2026-08-07T23:00:09+00:00.
The tracks Josh has loved for decades run a measured mean of 5.43 concurrent spectral streams, in a range of 4.38 to 6.35 — the sparsest being Magus Castle and the densest Chrono Trigger Main Theme. That is not dozens, and the reason it is not dozens is the instrument rather than the music: the estimator was calibrated against synthetic mixes with planted answers, it tracks the truth to within about one source up to eight concurrent layers, and then it SATURATES near 8 however many are really there. Every real orchestral track in the pool sits on that ceiling. So the first honest result is a negative one: a mono mixdown cannot tell you whether a cue runs twelve layers or forty, this instrument cannot adjudicate the layer clause of Josh's floor, and the composed manifest in section 6 is the only thing that can. The second result is positive and is the one the sitting needed. Against the eighteen candidates Josh turned down, the loved tracks separate on DENSITY at AUC 0.826 — hits 5.43 mean streams against the candidates' 4.89 — while they do NOT separate on entrance spread at all (0.385; the candidates' median spread 0.821 is if anything wider than the hits' 0.792). The rejected round is not a wall and it is not badly staged: it changes texture MORE often than the music Josh loves (16 entrances against 12) and it is simply THINNER while it does so, and slower to arrive at full texture (0.317 of the way in against 0.165). 13 of 18 clear the corpus-derived floor and 1 of 18 clear the target. Within album — the controlled framing, hits against their own siblings — the strongest axis is entrance_spread at AUC 0.679.
band in its name, and Tier 1 never emits a layer count.Calibrated on synthetic ladders whose answers were planted before the estimator saw them. Every figure below was re-derived by the controls in the same process that wrote this file.
| property | measured value |
|---|---|
| accurate range | 1 to 8 concurrent sources |
| mean absolute error inside that range | 0.25 sources |
| ceiling — sixteen planted sources read as | 7 |
| entrance time, median absolute error | 1.18 s |
| two sources at EXACT unison read as | 1 (truth 2 — undercount) |
| two sources at a two-cent detune read as | 5 (truth 2 — overcount) |
| one source sweeping four octaves reads as | 4 (truth 1 — overcount) |
| one source reads as | 1 |
| digital silence reads as | 0 |
The accuracy curve, planted against measured.
| planted sources | measured |
|---|---|
| 2 | 2.00 |
| 3 | 3.00 |
| 5 | 5.00 |
| 8 | 7.00 |
14 of 14 controls passed. 5 of 5 mutation arms were caught.
| id | control | result |
|---|---|---|
| C01 | single-layer control reads exactly one | pass — est=1.0 |
| C02 | layer count recovered within 1.0 MAE over K in {2,3,5,8} | pass — MAE=0.25 curve=[{'k': 2, 'est': 2.0}, {'k': 3, 'est': 3.0}, {'k': 5, 'est': 5.0}, {'k': 8, 'est': 7.0}] |
| C03 | sixteen sources saturate at the declared ceiling, not at sixteen | pass — est=7.0 declared ceiling=8 |
| C04 | planted entrances recovered (median error under 3 s, at least two found) | pass — detected=[6.2, 9.9, 16.7] truth=[5.0, 10.0, 15.0] median_err=1.18s |
| C05 | planted exits produce at least two detected subtractions | pass — exits=[8.4, 12.3] truth=[10,13,16] |
| C06 | unison doubling is mis-counted and the module DECLARES both directions | pass — exact=1 (truth 2, undercount) detuned=5 (truth 2, overcount) |
| C07 | one source sweeping four octaves overcounts, and it is DECLARED | pass — est=4 truth=1 |
| C08 | digital silence reads zero layers | pass — est=0.0 |
| C09 | degenerate cards return available=False and never raise | pass — 7 malformed inputs handled |
| C10 | Tier-1 band census recovers the planted band count and entry positions | pass — n_bands=6 entries=[0.0, 0.1, 0.25, 0.4, 0.6, 0.8] |
| C11 | entrance spread separates a front-loaded wall from a staged cue | pass — wall=0.000 staged=0.540 |
| C12 | a card-only run leaves every layer metric None and adjudicates nothing | pass — Tier-2 keys present and None; Tier-1 keys populated |
| C13 | stem-manifest validator accepts a good manifest and rejects six defect classes | pass — composed peak=3.0 entrances=2 subtractions=1 |
| C14 | the published error bar still matches the ladder | pass — MAE=0.25 ceiling=7 |
The mutation arms. Each deliberately breaks one decision inside the module and the run records which control caught it. A mutation nothing catches means a control that is not armed, and the self-test fails on it.
| id | mutation | caught by | evidence |
|---|---|---|---|
| M1 | plateau absorption disabled (MIN_RUN_S -> 0) | C04 | caught — entrances 3 -> 6 against 3 planted, on the staged-entrance control |
| M2 | activity threshold coarsened (TAU 0.05 -> 0.30) | C02 | caught — K=8 reads 0.0 under the mutation |
| M2b | activity threshold sharpened (TAU 0.05 -> 0.005) | C01 | caught — single layer reads 17.0 under the mutation |
| M3 | transition detector made sign-blind (exits counted as entrances) | C05 | caught — sign-blind count 3 against 2 true subtractions |
| M4 | silence gate removed | C08 | caught — silence reads 1.0 layers under the mutation |
Within-album AUC over 30 hits against 927 siblings. The multiplicity price for this ten-feature bank is a permutation p95 of 0.1313 on |AUC-0.5|; the wider 103-feature bank the program uses elsewhere prices it at 0.195 (PATTERN_FINDINGS_V2.md section 1), and a band axis quoted alongside those features must clear the wider bar, not this one.
| band axis | AUC | deviation | direction | hits above album median | binomial p |
|---|---|---|---|---|---|
| n_band_entrances | 0.642 | 0.142 | higher in hits | 19/28 | 0.0872 |
| n_band_subtractions | 0.628 | 0.128 | higher in hits | 21/28 | 0.0125 |
| band_entrance_front_load | 0.534 | 0.034 | higher in hits | 3/28 | 0.0000 |
| band_mean_simultaneity | 0.528 | 0.028 | higher in hits | 16/28 | 0.5716 |
| band_active_fraction_mean | 0.527 | 0.027 | higher in hits | 15/28 | 0.8506 |
| band_headroom | 0.473 | 0.027 | lower in hits | 12/28 | 0.5716 |
| n_bands_active | 0.520 | 0.020 | higher in hits | 0/28 | 0.0000 |
| band_entrance_spread | 0.518 | 0.018 | higher in hits | 13/28 | 0.8506 |
| band_peak_simultaneity | 0.512 | 0.012 | higher in hits | 0/28 | 0.0000 |
| band_peak_position | 0.506 | 0.006 | higher in hits | 13/28 | 0.8506 |
Sampling rule: within each album carrying a hit, sort sibling track ids and draw up to 16 without replacement using random.Random(20260807). Measured: 30 hits, 260 siblings, 18 round-1 candidates, in 587.3 seconds.
Read the layer figures against section 3: the estimator saturates near 8, so peak is a ceiling reading for nearly every row here and carries little information. The MEAN and the staging columns are the informative ones.
| id | class | title | mean streams | peak | entrances | subtractions | entrance spread | plateaus |
|---|---|---|---|---|---|---|---|---|
| EX_006 | TITLE_CHARACTER | Chrono Trigger Main Theme | 6.35 | 9 | 15 | 17 | 0.706 | 17 |
| EX_145 | BATTLE | Go Straight | 6.25 | 8 | 17 | 17 | 0.833 | 18 |
| EX_053 | BATTLE | Cynthia Battle Theme | 6.22 | 8 | 7 | 7 | 0.761 | 12 |
| EX_055 | BATTLE | The Cyber Grind | 6.14 | 8 | 14 | 16 | 0.772 | 16 |
| EX_075 | BOSS | Dancing Mad | 6.07 | 9 | 86 | 88 | 0.891 | 99 |
| EX_142 | EXPLORATION | Shinshu Field | 6.04 | 8 | 21 | 19 | 0.788 | 17 |
| EX_046 | BATTLE | BFG Division | 5.97 | 8 | 44 | 43 | 0.886 | 41 |
| EX_014 | TITLE_CHARACTER | Tekken 2 Attract Movie: Sound Trac | 5.86 | 7 | 1 | 2 | 0.000 | 2 |
| EX_094 | TENSION | Dark Creature Pursuit | 5.72 | 8 | 4 | 4 | 0.815 | 7 |
| EX_180 | CREDITS_TRIUMPH | Dreams Dreams | 5.72 | 8 | 5 | 8 | 0.293 | 4 |
| EX_124 | TITLE_CHARACTER | Deus Ex Main Title (UNATCO) | 5.68 | 8 | 7 | 7 | 0.650 | 8 |
| EX_147 | BATTLE | Fighting of the Spirit | 5.61 | 7 | 7 | 7 | 0.709 | 11 |
| EX_017 | EXPLORATION | Sweden | 5.55 | 9 | 19 | 17 | 0.797 | 21 |
| EX_064 | BOSS | Ludwig, the Holy Blade | 5.47 | 8 | 19 | 19 | 0.823 | 19 |
| EX_179 | CREDITS_TRIUMPH | Ending Theme (Balance is Restored) | 5.43 | 9 | 111 | 109 | 0.903 | 112 |
| EX_110 | CREDITS_TRIUMPH | Want You Gone | 5.42 | 9 | 9 | 8 | 0.771 | 10 |
| EX_030 | EXPLORATION | Route 209 | 5.42 | 7 | 7 | 6 | 0.785 | 8 |
| EX_136 | EXPLORATION | Humming the Bassline | 5.40 | 7 | 21 | 20 | 0.842 | 24 |
| EX_018 | EXPLORATION | Subwoofer Lullaby | 5.40 | 9 | 11 | 11 | 0.819 | 11 |
| EX_082 | MELANCHOLIC | The Best Is Yet to Come | 5.32 | 8 | 28 | 27 | 0.816 | 36 |
| EX_162 | MELANCHOLIC | Schala's Theme | 5.26 | 7 | 12 | 13 | 0.712 | 12 |
| EX_007 | TITLE_CHARACTER | Frog's Theme | 5.26 | 8 | 7 | 6 | 0.679 | 7 |
| EX_088 | MELANCHOLIC | An Unwavering Heart | 5.23 | 8 | 5 | 6 | 0.546 | 9 |
| EX_033 | EXPLORATION | Corridors of Time | 5.23 | 7 | 12 | 11 | 0.848 | 13 |
| EX_161 | MELANCHOLIC | Aria di Mezzo Carattere | 5.16 | 9 | 26 | 25 | 0.840 | 19 |
| EX_032 | EXPLORATION | Terra's Theme | 5.12 | 8 | 15 | 16 | 0.709 | 20 |
| EX_113 | CREDITS_TRIUMPH | To Good Friends | 4.76 | 9 | 12 | 12 | 0.884 | 12 |
| EX_092 | TENSION | Snake Eater (Ladder Climb) | 4.54 | 7 | 18 | 18 | 0.851 | 19 |
| EX_022 | EXPLORATION | Wind Scene | 4.38 | 7 | 9 | 7 | 0.842 | 12 |
| EX_102 | TENSION | Magus Castle | 4.38 | 7 | 3 | 3 | 0.722 | 2 |
| axis | AUC within album | deviation | direction | hits above album median |
|---|---|---|---|---|
| entrance_spread | 0.679 | 0.179 | higher in hits | 22/28 |
| n_texture_plateaus | 0.658 | 0.159 | higher in hits | 20/28 |
| est_layers_max | 0.654 | 0.154 | higher in hits | 14/28 |
| n_entrances | 0.650 | 0.150 | higher in hits | 20/28 |
| n_subtractions | 0.622 | 0.122 | higher in hits | 17/28 |
| n_deep_subtractions | 0.613 | 0.113 | higher in hits | 17/28 |
| est_layers_mean | 0.603 | 0.103 | higher in hits | 17/28 |
| entrance_front_load | 0.588 | 0.088 | higher in hits | 17/28 |
| est_layers_p90 | 0.582 | 0.082 | higher in hits | 6/28 |
| late_entrance_frac | 0.564 | 0.064 | higher in hits | 14/28 |
| id | theme | mean streams | peak | entrances | subtractions | entrance spread | floor | target |
|---|---|---|---|---|---|---|---|---|
| SLICE_T1_EXPLORATION_FLORES_a_4102 | T1_EXPLORATION_FLORES | 4.82 | 7 | 16 | 12 | 0.920 | pass | FAIL |
| SLICE_T1_EXPLORATION_FLORES_a_4101 | T1_EXPLORATION_FLORES | 4.61 | 8 | 14 | 15 | 0.713 | FAIL | FAIL |
| SLICE_T1_EXPLORATION_FLORES_a_4103 | T1_EXPLORATION_FLORES | 4.61 | 7 | 14 | 14 | 0.790 | FAIL | FAIL |
| SLICE_T1_EXPLORATION_FLORES_a_4104 | T1_EXPLORATION_FLORES | 4.14 | 7 | 13 | 14 | 0.859 | FAIL | FAIL |
| SLICE_T2_BATTLE_CACI_b_42044 | T2_BATTLE_CACI | 4.98 | 6 | 15 | 15 | 0.823 | pass | FAIL |
| SLICE_T2_BATTLE_CACI_a_42011 | T2_BATTLE_CACI | 4.93 | 7 | 6 | 6 | 0.830 | pass | FAIL |
| SLICE_T2_BATTLE_CACI_b_42033 | T2_BATTLE_CACI | 4.76 | 7 | 6 | 5 | 0.832 | pass | FAIL |
| SLICE_T3_TITLE_PROTAGONIST_a_43011 | T3_TITLE_PROTAGONIST | 5.50 | 8 | 24 | 21 | 0.834 | pass | pass |
| SLICE_T3_TITLE_PROTAGONIST_a_43022 | T3_TITLE_PROTAGONIST | 5.34 | 8 | 19 | 20 | 0.810 | pass | FAIL |
| SLICE_T3_TITLE_PROTAGONIST_a_43033 | T3_TITLE_PROTAGONIST | 5.08 | 8 | 20 | 19 | 0.815 | pass | FAIL |
| SLICE_T3_TITLE_PROTAGONIST_b_43033 | T3_TITLE_PROTAGONIST | 5.06 | 8 | 20 | 22 | 0.835 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 5.35 | 8 | 16 | 17 | 0.770 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 5.34 | 8 | 16 | 16 | 0.820 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 5.09 | 8 | 24 | 23 | 0.845 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 4.84 | 9 | 19 | 13 | 0.841 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 4.75 | 7 | 16 | 16 | 0.748 | pass | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 4.72 | 8 | 23 | 19 | 0.797 | FAIL | FAIL |
| SLICE_T4_MELANCHOLIC_HOME_AND_LOSS | T4_MELANCHOLIC_HOME_AN | 4.34 | 8 | 21 | 17 | 0.809 | FAIL | FAIL |
The direct contrast, loved tracks against the eighteen. This is NOT within-album and cannot be: the candidates share no composer, no album, no production chain and no era with anything in the corpus, so era and mastering are uncontrolled here. It is a descriptive contrast, and it is the only way to ask whether this instrument can see what Josh heard. AUC above 0.5 means the hits score higher.
| axis | AUC hits vs candidates | hits median | candidates median | candidates below the hits' 10th percentile |
|---|---|---|---|---|
| est_layers_mean | 0.826 | 5.426 | 4.886 | 5/18 |
| est_layers_median | 0.743 | 6.000 | 5.000 | 1/18 |
| est_layers_p90 | 0.639 | 7.000 | 6.000 | 0/18 |
| n_texture_plateaus | 0.361 | 12.500 | 17.500 | 0/18 |
| n_entrances | 0.367 | 12.000 | 16.000 | 0/18 |
| layer_peak_position | 0.378 | 0.165 | 0.317 | 1/18 |
| time_to_first_full_texture_frac | 0.378 | 0.165 | 0.317 | 1/18 |
| est_layers_max | 0.615 | 8.000 | 8.000 | 1/18 |
| entrance_spread | 0.385 | 0.792 | 0.821 | 0/18 |
| n_subtractions | 0.407 | 12.500 | 16.000 | 1/18 |
| n_deep_subtractions | 0.421 | 3.000 | 4.500 | 3/18 |
| entrance_front_load | 0.430 | 0.235 | 0.277 | 2/18 |
| late_entrance_frac | 0.532 | 0.455 | 0.467 | 2/18 |
est_layers_mean at AUC 0.826, hits 5.43 against candidates 4.89. With eighteen candidates and thirty hits an AUC inside roughly 0.35 to 0.65 is not a finding, and none of these is a controlled comparison.passes_floor is built on the MEAN and the spread, never on the peak, because the peak is saturated for nearly every real track and a saturated statistic makes a worthless gate.The audio estimator cannot count dozens and never will from a mixdown. When we author the track we do not need to estimate: we wrote the parts. One row per layer, six required fields, no nesting.
This is not a nicety, and the sibling research lane settles it independently. docs/proposals/music/craft_research/ORCHESTRATION_TEXTURE_AND_DENSITY.md section 3.6 rules that Josh's dozens should be read against the PART count and puts a full cue at twenty-four to forty discrete musical lines, thinning to six or fewer for the sparse nature-and-humming class he also named. This instrument's ceiling is about eight. The two numbers do not overlap, and the consequence is plain: TIER 2 CANNOT ADJUDICATE THE LAYER CLAUSE OF JOSH'S FLOOR. A twenty-four-part cue and a forty-part cue are indistinguishable to it, and so are a twelve-part cue and either of them. The manifest below is therefore the load-bearing instrument for that clause, not a convenience, and the audio tier's real job is the STAGING profile — entrances, exits, plateaus, spread — which it measures well and which the manifest also carries.
| field | meaning |
|---|---|
| id | str -- unique within the track, e.g. L07 |
| instrument | str -- what plays it, in the palette's own vocabulary |
| role | str -- one of: melody, counter_melody, harmony, bass, pad, ostinato, percussion, ambience, nature, voice, effect |
| entry_s | float -- first sounding time, seconds from track start |
| exit_s | float -- last sounding time; equals total_length_s if it plays to the end |
| register | str -- one of the ten card bands: sub, low_bass, bass, low_mid, mid, upper_mid, presence, brilliance, air, ultra |
| freq_slot_hz | optional [lo, hi] -- the frequency slot this layer claims, for clash checks |
census_from_manifest() in this module turns a manifest into the same metric names the audio tier emits, so a composed track and a measured track are directly comparable.