loop_cadence.json

music/complete_tracks/loop_cadence.json

{
 "_doc": "Measured loop-seam cadence over the shipped complete tracks.",
 "_emitter": "harness/music_gen/loop_cadence.py",
 "_replaces": "loop_seam.cadence, which carried the CARD's specification sentence unchanged on all twenty records",
 "_law": "KONDO PHRASE-05 -- a loop point never takes a perfect authentic cadence",
 "classifier_proofs": [
  {
   "mutation": "perfect_authentic",
   "expected": "PAC",
   "measured": "PAC",
   "pass": true,
   "proves": "the cadence PHRASE-05 forbids at a loop point is detected and refused"
  },
  {
   "mutation": "imperfect_authentic",
   "expected": "IAC",
   "measured": "IAC",
   "pass": true,
   "proves": "a weakened authentic cadence is NOT reported as a perfect one"
  },
  {
   "mutation": "half_cadence",
   "expected": "HALF",
   "measured": "HALF",
   "pass": true,
   "proves": "PHRASE-05's first remedy reads as itself"
  },
  {
   "mutation": "bvii_substitution",
   "expected": "BVII",
   "measured": "BVII",
   "pass": true,
   "proves": "PHRASE-05's second remedy reads as itself"
  },
  {
   "mutation": "plagal",
   "expected": "PLAGAL",
   "measured": "PLAGAL",
   "pass": true,
   "proves": "a plagal close is not an authentic one and is not refused"
  },
  {
   "mutation": "open_drone",
   "expected": "OPEN",
   "measured": "OPEN",
   "pass": true,
   "proves": "a drone frame is reported OPEN rather than forced into a triad"
  },
  {
   "mutation": "injected_pac_end_to_end",
   "expected": "PAC",
   "measured": "PAC",
   "pass": true,
   "proves": "THE WHOLE PATH, not just the classifier: bar arithmetic, percussion exclusion and the card's tonic all have to be right for a real track's loop point to read PAC when a PAC is put there"
  }
 ],
 "tracks_measured": 20,
 "tracks_pac": [],
 "class_tally": {
  "PAC": 0,
  "IAC": 5,
  "HALF": 3,
  "BVII": 2,
  "PLAGAL": 0,
  "OPEN": 10
 },
 "tracks": [
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 6,
   "final_root_fit_score": 1.35,
   "final_bar": 95,
   "penultimate_bar": 94,
   "final_pitch_classes": [
    0,
    2,
    6,
    8,
    9,
    11
   ],
   "final_root_pc": 2,
   "final_quality": "major",
   "penultimate_root_pc": 1,
   "penultimate_quality": "minor",
   "bass_pc": 0,
   "soprano_pc": 11,
   "tonic_pc": 2,
   "class": "IAC",
   "why": "lands on the tonic from degree 11, not from the dominant",
   "penult_degree": 11,
   "final_degree": 0,
   "root_position": false,
   "soprano_tonic": false,
   "pass": true,
   "card_id": "HF_MT_01_TITLE",
   "arm": "A",
   "key": "D major",
   "loop_class": "none_linear",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_01_TITLE/HF_MT_01_TITLE.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "high",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 3.35,
   "final_bar": 95,
   "penultimate_bar": 94,
   "final_pitch_classes": [
    0,
    5,
    9
   ],
   "final_root_pc": 5,
   "final_quality": "major",
   "penultimate_root_pc": 5,
   "penultimate_quality": "major",
   "bass_pc": 5,
   "soprano_pc": 0,
   "tonic_pc": 7,
   "class": "BVII",
   "why": "the final chord is the subtonic -- no leading tone, so nothing is pulling toward the tonic",
   "penult_degree": 10,
   "final_degree": 10,
   "pass": true,
   "card_id": "HF_MT_02_EXPLORATION_TRAVERSAL",
   "arm": "B",
   "key": "G mixolydian",
   "loop_class": "phrase_pool",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_02_EXPLORATION_TRAVERSAL/HF_MT_02_EXPLORATION_TRAVERSAL.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "high",
   "final_pitch_class_count": 4,
   "final_root_fit_score": 2.8,
   "final_bar": 99,
   "penultimate_bar": 98,
   "final_pitch_classes": [
    1,
    4,
    7,
    9
   ],
   "final_root_pc": 1,
   "final_quality": "dim",
   "penultimate_root_pc": 2,
   "penultimate_quality": "sus2",
   "bass_pc": 1,
   "soprano_pc": 9,
   "tonic_pc": 4,
   "class": "OPEN",
   "why": "the final chord is degree 9 -- the loop point does not close onto the tonic at all",
   "penult_degree": 10,
   "final_degree": 9,
   "pass": true,
   "card_id": "HF_MT_03_BATTLE_ORDINARY",
   "arm": "A",
   "key": "E dorian",
   "loop_class": "short_loop_composed_seam",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_03_BATTLE_ORDINARY/HF_MT_03_BATTLE_ORDINARY.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "high",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 3.35,
   "final_bar": 95,
   "penultimate_bar": 94,
   "final_pitch_classes": [
    0,
    3,
    7
   ],
   "final_root_pc": 0,
   "final_quality": "minor",
   "penultimate_root_pc": 0,
   "penultimate_quality": "minor",
   "bass_pc": 0,
   "soprano_pc": 7,
   "tonic_pc": 0,
   "class": "IAC",
   "why": "lands on the tonic from degree 0, not from the dominant",
   "penult_degree": 0,
   "final_degree": 0,
   "root_position": true,
   "soprano_tonic": false,
   "pass": true,
   "card_id": "HF_MT_04_BOSS_CHAPTER",
   "arm": "B",
   "key": "C phrygian",
   "loop_class": "short_loop_composed_seam",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_04_BOSS_CHAPTER/HF_MT_04_BOSS_CHAPTER.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 1.45,
   "final_bar": 175,
   "penultimate_bar": 174,
   "final_pitch_classes": [
    0,
    2,
    9
   ],
   "final_root_pc": 2,
   "final_quality": "power",
   "penultimate_root_pc": 7,
   "penultimate_quality": "power",
   "bass_pc": 9,
   "soprano_pc": 2,
   "tonic_pc": 2,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 5,
   "final_degree": 0,
   "pass": true,
   "card_id": "HF_MT_05_BOSS_APEX",
   "arm": "A",
   "key": "D minor",
   "loop_class": "multiphase_linear_with_loop_tails",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_05_BOSS_APEX/HF_MT_05_BOSS_APEX.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 1.3,
   "final_bar": 86,
   "penultimate_bar": 85,
   "final_pitch_classes": [
    4,
    7
   ],
   "final_root_pc": 0,
   "final_quality": "major",
   "penultimate_root_pc": 0,
   "penultimate_quality": "sus2",
   "bass_pc": 7,
   "soprano_pc": 4,
   "tonic_pc": 5,
   "class": "HALF",
   "why": "the final chord is the dominant -- the phrase is left open, which is PHRASE-05's remedy",
   "penult_degree": 7,
   "final_degree": 7,
   "pass": true,
   "card_id": "HF_MT_06_SANCTUARY_REST",
   "arm": "B",
   "key": "F major",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_06_SANCTUARY_REST/HF_MT_06_SANCTUARY_REST.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 4,
   "final_root_fit_score": 0.9,
   "final_bar": 95,
   "penultimate_bar": 94,
   "final_pitch_classes": [
    4,
    7,
    8,
    9
   ],
   "final_root_pc": 9,
   "final_quality": "power",
   "penultimate_root_pc": 8,
   "penultimate_quality": "dim",
   "bass_pc": 7,
   "soprano_pc": 8,
   "tonic_pc": 9,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 11,
   "final_degree": 0,
   "pass": true,
   "card_id": "HF_MT_07_TRADE_AND_FESTIVAL",
   "arm": "A",
   "key": "A major",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_07_TRADE_AND_FESTIVAL/HF_MT_07_TRADE_AND_FESTIVAL.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 1.65,
   "final_bar": 53,
   "penultimate_bar": 44,
   "final_pitch_classes": [
    7,
    9
   ],
   "final_root_pc": 7,
   "final_quality": "sus2",
   "penultimate_root_pc": 7,
   "penultimate_quality": "power",
   "bass_pc": 7,
   "soprano_pc": 9,
   "tonic_pc": 2,
   "class": "OPEN",
   "why": "the final chord is degree 5 -- the loop point does not close onto the tonic at all",
   "penult_degree": 5,
   "final_degree": 5,
   "pass": true,
   "card_id": "HF_MT_08_SORROW_LOSS",
   "arm": "B",
   "key": "D aeolian",
   "loop_class": "none_linear",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_08_SORROW_LOSS/HF_MT_08_SORROW_LOSS.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 1.45,
   "final_bar": 71,
   "penultimate_bar": 70,
   "final_pitch_classes": [
    3,
    4,
    8
   ],
   "final_root_pc": 8,
   "final_quality": "power",
   "penultimate_root_pc": 1,
   "penultimate_quality": "minor",
   "bass_pc": 3,
   "soprano_pc": 4,
   "tonic_pc": 9,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 4,
   "final_degree": 11,
   "pass": true,
   "card_id": "HF_MT_09_WONDER_DISCOVERY",
   "arm": "A",
   "key": "A lydian",
   "loop_class": "tail_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_09_WONDER_DISCOVERY/HF_MT_09_WONDER_DISCOVERY.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 1.1,
   "final_bar": 106,
   "penultimate_bar": 105,
   "final_pitch_classes": [
    2,
    4,
    6
   ],
   "final_root_pc": 2,
   "final_quality": "major",
   "penultimate_root_pc": 2,
   "penultimate_quality": "major",
   "bass_pc": 2,
   "soprano_pc": 4,
   "tonic_pc": 2,
   "class": "IAC",
   "why": "lands on the tonic from degree 0, not from the dominant",
   "penult_degree": 0,
   "final_degree": 0,
   "root_position": true,
   "soprano_tonic": false,
   "pass": true,
   "card_id": "HF_MT_10_CREDITS",
   "arm": "B",
   "key": "D major",
   "loop_class": "none_linear",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_10_CREDITS/HF_MT_10_CREDITS.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 5,
   "final_root_fit_score": 1.9,
   "final_bar": 127,
   "penultimate_bar": 126,
   "final_pitch_classes": [
    1,
    2,
    4,
    9,
    11
   ],
   "final_root_pc": 2,
   "final_quality": "sus2",
   "penultimate_root_pc": 2,
   "penultimate_quality": "major",
   "bass_pc": 1,
   "soprano_pc": 9,
   "tonic_pc": 7,
   "class": "HALF",
   "why": "the final chord is the dominant -- the phrase is left open, which is PHRASE-05's remedy",
   "penult_degree": 7,
   "final_degree": 7,
   "pass": true,
   "card_id": "HF_MT_11_REGION_FLORES",
   "arm": "A",
   "key": "pentatonic centred on G",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_11_REGION_FLORES/HF_MT_11_REGION_FLORES.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 3,
   "final_root_fit_score": 0.75,
   "final_bar": 132,
   "penultimate_bar": 131,
   "final_pitch_classes": [
    0,
    2,
    3
   ],
   "final_root_pc": 0,
   "final_quality": "minor",
   "penultimate_root_pc": 0,
   "penultimate_quality": "sus2",
   "bass_pc": 3,
   "soprano_pc": 2,
   "tonic_pc": 7,
   "class": "OPEN",
   "why": "the final chord is degree 5 -- the loop point does not close onto the tonic at all",
   "penult_degree": 5,
   "final_degree": 5,
   "pass": true,
   "card_id": "HF_MT_12_REGION_BALI",
   "arm": "B",
   "key": "pelog-derived scale, reference-composed",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_12_REGION_BALI/HF_MT_12_REGION_BALI.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 4,
   "final_root_fit_score": 0.9,
   "final_bar": 79,
   "penultimate_bar": 78,
   "final_pitch_classes": [
    0,
    7,
    10,
    11
   ],
   "final_root_pc": 0,
   "final_quality": "power",
   "penultimate_root_pc": 0,
   "penultimate_quality": "major",
   "bass_pc": 11,
   "soprano_pc": 0,
   "tonic_pc": 2,
   "class": "BVII",
   "why": "the final chord is the subtonic -- no leading tone, so nothing is pulling toward the tonic",
   "penult_degree": 10,
   "final_degree": 10,
   "pass": true,
   "card_id": "HF_MT_13_REGION_SUMATRA_JAVA",
   "arm": "A",
   "key": "D aeolian",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_13_REGION_SUMATRA_JAVA/HF_MT_13_REGION_SUMATRA_JAVA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 2.0,
   "final_bar": 73,
   "penultimate_bar": 72,
   "final_pitch_classes": [
    2,
    7
   ],
   "final_root_pc": 7,
   "final_quality": "power",
   "penultimate_root_pc": 0,
   "penultimate_quality": "sus4",
   "bass_pc": 2,
   "soprano_pc": 7,
   "tonic_pc": 7,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 5,
   "final_degree": 0,
   "pass": true,
   "card_id": "HF_MT_14_REGION_SRI_LANKA",
   "arm": "B",
   "key": "G mixolydian",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_14_REGION_SRI_LANKA/HF_MT_14_REGION_SRI_LANKA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 5,
   "final_root_fit_score": 1.9,
   "final_bar": 139,
   "penultimate_bar": 138,
   "final_pitch_classes": [
    1,
    7,
    8,
    9,
    10
   ],
   "final_root_pc": 7,
   "final_quality": "dim",
   "penultimate_root_pc": 3,
   "penultimate_quality": "sus4",
   "bass_pc": 8,
   "soprano_pc": 9,
   "tonic_pc": 2,
   "class": "OPEN",
   "why": "the final chord is degree 5 -- the loop point does not close onto the tonic at all",
   "penult_degree": 1,
   "final_degree": 5,
   "pass": true,
   "card_id": "HF_MT_15_REGION_SOUTH_INDIA",
   "arm": "A",
   "key": "a raga-derived collection, reference-composed",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_15_REGION_SOUTH_INDIA/HF_MT_15_REGION_SOUTH_INDIA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 1.65,
   "final_bar": 63,
   "penultimate_bar": 60,
   "final_pitch_classes": [
    0,
    2
   ],
   "final_root_pc": 0,
   "final_quality": "sus2",
   "penultimate_root_pc": 2,
   "penultimate_quality": "aug",
   "bass_pc": 0,
   "soprano_pc": 2,
   "tonic_pc": 0,
   "class": "IAC",
   "why": "lands on the tonic from degree 2, not from the dominant",
   "penult_degree": 2,
   "final_degree": 0,
   "root_position": true,
   "soprano_tonic": false,
   "pass": true,
   "card_id": "HF_MT_16_REGION_SWAHILI_COAST",
   "arm": "B",
   "key": "C dorian",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_16_REGION_SWAHILI_COAST/HF_MT_16_REGION_SWAHILI_COAST.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 1.65,
   "final_bar": 122,
   "penultimate_bar": 121,
   "final_pitch_classes": [
    4,
    6
   ],
   "final_root_pc": 4,
   "final_quality": "sus2",
   "penultimate_root_pc": 4,
   "penultimate_quality": "sus2",
   "bass_pc": 4,
   "soprano_pc": 6,
   "tonic_pc": 4,
   "class": "IAC",
   "why": "lands on the tonic from degree 0, not from the dominant",
   "penult_degree": 0,
   "final_degree": 0,
   "root_position": true,
   "soprano_tonic": false,
   "pass": true,
   "card_id": "HF_MT_17_REGION_ETHIOPIA",
   "arm": "A",
   "key": "a four-mode system, reference-composed",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_17_REGION_ETHIOPIA/HF_MT_17_REGION_ETHIOPIA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 0.1,
   "final_bar": 95,
   "penultimate_bar": 92,
   "final_pitch_classes": [
    9,
    10
   ],
   "final_root_pc": 10,
   "final_quality": "power",
   "penultimate_root_pc": 5,
   "penultimate_quality": "major",
   "bass_pc": 10,
   "soprano_pc": 9,
   "tonic_pc": 5,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 0,
   "final_degree": 5,
   "pass": true,
   "card_id": "HF_MT_18_REGION_CENTRAL_AFRICA",
   "arm": "B",
   "key": "F major",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_18_REGION_CENTRAL_AFRICA/HF_MT_18_REGION_CENTRAL_AFRICA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "medium",
   "final_pitch_class_count": 6,
   "final_root_fit_score": 1.7,
   "final_bar": 127,
   "penultimate_bar": 126,
   "final_pitch_classes": [
    0,
    1,
    6,
    7,
    9,
    11
   ],
   "final_root_pc": 1,
   "final_quality": "quartal",
   "penultimate_root_pc": 0,
   "penultimate_quality": "major",
   "bass_pc": 1,
   "soprano_pc": 11,
   "tonic_pc": 4,
   "class": "OPEN",
   "why": "the final sonority is an open fifth or a quartal frame -- no third, no leading tone, nothing closing",
   "penult_degree": 8,
   "final_degree": 9,
   "pass": true,
   "card_id": "HF_MT_19_REGION_WEST_AFRICA",
   "arm": "A",
   "key": "E minor",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_19_REGION_WEST_AFRICA/HF_MT_19_REGION_WEST_AFRICA.mid"
  },
  {
   "measurable": true,
   "reading_confidence": "low",
   "final_pitch_class_count": 2,
   "final_root_fit_score": 0.1,
   "final_bar": 96,
   "penultimate_bar": 92,
   "final_pitch_classes": [
    4,
    5
   ],
   "final_root_pc": 4,
   "final_quality": "power",
   "penultimate_root_pc": 0,
   "penultimate_quality": "power",
   "bass_pc": 4,
   "soprano_pc": 5,
   "tonic_pc": 9,
   "class": "HALF",
   "why": "the final chord is the dominant -- the phrase is left open, which is PHRASE-05's remedy",
   "penult_degree": 3,
   "final_degree": 7,
   "pass": true,
   "card_id": "HF_MT_20_REGION_SOUTH_AFRICA",
   "arm": "B",
   "key": "A minor",
   "loop_class": "long_loop",
   "card_claim": "weakened -- half cadence or a bVII substitution, never a perfect authentic cadence (KONDO PHRASE-05, the anti-fatigue law)",
   "midi": "build/audio/complete_tracks/tracks/HF_MT_20_REGION_SOUTH_AFRICA/HF_MT_20_REGION_SOUTH_AFRICA.mid"
  }
 ]
}

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