HF_MT_06_SANCTUARY_REST.json

music/complete_tracks/cards/HF_MT_06_SANCTUARY_REST.json

{
 "card_id": "HF_MT_06_SANCTUARY_REST",
 "cue_role": "sanctuary_rest",
 "cue_class": "ambient_loop",
 "working_title": "Somewhere To Put It Down",
 "chapters_served": [
  "CH_03",
  "CH_07",
  "CH_09",
  "CH_12"
 ],
 "target_duration_s": 283,
 "loop_class": "long_loop",
 "in_game_loop_span_s": 283,
 "bpm": 56,
 "tempo_band": "T1_very_slow",
 "key": "F major",
 "modal_colour": "major with a borrowed flat-6 under the second statement (AFF-03)",
 "instrumentation_family": "solo_instrument_led",
 "instrumentation": [
  "solo harp (carrier)",
  "one sustained cello, entering at bar 33 only",
  "hand chimes, four events in the whole track"
 ],
 "voice_count_target": 3,
 "energy_class": "E01_stillness",
 "dynamic_range_target_db": 20,
 "total_bars": 88,
 "form": [
  {
   "label": "A",
   "bars": 16,
   "function": "harp alone; the home motif at its plainest"
  },
  {
   "label": "A_prime",
   "bars": 16,
   "function": "same, one octave up, left hand silent -- register change is the only variation"
  },
  {
   "label": "B",
   "bars": 16,
   "function": "cello enters under the harp; borrowed flat-6 harmony arrives"
  },
  {
   "label": "C",
   "bars": 16,
   "function": "the harp stops for eight bars. The cello is alone. Then the harp answers."
  },
  {
   "label": "A_return",
   "bars": 16,
   "function": "both, quietest dynamic in the roster"
  },
  {
   "label": "coda",
   "bars": 8,
   "function": "the motif liquidates to its first three notes and stops on the 2nd degree"
  }
 ],
 "motif_stated": [
  "HOME_AND_LOSS"
 ],
 "motif_developed": [],
 "motif_operation": "register migration and the borrowed-minor reharmonisation; no augmentation",
 "distinct_motifs": 4,
 "anti_tiling": "Section C contains eight bars where the carrier is SILENT. Nothing in the shipped cohort drops a part. The loop point sits after a 2nd-degree arrival, so the ear is still waiting when it wraps (PHRASE-05).",
 "laws": [
  "SNES AFF-01",
  "SNES AFF-03",
  "SNES LOOP-01 (ambient 90-150s)",
  "SNES LOOP-04",
  "KONDO PHRASE-05",
  "SNES ECON-01"
 ],
 "canon_refs": [
  "docs/proposals/music/LEITMOTIF_ARCHITECTURE.md section 3.5",
  "T0_Motif_Registry :: MOT_0001 (the mother's ward)"
 ],
 "care_notes": "",
 "substrate_confidence": "full",
 "reveal_gate": "NONE",
 "region": null,
 "region_page": null,
 "interactive_hook": 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": [
  40,
  63
 ],
 "instrumentation_family_meaning": "one voice carries the whole piece with minimal support; the silence around it is scored.",
 "energy_class_meaning": "no forward pressure; the piece exists to be sat inside.",
 "time_signature": "3/4",
 "beats_per_bar_quarter_equivalents": 3,
 "bar_seconds": 3.2143,
 "_duration_is_derived": "total_bars x beats_per_bar x 60 / bpm -- not hand-declared",
 "target_duration_mmss": "4:43",
 "form_summary": "A(16) - A_prime(16) - B(16) - C(16) - A_return(16) - coda(8)",
 "section_count": 6,
 "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": true,
  "missing_classes": [],
  "sourcing_action": "none -- the landed stack covers this card.",
  "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": 6
}

Generated by harness/site/structure_site.py — the URL path is the repo path. review root