Feat: #117 자소서 분석, 공고 분석 완료 알림 구현 - #124
Merged
Merged
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (6)
📝 WalkthroughWalkthroughThe home page now loads task-aware applications and monitors job-posting analysis streams. The LNB replaces notification streaming with polling and focus refreshes, deduplicates unread notifications, and displays analysis status toasts. ChangesAsync analysis and notifications
Estimated code review effort: 4 (Complex) | ~45 minutes Sequence Diagram(s)sequenceDiagram
participant Home
participant MockApplyAPI
participant AnalysisStream
participant Lnb
participant NotificationAPI
Home->>MockApplyAPI: Load up to 100 applications
MockApplyAPI-->>Home: Return applications with taskId
Home->>AnalysisStream: Subscribe to task status
AnalysisStream-->>Home: Return terminal analysis status
Home->>MockApplyAPI: Reload application results
Lnb->>NotificationAPI: Poll notifications
NotificationAPI-->>Lnb: Return notification results
Lnb->>Home: Refresh recent applications on analysis updates
Possibly related PRs
Suggested labels: Suggested reviewers: ✨ 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 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🔗 관련 이슈
#117
📝 개요
⌨️ 작업 상세 내용
💡 코드 설명 및 참고사항
최초 로드 방어벽 추가 (isFirstNotificationLoadRef)
LNB 컴포넌트가 처음 마운트되어 알림을 fetch할 때(최초 1회)는 받아온 모든 알림을 '이미 본 알림'으로 처리하여, 앱 접속 직후 과거 알림들이 토스트로 쏟아지는 현상을 방지함.
알림 ID 블랙리스트(Set) 적용 (seenToastIdsRef)
토스트로 띄웠거나 최초에 로드된 알림의 고유 id를 Set 객체에 저장(기억)하여, 이후 폴링에서 같은 id가 들어오면 무조건 필터링하도록 중복 차단 로직을 견고하게 구현함.
신규 분석 알림 연동
진짜 새로운(처음 보는 ID의) 분석 완료/실패 알림이 들어왔을 때만 토스트를 띄우고, 동시에 loadRecentItems()를 호출해 '최근 모의지원 목록'이 즉각적으로 갱신되도록 연동함.
📸 스크린샷 (UI 변경 시)
🔍 리뷰 요구사항 (Reviewers)
Summary by CodeRabbit
New Features
Improvements