music/NOSTALGIA_RUBRIC.md
CANON SUBORDINATION — this document is PROPOSAL-TIER: it serves canon and never outranks it.
The canon: the CVD · the T1 foundation docs · the T0 registries (registries/) · the spine
(docs/spine/CH_*.md) · the region pages (_source/02_Tier_2_Region_Pages/). Authority order:docs/DOC_MAP.md§ 0.
Canon served: NONE FOUND — this document cites no canon anchor anywhere in its body.
Do not build from it alone: open the spine node (docs/spine/CH_NN.md), the region page
(_source/02_Tier_2_Region_Pages/), and the T0 registry your work targets, and derive from those.
READ THAT CANON FIRST — open it and derive from it before you build anything from this document.
If this document disagrees with canon, CANON WINS and this document is the defect — fix the
document, never the canon. Nothing here is applied until it is ratified into canon.
Status: ACTIVE (2026-08-05). Instrument: harness/music_gen/nostalgia_score.py (self-test
exit-code-bearing, 25 controls). Census: harness/music_gen/nostalgia_census.md. Refusal
fingerprints: harness/music_gen/exemplar_hook_signatures.json.
---
Josh, 2026-08-05, verbatim and binding:
"Youve failed hard on the music from what I heard on the website. This is nothing like all the
major nostalgia music tracks from Super Nintendo and Nintendo 64, legend of Zelda oot, super
Mario 64, and the hundreds of other nostalgia tracks."
The fourteen authored themes on the site were selected on proxy metrics — distinctness, motif
recurrence, a hummability proxy — with no comparator anchor against the exemplar class. That is
the defect, and it is a measurement defect before it is a composition defect. feature_rig.py
measures whether a signal carries a melody *at all*; it never once asked whether that melody is in
the dialect. A rig that scores a theme against itself will always report success, and it did.
This rubric is the gate-51 pattern applied to music: the mechanism stated verbatim from the school
grammars, the measurable check that mechanism implies, tied to an instrument that exists, and the
honest declaration wherever no instrument exists.
THE SCHOOL GRAMMARS, AND A CORRECTION TO THIS SECTION (2026-08-05, verifier finding F3). The
sentence above was true about the METHOD and false about the CORPUS at the moment it was written.
Every rule id cited in the tables below — MELODY-01, ECON-04, PHRASE-04, HARMONY-05,
FORM-05, LOOP-06, RHYTHM-01, VOICE-01 and the rest — resolved to exactly one file in this
repository, and that file was this one. The grammars themselves existed only inside a workflow run
journal, which is agent scratch that no later reader can open: the rubric was quoting an authority
layer that was not on disk. A cold verifier found it by positive-controlled grep, and it is the same
class as the invented-rule defect this repo withdrew in commit 7e5494d6.
WHAT CHANGED: nothing in the rules, the bands or the instrument. The three research returns were
extracted from the run journal VERBATIM — mechanically, by script, unedited — and landed as
proposal-tier documents, so every citation now resolves to a readable rule:
docs/proposals/music/school_grammars/KONDO_SCHOOL.md — MELODY-*, PHRASE-*, HARMONY-*, FORM-*, RHYTHM-*, VOICE-*, PROCESS-* (43 rules, 20 sources, 43 features).
docs/proposals/music/school_grammars/SNES_JRPG_SCHOOL.md — LEIT-*, ECON-*, HARM-*, AFF-*, LOOP-*, TOOTH-* (44 rules, 25 sources, 50 features).
docs/proposals/music/school_grammars/EARWORM_LOOP_SCIENCE.md — R1–R14 (14 rules, 22sources, 33 features).
All 49 rule ids cited in this document resolve into that set, each to exactly one file, and the
resolver was positive-controlled (an id that is deliberately absent reports absent). What is still
NOT closed is verifier finding F4: several sources in those documents are bare author-year strings
that a reader cannot resolve from this repo. The grammars are now readable; their scholarship is
still unaudited, and each one says so on its own face.
What did NOT change with the ruling. PIPE_AUDIO_MUSIC_2026-07-29.md remains the lane's law for
stack, licence and records. The 30-year bar, the scoring law (per-culture period instrumentation,
mostly wordless) and the melody-first doctrine all stand. This rubric does not replace them; it is
the ruler that was missing underneath them.
---
LAW 1 — EVERY BAND NAMES ITS EXEMPLAR. A band with no named track behind it is a proxy, and a
proxy is what shipped fourteen themes. Every row in every table below carries the rule it enforces
and the exemplar the number came from. Where a floor was *derived* rather than cited (there is
exactly one, I0), it says so in its own row rather than borrowing someone else's citation.
LAW 2 — NO SINGLE SCALAR, ANYWHERE. PROCESS-01: *"REPORT PER FEATURE, never as a single scalar —
the collapse to one score is what let 14 unanchored themes ship."* The artifact schema has no
overall key and the emitter refuses to mint one; --self-test check S14 asserts its absence. A
cue is described by a seven-vector plus a hard-fail list. A reader who wants one number has to decide
for themselves what to trade away, in the open.
LAW 3 — WHAT CANNOT BE MEASURED IS DECLARED, NOT DROPPED. Nine features are NOT_COMPUTABLE from
the symbolic head-cell representation, each carrying the reason. They are **excluded from the axis
denominator** rather than silently counted as passes — check S15 asserts exactly that. This is the
same discipline feature_rig.py already applies to the doctrine's human-listener gates.
---
Every band is grounded against this named track set, and the census reports distance per feature
rather than a centroid distance:
SMB Ground Theme · SMB3 Overworld · SMW Athletic · SM64 Main Theme · SM64 Dire Dire Docks ·
LoZ Overworld · ALttP Hyrule Castle · ALttP Kakariko Village · OoT Title · Zelda's Lullaby ·
Saria's Song · Song of Storms · Great Fairy's Fountain · Hyrule Field · Gerudo Valley ·
MM Astral Observatory · MM Song of Healing · WW Grandma's Theme.
---
PASS, FAIL, or NOT_COMPUTABLE.NOT_COMPUTABLE never enters the denominator. hard: H1 H4 C5 C6 P1 Y1 L1 L2.
is exactly that, and the recompose gets told which one to go fix.
---
Tables are the instrument's own feature set. If a row here and a row in
harness/music_gen/nostalgia_score.py disagree, the code is right and the drift is a defect —
self-test check S16 asserts the two sets are identical in both directions.
*Does the identity arrive, early, as a thing you could carry out of the room?* The Library of
Congress essay locates the SMB Ground Theme's identity in "the first six notes that greet the
player"; Ferguson's whole catalogue indexes Kondo cues by opening interval, because the opening
is the identity. A four-bar atmospheric run-up before the tune is a defect in this dialect.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
H1 | hook_onset_beats | <= 8 | HARD | PHRASE-01 hook by bar 2, no standing intro | SMB Ground Theme -- 'the first six notes that greet the player' (LoC/Gibson 2023) |
H2 | head_cell_pitch_count | 3-5 | MELODY-02 / LEIT-02 the three-note head cell is what recurs | Zelda's Theme basic idea, mm. 1-2 (3 pitches, half-quarter-half) | |
H3 | head_bars | <= 2 | LEIT-02 the identity cell occupies <= 2 bars | all six OoT ocarina songs, built on a repeated three-note motif | |
H4 | opening_interval_semitones | 1 <= abs <= 7 | HARD | MELODY-01 opening interval inside a perfect fifth -- and it is an INTERVAL, not a unison | Ferguson JMTP catalogue -- every Kondo cue opens at <= P5, none at a 6th or 7th, and none at a unison; the floor is what the texture control forced into the rule |
H5 | opening_interval_in_target_mode | {2,3,4} | MELODY-01 the exemplar cluster is M2/m3/M3 | OoT Title = M2 up; Song of Storms = m3; Saria's Song = M3 up | |
H6 | head_span_semitones | 2-9 | ECON-04 identity cell range <= a major sixth -- with a FLOOR, because a cell that spans nothing is not a cell | Zelda's Lullaby / Saria's Song -- cells sit inside a sixth and none of them sits on a point | |
H7 | head_distinct_durations | <= 4 | ECON-07 rhythmic economy -- the cell must be TAPPABLE | Zelda's Theme half-quarter-half template, then fragmented | |
H8 | tonic_triad_outline_first4 | >= 0.60 | MELODY-07 outline the tonic triad in the opening statement | Prelude of Light (D major triad) / Serenade of Water (D minor triad, mm. 1-4) |
*Is the shape the ordinary one, and can a person reproduce it with no notation?* Jakubowski et al.
(2017) found earworm melodies carry more common global contours than non-earworms against a large
pop corpus — the plain rise-then-fall arch is a positive predictor. Novelty belongs in the interval
detail and the harmony, never in the contour. C5 is the hard hummability test that replaces the
failed proxy.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
C1 | contour_arch_rate | >= 0.60 | MELODY-04 arch contour, common not exotic | Jakubowski et al. 2017 -- earworms carry MORE COMMON contours; Song of Storms, Saria's Song | |
C2 | answering_contour_opposition | >= 0.50 | ECON-06 phrase arches answer themselves | Song of Storms and Saria's Song (up answered by down); Song of Time, Zelda's Lullaby (down answered by up) | |
C3 | melodic_range_semitones | 7-17 | ECON-04 singable span -- octave plus a fourth, floored at a fifth | Gervais 2015: the OoT warp songs keep 'a relatively small melodic range OUTLINING a tonic triad' -- outlining a triad cannot happen inside less than a fifth | |
C4 | melodic_pitch_alphabet | 4-8 (target 5) | MELODY-03 small pitch alphabet -- constrained, not absent | Kondo on the ocarina songs: 'I had to create all of those memorable tunes with only five tones' -- five is the FLOOR of the famous constrained case, not a ceiling to undercut | |
C5 | singability_gate | range<=17 & alphabet<=8 & tessitura 55-84 | HARD | the hard hummability test, replacing the failed proxy | the ocarina-song class -- reproducible monophonically by a player with no notation |
C6 | rest_density_melody | >= 0.15 | HARD | RHYTHM-04 rests are structural, not gaps | Kondo: 'I try to evoke something in the silence... Rest notes are very important to me.' |
**FINDING 2026-08-07 — C3 AND THE CARD'S the_hook.range_semitones ARE NOT THE SAME OBJECT, AND
A CUE CAN PASS ONE WHILE FAILING THE OTHER FOR NO MUSICAL REASON.** C3 bands the AUTHORED HEAD
CELL at 7 to 17 semitones — a singable span for a monophonic tune a player could whistle, grounded
in the ocarina-song class. The formula card's the_hook.range_semitones measures something else
entirely: the span of the PREDOMINANT PITCH TRACK extracted from a finished polyphonic mix over the
card's hook window, which wanders across whichever voice is loudest. Its median across the 30 corpus
rows is 22 semitones, which is outside C3's band — so a literal reading would fail most of the
music this rubric was built from, on a measurement C3 never intended to make.
Neither number is wrong. They are different objects wearing one word, and nothing in the rubric or
the card said so, which is how a future lane would have "fixed" a passing cue to satisfy a band that
does not apply to it. **The rule going forward: C3 is scored on the AUTHORED head cell only, via
harness/music_gen/author_head_cell.py, and is never read off a card.** The card's
the_hook.range_semitones is a descriptive mix statistic and is not a rubric feature; where it is
printed beside a rubric score it must be labelled as the extracted-line span. Note C18 in
theme_compositions.py already checks the head-cell law's own words against a ninth, on the
authored notes, which is the correct site for this class of check and the model C3 should follow.
Evidence and the corpus medians: docs/proposals/music/MUSIC_CRAFT_DOCTORATE.md §4.
*Are the intervals the dialect's intervals, and is there exactly one fingerprint leap?* Uematsu
centres the FF7 theme on a major 7th that recurs across the soundtrack — one characteristic wide
interval, deliberately placed, inside an otherwise conjunct line. I1's band is the **declared
intersection** of two rules that disagree: MELODY-05 asks for 0.25-0.45 and ECON-05 implies <= 0.40.
The rubric takes 0.25-0.40 and says so rather than picking a favourite silently.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
I0 | melodic_motion_rate | >= 0.70 | DERIVED FLOOR, declared as derived and not cited: the grammar states no repeated-note ceiling because no exemplar ever needed one. The texture control forced it -- a line that does not move satisfies every ceiling in the rubric vacuously | measured over the STATEMENT and not the head, because the SMB Ground Theme's own head is E E E and carries two unisons out of six intervals | |
I1 | leap_fraction | 0.25-0.40 | MELODY-05 leap-then-fill, intersected with ECON-05 stepwise majority | 'Minuet of Forest' -- octave leaps in the first half, neighbour/stepwise in the second | |
I2 | stepwise_fraction | >= 0.60 | ECON-05 stepwise majority with one signature leap | Uematsu's FF7 theme -- conjunct motion carrying one recurring major 7th | |
I3 | signature_leaps_per_8bar | 1-2 | ECON-05 exactly one characteristic wide interval per phrase, and it IS the fingerprint | the FF7 main theme's major 7th, recurring across the soundtrack | |
I4 | leaps_ge_P4_per_8bar | >= 1 | MELODY-05 at least one leap >= P4 per 8-bar unit, answered by a stepwise half | 'Minuet of Forest', mm. 1-4 against mm. 5-8 | |
I5 | dialect_interval_conformance | >= 0.85 | MELODY-01 the dialect's interval set; tritones, sixths and sevenths are outside it | Ferguson JMTP catalogue -- the full Kondo opening-interval distribution tops out at P5 | |
I6 | scale_degree_5_dwell | >= 0.10 | MELODY-06 anchor on scale-degree 5 | named a 'Kondo-ism' in Everitt's Queen's University style study (2024) | |
I7 | max_melodic_interval | <= 12 | MELODY-01/ECON-04 -- above an octave the line stops being a sung line | 'Minuet of Forest' tops out at the octave and nothing in the catalogue exceeds it |
*Does the 8-bar unit parse as a Caplin sentence — basic idea, near-literal repeat, continuation by
fragmentation, cadence?* Zelda's Theme repeats its basic idea at mm. 3-4 and again at mm. 11-12;
"Serenade of Water" repeats mm. 1-2 in mm. 3-4. **Development belongs in the continuation, never in
the statement**, and P1 is hard for that reason. P1b exists because the landed cohort answers its
head with a *mirror* rather than a repeat: the rubric prints that as a named deviation instead of
letting it read as a silent miss.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
P1 | basic_idea_repeat_similarity | >= 0.80 | HARD | PHRASE-04 repeat the basic idea literally before developing it | Zelda's Theme mm. 3-4 and mm. 11-12; 'Serenade of Water' mm. 3-4 |
P1b | basic_idea_mirror_similarity | reported, not gated | PHRASE-04 observed alternative -- a MIRRORED answer is not the exemplar's literal repeat | printed so a mirror-response cue reads as a named deviation rather than a silent miss | |
P2 | continuation_fragmentation | final quarter <= 0.75x opening | PHRASE-02 the continuation fragments the cell | Zelda's Theme mm. 5-8 (fragmentation) and the B section's liquidation | |
P3 | phrase_grid_conformance | >= 0.80 | PHRASE-02 units resolve to 8 bars off a 2-bar grid | Caplin sentence readings of Zelda's Theme and SMB2 Overworld (Ferguson, Form) | |
P4 | sentence_bar_count | 8 | PHRASE-02 / ECON-10 the classical sentence is the default 8-bar unit | Zelda's Theme -- two 8-bar sentences plus an 8-bar B section | |
P5 | phrase_segment_count | >= 2 | PHRASE-03 call and response across the 8-bar unit | 'Minuet of Forest' -- lyre states, ocarina answers |
*Does the harmony do the four things this school does — prolong tonic over a held bass, borrow from
the parallel mode, substitute for the dominant by voice leading, and refuse to close?* Gervais's
four-step phrase model is the spine: tonic prolongation → subdominant → a chromatically altered
chord where the dominant is expected → a weakened cadence on a major tonic. Y1 is the single
most load-bearing hard gate in the rubric: a fully-closed cadence at the wrap point is the most
common way a 90-second loop becomes unbearable.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
Y1 | cadence_type_at_loop_end | never PAC | HARD | PHRASE-05 THE ANTI-FATIGUE LAW -- never close the loop with a perfect authentic cadence | Zelda's Theme: 'avoidance of the tonic note and perfect authentic cadences' |
Y2 | final_leading_tone_present | false | HARMONY-03 bVII for V -- dominant function without a leading tone | 'Serenade of Water' cadences IV - VI - VII - I instead of V - I (Gervais 2015) | |
Y3 | mixture_chord_rate | >= 0.15 | HARMONY-05 modal mixture is the default colour source, not an ornament | Ferguson: i/bIII in LoZ Overworld and Dire Dire Docks; iv in SMW Athletic; a Neapolitan in LoZ Overworld | |
Y4 | named_mixture_chords | >= 1 of {bIII,bVI,bVII,iv,iio,bII} | HARMONY-05 at least one member of the borrowed set per loop | the catalogued Kondo mixture set, by track (Ferguson JMTP 2020) | |
Y5 | harmonic_rhythm_chords_per_bar | 0.5-2.0 | HARMONY-10 one chord per bar in the theme statement | LoZ Overworld: 'the composition changes chords exactly once every measure' | |
Y6 | tonic_prolongation_first4 | I<->IV over a held bass | HARMONY-02 prolong tonic by alternating I-IV over a common bass | 'Minuet of Forest' (I7<->IV, scale-degree 1 held); 'Serenade of Water' (i<->IV on D) | |
Y7 | house_cadence_present | >= 1 of {bVI-bVII-I, I-bVII-bVI-V} | HARMONY-04 / HARM-02 the two sanctioned cadence families | SMB end-of-level fanfare and Ground Theme section B; SM64 Dire Dire Docks; the OoT Andalusian adaptation | |
Y8 | bVII_for_V_substitutions | >= 1 | HARMONY-03 bVII substitutes for V, keeping 4->3 without a leading tone | 'Serenade of Water' IV - VI - VII - I (Gervais 2015); Brame on why bVII reads dominant | |
Y9 | mean_voice_leading_displacement | <= 3.0 | HARMONY-08 choose chromatic chords by voice leading, not by function | 'Prelude of Light' m. 6 -- a common-tone seventh where the dominant belongs (Tymoczko parsimony) | |
Y10 | bass_semitone_or_pedal_device | semitone >= 0.25 OR pedal >= 0.25 | HARMONY-09 / HARM-07 descending chromatic bass or pedal point as the standing devices | Zelda's Lullaby -- a C pedal for four bars, then a chromatic descent C to A across mm. 1-7 | |
Y11 | picardy_third_present | true for minor/modal cues; N/A in major | HARMONY-07 Picardy third to close minor and modal cues | tierce de Picardie closing 'Serenade of Water' and 'Requiem of Spirit' (Gervais 2015) | |
Y12 | characteristic_degree_rate | >= 1 per 8 bars; N/A for plain major/minor | HARMONY-06 one declared mode per cue, and SOUND its characteristic degree | Saria's Song / OoT Title / Song of Healing catalogued as Lydian (Ferguson JMTP 2020) | |
Y13 | secondary_function_count | >= 1 for loops > 16 bars | HARMONY-11 secondary dominants stay in the vocabulary; diatonic-only fails the dialect check | SMW Athletic carries V/ii, V/IV, V/vi and viio/V in one cue |
*Can the loop survive being heard a hundred times?* This is Kondo's own answer, verbatim, to the
question of how he avoids sounding repetitive: **"there are four motifs to the music and each of
those motifs is unique. They don't sound like the other motifs, and that's why it doesn't sound too
repetitious."** A loop that rides one motif for 90 seconds fails by construction, no matter how good
the motif is — and L1 says a themed cue cannot carry three or four contrasting motifs inside 8 or
16 bars, so the length is a hard gate too. L4's band is the only band in this document taken from a
corpus statistic rather than a named track: Hunt's 21,391-piece survey, mean 62.79%, SD 3.49, flat
across eleven console generations.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
L1 | loop_length_bars | >= 24 | HARD | FORM-05 themed loops run at least 24-32 bars | Zelda's Theme -- a 24-bar binary (16-bar A of two sentences plus an 8-bar B) |
L2 | motif_count_per_loop | >= 3 (target 4) | HARD | FORM-01 multi-motif loops are the anti-fatigue mechanism | Kondo, LoC interview 2023: 'there are four motifs... They don't sound like the other motifs, and that's why it doesn't sound too repetitious.' |
L3 | motif_contrast_index | >= 0.50 | FORM-01 the motifs must not sound like each other -- that IS the mechanism | the SMB Ground Theme's four mutually-unlike motifs | |
L4 | bar_repetition_ratio | 0.55-0.70 | FORM-03 calibrated repetition density, not maximum repetition | Hunt 2020, 21,391 pieces across 11 consoles: mean 62.79%, SD 3.49, flat across generations | |
L5 | section_variety | not a pure AA/AABB tiling | FORM-02 asymmetric section order, not AABB | SMB Ground Theme: Intro - {ABC - ADCD}, the intro returning as the cadence of section C | |
L6 | loop_seam_step_semitones | <= 5 | LOOP-06 the seam must be inaudible -- the wrap is a step, not a jump | Zelda's Theme's open V7 half cadence stepping back into its own basic idea | |
L7 | loop_seam_smoothness_5axis | NOT COMPUTABLE (needs audio) | LOOP-06 / Medina-Gray 2019 | The Wind Waker (Medina-Gray's illustration) |
A NAMED GAP, carried rather than guessed. No source gives a measured distribution of loop lengths
in seconds for the exemplar class; the only figures available are practitioner conventions of
non-citable quality. L1 is therefore stated in bars, grounded on Zelda's Theme's 24-bar binary.
Any seconds-based gate must be derived by direct measurement of the named exemplar tracks, and until
that measurement exists this rubric does not have one. The census reports loop seconds as data, not
as a scored feature.
*Is the texture thin on purpose?* The SMB Ground Theme was written for two pulse channels, one
triangle and one noise channel, with Kondo alternating melodies between the three melodic
channels rather than doubling them — and Ocarina of Time's engine had four sequence players, sixteen
channels each and sixty-four preallocated layers, and the writing still stays thin. **The thinness is
an aesthetic choice, not a hardware ceiling**, and modern orchestral density is the fastest way to
lose this dialect. Five of this axis's nine features cannot be seen from a symbolic sketch, and they
say so.
| id | feature | band | hard | rule | exemplar grounding |
|---|---|---|---|---|---|
V1 | simultaneous_voice_count | 3-5 | VOICE-01 / ECON-02 three to five parts -- thin is the style, not the limitation | SMB Ground Theme on 2 pulse + triangle + noise, with melody ALTERNATING between channels | |
V2 | chord_voicing_openness | >= 4.0 | VOICE-03 open voicing -- harmonically rich timbres need spacing | Kondo on the Famicom square wave: open voicing 'sounds much clearer' | |
V3 | register_separation_rate | >= 0.75 | ECON-03 register separation is mandatory -- lead and frame occupy disjoint bands | the Famicom allocation: pulse lead, triangle bass as counterpoint, never stacked | |
V4 | unison_doubling_rate | <= 0.20 | VOICE-02 / ECON-08 one job per voice; if two parts do the same job, delete one | the triangle-wave bass as COUNTERPOINT in the SMB Ground Theme, not root-doubling | |
V5 | contrary_motion_ratio | NOT COMPUTABLE -- the sketch has a block frame, not a counterline | ECON-08 the counter-line is a second melody | 'Minuet of Forest' lyre-then-ocarina | |
V6 | cross_rhythm_index | NOT COMPUTABLE -- the sketch has no percussion layer | RHYTHM-01 duple melody against triple-subdivided percussion | Kondo, LoC 2023: 'the rhythm hi-hat is divided into triple' | |
V7 | clave_cell_presence | NOT COMPUTABLE -- no percussion or comping layer | RHYTHM-02 a clave-derived cell under a straight melody | the SMB Ground Theme's two-dotted-quarters-plus-a-quarter cell | |
V8 | region_identity_separability | NOT COMPUTABLE -- needs timbre | VOICE-05 one unambiguous sonic identity per place | Kondo's stated philosophy (LoC registry essay) | |
V9 | locomotion_lock | NOT COMPUTABLE -- needs the chapter's movement rate | RHYTHM-03 derive tempo from the player's locomotion | Kondo's SMB rewrite anecdote |
---
TOOTH-01, which is the whole licence position of this lane in one sentence: **grammar is learned;
melodies are never reproduced.** Cadence formulas (bVI-bVII-I, I-bVII-bVI-V), modes, ostinato
figures, sentence structure and loop forms are not protectable and are the intended borrowings.
Actual tunes are never copied, and the screen is what makes that a measurement instead of a promise.
How it works. Every candidate's melody is reduced to an interval sequence — transposition
invariant by construction, so a quote in any key is visible — and screened against a reference set of
exemplar hook signatures held **as interval sequences only: no audio, no absolute pitches, no
rhythms, no lyrics.** It is a refusal fingerprint in exactly the sense a plagiarism checker's hash
database is, and it exists to REFUSE. It is never a generation input, and nothing in the pipeline
reads it as one.
Two refusal rules, both needed:
diegetic player-performable class is six notes long, so its entire identity is five intervals; a
length rule alone could never see it, **and that class is precisely the class this game also
builds.**
Inversion and retrograde hits are advisory — printed, never a refusal. The false-positive cost of
refusing an inverted five-interval run inside a stepwise dialect is real, and a noisy tooth conceals.
MUTATION-PROVEN BOTH DIRECTIONS (--mutation-proof, and the same checks run inside --self-test):
| check | direction | what it proves |
|---|---|---|
T01 | must-fire | a 6-interval quote is REFUSED by the length rule |
T02 | must-fire | a complete 5-interval diegetic hook is REFUSED by the complete-signature rule |
T03 | must-not-fire | a 5-interval PARTIAL run is ALLOWED — the boundary is where it is claimed |
T04 | must-fire | the screen is transposition-invariant |
T05 | mutation | with both rules disabled the quote goes CLEAR — T01 depends on the mechanism, not on luck |
T06 | mutation | with the complete rule disabled the diegetic hook slips through — that rule is the only thing catching that class |
T07 | mutation | extending the partial run by one interval makes it fire — T03 passes because it is 5 long, not because the screen is blind |
T08 | mutation | a signature spliced into a REAL landed theme is caught — a CLEAR on the fourteen is a measurement, not a blind spot |
T09 | control | the same theme unspliced is CLEAR |
SEED-SET HONESTY. The reference set is 13 signatures and a declared gap list, not a census.
Every entry carries a confidence and a derivation. Fourteen anchor-set exemplars are **declared
absent** — LoZ Overworld's main phrase, SM64's main theme, Dire Dire Docks, SMW Athletic, SMB
Underwater, SMB3 Overworld, both ALttP cues, OoT Title, Hyrule Field, Gerudo Valley, Great Fairy's
Fountain, MM Astral Observatory, WW Grandma's Theme — because no reliable interval transcription was
available and a fingerprint invented from memory is a false negative wearing a green tick.
Therefore: CLEAR means "no seed signature matched", and never "clean". Expanding the seed set by
direct transcription of the named exemplars is the next measured rung, not a formality.
---
harness/music_gen/nostalgia_census.md (script-emitted; re-run and read the diff). Scored
2026-08-05, the first time the landed fourteen have been measured against the exemplar class rather
than against themselves. Reported as found:
| axis | EXCEEDS | MEETS | BELOW |
|---|---|---|---|
| HOOK PLACEMENT + STRENGTH | 7 | 5 | 2 |
| CONTOUR SINGABILITY | 0 | 1 | 13 |
| INTERVAL VOCABULARY | 0 | 2 | 12 |
| PHRASE ARCHITECTURE | 0 | 3 | 11 |
| HARMONIC SIGNATURE | 0 | 0 | 14 |
| LOOP FORM | 0 | 0 | 14 |
| VOICE ECONOMY | 9 | 2 | 3 |
Best in cohort: COMPANION_HEALERS_CHILD at 4 of 7 axes. Eleven of the fourteen sit at 1 or 2.
Six features fail across the entire cohort or all but one of it, and they are the recompose's
worklist rather than a scolding:
L1 loop_length_bars — 0/14. Every landed theme is an 8- or 16-bar sentence. The exemplar bar is 24-32. This one feature makes L2 unreachable by construction: three to four mutually-unlike
motifs do not fit in eight bars.
Y3 mixture_chord_rate — 0/14 and Y8 bVII-for-V — 0/14. The cohort's harmony isdiatomically clean, which is precisely the thing HARMONY-05 and HARMONY-11 say this dialect
never is. Y7 (a house cadence present) is 1/14.
I1 leap_fraction — 0/14 and I3 signature leaps — 1/14. The heads are either purelystepwise or triad-outlining; the one licensed wide interval the briefs specify is not landing as a
measurable fingerprint in the statement.
Y6 tonic_prolongation_first4 — 1/14. The opening four bars move functionally instead ofholding a tonic field over a common bass.
P1 basic-idea literal repeat — 3/14 (HARD). The cohort answers its head with a *mirror* (P1b is high where P1 is low). That is a coherent compositional choice and it is not this
dialect's — the exemplar restates before it develops.
C6 rest_density — 3/14 (HARD). The lines are close to wall-to-wall. Kondo's own statedmethod makes the silence structural.
Where the cohort is genuinely strong, and should not be thrown away in the recompose: **hook
placement (12 of 14 at MEETS or better) and voice economy (11 of 14)**. The heads arrive early,
sit in small spans, and the textures are thin and openly voiced. The failure is not the head cell —
it is everything that was supposed to happen after it: length, motif count, harmonic colour,
and the answering phrase.
Anti-plagiarism: 14 of 14 CLEAR, against a 13-signature seed set with 14 declared gaps.
---
harness/music_gen/nostalgia_score.py — the instrument. Self-test is exit-code-bearing and wired into the standing suite as gate nostalgia_rubric.
harness/music_gen/feature_rig.py — the audio-side rig. It measures whether a signal carries amelody; this rubric measures whether that melody is in the dialect. **Neither one alone is the
bar** and the two are reported side by side, never merged.
harness/music_gen/theme_compositions.py + author_head_cell.py — every future head cell isscored here before it is rendered, and a candidate that cannot clear the hard features does not
get orchestration spend.
harness/music_gen/ab_judge.py / emit_authored_picks.py — TOOTH-02: every A/B runs the currenttheme as the losing control plus an exemplar-class anchor. A candidate that beats only the
incumbent has not cleared the bar.
docs/proposals/music/COMPOSER_BRIEF_PACK.md and LEITMOTIF_ARCHITECTURE.md — the briefs specifythe shape; this rubric is what checks the shape arrived.
docs/pipeline_review/tech_research/PIPE_AUDIO_MUSIC_2026-07-29.md — remains the lane's law forstack, licence and records. This rubric sits under it, not over it.
docs/proposals/MUSIC_COMPOSITION_DOCTRINE.md — the hummability checklist's computable half nowhas an exemplar anchor; the human-listener gates are unchanged and still unbought.
---
python harness/music_gen/nostalgia_score.py --self-test # 25 controls; exit 2 on any failure python harness/music_gen/nostalgia_score.py --mutation-proof # both teeth, both directions python harness/music_gen/nostalgia_score.py --census # score the landed 14, emit both files python harness/music_gen/nostalgia_score.py --theme PROTAGONIST_THEME python harness/music_gen/nostalgia_score.py --control CONTROL_HOOKLESS python harness/music_gen/nostalgia_score.py --screen-intervals 0,0,-4,4,3,-12
The self-test is the claim. Three controls carry it: a composition built to the rubric (must
score 7/7 with no hard fail), a texture control (a held pad — must go BELOW on 6 of 7), and a
deliberately hook-less control (a real melody with real harmony and a real cadence that is out of
the dialect on every axis — must go BELOW on 6 of 7 and trip at least three hard gates). **A rubric
that cannot fail a bad melody is not a rubric, it is a formality**, and the hook-less control is the
one that proves it is not.