feat(workspace): guide tonight's first tag on the rehearsal map - #989
feat(workspace): guide tonight's first tag on the rehearsal map#989seonghobae wants to merge 34 commits into
Conversation
Name the earliest labeled tag and the part that holds the last line so the room can catch the ending together. Open scrolls the matching rendered map section. Do not invent a tag from outro, verse, or an unlabeled last section.
|
Warning Review limit reachedNext included review available in 31 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 (10)
📝 WalkthroughWalkthrough
Changes첫 태그 안내 및 탐색
Estimated code review effort: 3 (Moderate) | ~25 minutes Merge Risk: 🟡 Moderate · up to The first-tag guidance adds a map-opening action, but the current target lookup depends on an English accessibility label, so localized renderer labels such as Korean can leave users without navigation or completion feedback. This bounded correctness and accessibility issue should be fixed before merge. Sequence Diagram(s)sequenceDiagram
participant Workspace
participant FirstTagCallout
participant resolveFirstTag
participant RendererSection
Workspace->>FirstTagCallout: song 전달
FirstTagCallout->>resolveFirstTag: 첫 태그 해석
resolveFirstTag-->>FirstTagCallout: 태그, 역할, 시간 반환
FirstTagCallout->>RendererSection: 태그 섹션 위치 조회
FirstTagCallout->>RendererSection: scrollIntoView 호출
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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 # CLAUDE.md # apps/desktop/src/features/workspace/Workspace.tsx # apps/desktop/src/locales/en/common.json # apps/desktop/src/locales/ko/common.json
|
Merged current develop into this branch: resolved shared-file conflicts by including both this feature's first-tag callout and the newly landed #957 playable-range work (Workspace.tsx keeps both imports; en/ko locales unioned with symmetric keys; AGENTS/CLAUDE unioned). No behavior dropped. |
Product outcome
After analysis, the rehearsal map names tonight's first labeled tag so the room can catch the last line together. Open moves to the matching rendered map section.
A tag is the short last-line ending. This PR does not invent one from outro, verse, chorus, pickup, stop, handoff, or the last unlabeled section.
Exact current identity
develop@acdbea6344fe1231c39535b575f4de35e4c607c9.feat/workspace-first-tag.Current exact scope
resolveFirstTagpicks the earliest labeledtagwith a bounded rehearsal window and the highest-priority unique active part that holds it.No tag yet. Stay on tonight's map until the last line is labeled.data-section-index). Analysissection.idis never DOM-ID authority.Catch the last line with {role} at {at}. End together.) arms only afterscrollIntoViewsucceeds.behavior: "auto".{role} 파트).Test-first evidence
Merge gate
nanoid/pdfjs-dist/undicifindings here.Security Notes
auto.Summary by CodeRabbit
새로운 기능
개선 사항