Skip to content

feat: implement practical rehearsal workspace UI#88

Merged
seonghobae merged 1 commit into
developfrom
feat/issue-28-workspace-ui
Mar 26, 2026
Merged

feat: implement practical rehearsal workspace UI#88
seonghobae merged 1 commit into
developfrom
feat/issue-28-workspace-ui

Conversation

@seonghobae

Copy link
Copy Markdown
Collaborator

Summary

  • Implements the rehearsal workspace UI components based on the shared RehearsalSong schema.
  • Replaces the placeholder App UI with a practical rehearsal interface.
  • Includes Section Roadmap, Role Switcher, Confidence Badges, and empty/error/loading states.
  • Bilingual copy (en/ko) compliant with BandScope brand tone.
  • Closes [Level 3] rehearsal workspace UI 구현 #28

@coderabbitai

coderabbitai Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: f6e6e34b-c836-4426-9081-f46e6eee0015

📥 Commits

Reviewing files that changed from the base of the PR and between 0fee4b6 and 53601a9.

📒 Files selected for processing (9)
  • apps/desktop/src/App.test.tsx
  • apps/desktop/src/App.tsx
  • apps/desktop/src/features/workspace/ConfidenceBadge.tsx
  • apps/desktop/src/features/workspace/RoleSwitcher.tsx
  • apps/desktop/src/features/workspace/SectionRoadmap.tsx
  • apps/desktop/src/features/workspace/Workspace.tsx
  • apps/desktop/src/features/workspace/WorkspaceStates.tsx
  • apps/desktop/src/locales/en/common.json
  • apps/desktop/src/locales/ko/common.json

Cache: Disabled due to Reviews > Disable Cache setting

Disabled knowledge base sources:

  • Linear integration is disabled

You can enable these sources in your CodeRabbit configuration.


📝 Walkthrough

Summary by CodeRabbit

  • 새로운 기능

    • 분석 결과를 위한 워크스페이스 UI 추가(로딩/오류/빈 상태 포함)
    • 역할별 필터링(개별 악기 선택) 및 섹션 로드맵으로 곡 구조 시각화
    • 신뢰도 배지로 분석 신뢰도 표시
  • 문서/지역화

    • 영어·한국어 UI 문구 추가 및 업데이트(워크스페이스 상태, 라벨 등)
  • 테스트

    • 로컬 오디오 선택 및 분석 워크플로우 테스트 강화 및 모킹 간소화

Walkthrough

데스크톱 앱의 결과 렌더링을 워크스페이스 중심 UI로 전환하고(Empty/Loading/Error/Workspace 상태), 섹션 로드맵·역할 전환·신뢰도 배지 컴포넌트를 추가했으며, 로컬 오디오 선택 흐름을 테스트 전체에 통합하고 영어/한국어 문구를 추가했습니다.

Changes

Cohort / File(s) Summary
Tests
apps/desktop/src/App.test.tsx
모든 관련 테스트에 로컬 오디오 선택 사전 단계 추가; 모의 tauriInvoke 응답 확장/단순화; 성공 시 start_analysis_job 호출 인자(sourceKind: "local_audio", projectId: "project-1", sourceLabel) 검증 및 UI 어설션 조정.
Main app
apps/desktop/src/App.tsx
기존 renderSong 제거. 상태 기반 렌더링(renderWorkspaceState) 도입: ErrorState/LoadingState/Workspace/EmptyState 조건부 표시. 시작 버튼에 selectedBootstrap 조건 추가 및 레이아웃/상태 텍스트 재구성.
Workspace features
apps/desktop/src/features/workspace/Workspace.tsx, SectionRoadmap.tsx, RoleSwitcher.tsx, ConfidenceBadge.tsx, WorkspaceStates.tsx
신규 컴포넌트 5종 추가: 워크스페이스 컨테이너, 섹션 로드맵, 역할 전환기, 신뢰도 배지, 빈/로딩/에러 상태 컴포넌트(모두 i18n 지원 및 스타일 포함).
Locales
apps/desktop/src/locales/en/common.json, apps/desktop/src/locales/ko/common.json
워크스페이스 관련 영어/한국어 문구 추가 (workspaceEmptyState, workspaceLoadingState, workspaceErrorState, sectionRoadmapTitle, roleSwitcherTitle, allRoles, overlapWarning).

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant App as App Component
    participant Analysis as Analysis Engine
    participant Workspace as Workspace UI

    User->>App: 로컬 오디오 파일 선택
    App->>App: selectedBootstrap 업데이트
    User->>App: 분석 시작 클릭
    App->>Analysis: start_analysis_job (sourceKind: local_audio, projectId)
    Analysis-->>App: jobStatus: queued/running
    App->>App: LoadingState 렌더링
    Analysis-->>App: jobResult (RehearsalSong)
    App->>Workspace: song 전달
    Workspace->>Workspace: RoleSwitcher 렌더링
    Workspace->>Workspace: SectionRoadmap 렌더링 (ConfidenceBadge 포함)
    Workspace-->>User: 섹션 로드맵 및 역할별 뷰 표시
Loading

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Poem

🐰
로컬 파일을 골라 껑충 뛰고,
섹션 길 비추는 로드맵 한 점,
역할을 바꾸면 새 길이 보이고,
신뢰도 배지가 반짝이며,
워크스페이스가 토끼처럼 기뻐하네요. 🎶

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/issue-28-workspace-ui

Comment @coderabbitai help to get the list of available commands and usage tips.

@seonghobae

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Mar 26, 2026

Copy link
Copy Markdown
Contributor
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Level 3] rehearsal workspace UI 구현

1 participant