종합부동산웹앱 5단계 목표가·급매 플래그 설계
질의 원문
다음 단계 차례로 진행해줘.
수집 경로와 시점
- 수집시점: 2026-08-11 19:50 KST
- 확인 파일:
docs/CONTEXT_HANDOFF.mddocs/STATUS.mddocs/analysis/README.mddocs/plans/2026-08-11-watchlist-source-refs-live-refresh.mdsrc/realestate/webapp/watchlist.pysrc/realestate/webapp/app.pysrc/realestate/webapp/templates/watchlist.html
데이터 등급
| 항목 | 등급 | 설명 |
|---|---|---|
| 플래그 판단 | 로컬 파생 지표 | 저장된 목표가·현재가·metric source에서 계산 |
| 현재가 | 입력값 또는 수집기 결과 등급 승계 | metric_sources.current_price.data_grade를 함께 표시 |
| 원본 확인 여부 | 메타데이터 기반 | original_verified가 false이면 확인 필요 플래그 |
판단
원천 식별자 기반 갱신이 붙었으므로 다음 단계는 숫자를 행동 신호로 바꾸는 것이다. 다만 이 신호는
저장값이 아니라 현재 지표에서 파생해야 한다. 그래야 가격이 갱신되거나 출처 시점이 바뀔 때 플래그도
자동으로 바뀐다.
설계 결정
target_hit: 현재가가 목표 진입가 이하이면 표시한다.bargain: 현재가가 목표 진입가보다 5% 이상 낮으면 급매 후보로 표시한다.near_target: 현재가가 목표가보다 높지만 3% 이내이면 근접 후보로 표시한다.stale_source: 현재가 수집시점이 7일을 초과하면 재갱신 필요로 표시한다.needs_original_check: 현재가 출처가 있고 원본 확인이 아니면 원본 확인 필요로 표시한다.- API와 화면에는
action_flags를 제공하되 저장 JSON에는 쓰지 않는다.
가정
- 현재가와 목표가가 모두 명시되어 있을 때만 가격 플래그를 계산한다.
collected_at은YYYY-MM-DD HH:mm또는 날짜만 있는 형식을 우선 해석한다.- 오래된 데이터 기준은 7일로 둔다.
한계
- 급매 여부는 목표가 대비 할인율 기준이며 동일 단지 호가 분포, 층·향·수리상태는 반영하지 않는다.
- 원본 미확인 플래그는 위험의 크기를 뜻하지 않고 확인 과제를 뜻한다.
collected_at이 해석되지 않으면 stale 여부를 확정하지 않는다.
다음 실행
- TDD로
action_flags_for_item()을 추가한다. /api/watchlist와 워치리스트 카드에 플래그를 렌더링한다.- 구현 기록을 남기고 투자 현황판을 재생성한다.
원문 Markdown: docs/analysis/2026-08-11-종합부동산웹앱-5단계-목표가-급매플래그설계.md