You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 6bf1621
Browse filesBrowse the repository at this point in the historyBrowse files
# PR_26146_070 MIDI Studio V2 Section Semantics Map
2
+
3
+
## Ownership Summary
4
+
5
+
| Concept | Owning UI | Canonical model field | Editable | Purpose |
6
+
| --- | --- | --- | --- | --- |
7
+
| Song Name | Song Setup > Song Details |`music.songs[].name`| Yes | Human song title. |
8
+
| Classification | Song Setup > Song Details |`music.songs[].classification`| Yes | Game usage classification such as Menu, Loop, Boss, Flying, or Puzzle. |
9
+
| Generated ID | Song Setup > Song Details |`music.songs[].id`| Read-only/generated |`camelCase(Name)-Classification`; not a musical section. |
10
+
| Tempo | Song Setup > Song Details |`studioArrangement.tempo` and selected song tempo metadata | Yes | Playback and derived duration. |
11
+
| Key | Song Setup > Song Details |`studioArrangement.key` and selected song key metadata | Yes | Song metadata. |
12
+
| Style | Song Setup > Song Details |`studioArrangement.style` and selected song style metadata | Yes | Song metadata. |
13
+
| Musical section definitions | Song Setup > Song Sheet |`studioArrangement.songSheet.sectionDefinitions` and `studioArrangement.songSheet.sections`| Yes through guided text | Reusable music structure definitions with chords/bars. |
14
+
| Sequence | Song Setup > Song Sheet |`studioArrangement.songSheet.sequence`| Yes | Ordered musical form, for example Intro, Verse, Chorus, Verse, Chorus, Bridge, Chorus, Outro. |
15
+
| Loop sections | Song Setup > Song Sheet |`studioArrangement.songSheet.loopSections`| Yes | Musical section labels used for loop playback. |
16
+
| Timeline section colors | Octave Timeline | Derived from `studioArrangement.songSheet.sequence` and expanded grid sections | Read-only display | Color bars by musical section occurrences; repeated labels share a color. |
17
+
| Section buttons | Octave Timeline | Derived from current musical section labels | Action when defined | Buttons operate only for musical sections present in the current song sheet. |
18
+
| Boss/Victory buttons | Octave Timeline | Derived from current musical section labels | Disabled/unwired unless defined | No longer assumed musical sections because Boss/Victory are game classifications by default. |
19
+
20
+
## Semantics
21
+
22
+
Game classification answers where or how the song is used in a game. Examples include Menu, Boss, Victory, Game Over, Flying, Ice, Dungeon, Puzzle, and Chase. Classification is stored on the selected song and contributes to generated ID text only.
23
+
24
+
Musical sections describe the structure of the song. Examples include Intro, Verse, Chorus, Pre-Chorus, Bridge, Outro, Solo, Break, A, B, and C. These sections own chords, bars, and timeline order.
25
+
26
+
The Song Sheet Sequence expands reusable musical section definitions into the actual arrangement. A section such as Verse or Chorus can appear multiple times in Sequence while retaining one reusable definition. Octave Timeline colors and section shortcut availability come from this expanded musical sequence, not from Classification.
27
+
28
+
## Parse Guided Song Sheet Flow
29
+
30
+
1. Song Setup owns editable Classification and generated ID display.
31
+
2. Song Sheet collects reusable musical section definitions and Sequence text.
32
+
3. Parse Guided Song Sheet builds canonical Song Sheet data from those musical sections.
33
+
4. The canonical arrangement refreshes derived bars, chord count, estimated duration, diagnostics, JSON Details, and Octave Timeline canvas data.
34
+
5. Octave Timeline renders bar colors from expanded musical section occurrences and disables or marks missing musical section controls as unavailable.
35
+
36
+
## UAT Notes
37
+
38
+
PASS - Classification and musical sections are separate concepts.
39
+
40
+
PASS - Boss and Victory remain valid Classification examples, but they are not active musical section buttons unless explicitly defined in the Song Sheet.
41
+
42
+
PASS - Repeated musical sections retain matching color identity across the Octave Timeline.
PASS - Octave Timeline colors bars by musical section sequence rather than game classification.
73
+
74
+
PASS - Boss and Victory are not assumed musical sections unless the current Song Sheet defines those labels.
75
+
76
+
PASS - Play and Stop still work in the targeted MIDI Studio V2 coverage.
77
+
78
+
## Result
79
+
80
+
PR PASS. The octave timeline remains playable, and musical section sequence data now owns timeline color semantics separately from game usage classification.
0 commit comments