Skip to content

fix: 프로필 통계 정렬과 한글 제목 검색 대기 수정 - #63

Merged
aryu1217 merged 3 commits into
mainfrom
dev
Sep 12, 2026
Merged

aryu1217 merged 3 commits into
mainfrom
dev

Conversation

@aryu1217

@aryu1217 aryu1217 commented Sep 12, 2026 •

Copy link
Copy Markdown
Member

변경 내용

  • 프로필 이용 시간과 큐잉 횟수를 같은 행에 정렬하고 최애곡의 불필요한 두 줄 예약 공간을 제거했습니다.
  • 제목 입력 후 한글 조합이 끝나지 않아도 300ms 입력 정지 시 검색합니다. 조합 중 Enter로 곡이 선택되는 방어는 유지했습니다.

변경 이유

기존 검색은 compositionend 전까지 요청을 차단하면서 검색 중으로 표시했습니다. 조합 종료 없이 멈추는 입력으로 이 경로를 재현했습니다. 프로필은 두 열이 독립적으로 쌓여 최애곡의 2lh 예약 공간만큼 이용 시간이 밀렸습니다.

영향 범위

  • UI / 사용자 흐름
  • 문서 / 개발 도구

API 계약과 계정별 query key, 캐시 시간, 취소 정책은 유지합니다.

검증

  • npm run lint
  • npm run test — 160 files / 714 tests
  • npm run build — sandbox 실행 정체로 중단 후 제한 밖 동일 명령 통과
  • 실패·로딩·빈 상태 확인 — 자동 테스트

기존 코드에서 신규 회귀 2건 실패를 확인한 뒤 수정했습니다. 조합 종료 없는 결과 표시, 40회 입력 버스트 이후 요청 1회, 60초 유휴 시 재요청 없음, 조합 중 Enter 선택 차단을 검증했습니다.

리뷰 포인트

  • 두 통계 열이 subgrid 행을 공유합니다. 긴 최애곡도 다음 행을 함께 내려 정렬합니다.
  • 자동 조회는 입력값, 키보드 선택 방어는 composition ref가 소유합니다.

기능별 커밋

  • fix(profile): 프로필 통계 행 정렬 및 최애곡 빈 줄 예약 제거.
  • fix(playlist): 조합 종료 대기 제거, 회귀 테스트 및 원인 기록.

위험 및 후속 작업

  • 연결 가능한 브라우저가 없어 실제 픽셀 좌표와 OS IME 검증은 미실행입니다.
  • 운영 API 시간은 측정하지 않았습니다. 300ms는 요청 시작 대기이며 완료 시간은 서버 응답에 따릅니다.
  • 조합 중에도 300ms 이상 입력을 쉬면 해당 시점 검색어로 요청합니다.

추적 정보

  • Linked issue: 없음
  • Execution plan: docs/exec-plans/active/2026-09-13-profile-search-fix/plan.md
  • Selected skills: queuing-feature-delivery, queuing-orchestrator, queuing-ui-flow, queuing-api-boundary, frontend-architecture-guardrails, queuing-qa-reviewer, queuing-incident-curator, browser:control-in-app-browser
  • QA result: pass (독립 read-only 리뷰)

Summary by CodeRabbit

  • 새로운 기능

    • 한글 IME 조성 중에도 입력이 멈추면 자동 검색 결과가 표시됩니다.
    • 연속 입력은 300ms 디바운스로 묶여 불필요한 검색 요청을 줄입니다.
  • 버그 수정

    • 조성 중 Enter 선택 동작은 보호하면서, 검색 결과가 무기한 대기하던 문제를 해결했습니다.
    • 프로필 통계 행 높이와 간격 정렬을 개선했습니다.
  • 테스트 및 문서

    • IME 조성, 디바운스, 검색 선택 동작에 대한 검증과 관련 문서를 보강했습니다.

@vercel

vercel Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
queuing Ready Ready Preview Sep 12, 2026 3:15pm UTC

@coderabbitai

coderabbitai Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 25fddeea-f072-42ff-bccc-958a6df158bd

📥 Commits

Reviewing files that changed from the base of the PR and between fb897ab and 454c88f.

