feat(workspace): name tonight's first count on the map - #995
Conversation
Name the entering part when corroborated, the owned count cue, the labeled section, and the time so the next action is obvious. Open moves to the matching rendered map section. Do not invent an entrance from lyric, transition, groove, setup, simplification, overlap, or range copy.
|
Warning Review limit reachedNext included review available in 44 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 (20)
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 the apps/desktop bullet in CLAUDE.md, kept both import sets in Workspace.tsx (FirstCountCueCallout + firstRangeSqueeze; both render paths intact), and unioned en/ko locale tails (count-cue keys + range keys; JSON valid, en/ko symmetric). No conflict markers remain. Merge head: 9b38e2e. |
Product outcome
Name tonight's first count so the room can catch the entrance together. The Open action moves to the matching rendered map section.
Design authority: workspace next-action pattern plus
docs/design-system/component-contract.md. Distinct from first-lyric (#913), first-transition (#994), first-count-in (#904), and first-intro (#943). This does not invent a parallel MIR product; #828 remains the owner of #770.Current exact scope
develop@acdbea6344fe1231c39535b575f4de35e4c607c9.feat/workspace-first-count-cue.4d353ca99a389189b2d7c1eda04067a071e1ac79.FirstCountCueCalloutnames the entering part when an active graph node corroborates it, the ownedcue.kind === "count"text, the labeled section, and the time.파트가/파트 카운트) and localizes the section form label.Demo song: Keyboard 1 Right Hand count at 0:10, hint "Enter on beat 2 after the pickup."
Trust boundary
section.idis never DOM-ID authority. Navigation uses renderer child index under the song-structure region.behavior: "auto"when the OS requests it.Dependency ownership
Canonical #783 owns the protected-base JavaScript HIGH findings (
pdfjs-dist/nanoid/undici). This branch has no JavaScript dependency, lockfile, or vulnerability-suppression delta. Inherited npm HIGH must not be suppressed here.Merge gate
APPROVEDreview.Queued, pending, skipped-required, failed, predecessor-head, protected-base, author-only, model-only, status-only, or synthetic evidence is non-passing.