music/complete_tracks/cards/HF_MT_07_TRADE_AND_FESTIVAL.json
{
"card_id": "HF_MT_07_TRADE_AND_FESTIVAL",
"cue_role": "trades_festival",
"cue_class": "diegetic_public_loop",
"working_title": "The Working Street",
"chapters_served": [
"CH_07",
"CH_08",
"CH_12"
],
"target_duration_s": 262,
"loop_class": "long_loop",
"in_game_loop_span_s": 262,
"bpm": 132,
"tempo_band": "T5_brisk",
"key": "A major",
"modal_colour": "major, with the ensemble tuning deliberately not equal-tempered",
"instrumentation_family": "wind_and_drum_period_band",
"instrumentation": [
"double-reed lead (per-region substitution)",
"second reed answering",
"frame drums",
"hand drums",
"struck iron / bell",
"shaken rattle"
],
"voice_count_target": 6,
"energy_class": "E09_communal_celebration",
"dynamic_range_target_db": 16,
"total_bars": 96,
"form": [
{
"label": "call",
"bars": 8,
"function": "solo reed, free time, no drums -- the crowd is not dancing yet"
},
{
"label": "A",
"bars": 16,
"function": "drums enter; the tune stated"
},
{
"label": "A_prime",
"bars": 12,
"function": "second reed answers a beat late; the two interlock"
},
{
"label": "B",
"bars": 12,
"function": "drums alone, cross-rhythm; the melodic instruments rest"
},
{
"label": "C",
"bars": 16,
"function": "the tune in a second metre -- the same notes, redistributed"
},
{
"label": "A_double",
"bars": 12,
"function": "both reeds in octaves, loudest point"
},
{
"label": "break",
"bars": 12,
"function": "the working sounds take over: hammer, quench, market. The score gives way."
},
{
"label": "turnaround",
"bars": 8,
"function": "the drums thin to one player; half cadence into the call"
}
],
"motif_stated": [],
"motif_developed": [
"FAM_THE_LIVING_VOICE"
],
"motif_operation": "metric redistribution (section C) -- the same intervals in a different metre",
"distinct_motifs": 4,
"anti_tiling": "Section B has no melody at all and section 'break' has no score at all. Two of eight sections carry no tune, which is the mechanism the shipped cohort has none of.",
"laws": [
"KONDO RHYTHM (cross-rhythm)",
"SNES LOOP-05",
"SNES AFF-05",
"KONDO FORM-02"
],
"canon_refs": [
"T0_Chapter_Index.trade_content_chapters",
"T0_Festival_Registry",
"_source/02_Tier_2_Region_Pages/*.md section 10 (per-region reed and drum substitution)"
],
"care_notes": "The lead reed and the drums are SUBSTITUTED per region from that region page's own Section 10 roster; the composition is one piece, the instrumentarium is local. No consecrated or festival performance is sampled; reference register only.",
"substrate_confidence": "mixed -- strongest in West Africa (SRC_00204 igbin drum family) and Angkor/Cham (ginang + saranai); thinnest on the Swahili Coast, where the page attests three sentences and the festival beat is staged at reference register with drums implied.",
"reveal_gate": "NONE",
"interactive_hook": "The 'break' section ducks the score under the real trade-station foley, so the player's own hammer strikes land in the metric gap the composition leaves.",
"region": null,
"region_page": null,
"short_loop_justification": null,
"_doc": "A per-track IDENTITY CARD. It says what the track IS on the axes a listener hears in the first four seconds, so that no two tracks in the roster read as the same track. Consumed by the composition lane; scored against build/audio/complete_tracks/SAMENESS_BASELINE.md.",
"_emitter": "harness/music_gen/emit_identity_cards.py",
"_ruling_served": "Josh 2026-08-05 -- 12 to 20 complete tracks with real orchestral complexity, not one 30-second texture fifteen times.",
"tempo_band_range_bpm": [
120,
143
],
"instrumentation_family_meaning": "a per-culture period band of winds and drums, at reference register.",
"energy_class_meaning": "bright, danced, many people doing one thing.",
"time_signature": "12/8",
"beats_per_bar_quarter_equivalents": 6,
"bar_seconds": 2.7273,
"_duration_is_derived": "total_bars x beats_per_bar x 60 / bpm -- not hand-declared",
"target_duration_mmss": "4:22",
"form_summary": "call(8) - A(16) - A_prime(12) - B(12) - C(16) - A_double(12) - break(12) - turnaround(8)",
"section_count": 8,
"loop_point_cadence": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
"stack_coverage": {
"current_stack": "sfizz 1.2.3 + VSCO2-CE + VCSL (23 instruments, CC0; CPU render)",
"renderable_today": false,
"missing_classes": [
"per-culture period instruments",
"percussion"
],
"sourcing_action": "Wave-two entry condition: extend the sfz stack with CC0 / public-domain percussion, choir and period sample sets, recorded in docs/licence_records/ with the same hash discipline as the landed stack. No sample from any set is ever a conditioning, fine-tune or LoRA input to any generator.",
"honest_note": "The shipped cohort's 'one instrument set' is PARTLY a stack constraint: the landed 23 instruments contain no percussion, no choir, no trumpet, no tuba and no period instrument. A card that names them is naming what has to be acquired, not claiming it exists."
},
"order": 7
}