---
task_id: task-2981
project: insuro-composite-workbench-phase1
created: 2026-08-20
---

# 체크리스트 — 인슈로 복합설계 워크벤치 Phase 1

## Phase 1a — 구조 선행 파악 (위임 전)
- [x] 가입제안서 실제 샘플로 담보별 (한도, 보험료) 파싱 가능성 실측
- [x] 보장분석 `analyze-policy`(`main.py:7021`) 입력·파싱 흐름 정독
- [x] `policy_grouping` grouping 엔진 재사용 인터페이스 확인(약관→clause→axes)
- [x] 기존 세트 업로드 패턴(약관 업로드 t2975) 재사용 가능성

## Phase 1b — 세트 업로드 배선
- [x] 신규설계 업로드 = (가입제안서 + 약관) 세트 수신
- [x] 보장분석 업로드 = (증권 + 약관) 세트 수신
- [x] 세트 dedupe(terms_sha256 캐싱) 정합

## Phase 1c — 가입제안서 파싱
- [ ] 담보명·한도·**보험료** 개별 추출
- [ ] 회사별 최대 한도 기준 정규화
- [ ] 파싱 실패/부분 처리(설계사 오판 방지 — 원인 노출)

## Phase 1d — 보장분석 확장 (기존측 axes 부착)
- [x] 보장분석에 약관 입력 배선
- [x] 약관 파싱 → 담보에 clause_id/axes 부착(grouping 엔진 재사용)
- [x] `CoverageRow`/산출 스키마에 clause_id/axes 반영(계약 additive)
- [x] name-match 금지·게이트 봉인 불변식 회귀 확인

## Phase 1e — UI 세트 업로드
- [x] 보장분석 업로드 화면 → 세트(문서+약관) 입력
- [x] 신규설계 업로드 화면 → 세트(문서+약관) 입력
- [x] 세트 누락/부분 업로드 UX

## 검증 (완료 조건)
- [x] 세트 업로드 E2E — **UI 렌더 실측 완료**(실 브라우저, 세션 주입). API 왕복은 JWT 부재로 미검증
- [ ] 제안서 담보별 (한도, 보험료) 추출 실측
- [ ] 보장분석 담보 clause_id/axes 부착 실측 + 자동 매칭 성립 확인
- [x] 게이트 봉인 회귀(t2970/2974/2977/G-1/G-2) GREEN · 오비교 0
- [x] report + .done + ANU 콜백 · 머지 HOLD(ANU 독립검증)

## [미해결] 다음 Phase 인계
- Phase 2: 가성비 계산(단위한도당 보험료)
- Phase 3: 복합설계 조립 UI + 비교표 화면(미팅 결과) + 최종안↔기존 비교