📒 Files selected for processing (11)
  • .agents/skills/queuing-ui-flow/SKILL.md
  • docs/agent-harness/incidents/2026-09-13-track-search-ime-wait.md
  • docs/exec-plans/active/2026-09-13-profile-search-fix/delivery-state.md
  • docs/exec-plans/active/2026-09-13-profile-search-fix/handoff.md
  • docs/exec-plans/active/2026-09-13-profile-search-fix/plan.md
  • docs/exec-plans/active/2026-09-13-profile-search-fix/qa-report.md
  • docs/exec-plans/active/README.md
  • src/features/playlist/add-track/ui/TrackSearchInput.test.tsx
  • src/features/playlist/add-track/ui/TrackSearchInput.tsx
  • src/features/playlist/model/useTrackSuggestions.ts
  • src/features/user/profile/ui/UserProfileContent.module.css

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

프로필 통계 레이아웃을 CSS subgrid 기반으로 정렬했습니다. 트랙 검색은 IME 조합 중에도 입력값을 300ms 디바운스하고 검색합니다. 조합 상태는 키보드 선택 방어에만 사용합니다. 관련 테스트와 실행 계획 문서를 추가했습니다.

Changes

프로필 표시 및 트랙 검색 수정

Layer / File(s) Summary
프로필 통계 행 레이아웃
src/features/user/profile/ui/UserProfileContent.module.css, docs/exec-plans/active/2026-09-13-profile-search-fix/plan.md
프로필 통계 열이 부모 그리드의 세 행을 공유하도록 변경했습니다. 부모 그리드가 행 간격을 관리합니다. 즐겨찾기 값 슬롯의 min-height 규칙을 삭제했습니다.
IME 조합 중 트랙 검색
src/features/playlist/model/useTrackSuggestions.ts, src/features/playlist/add-track/ui/TrackSearchInput.tsx, src/features/playlist/add-track/ui/TrackSearchInput.test.tsx, .agents/skills/queuing-ui-flow/SKILL.md, docs/agent-harness/incidents/2026-09-13-track-search-ime-wait.md
검색 훅이 조합 상태와 관계없이 입력값을 디바운스합니다. 조합 중에도 검색 요청이 발생합니다. 조합 중 Enter 선택은 차단합니다. 연속 입력은 한 번의 검색으로 합칩니다.
검증 및 배포 기록
docs/exec-plans/active/2026-09-13-profile-search-fix/handoff.md, docs/exec-plans/active/2026-09-13-profile-search-fix/qa-report.md, docs/exec-plans/active/2026-09-13-profile-search-fix/delivery-state.md, docs/exec-plans/active/README.md
lint, 테스트, 빌드와 독립 QA 결과를 기록했습니다. CI와 브라우저·OS IME 검증 상태도 기록했습니다.

Priority: ➖ Normal

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Bug fix · Severity of issue fixed: Medium

Sequence Diagram(s)

sequenceDiagram
  participant TrackSearchInput
  participant useTrackSuggestions
  participant searchYouTubeVideos
  TrackSearchInput->>useTrackSuggestions: 입력값 전달
  useTrackSuggestions->>useTrackSuggestions: 입력값 300ms 디바운스
  useTrackSuggestions->>searchYouTubeVideos: query와 AbortSignal 전달
  searchYouTubeVideos-->>useTrackSuggestions: 검색 결과 반환
  useTrackSuggestions-->>TrackSearchInput: 추천 목록과 상태 반환
Loading

Merge Risk: ⚪ Minimal · up to 454c8

No actionable merge risk remains from the reviewed changes.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 3 files. (8 skipped: 8 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed 제목이 프로필 통계 정렬과 한글 제목 검색 대기 수정이라는 두 가지 주요 변경을 정확히 요약합니다.
Description check ✅ Passed 변경 내용, 변경 이유, 영향 범위, 검증 결과, 리뷰 포인트, 커밋, 위험 및 후속 작업, 추적 정보를 모두 작성했습니다. 미실행한 브라우저·OS IME 검증과 운영 API 응답 시간 측정도 명시했습니다.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 2 functions across 3 files. (8 skipped: 8 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev

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.

❤️ Share

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

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 12, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-12T15:19:26.990934Z 454c88f Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@aryu1217
aryu1217 merged commit fa5642b into main Sep 12, 2026
3 of 4 checks passed

This branch was successfully deployed

1 active deployment
Preview — 454c88fc Deployed Sep 12, 2026 by vercel[bot]
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.

1 participant