feat(workspace): name tonight's first dynamics plan on the map - #1011
feat(workspace): name tonight's first dynamics plan on the map#1011seonghobae wants to merge 18 commits into
Conversation
The mounted rehearsal workspace names tonight's first dynamics plan so a part can lock the owned dynamics before rehearsal starts. Open moves to the matching rendered song-structure section. Do not invent that copy from groove, cue, simplification, overlap, range, chord labels, function labels, setup notes, transposition plans, confirmed overrides, harmonic explanations, or confidence notes. Distinct from first-setup-note, first-transposition-plan, and first-tuning-plan. Security Notes: - Attack surface: untrusted rehearsal-song runtime metadata (sections, roles, partGraph, identity accessors) plus DOM navigation against the mounted song-structure renderer. - Trust boundary: only own data properties on dense collections are read. Inherited/accessor/sparse/hostile getters fail closed to null and keep the callout guidance-only. - Navigation authority is the renderer-owned section index, not analysis ids. - Logging/privacy: no path, filename, or rejected-metadata echo. - Test points: inherited-metadata suite, particle-safe Korean copy, reduced-motion scroll, workspace-scope renderer selection, Workspace navigation. Shared-types 20/20 at 100%. Desktop targeted 68/68.
|
Warning Review limit reachedNext included review available in 19 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 (30)
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 |
# 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 (FirstDynamicsPlanCallout + 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: bb06076. |
Buyer next action
The mounted rehearsal workspace names tonight's first dynamics plan so a part can lock the owned dynamics before rehearsal starts.
Demo: Bass Guitar still has Keep the verse under the vocal so the chorus still has somewhere to lift. Open is the next action: it moves to the matching rendered song-structure section.
Protected base:
develop@acdbea6344fe1231c39535b575f4de35e4c607c9.Exact current head:
10a651c024e5f4f7862139b29661c3802b748f30onfeat/workspace-first-dynamics-plan.What the player sees
dynamicsPlancopy, the labeled section, and the time.Authority boundary and current-head repair
harmonicExplanation, or confidence notes.RehearsalRole.dynamicsPlanis distinct fromsetupNote,transpositionPlan, andtuningPlan.gettrap cannot substitute a different buyer-visible dynamics plan after the own-data check.07fa70fcdbe2df6aba9c8b198a099a7f1ecfe20flocks that Proxy get-trap case; production repair10a651c024e5f4f7862139b29661c3802b748f30consumes the descriptor value directly.section.idis never DOM-ID authority. Open uses renderer-owneddata-section-index.Exact-head verification state
Fresh repository workflows for
10a651c024e5f4f7862139b29661c3802b748f30are queued/pending at the latest refetch. No non-terminal result and no predecessor-head evidence is counted as success.Dependency / merge gate
pdfjs-dist/nanoid/undiciHIGH findings are not copied or suppressed here. No lockfile change.