feat(workspace): name tonight's first harmonic function on the map - #1005
feat(workspace): name tonight's first harmonic function on the map#1005seonghobae wants to merge 23 commits into
Conversation
Surface owned harmony.functionLabel as the next rehearsal action so the room can lock the part function before starting. Open moves to the renderer-owned song-structure section. Do not invent that copy from groove, cue, simplification, overlap, range, chord labels, setup notes, confirmed overrides, harmonic explanations, or confidence notes.
|
Warning Review limit reachedNext included review available in 24 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (27)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Re-review request for exact head |
# Conflicts: # AGENTS.md # CHANGELOG.md # CLAUDE.md # apps/desktop/src/features/workspace/Workspace.tsx # apps/desktop/src/locales/en/common.json # apps/desktop/src/locales/ko/common.json
|
Resolved merge conflicts against origin/develop (749511c): union-merged AGENTS.md/CHANGELOG.md bullets, sentence-merged CLAUDE.md, kept both import sets in Workspace.tsx (FirstHarmonicFunctionCallout + firstRangeSqueeze), unioned en/ko locale tails (JSON valid, en/ko symmetric). Merged legacy .Jules/palette.md into canonical .jules/palette.md, dropped alias. No conflict markers remain. Merge head: 7ae4e45. |
Buyer next action
The mounted rehearsal workspace names tonight's first harmonic function so the room can lock the owned part function before rehearsal starts.
Protected base:
develop@749511c3ad4000090048718f685c6bee6b3d2c25.Exact current head:
0c58e3d4f3dfa71585b0f499a8b2791dbae76ed7.What the player sees
harmony.functionLabelcopy, a canonical labeled section, and the time.Authority boundary
harmonicExplanation, or confidence notes.getsubstitutions remain guidance-only instead of becoming display or navigation authority.sections,roles,partGraph, section id/label, role identity/name/priority, function label, and bounded time range through own data-property descriptors. Dense-array element lookup likewise avoids runtime property getters.SECTION_FORM_LABELS; the exportedRehearsalSection["label"]contract is no longer satisfied by an unchecked assertion.section.idis never DOM-ID authority.Regression-first repair
f20291864f0f57e8942ba42c0af300919ddb1023strengthened the hostilesectionsProxy regression so anyget("sections")execution fails and the real Open action still has to render.12572893b83e50a6ec4ea5ca258e83aa201fc9bbmoved the resolver to owned descriptor snapshots for runtime collections and carries snapshotted section id/label through selection.07a02df1e84dead47375ebef8a12cd5193bf7143removed the callout's remaining directsong.sectionsauthority and uses snapshotted metadata for display/opened-state tracking.07a02df...found a TypeScript contract mismatch (sectionLabelwidened tostring).267c0b271de76da45c7a6c707f2037f12211a940restored the finite shared-label return type, but a fresh Devin current-head review correctly found that malformed runtime strings could still enter that union through an assertion.c0e2c2958d461967f50bf1bd6b9b4915a4ffdaecrequires an unsupported nonblank runtime section label to resolve tonull. The successor was pushed before hosted RED reached terminal completion, so this is source-order RED evidence rather than claimed hosted RED proof.0c58e3d4f3dfa71585b0f499a8b2791dbae76ed7imports canonicalSECTION_FORM_LABELS, narrows through an actual membership guard, and removes the unsafe label assertion.Current verification
0c58e3....07a02df...quickcheck reached TypeScript compilation and exposed the earlier label-type mismatch; no predecessor check is transferred.Dependency / merge gate
developon 2026-08-25; its JavaScript dependency-security baseline is shipped truth, not an outstanding dependency PR for this branch. Do not suppress or independently regress that integrated baseline.