개발 일지
개발 일지
프로젝트: 상권 데이터 구조화 및 창업 분석 Hybrid RAG용 Agent 개발 (Metabole) 팀: Beyond Facade — 김충식 · 이은상 · 신채연
2026-08-24
1. 개발 환경 구축
- Claude Code 프로젝트 스킬 설치: obra/superpowers v6.3.0 스킬 14종 →
.claude/skills/(brainstorming, TDD, systematic-debugging, writing-plans 등) - 백엔드 가상환경 생성:
backend/.venv(Python 3.14.6, uv) .gitignore3곳 정비: 루트(.env,.venv/) /backend/(.venv/,.env) /frontend/(.env,.env.local) —git check-ignore로 시크릿 파일 무시 검증 완료
2. 기준 문서 작성 — docs/brainstorming.md
개발 제안서(개발 기간 2026-08-20 ~ 10-27, 10주)를 기반으로 초기 개발의 기준 문서를 작성하고 브레인스토밍을 통해 아래 사항을 확정.
확정 사항
- 지역 범위: 서울 한정 — 추정매출·생활인구가 완결된 공공데이터는 서울시 상권분석서비스가 유일. 코어 지표(전국 공통 데이터 기반)와 확장 지표(서울 전용)를 코드 레벨에서 분리해 추후 확장 대비
- 타겟 업종: 10종 확정 — 수요 동인 유형 축으로 설계
- 일상소비형: 카페, 편의점, 미용실
- 여가형: 노래방, PC방, 헬스장, 당구장
- 경기민감형: 부동산(공인중개사무소)
- 인구구조 민감형: 학원, 어린이집
- 학원 서브카테고리: “학원 1업종 × 2축(교습계열 × 대상학년)” 모델. 교습계열은 서울시 학원·교습소 데이터(NEIS 원천) 원본 필드, 대상 학년은 교습과정명 LLM 구조화 추출
공공데이터 소스 확정 (API 제공 여부 검증 완료)
- 상권 코어: 소진공 상가정보, 행안부 LOCALDATA 인허가(개폐업), 서울시 상권분석서비스, 서울 생활인구, 국토부 실거래가
- 정책자금 공고 (API 검증): 기업마당(중앙+지자체 통합, 1순위), K-Startup, 중소벤처24, 보조금24, 온통청년 — 5곳 API 확인 / 소진공·지역신보·서울시는 스크래핑 후보
- 뉴스: 빅카인즈(한국언론진흥재단), 네이버 뉴스 API — 특이변수 감지 센서
- 인구: 행안부 주민등록(연령별), 외국인주민 현황(국적별)
분석 변수 체계
- 전통 변수 8종: 유동인구, 배후인구, 경쟁밀도, 개폐업률·생존율, 임대료·공실률, 접근성, 추정매출, 집객시설
- 특이변수 4계층 프레임: ①정책·규제(거리두기, 최저임금, 주52시간 등) ②거시경제(금리, 물가, 에너지 요금) ③사회·트렌드(무인점포, 홈트, 유행 사이클 — 뉴스 언급량이 센서) ④지역 이벤트(GTX 개통, 재개발, 대형시설 개폐점)
- 재난지원금의 폐업 지연 왜곡(종료 후 폐업 절벽) 보정 원칙 수립
- 외국인 거주 인구는 “상권 악화 지표”가 아닌 “수요 구성 변화 지표”로 모델링 (업종 타겟과 인구 구성의 정합성 점수화, 차별적 출력 금지 규칙 명시)
서비스 설계
- 브이월드 지도 시각화: 배경지도(WMTS)+행정동 경계(WFS)+지오코딩은 브이월드, 성장률·폐업률 지표는 LOCALDATA 기반 자체 산출 → 단계구분도 + 업종 토글 + 시계열 슬라이더(2019~)
- 금융 연계:
- 정책자금 공고 요약 카드 + 원문 링크 (신청·중개 없음 — 금소법 경계 준수)
- 월세 vs 매입 대출 계산기: 신용도 자가 입력 × 1군/2군 은행 평균 공시금리(은행연합회), 실거래가 기반 매입가 추정, 취득세 등 부대비용 포함 손익분기 — 예상 계산까지만
- 업종 간 교차 시그널 (post-MVP 후보): 어린이집 폐원→학원 수요 선행지표, 편의점 출점→검증된 상권 프록시, 여가형 3종(PC방·노래방·당구장)→세대별 수요 프로파일
MVP 일정 (10주)
| 주차 | 내용 |
|---|---|
| 1~2주 | 공공데이터 API 검증, 업종코드 매핑표(10종), ERD 설계 |
| 3~4주 | 수집 파이프라인 + Fractal 11-File Set 구현 |
| 5~6주 | 전통 변수 산출 + 상권×업종 분석 |
| 7~8주 | 특이변수 통합, Hybrid RAG Chunking |
| 9~10주 | 평가(Recall@5 목표 91.5%), 데모 배포 |
3. ERD 초안 설계 — docs/erd.md
- 3계층 접근: 마스터(region·district·industry 허브) → 원천(3NF 엄격 적용) → 집계(역정규화 허용 구역)
- MVP 15개 테이블 Mermaid erDiagram으로 작성 (M:N 매핑 3개 포함) — 테이블 1개 = Fractal 11-File Set 1개
- 1NF→3NF 정규화 검증 기록, 역정규화 4건은 근거 명시 (예:
region_industry_metric사전 집계 — 지도 latency) - 모든 테이블이 마스터 허브까지 FK 경로 보유 — 고립 테이블·고아 레코드 원천 차단 (FK는 실제 DB 제약으로 강제)
4. API 수급 계획 검증 — docs/api.md
27개 데이터 소스 웹 실사 (실제 페이지·엔드포인트·인증 체계 확인) 후 수급 방식 확정.
설계에 영향을 주는 치명적 발견 5가지
- 서울시 추정매출 공식 경로는 2021년 이후만 잔존 → 코로나 회복 판정 지표를 매출 → 개폐업률·점포수(LOCALDATA)로 변경
- 서울 생활인구 행정동 기반 생산 2026-07-31 종료 → 격자(250m) 기반 + 격자→행정동 매핑으로 설계
- 상가정보 API는 현재 스냅샷 전용(점포 단위 시계열 연계 불가) → LOCALDATA가 개폐업 시계열의 유일한 진실 소스
- 브이월드 지오코더 결과 저장 금지 약관 → 좌표 포함 원천 우선, 소량만 SGIS 지오코딩
- 상가 임대 실거래 API 부재 → 부동산원 R-ONE 임대동향(지역 평균)으로 대체
- 발급 계정·인증키 11곳 체크리스트 작성 (승인 대기 4곳 우선 신청 원칙) — ECOS는 샘플 키로 실호출 검증 완료
- 스크래핑·수기 확정: 은행연합회 금리, 거리두기 2020.2~11 이력 등
5. Docker 인프라 구축 — Backend v0.1.0 / Frontend v0.1.0
- 루트
docker-compose.yml(프로젝트명beyondfacade): db(pgvector/pgvector:pg17), neo4j(5-community), redis(7-alpine), backend, frontend·cloudflared(프로필) - 호스트 포트: DB 5434, Neo4j 7475/7688, Redis 6380, API 8200, 프론트 3200 — 동일 호스트 타 프로젝트와 격리, 127.0.0.1 바인딩
backend/Dockerfile(python:3.14-slim + uvicorn), 최소 FastAPI 앱GET /health로 스택 기동 검증, pgvector 0.8.5 확장 활성화 확인frontend/Dockerfile(node:22-alpine, 로컬 개발용 — 배포는 Vercel)- PostgreSQL·Neo4j에 강력 랜덤 자격증명 적용,
backend/.env템플릿에 외부 API 키 플레이스홀더 11개 정리 (git 커밋 금지 검증 완료)
6. 데이터 확보 — 서울 상권 추정매출 2017~2021
- GitHub 미러에서 연간 CSV 5개(2017~2021) 전량 확보 →
data/raw/seoul_sales/(공식 경로에서 삭제된 2017~2020 포함) MANIFEST.md에 출처·라이선스(KOGL 1유형, 출처표시)·SHA256 무결성 기록- 주 지표는 개폐업률·점포수 유지, 매출은 교차검증·RAG 보조 근거로 활용
7. 개발 일지 자동화
scripts/jekyll-devlog.sh작성 + 크론 등록(매일 23:55) — 일일 개발 내용을 이 문서의 일자별 섹션으로 자동 집계docs/jekyll.md를 단일 포스트에서 일자별 섹션(## 날짜) 반복 구조로 개편, permalink/docs/devlog.html고정
다음 작업
- ERD 초안 설계 (테이블 = Fractal 11-File Set 단위) —
docs/erd.md15개 테이블 - 공공데이터포털 API 키 발급 (상가정보·인허가·기업마당 등) — 8/25 완료
- 브이월드 API 키 발급 + 데모 도메인 등록 — 8/25 완료
- 10종 업종코드-데이터소스 매핑표 확정 →
industry_source_code시드 데이터 docs/api.md§7 열린 질문 팀 결정 (회복 판정 지표 변경 승인 등)- 자동 일지 크론 첫 실행 확인 후
scripts/jekyll-devlog.sh커밋
2026-08-25
1. [데이터 수급] API 수급 계획 재검증 — 4건 정정 (docs/api.md)
웹 실사 재검증으로 8/24 계획 대비 변경 4건 확정:
- LOCALDATA(지방행정인허가) 서비스 종료 확인 — localdata.go.kr은 2026-04-16 0시부로 폐쇄, 공공데이터포털로 일원화 (인허가 195종 + 생활편의 14종 = 209종, 인허가 이력 데이터 신규 제공). 별도 회원가입·인증키 절차 소멸 → data.go.kr 키 하나로 커버
- 빅카인즈 완전 유료 전환 확정 (2025~) → MVP 뉴스 수집은 네이버 폴링 단독으로 확정 (열린 질문 §7-3 해소)
- K-Startup API 수급 불가 확정 — 구 API 폐기 공지 + 후속 조회서비스 포털 미노출 (신청 경로 없음) → 공고 수집은 기업마당 API로 일원화, 공백 시에만 k-startup.go.kr 크롤링 검토
- 별도 발급처 2곳 식별 — R-ONE은 reb.or.kr/r-one 자체 키(data.go.kr 아님), 어린이집은 어린이집정보공개포털(info.childcare.go.kr) 자체 키(개발계정 승인제, 일 1,000회)
2. [데이터 수급] API 키 발급 완료 + 전건 실호출 검증
발급 완료 8곳 (전부 실호출 검증 통과):
| 발급처 | 검증 내용 |
|---|---|
| 브이월드 | 활용API 선택 가이드 후 발급 (지오코더·2D데이터·검색·타일 등) |
| 서울 열린데이터광장 | 일반 인증키 (실시간 지하철 키 불필요 확인) |
| 기업마당 | 공고 JSON 실수신 (등록 IP 호출 조건 동시 확인) |
| 한국은행 ECOS | 발급 키로 기준금리 재검증 (2026-08 기준 2.75%) |
| KOSIS | 발급 완료 |
| 부동산원 R-ONE | 통계표 목록 + 임대가격지수 실데이터 수신 (임대 관련 통계표 265개, 2013Q1~ 상권 단위) |
| 공공데이터포털 | 활용신청 12건 완료 — 실거래가(강남구 2026-06)·상가정보(반경조회)·인허가 실수신 |
| 온통청년 | 청년정책API 승인 완료 — 정책 2,728건 수신 (신형 getPlcy 엔드포인트 확인) |
- 승인 대기 1곳: 어린이집정보공개포털 (개발계정 신청 완료)
- 잔여 1곳: 네이버 개발자센터 — 뉴스 시계열이 등록일부터 쌓이므로 최우선 전달 (백엔드 담당 가이드 작성)
- SGIS는 폴백으로 우선순위 하향 — 담배·인허가 데이터 좌표 포함 확인으로 지오코딩 수요 축소, 브이월드 WFS 문제 시 또는 좌표 결측 유의미할 때 발급 (즉시 발급이라 리드타임 리스크 없음)
3. [데이터 수급] 신규 인허가 API 스펙 완전 확보 (P0 핵심 수확)
구 LOCALDATA의 후속 API 구조를 실호출로 해명 — ERD 설계의 실데이터 근거 확보:
- 엔드포인트:
apis.data.go.kr/1741000/{업종슬러그}/{info|history}— 업종별 개별 데이터셋 구조 - 우리 7개 업종 슬러그 전수 추출:
general_restaurants(일반음식점) /rest_cafes(휴게음식점) /beauty_salons/fitness_centers/billiard_halls/karaoke_rooms/pc_bangs /history= 특정 일자 기준 상태 조회 (cond[BASE_DATE::EQ]) — 개폐업 시계열 구축의 핵심- 증분 수집:
cond[DAT_UPDT_PNT::GTE](데이터갱신시점), 자치구 단위:cond[OPN_ATMY_GRP_CD::EQ] - 실응답 컬럼 확인: 인허가일자·폐업일자·영업상태·주소·좌표(CRD_INFO_X/Y) — 페이지당 최대 100행(페이징 필요)
- 부동산중개업은 행안부 통합 목록에 없음 → 국토부 중개업정보(15123990) 대체 검토
4. [데이터 확보] 주민등록 인구 + 담배소매업 적재 (data/raw/)
- 주민등록 인구 (
data/raw/jumin/+ MANIFEST): 연령별(5세 단위) 38파일 2017.01~2026.06 + 인구세대 10파일 2017.01~2026.07 — 무결성 검증에서 깨진 파일 1개·연령 단위 불일치 5개 발견 → 재다운로드로 전량 정상화. MVP 조회기간 2017.01~ 확정 (생활인구·매출 시계열 정합 + 코로나 전 3년 기준선) - 담배소매업 (
data/raw/tobacco_retail/+ MANIFEST): 서울 95,402행, 폐업 포함 전 기간. 좌표 포함 확인 (영업중 기준 97.3% 채움) → 당초 “좌표 없음, 지오코딩 필요” 판단 정정 — 지오코딩 불필요 - 다운로드 제약 실측 기록: 인구세대 최대 1년 / 연령별 최대 3개월 범위
5. [아키텍처] 멀티에이전트 + AWS 인프라 설계 확정 (docs/agent-architecture.md 신규)
- 에이전트 구성: 오케스트레이터 + 전문가 3 (상권 진단 / 충격·정책 분석 / 정책자금·금융) — 업종별이 아니라 분석 축별 분할 (brainstorming §5.3 이원 축 = 에이전트 경계)
- 원칙: 숫자는 배치 산출(결정론), 에이전트는 검색·판단·합성만 / Port = Tool (Fractal 11-File Set의 UseCase가 곧 에이전트 도구 — 헥사고날의 런타임 연장)
- 응답 규칙(외국인 변수·지원금 왜곡·금융 규제·신뢰 등급)은 오케스트레이터 한 곳에 집중
- 구축 순서: 도구 완성(~6주) → 단일 에이전트(7~8주) → 멀티 분리(9주) — Port 기반이라 분리는 리팩토링
- AWS $400 크레딧 운용 확정: 10월 초중순까지 로컬 개발 → 종료 2주 전 EC2 배포(모델 병렬 서빙). 2주 예산 ~$300 (스팟 GPU 2대 + CPU 1대 + S3), 발표 당일만 온디맨드 전환. 즉시 액션: G 인스턴스 쿼터 증설 신청 / 9월 중 스모크 배포 1회 (<$5)
6. [문서화] 운영 가이드·기록 정비
- SGIS·네이버 개발자센터 발급 절차 상세 가이드 작성 (백엔드 담당자 전달용 — 인증 구조·쿼터·폴링 설계 포함)
backend/.env정비: 폐기 항목 제거(LOCALDATA·빅카인즈), 신규 추가(R-ONE·어린이집)docs/api.md전면 갱신: 발급 현황 체크리스트, 데이터셋 ID 전수 확인표, 정정 이력
7. [백엔드] core 인프라 + master/news/store BC 구현 — Backend v0.2.0~v0.5.1
모듈러 모놀리스 골격 위에 첫 Bounded Context 3개를 Fractal 11-File Set으로 구현 (테스트 17건, 커밋 5a971f4):
- v0.2.0 — core/matrix 전역 인프라: Secret 매니저(pydantic-settings, 환경변수 >
.env우선순위)- DB 매니저(SQLAlchemy engine/session 싱글턴, 공용
OrmBase) — TDD 4건(실 DB SELECT 1·pgvector 확장 확인 포함).apps/dummy골격을 CLAUDE.md §12 정본 구조로 정정
- DB 매니저(SQLAlchemy engine/session 싱글턴, 공용
- v0.3.0 — Alembic + master BC: 마이그레이션 체계 도입, 마스터 계층 5테이블 생성. 시드 러너(멱등 merge)로 자치구 25 · 행정동 427(주민등록 CSV 실데이터 파싱) · 업종 10종 · 원천코드 매핑 9건 · 서브카테고리 8건 적재
- v0.4.0 — news BC (첫 완전한 11-File Set):
GET /news/myself배선 검증 →NaverNewsGateway(네이버 API HUB) → sha1(url) 기준 중복 제거 적재. 폴러 CLI + 크론(매시 10분) 가동 — 첫 실수집 기사 1,838건 (뉴스 시계열 축적 시작점, 8/24 최우선 과제 해소) - v0.5.0 — store BC (P0 개폐업 시계열):
MoisPermitGateway행안부 인허가 API 페이징 순회 + EPSG:5174→WGS84 좌표 변환(브이월드 실좌표와 3m 이내 교차검증), 관리번호 기준 업서트 + 증분 커서. 개방자치단체코드 25개 구 전수 확보, 시범 수집 종로구 당구장 619건(폐업 473 포함, 좌표 채움 90%) 후 전체 초기적재(6업종 × 25구) 실행 - v0.5.1 — 수집기 내결함성: 초기적재 검증 중 원천의 비정상 일자(월말 초과)로 수집 중단되는 결함 발견 → 날짜 클램프 + 재시도 + 대상(업종×자치구)별 오류 격리로 보강, 업종:자치구:관리번호 조합키로 전량 재수집 가동(5.5만+ 건 적재 확인)
8. [프론트엔드] MVP 설계 스펙 + SDD Task 1~8 구현 — Frontend v0.2.0~v0.6.1
- 설계 스펙 확정:
docs/superpowers/specs/2026-08-25-frontend-design.md(§1~§5 승인) — 2탭 구조(지도 탐색 + AI 분석), mock API 계약 우선 개발, 전체 11개 Task 계획 - SDD(subagent-driven-development) 워크플로로 Task 1~8 완료: 태스크마다 TDD Red→Green + 독립 서브에이전트 리뷰 게이트 통과. 워크트리
feature/frontend-mvp브랜치, 커밋 10개, 테스트 19건 전부 통과 + 프로덕션 빌드 검증 - v0.2.0: Next.js 16 스캐폴드(TypeScript, App Router, Tailwind) + vitest +
shared/config - v0.2.x~v0.3.x: 시맨틱 디자인 토큰 2벌 + 테마 토글 / 지도 탭 — MapLibre + 브이월드 라이트·다크 래스터 타일, 행정동 단계구분도(색약 안전 5스톱 보간), 선택 강조 + 클릭 핸들링. v0.3.1에서 테마 전환 시 강조색 미갱신 버그·하드코딩 hex 제거
- v0.4.0~v0.5.0: URL ↔ 상태 양방향 동기화(업종/지표/연도 컨트롤바) / 사이드패널(region summary 쿼리, 404 분기) + 신뢰 배지(
fact/signal) +/analysis딥링크 - v0.6.0~v0.6.1: AI 분석 탭 — SSE
EventSource구독 → 순수 리듀서로 에이전트 4행 진행 패널 + 마크다운 리포트(섹션 순서 고정, 계산기 표 렌더). 리뷰 게이트에서 잡힌start()재진입EventSource누수·POST 실패 미처리 수정(재진입 가드 테스트 추가) - 잔여: Task 9~11 (탭 네비게이션 + E2E 검증, 정책자금·배포, 점포 마커 클러스터링) → 브랜치 최종 리뷰 후 병합 예정
9. [툴링] 디자인 스킬 6종 설치 + 수집 자동화 크론 3종
- Claude Code 프론트엔드 디자인 스킬 6종 설치(악성 지시·유출 패턴 검수 후): frontend-design(Anthropic), impeccable(+전용 에이전트 4종), taste, ui-ux-pro-max, agent-browser, find-skills(Vercel)
- 크론 스크립트 3종 커밋:
news-poller.sh(매시 10분) ·store-collector.sh(매일 04:20 증분) ·jekyll-devlog.sh(매일 23:55 일지 집계) - GitHub 원격 푸시 정상화 — PAT 자격증명 영구 저장 구성 후 금일 커밋 3건(백엔드·문서·툴링) 푸시 완료
다음 작업
- 네이버 개발자센터 앱 등록 + 뉴스 폴링 수집기 가동 — news BC + 매시 크론으로 완료 (기사 1,838건 적재 시작)
- 인허가 초기 적재 파이프라인 — store BC로 완료 (6업종 × 25구, 부동산중개업은 국토부 대체 검토 지속)
- ERD 실응답 컬럼 기준 검증·갱신 — news_article·store 정정 완료 (잔여 테이블은 BC 구현 시점에 갱신)
- AWS G 인스턴스 쿼터 증설 신청 (승인 며칠 소요 — 지금 신청)
- 어린이집정보공개포털 승인 후 키 입력 (
CHILDCARE_API_KEY) - 연령별 인구 2026.07분 1파일 추가 (공표 확인 후)
- store 전량 재수집 완료 검증 (건수·좌표 채움률·업종별 분포 확인)
- 프론트엔드 Task 9~11 구현 →
feature/frontend-mvp최종 리뷰 — 8/26 완료 (v0.9.1, 병합은 결정 대기)
2026-08-26
1. [백엔드] 행정동 경계 적재 — Backend v0.6.0
- 브이월드 WFS
lt_c_cademd(기준일 2024-06-30) 서울 426동 1회 수신 →region.geometry_ref427/427 전체 기입 (멱등 재실행 검증) - 브이월드 인증 확정 (실호출 진단): 데이터·WFS API는
domain파라미터가 인증키 등록 서비스URL(beyondfacade.cloud)과 일치해야 통과 — 불일치 시INCORRECT_KEY(타일·검색 API는 무관) VworldBoundaryGateway(Driven Adapter) +load_boundaries.py(CLI) — adm_cd(통계청 8자리)↔region_code(행안부 10자리) 코드 체계 불일치를 (구, 정규화 동명) 매칭으로 해소: 서수 ‘제’ 제거(창신제1동→창신1동, 동명 ‘홍제N동’의 ‘제’는 보존), 중복 동명은 유일 동명에서 학습한 통계청 구코드로 해소, 중복 배정 시 실패(ValueError)- 용두동·신설동 보충: 경계 기준일 이후 분동(구 용신동)이라 행정동 레이어에 없음 → 데이터 API
LT_C_ADEMD_INFO법정동 경계로 1:1 대체 - 산출:
data/geojson/regions/{region_code}.json(adm_cd·base_date·source_layer provenance 보존), 좌표 전수 서울 범위 검증 — 테스트 7건 (정규화 2 / 매칭 4 / 파일 왕복 1)
2. [백엔드] store 행정동 공간조인 — Backend v0.7.0
region_code282,752/282,764 기입 (좌표 보유분의 99.996%, 8초) —RegionIndex: v0.6.0 경계 GeoJSON 427개 shapelySTRtree포함 판정 + 경계 틈·변환 오차 스냅(최근접 ≤0.0005°≈50m)- PostGIS 부재(pgvector 이미지)에 따른 앱사이드 조인 — 명시적 인프라 정합 판단. 멱등: 기본
region_code IS NULL만 판정,--full로 전체 재판정(경계 갱신 시) - 미판정 12건은 좌표가 서울 경계 밖(수원·성남·부천 등 원천 좌표 이상) — NULL 유지가 정답. 교차검증: 판정 행정동의 구 vs 인허가 관할구 불일치 28건(0.01%)은 경계 인접·원천 좌표 오류로 판정 유지
scripts/store-collector.sh일일 크론에 공간조인 후속 실행 추가 — 신규 수집분 자동 채움- 테스트 4건 추가 (백엔드 전체 28 passed) — 이로써 점포 297k행 전량이 행정동 축으로 집계 가능 (다음 단계
region_industry_metric집계 BC의 선행 조건 충족)
3. [프론트엔드] MVP Task 9~11 완료 + 최종 리뷰 클린 — Frontend v0.7.0~v0.9.1 (feature/frontend-mvp)
- v0.7.0 — 탭 네비게이션 + E2E 인프라:
<TopBar>(지도 탐색/AI 분석 탭,aria-current), agent-browser 기반 E2E 여정 스크립트(e2e-journey.sh) + 화면×테마×뷰포트 16종 스크린샷 매트릭스 - v0.7.1~v0.7.2 — 지도 렌더링 버그 근본 해결: maplibre-gl@6.6.0이 워커 스크립트 URL을
import.meta.url기반으로 계산하는데 Turbopack 청크에서는 실패해 GeoJSON 타일링이 조용히 멈춰 폴리곤이 전혀 렌더되지 않던 문제 →setWorkerUrl()+public/maplibre-gl/워커 파일 배치로 우회. E2E 폴리곤 클릭을 엄격 모드로 복원(XFAIL 우회 제거), 브라우저 프로세스 누수 trap 정리 - v0.8.0 — 디자인 시스템 확정: 강조색 market-teal 확정(신뢰·데이터 계열 후보 3종 스크린샷 비교 — 라이트
#0f766e/다크#2dd4bf, 단계구분도 팔레트와 색상환 비겹침 근거), 컨트롤바·사이드패널·분석 탭 전반 한국어 라벨·접근성(role/aria-live/색상 단독 전달 금지)·스켈레톤·빈 상태 정비, 포트 규약 3500→3200 정정(루트 docker-compose와 일치), 지도 뷰포트 높이(dvh)·--border토큰 버그 수정 - v0.9.0 — 점포 마커 클러스터링 (Task 11): backend store 실데이터(297k행)에서 8개 동 × 6개 업종 bounding box로 추출한 표본 기반 mock
GET /stores라우트 + MapLibre 클러스터 3레이어 (클러스터 클릭 확대·개별 마커 팝업·테마 토큰 연동), 동 미선택 시 로드 금지 성능 가드 - v0.9.1 — 최종 브랜치 리뷰 결함 수정: 업종을 바꿔도 지도 색상·요약 카드 수치가 그대로였던 mock 결함(
metricRows에industry시드 미반영) 수정 → 최종 리뷰 클린 - 테스트 32건 전부 통과 + 프로덕션 빌드 검증 — 브랜치 미머지 보존 (병합/PR은 결정 대기)
다음 작업
feature/frontend-mvp병합/PR 결정 (v0.9.1 리뷰 클린 상태로 보존 중)region_industry_metric집계 BC 구현 — 실데이터 컬럼 기반, 프론트 실 API 전환(컷오버)의 선행 조건- 백엔드 컷오버 체크리스트 필수 4건 반영 후 mock → 실 API 전환
- AWS G 인스턴스 쿼터 증설 신청 (8/25 이월)
- 어린이집정보공개포털 승인 후 키 입력 (
CHILDCARE_API_KEY, 8/25 이월) - 연령별 인구 2026.07분 1파일 추가 (공표 확인 후, 8/25 이월)