feat(chat): 채팅 세션 UI 및 매물 검색 결과 카드 구현 (#88) - #104
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (8)
✅ Files skipped from review due to trivial changes (1)
🚧 Files skipped from review as they are similar to previous changes (5)
📝 WalkthroughWalkthroughThe PR updates property-search responses and analysis handling, adds property-card and session-sidebar UI in chat, changes a datasource prepared-statement setting, and updates phase branch naming. ChangesProperty search and analysis flow
Chat session sidebar
Datasource configuration
Phase branch naming
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 3❌ Failed checks (3 warnings)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
- Chatbot.vue: 세션 사이드바·메시지 렌더링·분석 카드 UI 구현 - chatSessionStore: 세션 생성·전환·로컬스토리지 유지 로직 구현 - ChatResponse: Map::copyOf → HashMap::new로 NPE 수정 - application.properties: HikariCP prepareThreshold=0 설정으로 prepared statement 충돌 방지 - price_analysis/safety_analysis: requiresSelection=True 시 분석 카드 미생성 - analysis_answer_service: 매물 미선택 시 안내 텍스트 반환으로 개선 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Chatbot.vue: properties 카드 렌더링 추가 (매물명·주소·유형·가격·면적·층수) - llm_client: PROPERTY_SEARCH 결과 0건 시 안내 메시지 개선 - llm_client: 매물 검색 결과 요약 LLM 답변 생성 메서드 추가 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 매물 검색 결과가 있을 때 안내 문구를 LLM 답변 유무와 관계없이 항상 출력 - supervisor 프롬프트: "가장 싼 매물" 등 가격 조건 검색은 PROPERTY_SEARCH로 처리 - PRICE_ANALYSIS/SAFETY_ANALYSIS는 매물이 선택된 상태에서만 사용하도록 명시 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
7934ee4 to
fa0a51c
Compare
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@backend-ai/app/graph/nodes/price_analysis.py`:
- Around line 70-77: The exception handler in price_analysis should be narrowed
so it only catches the specific database/client errors expected instead of a
blanket Exception. Update the except block around the DB fetch logic in the
price analysis node to handle only the relevant connection/query/client
exception types, and leave unexpected programming errors uncaught so they
surface normally. Keep the existing error payload shape for the expected DB
failure path, but move the broader catch-all behavior out of this handler.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: a52949a0-83f6-4865-9bc1-563985e08913
📒 Files selected for processing (8)
backend-ai/app/clients/llm_client.pybackend-ai/app/graph/nodes/price_analysis.pybackend-ai/app/graph/nodes/safety_analysis.pybackend/src/main/java/com/ssafy/salmanhae/model/dto/chat/ChatResponse.javabackend/src/main/resources/application.propertiesfrontend/src/store/chatSessionStore.jsfrontend/src/views/Chatbot.vuescripts/execute.py
✅ Files skipped from review due to trivial changes (1)
- backend/src/main/resources/application.properties
🚧 Files skipped from review as they are similar to previous changes (5)
- backend-ai/app/graph/nodes/safety_analysis.py
- frontend/src/store/chatSessionStore.js
- frontend/src/views/Chatbot.vue
- backend/src/main/java/com/ssafy/salmanhae/model/dto/chat/ChatResponse.java
- backend-ai/app/clients/llm_client.py
There was a problem hiding this comment.
Caution
Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@backend-ai/app/graph/nodes/price_analysis.py`:
- Around line 70-77: The exception handler in price_analysis should be narrowed
so it only catches the specific database/client errors expected instead of a
blanket Exception. Update the except block around the DB fetch logic in the
price analysis node to handle only the relevant connection/query/client
exception types, and leave unexpected programming errors uncaught so they
surface normally. Keep the existing error payload shape for the expected DB
failure path, but move the broader catch-all behavior out of this handler.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: a52949a0-83f6-4865-9bc1-563985e08913
📒 Files selected for processing (8)
backend-ai/app/clients/llm_client.pybackend-ai/app/graph/nodes/price_analysis.pybackend-ai/app/graph/nodes/safety_analysis.pybackend/src/main/java/com/ssafy/salmanhae/model/dto/chat/ChatResponse.javabackend/src/main/resources/application.propertiesfrontend/src/store/chatSessionStore.jsfrontend/src/views/Chatbot.vuescripts/execute.py
✅ Files skipped from review due to trivial changes (1)
- backend/src/main/resources/application.properties
🚧 Files skipped from review as they are similar to previous changes (5)
- backend-ai/app/graph/nodes/safety_analysis.py
- frontend/src/store/chatSessionStore.js
- frontend/src/views/Chatbot.vue
- backend/src/main/java/com/ssafy/salmanhae/model/dto/chat/ChatResponse.java
- backend-ai/app/clients/llm_client.py
🛑 Comments failed to post (1)
backend-ai/app/graph/nodes/price_analysis.py (1)
70-77: 🩺 Stability & Availability | 🟡 Minor | ⚡ Quick win
Narrow this exception handler.
Catching
Exceptionhere will also mask programming bugs and turn them intoDB_UNAVAILABLE, which makes real failures harder to diagnose. Please restrict this to the specific DB/client exceptions you expect.🧰 Tools
🪛 Ruff (0.15.18)
[warning] 70-70: Do not catch blind exception:
Exception(BLE001)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@backend-ai/app/graph/nodes/price_analysis.py` around lines 70 - 77, The exception handler in price_analysis should be narrowed so it only catches the specific database/client errors expected instead of a blanket Exception. Update the except block around the DB fetch logic in the price analysis node to handle only the relevant connection/query/client exception types, and leave unexpected programming errors uncaught so they surface normally. Keep the existing error payload shape for the expected DB failure path, but move the broader catch-all behavior out of this handler.Source: Linters/SAST tools
Summary
Chatbot.vue: 세션 사이드바·메시지 렌더링·분석 카드·매물 결과 카드 UI 구현chatSessionStore: 세션 생성·전환·로컬스토리지 유지 로직 구현ChatResponse.java:Map::copyOf→HashMap::newNPE 수정application.properties: HikariCPprepareThreshold=0설정으로 prepared statement 충돌 방지llm_client: PROPERTY_SEARCH 0건 시 안내 문구 및 LLM 매물 요약 답변 추가price_analysis/safety_analysis:requiresSelection=True시 분석 카드 미생성 처리analysis_answer_service: 매물 미선택 시 안내 텍스트 반환 개선Test plan
Closes #88
🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Bug Fixes