# 킨텍스 자동전시시스템 구축 — 제안서 본문 (Proposal Content · 슬라이드 단위)

> 작성: proposal-writer · 작성일: 2026-07-11 · 버전 v1.0
> 입력: `proposal_outline.md`(63슬라이드 배점 가중 목차) · `proposal_strategy.md`(Win Theme 5·리스크 R-1~R-8) · `tech_advisory.md`(§0 라이브 실적/구현 계획 구분·도식 12종 사양·NFR 21·보안 20·공수 ~150M/M·SM) · `rfp_analysis.md`+`rtm.md`(REQ 142)
> 산출 규격: 슬라이드별 [번호·섹션·헤드라인(3초 메시지)·본문 불릿(근거)·도표 지시(tech_advisory 도식 ID)·대응 REQ·출처]. 문체 = **주장 → 근거(라이브 실적/설계 문서) → 효과**. 과장 금지 — tech_advisory §0 구분표에 따라 **[검증됨]**(구축 완료·라이브)과 **[구현 계획]**(설계 확정·미완)을 표기 라벨로 명확 구분.
> 보안 불변: 시크릿(키·비번·IP·SSH) 미기재. AI 생성 이미지는 워터마크·고지 정책 명시.
> deck-designer 지침: 도식 지시의 "도식ID"는 `tech_advisory.md §1-4`의 번호(①~⑫)와 1:1. 아이콘 전량 선(stroke) SVG.

---

## 표기 범례 (전 슬라이드 공통)

- **[검증됨]** = WORK_STATUS(2026-07-11) 라이브 확인분. "이미 기동 중".
- **[구현 계획]** = 설계·데이터모델 확정, 구현 대기. "표준대로 채운다".
- **[협의]** = 발주처 협의·확인 필요(⚠) 항목. 정직 고지 대상.
- **REQ** 열 = 해당 슬라이드가 충족하는 요구사항 ID(RTM 반영 근거).

---

# 0. 표지·목차 (S01~S06)

## S01 · 표지
- **섹션**: 표지
- **헤드라인**: **"신청서를 내는 순간, 시공 후 사진을 먼저 본다."**
- **본문**
  - 사업명: 킨텍스(KINTEX) 자동전시시스템 구축
  - 서브 슬로건: "설계 → 시각화 → 발주 → 시공 → 운영 → 분석. 킨텍스에서 한 흐름으로 끝난다."
  - 제안사·제안일 표기 영역(로고 자리)
- **도표 지시**: 배경 = 나노바나나 시공 예측 히어로 이미지(Before 빈 부스 → After 시공 사진). **워터마크 항상 표기**("AI 생성 예상 이미지 — 실제 시공과 다를 수 있음. 계약·심사 서류 사용 금지"). 도식ID 없음(히어로).
- **REQ**: REQ-A-001, REQ-S-009
- **출처**: strategy §0, PLANNING §1-2

## S02 · 제안 개요
- **섹션**: 표지
- **헤드라인**: "우리는 도면이 아니라 사진으로 컨펌하고, 그 사진으로 발주까지 종결한다."
- **본문**
  - 우리는 누구: GUARDiA 표준 프레임워크(WISE/UIWS) 검증 자산 위에 전시 도메인 코어를 얹은 팀
  - 왜 우리인가: ①나노바나나 시공 예측 ②PostGIS 실측 공간데이터 ③공사 옥션 폐루프 — **세 결합을 이미 라이브로 검증** [검증됨]
  - 차별점 1줄: "말이 아니라 이미 돈다" — 인프라·인증·PostGIS 코어·나노바나나·자동배포가 기동 중
- **도표 지시**: 제안사 핵심 자산 아이콘 3종(선 SVG) — 시공예측·공간데이터·옥션폐루프.
- **REQ**: REQ-A-001, REQ-N-008, REQ-F-025
- **출처**: tech_advisory §0-1, strategy §0

## S03 · 목차
- **섹션**: 표지
- **헤드라인**: "배점을 따라 읽으십시오 — 제안서 무게가 곧 배점 배분입니다."
- **본문**
  - P1 사업이해 · P2 추진전략 · P3 기술제안 · P4 아키텍처 · P5 보안·개인정보 · P6 비기능 · P7 멀티테넌시·확장 · P8 사업관리·일정·조직 · P9 기대효과
  - P3(기술제안)이 전체 25슬라이드(≈40%) — 배점 35점 정렬
- **도표 지시**: 목차 인덱스(9섹션) + 각 섹션 배점 배지 병기. 도식ID 없음.
- **REQ**: (내비게이션 — 개별 REQ 없음)
- **출처**: outline 배분 총괄표

## S04 · 제안 핵심 요약(1p)
- **섹션**: 표지
- **헤드라인**: "단일 요소는 모방할 수 있으나, 세 결합은 재현하기 어렵다 — 우리만의 해자."
- **본문**
  - Win Theme 5선: WT-1 시공 예측 · WT-2 배치·설계·배선 3안+규정검증 · WT-3 옥션 폐루프 · WT-4 보안 3중 격리 · WT-5 멀티테넌트 SaaS
  - 3중 해자: 나노바나나 시공 예측 ∩ PostGIS 실측 공간데이터 ∩ 공사 옥션 폐루프
  - 배점의 44%(35/80)가 P3에 집중 → 제안 무게 집중 근거
- **도표 지시**: **도식① 3중 해자 벤다이어그램**(3원 60% 겹침, 중앙 교집합 "재현 난이도 높은 결합 = 우리만의 해자(Moat)"). tech_advisory §1-4 ①.
- **REQ**: REQ-A-001·002, REQ-N-008·017, REQ-F-025
- **출처**: strategy §3-3, tech_advisory §1-4 ①

## S05 · 배점 대응 맵
- **섹션**: 표지
- **헤드라인**: "우리 제안은 배점이 큰 곳에 정확히 무게를 실었다."
- **본문**
  - AI 시각화·설계(핵심) 20점 → WT-1·WT-2 전면(P3 나노바나나 7슬라이드+배치·설계·배선 5슬라이드)
  - 기능 구현 15점 → 모듈맵 1장 조망 + 옥션·관람·BI 상세
  - 아키텍처 10·보안 10·비기능 8·사업이해·전략 10·멀티테넌시 5·사업관리 2
- **도표 지시**: 배점-섹션 정렬 매트릭스(80점 히트맵). 도식ID 없음(인포그래픽).
- **REQ**: (배점 정렬 — 전 REQ 계열 조망)
- **출처**: strategy §2, outline 배분 총괄

## S06 · [가정] 고지 간지
- **섹션**: 표지
- **헤드라인**: "가정은 숨기지 않고 드러냅니다 — 실제 공고 확인 시 즉시 재정렬합니다."
- **본문**
  - 실제 RFP 부재 → 평가배점·제출규격은 공공 SI 통례 기준 **[가정]** (리스크 R-4 정면 방어)
  - 목차는 안전 정렬(사업이해→전략→기술→아키→보안→비기능→확장→관리→기대효과)
  - 확인 필요 8항목(C1~C8)은 부록 A에 집약 → 정직성을 강점화
- **도표 지시**: 간단 노트 카드(리스크 R-4 방어 문구). 도식ID 없음.
- **REQ**: (투명 고지 — 개별 REQ 없음)
- **출처**: strategy §4 R-4, rfp_analysis §4·§5

---

# P1. 사업이해 (S07~S10)

## S07 · 사업 배경·목적
- **섹션**: P1 사업이해
- **헤드라인**: "108,011㎡의 아시아 3위 전시장, 준비는 여전히 HWP·CAD 수작업이다."
- **본문**
  - 킨텍스 규모: 현 108,011㎡ → 2028년 제3전시장 완공 시 178,000㎡(국내 최대·아시아권 상위)
  - 현행 병목: 부스 배치는 CAD 외주 수작업, 신고서류는 HWP 수기, 배선·위치표시도 육안 작도
  - 목적: 전시 준비 전 과정을 AI로 자동화해 리드타임·오류·외주비용을 동시 절감
- **도표 지시**: 킨텍스 규모 인포그래픽(면적·홀 수·연간 행사 규모 지표 카드). 도식ID 없음.
- **REQ**: (사업 맥락 — 개별 REQ 없음)
- **출처**: PLANNING §1-1

## S08 · As-Is 프로세스 병목
- **섹션**: P1 사업이해
- **헤드라인**: "D-150부터 D-7까지, 마디마다 사람이 기다리고 CAD를 외주한다."
- **본문**
  - D-150 판매·견적: 견적 산출을 담당자가 수기 회신 → 대기 발생
  - D-30 배치·설계: CAD 외주 수일~수주, 규정 위반은 홀매니저 육안 검수 병목
  - D-25 유틸리티: 전기·네트워크·급배수 신청이 개별 채널로 파편화
  - D-7 제출·검수: kxwp 제출·서류 육안 검토
- **도표 지시**: **As-Is 타임라인 다이어그램**(D-데이별 Pain Point 표시). 도식ID 없음(표준 타임라인).
- **REQ**: (병목 진단 — 개별 REQ 없음, To-Be 근거)
- **출처**: PLANNING §3-1·3-2

## S09 · 이해관계자·페르소나
- **섹션**: P1 사업이해
- **헤드라인**: "6역할+2관리자, 각자의 과업·고통·기대를 정확히 안다."
- **본문**
  - 주최자(organizer): 배치·행사 총괄 — CAD 수작업 고통
  - 참가업체(exhibitor): 도면을 못 읽어 개장일에 결과 첫 대면 — 시공 예측 니즈
  - 공사·장치업체(contractor): 리스트+엑셀 매칭, 견적 비교 부재
  - 홀매니저(ops): 규정 육안 검수 병목
  - 관람객(visitor): 등록·배지·현장 체크인
  - 일반 대중(public): 공개 홍보·플로어플랜 열람
  - +플랫폼 관리자·테넌트 관리자
- **도표 지시**: 페르소나 카드 6종(과업·Pain·기대 3행). 도식ID 없음.
- **REQ**: REQ-F-081(역할별 포털의 근거)
- **출처**: PLANNING §2

## S10 · To-Be 목표(정량)
- **섹션**: P1 사업이해
- **헤드라인**: "견적은 즉시, 배치는 수 분, 검수는 자동, 결과는 사진으로."
- **본문**
  - 견적: 수일 대기 → **즉시**(규칙엔진 2,250원/㎡ 자동 계산)
  - 배치: 수주 CAD 외주 → **수 분 3안 자동생성**
  - 규정 검수: 육안 → **제출 전 자동 플래깅**
  - 위치표시도: 수기 작도 → **좌표 클릭 자동 작도**
  - 시공 결과: 개장일 첫 대면 → **신청 시점 사진 예측**
- **도표 지시**: As-Is→To-Be 대비표(정량 개선 5행). 도식ID 없음(표).
- **REQ**: REQ-F-002, REQ-F-007, REQ-F-009, REQ-F-017, REQ-A-001
- **출처**: PLANNING §1-3

---

# P2. 추진전략 (S11~S15)

## S11 · 비전·포지셔닝
- **섹션**: P2 추진전략
- **헤드라인**: "도면과 표를 보여주는 전시테크가 아니라, 사진으로 컨펌하는 베뉴 운영 플랫폼."
- **본문**
  - 기존 전시테크는 도면·3D 뷰어 수준 → 우리는 **사진급 시공 예측**으로 의사결정
  - 단일 폐루프: 설계 자료가 곧 발주 근거 → 발주까지 한 흐름에서 종결
  - 데이터 주권: 온프레미스 Ollama 기본, 외부 AI는 승인 예외만
- **도표 지시**: 비전 슬로건 대형 타이포. 도식ID 없음.
- **REQ**: (포지셔닝 — 개별 REQ 없음)
- **출처**: PLANNING §1-2, strategy §0

## S12 · 3중 해자 전략
- **섹션**: P2 추진전략
- **헤드라인**: "셋 중 하나는 흉내낼 수 있어도, 셋의 결합은 재현 난이도가 높다."
- **본문**
  - 원A 나노바나나 시공 예측: image-to-image 구조보존·40초·S1~S7 [검증됨: G1 승인·워커 라이브]
  - 원B PostGIS 실측 공간데이터: 부스 폴리곤·트렌치 포인트·배선 LineString 단일 원천 [검증됨: M2~M5 매퍼 라이브]
  - 원C 공사 옥션 폐루프: AI 자료→응찰→낙찰→발주 자동전환 [구현 계획: Phase D]
- **도표 지시**: **도식① 3중 해자 벤다이어그램**(S04와 동일·상세 재강조). tech_advisory §1-4 ①.
- **REQ**: REQ-A-001·002, REQ-N-008·017, REQ-F-025·032
- **출처**: strategy §3-3, tech_advisory §0-1·§1-4 ①

## S13 · Win Theme 5선
- **섹션**: P2 추진전략
- **헤드라인**: "다섯 개의 차별화 메시지가 배점 다섯 곳을 정확히 겨눈다."
- **본문**
  - WT-1 "도면이 아니라 사진으로 컨펌한다" — 배점 20(AI 시각화 핵심)
  - WT-2 "수 분 내 3안, 제출 전 규정 자동검증" — 배점 20+15 교차
  - WT-3 "사진 수준 자료로 응찰하고 발주까지 끝낸다" — 배점 15(폐루프)
  - WT-4 "AI가 만든 것은 표시하고, 남의 데이터는 차단한다" — 배점 10(보안)
  - WT-5 "코드 배포 없이 데이터 온보딩만으로 새 전시관을 연다" — 배점 5(확장)
- **도표 지시**: Win Theme 5카드(각 카드에 배점 배지). 도식ID 없음.
- **REQ**: REQ-A-001, REQ-F-007·025, REQ-S-009·018, REQ-F-077
- **출처**: strategy §1

## S14 · 전시 생애주기 폐루프
- **섹션**: P2 추진전략
- **헤드라인**: "설계 → 시각화 → 발주 → 시공 → 운영 → 분석이 하나의 순환으로 닫힌다."
- **본문**
  - 판매·기획(M1) → 설계·시각화(M2~M5) → 발주·계약(M15·M6·M9) → 참가·관람(M10·M11) → 현장운영(M8·M13·M14) → 사후·경영(M16)
  - 각 단계 산출물이 다음 단계 입력 → 재입력·중복 작업 제거
  - 분석(M16)이 다음 행사 기획(M1)으로 환류
- **도표 지시**: 생애주기 폐루프 순환도(M모듈 매핑). 도식ID 없음(순환도).
- **REQ**: (생애주기 조망 — 상세 REQ는 P3에서 반영)
- **출처**: PLANNING §1-2-1

## S15 · 추진체계·수행조직
- **섹션**: P2 추진전략
- **헤드라인**: "거버넌스·아키텍트·코어·도메인·AI·QA·DevOps가 게이트로 맞물린다."
- **본문**
  - 거버넌스: 총괄 PM · PMO · 개발 PM
  - 아키텍트 풀: AA · SA · TA · DA · NA(5종 아키텍처 확정 완료)
  - 실행: 공통·코어(백엔드·프론트·DB) · 도메인(옥션·관람·CMS·BI·관리자) · AI·시각화 · QA · DevOps
  - 게이트: 선행 게이트(G1·G2) + Phase 게이트 QA 통과
- **도표 지시**: **추진체계도(조직도)** — 거버넌스+아키텍트+실행팀 계층. tech_advisory §1-4 말미(추가 표준 도식).
- **REQ**: REQ-N-004(품질 게이트)
- **출처**: 하네스 팀 구성, tech_advisory §5-1

---

# P3. 기술제안 (S16~S40, 25슬라이드 · 배점 35 · 최다 집중)

## P3-A. 모듈 조망

## S16 · 전체 모듈맵
- **섹션**: P3 기술제안
- **헤드라인**: "18개 모듈+공통 레이어를 한 장으로 조망 — P0 코어 4개가 심장이다."
- **본문**
  - P0 코어(강조): M2 플로어플랜·M3 부스설계·M4 유틸리티·M5 나노바나나
  - P1 도메인: M1 판매·M6 서류·M7 등록·M9 정산·M15 옥션·M10 관람·M12/M17 CMS·M16 BI·M18 관리자
  - P2 확장: M8 물류·M11 비즈매칭·M13 wayfinding·M14 현장 IoT
  - **공통/시스템관리 레이어(§5B) — 전 모듈 선행 기반** [검증됨: WISE 이식 Flyway V1~V9]: 공통코드·메뉴(F-073), 공통 업무모듈 일지·일정·쪽지·공지·검색(F-074), 회의록 STT·업무보고 통계 PDF(F-075), 통합 알림센터 WebSocket(F-076)
  - 멀티테넌시(§1A): tenant_id 격리 기반 [구현 계획]
  - 100대 기능 성숙도: 기구현 63·부분 18·신규 19(정량)
- **도표 지시**: **도식② 모듈맵(생애주기 6단계 × 우선순위 P0/P1/P2 매트릭스)** + 하단 공통 레이어 띠. tech_advisory §1-4 ②.
- **REQ**: REQ-F-073·074·075·076, 전 모듈 조망
- **출처**: rfp_analysis §2-1, tech_advisory §1-4 ②·§0

## P3-B. 나노바나나 시공 예측 — WT-1 (S17~S23, 7슬라이드 · 축소 금지)

## S17 · 나노바나나 개요
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "시공 전에 사진으로 의사결정한다 — 경쟁 전시테크가 못 하는 차별화."
- **본문**
  - 문제: 참가업체는 도면을 못 읽어 개장일에야 결과를 처음 본다(PLANNING §2)
  - 해법: image-to-image로 빈 부스(도면/실측)를 시공 후 사진으로 예측
  - 실증: Gemini 라이브(G1 소유자 승인 완료), `gemini-3.1-flash-image-preview` 워커 상주 [검증됨]
  - 효과: 조감도 외주(비용·시간) 대체, 신청 시점 의사결정
- **도표 지시**: 히어로 Before/After 실물(워터마크 표기). 도식ID 없음(히어로).
- **REQ**: REQ-A-001
- **출처**: strategy §1 WT-1, tech_advisory §0-1·§2 WT-1

## S18 · 표준 샷세트 S1~S7
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "정면·야간·통로·내부·Before/After·배선·홀전경 — 7컷을 평균 40초에."
- **본문**
  - S1 정면 부스 전경 / S2 야간 조명 연출(조도 배치안 반영) / S3 통로 시점 / S4 부스 내부 / S5 Before/After / S6 배선 오버레이 / S7 홀 전경
  - 자동생성은 비용·품질 제어 위해 **S1·S7 한정**, 나머지는 온디맨드 [구현 계획: 샷세트 파이프라인]
  - 모든 컷에 워터마크·고지 항상 포함
- **도표 지시**: 샷세트 7컷 그리드(각 컷 워터마크 배지). 도식ID 없음(그리드).
- **REQ**: REQ-A-001, REQ-F-019(조명 조도 배치안)
- **출처**: tech_advisory §2 WT-1, PLANNING §6

## S19 · image-to-image 구조보존
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "골격·치수·통로·카메라 앵글은 잠그고, 스타일·재질만 사실화한다."
- **본문**
  - 참조 이미지 `inlineData` + 구조화 프롬프트 사전(BOOTH_TYPES·BOOTH_STYLES·FIXTURE_LAYERS)
  - **보존(잠금)**: 부스 골격·치수·통로·카메라 앵글 → 왜곡·과장 방지
  - **교체(사실화)**: 스타일·재질·마감만 → 사진 리얼리티
  - 검증 패턴: ReRoomAI image-to-image 보존/교체 분리 이식(reroomai-source.md)
- **도표 지시**: 보존/교체 파라미터 도식(잠금 항목 vs 교체 항목 2열). 도식ID 없음.
- **REQ**: REQ-A-002, REQ-A-003
- **출처**: tech_advisory §2 WT-1, docs/analysis/reroomai-source.md

## S20 · AI 파이프라인 아키텍처
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "생성은 전면 비동기 — 사용자는 대기하지 않고, 완료는 WebSocket으로 밀어준다."
- **본문**
  - 흐름: 사용자 요청 → Spring RenderJob 생성·쿼터 확인 → Redis 큐(leftPush) → Python 워커(BLPOP) → Gemini image-to-image → 워터마크 후처리·S6 로컬 PIL 래스터 → 오브젝트 스토리지 → pub/sub → 백엔드 relay → WebSocket `/topic/render/{jobId}` → 프론트 완료 푸시
  - degraded 분기: G1 미승인/Gemini 장애 시 워커 목(mock) 응답·구조·워터마크 유지(REQ-N-005)
  - 성공 시에만 쿼터 차감, `GEMINI_API_KEY`는 워커 env only
- **도표 지시**: **도식③ 나노바나나 파이프라인 플로우(8박스 좌→우)**. tech_advisory §1-4 ③.
- **REQ**: REQ-A-007, REQ-N-006
- **출처**: tech_advisory §1-4 ③·§2 WT-1

## S21 · Before/After·배선 오버레이
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "드래그 한 번으로 빈 부스와 시공 후를 비교하고, 배선을 색으로 겹쳐 본다."
- **본문**
  - Before/After: 좌우 분할 카드 + 중앙 드래그 핸들, ARIA slider·키보드 좌우 조작(WCAG AA)
  - S6 배선 오버레이: Gemini 미경유, 백엔드/워커 로컬 PIL **결정적 래스터 합성**(좌표 정확성·비용/지연 제외)
  - 색상 규약: 전기=적색, 네트워크=청색, 급배수=녹색
- **도표 지시**: **도식④ Before/After 슬라이더**(좌 "Before: 빈 부스", 우 "After: 시공 후 예상(AI 생성·워터마크)", 하단 워터마크 배지). tech_advisory §1-4 ④.
- **REQ**: REQ-A-004, REQ-A-005
- **출처**: tech_advisory §1-4 ④·§2 WT-1

## S22 · RenderJob 방어·품질
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "다층 방어로 실패를 흡수하고, 성공했을 때만 쿼터를 쓴다."
- **본문**
  - 크기가드·mimeType 자동감지·SAFETY 분기·친화적 한글 에러
  - 간판 한글 렌더 실패 시 **간판영역 후처리 합성**(리스크 R-5 방어)
  - 대량 생성 제어: 자동생성 S1·S7 한정 + 동일 스키마해시 캐시 + 행사별 쿼터(성공 시만 차감)
- **도표 지시**: RenderJob 상태 시퀀스(방어 계층 표시). 도식ID 없음(시퀀스).
- **REQ**: REQ-A-006, REQ-A-008, REQ-N-007
- **출처**: tech_advisory §2 WT-1, strategy §4 R-5

## S23 · AI 신뢰 원칙
- **섹션**: P3 기술제안(WT-1)
- **헤드라인**: "결정적 알고리즘이 중심, LLM은 보조, 최종 확정은 사람 — 워터마크는 불변."
- **본문**
  - 3층 신뢰: 결정적 알고리즘(제약 솔버·PostGIS) 중심 + LLM 보조 + 사람 최종 확정
  - 워터마크 항상 포함(`watermarkRequired:true`), 계약·심사 서류 사용 금지 고지 제거 불가
  - AI 답변은 RAG 근거·인용·환각 차단(abstain)으로 오판 리스크 차단(리스크 R-6 방어)
- **도표 지시**: AI 3층 신뢰 구조 도식(결정론→LLM→사람). 도식ID 없음.
- **REQ**: REQ-S-009, REQ-A-017
- **출처**: tech_advisory §2 WT-2·WT-4, strategy §4 R-6

## P3-C. 배치·설계·배선 AI 자동화 — WT-2 (S24~S28, 5슬라이드)

## S24 · 플로어플랜 스튜디오(M2)
- **섹션**: P3 기술제안(WT-2)
- **헤드라인**: "제약 솔버가 상이한 목표로 정확히 3안 — 사람이 선택·병합·확정한다."
- **본문**
  - 3안 자동생성: **결정적 제약 솔버**(비-LLM)가 통로 효율/프리미엄 부스/균형 등 목표별 생성, LLM은 조건해석만(REQ-A-009)
  - 선택/병합 편집 + 최종안 버전기록·부스좌표 확정·초대링크(REQ-F-008·010)
  - M2 매퍼(PostGIS 공간 SQL) [검증됨], 3안 생성·병합·집계 API [구현 계획]
- **도표 지시**: **도식⑤ 3안 비교 화면**(3열 카드·각 카드 최적화 목표·미니 배치도·지표, 하단 액션바 선택/병합/재검증). tech_advisory §1-4 ⑤.
- **REQ**: REQ-F-007·008·010, REQ-A-009
- **출처**: tech_advisory §1-4 ⑤·§2 WT-2

## S25 · 배치 규정 자동검증
- **섹션**: P3 기술제안(WT-2)
- **헤드라인**: "피난통로·바닥하중·비상구를 제출 전에 자동으로 플래깅한다."
- **본문**
  - 룰엔진(`compliance-v*.json` 버전 데이터) + PostGIS 공간 판정: 통로폭 `ST_Distance/ST_Buffer`, 비상구 `ST_Intersects`, 홀 이탈 `ST_Contains`, 바닥하중 홀별
  - 병합 후 재검증 필수, 위반 시 `COMPLIANCE_BLOCKED`(422)
  - 원칙: 규정검증=플래깅까지, 구조안전 판정은 구조기술사/킨텍스(Non-Goal 명시, 리스크 R-6)
- **도표 지시**: 규정 위반 플래그 대시보드(위반 항목·홀별 하중·비상구 교차 목록). 도식ID 없음(대시보드).
- **REQ**: REQ-F-009, REQ-A-010
- **출처**: tech_advisory §2 WT-2, strategy §4 R-6

## S26 · 부스 설계 스튜디오(M3)
- **섹션**: P3 기술제안(WT-2)
- **헤드라인**: "조립부스 3D 프리뷰·독립부스 3안, 높이·리깅·방염·이격은 사전 검증."
- **본문**
  - 조립부스 옵션·3D 프리뷰(REQ-F-011), 독립부스 설계 3안·선택/병합·버전(REQ-F-012)
  - 설계 규정 사전검증: 높이 5m·리깅 6.5~8.5m·방염·이격(REQ-F-013)
  - 도면 업로드 비전 추출·검증(REQ-F-014·A-020)
- **도표 지시**: 설계 3안 + 규정 체크리스트(높이·리깅·방염·이격). 도식ID 없음.
- **REQ**: REQ-F-011·012·013·014, REQ-A-020
- **출처**: tech_advisory §2 WT-2, PLANNING §M3

## S27 · 유틸리티 설계(M4)
- **섹션**: P3 기술제안(WT-2)
- **헤드라인**: "기기→kW→분전반을 자동 산출하고, 트렌치→분전반 최단 배선을 PostGIS가 그린다."
- **본문**
  - 전기 용량·분전반 자동산출: 기기목록→kW 합산→분전반 산출(REQ-F-015)
  - 배선 경로: 최근접 트렌치 KNN(`geom <-> point`)→최단 배선 LineString(`ST_Length`, 통로 횡단 최소 휴리스틱)(REQ-F-016)
  - 실측 근거: 홀별 평면도 JPG 15장 + CAD "평면,트렌치.dwg" 확보 [검증됨], 미확보 구간은 "가정 좌표(실측 대기)" 라벨(리스크 R-2)
- **도표 지시**: **도식⑥ PostGIS 배선 오버레이**(부스 폴리곤·트렌치 포인트◆·분전반▣·색상별 LineString, 전기 적/네트 청/급배수 녹). tech_advisory §1-4 ⑥.
- **REQ**: REQ-F-015, REQ-F-016
- **출처**: tech_advisory §1-4 ⑥·§2 WT-2, strategy §4 R-2

## S28 · 위치표시도·유틸리티 신청
- **섹션**: P3 기술제안(WT-2)
- **헤드라인**: "좌표 클릭으로 위치표시도를 자동 작도하고, 신청·견적은 D-25 역산으로 챙긴다."
- **본문**
  - 위치표시도 자동생성: 좌표 클릭 자동 작도, 수기 작도 폐지(REQ-F-017)
  - 네트워크·급배수·압축공기 신청 + 마감 리마인더(D-25 역산)(REQ-F-018)
  - 자동 견적 연동
- **도표 지시**: 위치표시도 자동생성 예시(좌표 클릭 → 작도 결과). 도식ID 없음.
- **REQ**: REQ-F-017, REQ-F-018
- **출처**: tech_advisory §2 WT-2, PLANNING §M4

## P3-D. 공사 옥션 폐루프 — WT-3 (S29~S32, 4슬라이드)

## S29 · 옥션 개요·폐루프
- **섹션**: P3 기술제안(WT-3)
- **헤드라인**: "AI가 만든 설계 자료가 곧 응찰 근거이고, 한 흐름에서 발주까지 끝난다."
- **본문**
  - AI 자료 패키지(M2 배치+M3 설계+M4 배선/BOQ+M5 시공예측 이미지)가 응찰 근거(`attached_refs`)
  - 옥션 유형 설정형(REVERSE 역경매/RFQ/FIXED), 물량서(BOQ) 자동산출(REQ-F-031)
  - 데이터모델: `TB_AUCTION 1─N TB_QUOTATION ─ TB_AWARD` [구현 계획: Phase D-M15]
- **도표 지시**: **도식⑦ 옥션 폐루프 흐름도**(AI 자료 패키지→옥션 개설→등록 게이트→견적 제출→실시간 순위→종합평가 낙찰→발주 자동전환). tech_advisory §1-4 ⑦.
- **REQ**: REQ-F-025·026, REQ-F-031
- **출처**: tech_advisory §1-4 ⑦·§2 WT-3

## S30 · 역경매·실시간 순위
- **섹션**: P3 기술제안(WT-3)
- **헤드라인**: "라운드·마감·최저가·내 위치를 실시간으로, 자동마감까지."
- **본문**
  - 실시간 순위 = Redis 정렬셋 + WebSocket `/topic/auction/{auctionId}` 델타 푸시
  - 라운드 마감 = Redis 타이머(자동마감)
  - 익명 옵션·내 위치 표시(REQ-F-027)
  - 스캐폴드 4계층·큐·WS 패턴 확정으로 실현성 입증 [구현 계획]
- **도표 지시**: 실시간 순위 보드 목업(업체 순위·최저가·잔여 시간). 도식ID 없음(목업).
- **REQ**: REQ-F-027
- **출처**: tech_advisory §2 WT-3

## S31 · 종합평가 낙찰
- **섹션**: P3 기술제안(WT-3)
- **헤드라인**: "가격만이 아니라 평판·납기까지 가중 스코어로 투명하게 낙찰한다."
- **본문**
  - 가중 스코어: 가격+평판+납기(`weight` jsonb, 옥션별 설정형, 예: 가격 0.6/평판 0.25/납기 0.15)(REQ-F-028)
  - 항목별 비교표·선정 사유 제시
  - 등록업체 AI 매칭 추천(REQ-F-030), 물량서(BOQ) 근거(REQ-F-031)
- **도표 지시**: **도식⑧ 종합평가 스코어 비교표**(업체 행 × 평가항목 열 + 가중 종합점수 + 낙찰 하이라이트). tech_advisory §1-4 ⑧.
- **REQ**: REQ-F-028, REQ-F-030, REQ-F-031
- **출처**: tech_advisory §1-4 ⑧·§2 WT-3

## S32 · 등록 게이트·발주 전환
- **섹션**: P3 기술제안(WT-3)
- **헤드라인**: "미등록 업체는 응찰 자체가 차단(403)되고, 낙찰은 계약·발주로 자동 전환된다."
- **본문**
  - 등록 게이트: 미등록 업체 응찰 원천 차단 `NOT_REGISTERED_COMPANY`(403), M7이 `TB_COMPANY.kintex_registered` 검증 권위 → 킨텍스 "등록업체 시공 필수" 규정을 시스템이 강제(REQ-S-007)
  - 발주 전환: Award → 계약/발주 자동전환(M6·M9 연동, 이벤트 디커플·순환 금지)(REQ-F-032)
- **도표 지시**: 등록 검증 시퀀스 + 발주 전환 흐름. 도식ID 없음(시퀀스).
- **REQ**: REQ-F-029, REQ-F-032, REQ-S-007
- **출처**: tech_advisory §2 WT-3·§4 REQ-S-007

## P3-E. 판매·서류·워크플로 (S33~S34)

## S33 · 판매·홀배정·견적(M1)
- **섹션**: P3 기술제안
- **헤드라인**: "가용성은 실시간 캘린더로, 견적은 규칙엔진으로 즉시, 신청은 웹폼→HWP로."
- **본문**
  - 홀/반홀 가용성 실시간 캘린더(REQ-F-001)
  - 규칙엔진 자동 견적(2,250원/㎡, 요율 공식본 [협의: C4])(REQ-F-002)
  - 배정신청 웹폼→HWP 자동생성(REQ-F-003), 부스 판매 인벤토리(REQ-F-004), 온라인 셀프 선택·판매(REQ-F-005)
  - 임대계약 전자서명(선택, REQ-F-006)
- **도표 지시**: 견적 규칙엔진 계산 흐름(면적×요율→견적). 도식ID 없음.
- **REQ**: REQ-F-001·002·003·004·005·006
- **출처**: PLANNING §M1, rfp_analysis(C4 요율)

## S34 · 서류·마일스톤(M6)
- **섹션**: P3 기술제안
- **헤드라인**: "D-150/30/25/7을 역산해 알리고, 웹폼은 HWP/PDF로, 검수는 AI가 돕는다."
- **본문**
  - 마일스톤 자동생성·역산 알림(REQ-F-020), 신고서류 웹폼→HWP/PDF 자동생성 7종(REQ-F-021)
  - 서류 버전·전자결재 워크플로(REQ-F-023), OCR 계약·납품서 자동등록(REQ-F-024·A-020)
  - AI 서류 검수(누락·불일치)(REQ-A-011), 규정 자연어 챗봇(근거·인용)(REQ-A-012)
  - kxwp 제출 릴레이: 웹폼→HWP/PDF까지 API 무관하게 완결, 릴레이 단계만 킨텍스 IT 협의 [협의: C2, 리스크 R-3](REQ-F-022)
- **도표 지시**: 마일스톤 역산 타임라인(D-데이별 서류·알림). 도식ID 없음(타임라인).
- **REQ**: REQ-F-020·021·022·023·024, REQ-A-011·012
- **출처**: tech_advisory §2, strategy §4 R-3

## P3-F. 관람·참가 (S35~S36)

## S35 · 관람객 등록·배지·리드(M10)
- **섹션**: P3 기술제안
- **헤드라인**: "사전등록→모바일 배지→현장 체크인→리드까지, 오프라인에서도 끊기지 않는다."
- **본문**
  - 온라인 사전등록(유형별·중복검증)(REQ-F-037), 모바일 배지/QR 발급(REQ-F-038)
  - 현장 QR 체크인·즉석 인쇄·집계(REQ-F-039), **오프라인 체크인 폴백**(REQ-F-040)
  - 참가업체 리드캡처(REQ-F-041), AI 리드 스코어링·분류(REQ-F-042·A-018), 세그먼트 EDM(REQ-F-043)
  - 티켓발권·AI폼빌더·스마트배지(선택, REQ-F-044)
- **도표 지시**: 등록→체크인→리드 여정도. 도식ID 없음(여정도).
- **REQ**: REQ-F-037·038·039·040·041·042·043·044, REQ-A-018
- **출처**: PLANNING §M10, tech_advisory §7

## S36 · 비즈매칭·마케팅·공개사이트(M11·M12·M17)
- **섹션**: P3 기술제안
- **헤드라인**: "AI가 매칭을 추천하고, 다국어 공개사이트·마이크로사이트가 SEO로 관람객을 모은다."
- **본문**
  - AI 비즈매칭 추천(REQ-F-045·A-018), 미팅 슬롯·성과 리포트(REQ-F-046), 이벤트 모바일앱·세션·채팅·설문(REQ-F-047)
  - 공개 홍보 사이트(SEO·다국어)(REQ-F-048), 공개 인터랙티브 플로어플랜(REQ-F-049), 세그먼트 EDM·캠페인 자동화(REQ-F-050), 스폰서십 패키지·대시보드(REQ-F-051)
  - CMS 게시 워크플로·버전(REQ-F-067), 마이크로사이트(REQ-F-068), 다국어 콘텐츠·hreflang(REQ-F-069)
  - AI 카피·이미지 초안·다국어 번역(REQ-A-015)
- **도표 지시**: 공개사이트 + 마이크로사이트 목업. 도식ID 없음(목업).
- **REQ**: REQ-F-045·046·047·048·049·050·051·067·068·069, REQ-A-015·018
- **출처**: PLANNING §M11·M12·M17, tech_advisory §1-2

## P3-G. 정산·경영분석·현장 (S37~S40)

## S37 · 정산·결제(M9)
- **섹션**: P3 기술제안
- **헤드라인**: "납부는 스케줄로, 결제는 PG로, 예치금은 실사용까지 투명하게 정산한다."
- **본문**
  - 납부 스케줄 자동생성·알림(REQ-F-056), 유틸리티·부대 PG 결제(REQ-F-057)
  - 예치금 실사용 정산 투명화(REQ-F-058), 세금계산서·옥션 수수료 정산(REQ-F-059)
  - 환불·취소 규정 자동(선택, REQ-F-060)
- **도표 지시**: 정산 흐름도(납부→결제→예치금 정산→세금계산서). 도식ID 없음.
- **REQ**: REQ-F-056·057·058·059·060
- **출처**: PLANNING §M9

## S38 · 경영분석 BI(M16)-1
- **섹션**: P3 기술제안
- **헤드라인**: "가동률·매출구성·행사별 P&L·㎡당 수익을 운영사 관점 한 화면에."
- **본문**
  - 홀·기간별 가동률 대시보드(REQ-F-061), 매출 구성·행사별 P&L(REQ-F-062)
  - 전시장 ROI·RevPAD·㎡당 수익(REQ-F-063)
  - 데이터: BI 집계·조회는 읽기복제 오프로드(운영 프라이머리 보호)
- **도표 지시**: BI 대시보드 목업(Recharts — 가동률·매출구성·P&L·RevPAD). 도식ID 없음(목업).
- **REQ**: REQ-F-061·062·063
- **출처**: PLANNING §M16, tech_advisory §3 REQ-N-010

## S39 · 경영분석 BI(M16)-2
- **섹션**: P3 기술제안
- **헤드라인**: "리텐션·LTV·참가사 ROI를 권한 격리로, AI가 수요를 예측하고 KPI를 브리핑한다."
- **본문**
  - 참가사 리텐션·LTV 코호트(REQ-F-064), 참가업체 관점 ROI(권한 격리)(REQ-F-065), 경영진 KPI 대시보드·드릴다운(REQ-F-066)
  - AI 수요예측·수율/동적가격(REQ-A-013), AI KPI 브리핑·자연어 조회 Text-to-SQL(REQ-A-014)
  - BI 마트는 개인 식별자 비반입(집계만), 참가업체는 자사 데이터만(격리)
- **도표 지시**: KPI 드릴다운 + AI 인사이트 카드. 도식ID 없음.
- **REQ**: REQ-F-064·065·066, REQ-A-013·014
- **출처**: PLANNING §M16, tech_advisory §4 REQ-S-013

## S40 · 현장운영·물류(M8·M13·M14)
- **섹션**: P3 기술제안
- **헤드라인**: "반입/반출 슬롯·통행증 QR·wayfinding·이상탐지 — 선택 기능은 시설 협의 전제로."
- **본문**
  - 반입/반출 슬롯 예약(REQ-F-033), 통행증 QR·중량물 우선(REQ-F-034), 지게차·부대장비 렌탈(REQ-F-035), 철거 대기열 시뮬레이션(REQ-F-036)
  - 실내 wayfinding·POI·경로(REQ-F-052), 실시간 혼잡 모니터·예측(REQ-F-053·A-019), 홀 전력부하·주차 점유(REQ-F-054), 안전 위반·이상탐지(REQ-F-055·A-019)
  - 사이니지 콘텐츠 배포(REQ-F-070)
  - **[협의]**: wayfinding 비콘·IoT·사이니지 HW는 킨텍스 시설 인프라 협의 전제(C7, 리스크 R-7). 미협의 시에도 코어 가치(WT-1~4)는 HW 독립
- **도표 지시**: 현장 운영 상황판(혼잡·전력·안전·물류 슬롯). 도식ID 없음(상황판).
- **REQ**: REQ-F-033·034·035·036·052·053·054·055·070, REQ-A-019
- **출처**: PLANNING §M8·M13·M14, strategy §4 R-7

---

# P4. 아키텍처·기술스택 (S41~S45, 배점 10)

## S41 · 전체 아키텍처
- **섹션**: P4 아키텍처
- **헤드라인**: "확정 스택으로 이미 기동 중 — 도상이 아니라 동작하는 아키텍처다."
- **본문**
  - 4-Tier + 사이드카: React 18/19(Vite·TS) 역할별 분리 → SSO(JWT+2FA)·이중 RBAC → 공유 Spring Boot 3.2.5(Java 17)+MyBatis 모듈러 모놀리스 → PostgreSQL+PostGIS(+읽기복제)/Redis/오브젝트 스토리지
  - 사이드카: 나노바나나 Python 워커(이미지) + Claude AI(AiTextRouter·Ollama 폴백)(텍스트)
  - 실증: 인프라·CI/CD·인증·PostGIS 코어·나노바나나 [검증됨]
- **도표 지시**: **도식⑨ 시스템 아키텍처 다이어그램(6밴드 계층 + 우측 외부 게이트 컬럼)**. tech_advisory §1-4 ⑨.
- **REQ**: REQ-A-016, REQ-F-081(역할별 프론트)
- **출처**: tech_advisory §1-1·§1-4 ⑨·§0-1

## S42 · 단일 공간 데이터 원천
- **섹션**: P4 아키텍처
- **헤드라인**: "부스 폴리곤·트렌치 포인트·배선 LineString은 하나의 원천에서만 산다."
- **본문**
  - M2 폴리곤·M4 배선 매퍼가 권위, 소비 모듈은 조회만·중복 저장 금지(REQ-N-017)
  - PostGIS 단일 공간 원천(SRID 0 홀 로컬 미터), 전 `geom` GiST 인덱스 실시간(REQ-N-008)
  - 검증 게이트: ArchUnit·계약 검수로 중복 저장 방지
- **도표 지시**: 공간 데이터 원천 모델(폴리곤·포인트·LineString 단일 원천). 도식ID 없음(개념 모델).
- **REQ**: REQ-N-008, REQ-N-017
- **출처**: tech_advisory §3(N-008·017), data.md §0-2

## S43 · 확장성·비동기
- **섹션**: P4 아키텍처
- **헤드라인**: "워커는 큐 깊이로 독립 확장하고, BI·공개는 읽기복제로 오프로드한다."
- **본문**
  - 워커 독립 스케일: 나노바나나·서류·EDM 워커 큐 깊이 기반 증감(REQ-N-009)
  - 읽기복제 오프로드: BI 집계·공개 조회·플로어플랜 열람 읽기복제 라우팅(REQ-N-010)
  - 공개영역 CDN·요청률 상한(REQ-N-019), 워커 장애 재큐(멱등 Job)(REQ-N-011)
  - 역할별 프론트 번들 분리(REQ-F-081, 방식 확정 대기 [구현 계획])
- **도표 지시**: 배포 토폴로지도(프론트·백엔드 2인스턴스·워커 N·읽기복제·CDN). 도식ID 없음(토폴로지).
- **REQ**: REQ-N-009·010·011·019, REQ-F-081
- **출처**: tech_advisory §3, system.md §3-1

## S44 · AI 플랫폼 라우팅
- **섹션**: P4 아키텍처
- **헤드라인**: "Claude 기본, 장애·폐쇄망이면 Ollama 폴백 — LLM 직접호출은 금지, 중앙 경유만."
- **본문**
  - `AiTextRouter`: Claude 기본(`api.anthropic.com` 승인 예외) → Ollama 폴백(REQ-A-016)
  - 나노바나나는 큐/콜백만(백엔드는 이미지 미취급), degraded 시 목 응답(REQ-A-007, N-005)
  - AiTextRouter/AiConfig는 UIWS 패턴 [구현 계획: 착수 대기]
- **도표 지시**: AI 라우터 폴백 흐름(Claude→실패→Ollama). 도식ID 없음.
- **REQ**: REQ-A-007, REQ-A-016
- **출처**: tech_advisory §1-2 AI(텍스트)·§6

## S45 · 연동·마스터데이터
- **섹션**: P4 아키텍처
- **헤드라인**: "외부는 게이트웨이로, 룰셋·요율은 버전 데이터로 무중단 개정한다."
- **본문**
  - API·웹훅·CRM/ERP 연동 게이트웨이(선택, REQ-F-080)
  - 룰셋·마스터데이터 버전관리(요율·규정 룰셋), M18 백오피스·감사 기록으로 무중단 개정(REQ-F-072)
  - 외부 게이트: Gemini(워커존)·Claude(백엔드)·PG 결제·kxwp 릴레이·등록업체 DB 739
- **도표 지시**: 연동 인터페이스 맵(내부↔외부 게이트웨이). 도식ID 없음.
- **REQ**: REQ-F-072, REQ-F-080
- **출처**: tech_advisory §1-2, §6-3

---

# P5. 보안·개인정보 (S46~S50, 배점 10 · WT-4)

## S46 · 보안 개요·불변 원칙
- **섹션**: P5 보안·개인정보
- **헤드라인**: "AI가 만든 것은 표시하고, 남의 데이터는 차단한다 — REQ-S 20항목 전량 커버."
- **본문**
  - 불변 원칙 4대: 외부 API 격리 · 워터마크 항상 · PII 격리 · 테넌트 fail-closed
  - 보안 성숙도: 인증·워터마크·admin env는 [검증됨](설계가 아니라 동작하는 통제)
  - REQ-S 20항목 커버리지 100%
- **도표 지시**: REQ-S 20항목 커버리지 표(항목·충족방안·상태). 도식ID 없음(표).
- **REQ**: REQ-S 전량(001~020)
- **출처**: tech_advisory §4·§0-1

## S47 · 보안영역 분리
- **섹션**: P5 보안·개인정보
- **헤드라인**: "공개 DMZ는 쓰기 권한이 없고, 데이터존은 아웃바운드가 0이다."
- **본문**
  - 존 계층: 인터넷→엣지(CDN·WAF)→DMZ(공개, 쓰기 없음)→내부망(인증)→AI 워커존(egress 제한)→데이터존(최내곽, 아웃바운드 전면 차단)
  - 철칙: DMZ→데이터존 직접 접근 절대 금지, 데이터존 아웃바운드 0(유출 경로 제거)
  - egress 화이트리스트: 승인 4목적지만(Claude·Gemini·PG·SMTP), 그 외 DROP
  - fail-closed 다층 테넌트 격리와 정합(REQ-S-018)
- **도표 지시**: **도식⑩ 보안영역 분리도(존 다이어그램 + 관리존 + egress 컬럼)**. tech_advisory §1-4 ⑩.
- **REQ**: REQ-S-020, REQ-S-018, REQ-N-018
- **출처**: tech_advisory §1-4 ⑩·§4, network.md §2

## S48 · 인증·접근통제
- **섹션**: P5 보안·개인정보
- **헤드라인**: "JWT+2FA는 이미 라이브, admin 비번은 env로 재시드, RBAC는 3중이다."
- **본문**
  - JWT(HS256)+TOTP 2FA(RFC6238)+로그인 실패 잠금 [검증됨: Flyway V7/V8](REQ-S-005)
  - admin 비번 env 재시드(AES-256-GCM, admin123 금지) [검증됨: env 시더](REQ-S-004)
  - 행사 RBAC 3중(테넌트 격리 ⊃ 행사 RBAC, 열람/편집 게이트)(REQ-S-006), admin/internal 엔드포인트 게이트(REQ-S-008)
  - RBAC·감사·시스템설정 백오피스(REQ-F-071)
  - 미등록 업체 차단(403)과 연계(REQ-S-007)
- **도표 지시**: 인증 흐름 + RBAC 3중 구조. 도식ID 없음.
- **REQ**: REQ-S-004·005·006·007·008, REQ-F-071
- **출처**: tech_advisory §4·§0-1(라이브)

## S49 · AI·이미지 보안
- **섹션**: P5 보안·개인정보
- **헤드라인**: "생성 이미지는 워터마크·금지 고지 불변, 외부 API 키는 워커 env에만 산다."
- **본문**
  - 워터마크 항상: M5 응답 `watermarkRequired:true`+text+notice(계약·심사 서류 금지), 제거 불가 [검증됨](REQ-S-009)
  - 외부 API 정책: Ollama 기본 + Claude/Gemini만 승인 예외, egress 그 외 DROP(REQ-S-001)
  - `GEMINI_API_KEY` 워커 env only(백엔드 미취급, 워커존 단일 egress)(REQ-S-002)
  - RAG 근거·인용·환각 차단(abstain)(REQ-A-017)
- **도표 지시**: 워터마크 실물 + 외부 API 격리(워커존 단일 egress). 도식ID 없음.
- **REQ**: REQ-S-001·002·009, REQ-A-017
- **출처**: tech_advisory §4·§2 WT-4

## S50 · 개인정보·감사·안전코딩
- **섹션**: P5 보안·개인정보
- **헤드라인**: "PII는 동의·마스킹·암호화·응답 제외, 민감 액션은 전수 감사, 코드는 안전하게."
- **본문**
  - PII: 동의 분리(privacy/marketing/share)·최소수집·`*_enc` AES-256-GCM·응답 완전 제외·보존/파기(REQ-S-013)
  - 자격증명·키 완전 제외(응답/로그/커밋 마스킹)(REQ-S-003), 스택트레이스 미노출(REQ-S-010), DataAccessException 요약 매핑(REQ-S-011)
  - 민감 액션 감사 전수(`TB_AUDIT_LOG` tenant_id 포함, `@Audited` AOP)(REQ-S-012)
  - 안전코딩: 입력 검증(REQ-S-014)·XSS/CSP(REQ-S-015)·인젝션 차단 MyBatis `#{}`(REQ-S-016)·IDOR/CSRF/JWT 회전(REQ-S-017)
  - 관측성: 로그·메트릭·트레이스에 PII/스택트레이스 미기록(REQ-N-018)
- **도표 지시**: PII 마스킹 예시 + 감사로그 표. 도식ID 없음.
- **REQ**: REQ-S-003·010·011·012·013·014·015·016·017, REQ-N-018
- **출처**: tech_advisory §4, data.md §5

---

# P6. 비기능 (S51~S54, 배점 8)

## S51 · 성능·가용성 SLA
- **섹션**: P6 비기능
- **헤드라인**: "코어 SLO 99.5%(성수기 99.9% 지향), 무중단 롤링·PITR·degraded로 버틴다."
- **본문**
  - 코어 SLO 99.5%(성수기 99.9% 지향), 무상태 백엔드+Redis 외부화(REQ-N-001)
  - 백엔드 2인스턴스·헬스체크 LB·롤링 무중단(REQ-N-002), PG 스탠바이 복제·자동 failover·PITR(REQ-N-003)
  - degraded 모드: Gemini 장애=목 응답, Claude 장애=Ollama 폴백, PG 복제지연=프라이머리 폴백(REQ-N-005)
  - 워커 장애 재큐(멱등)(REQ-N-011)
- **도표 지시**: SLA 수치표 + HA 구성도(프론트·백엔드·Redis·PG·워커 다중화). 도식ID 없음(표+구성도).
- **REQ**: REQ-N-001·002·003·005·011
- **출처**: tech_advisory §3·§6-2, system.md §3-2

## S52 · 나노바나나 성능
- **섹션**: P6 비기능
- **헤드라인**: "단건 평균 40초, 1024px 전처리·자동생성 한정·캐시·쿼터로 대량을 제어한다."
- **본문**
  - 단건 평균 ≤40s, 전면 비동기(WS 완료 푸시)(REQ-N-006)
  - 전처리: 클라 Canvas 1024px 다운스케일 + JPEG 0.85
  - 대량 제어: 자동생성 S1·S7 한정 + 동일 스키마해시 캐시 + 행사별 쿼터(성공 시만 차감)(REQ-N-007)
- **도표 지시**: 렌더 성능 지표 카드(40초·1024px·캐시 히트·쿼터). 도식ID 없음.
- **REQ**: REQ-N-006, REQ-N-007
- **출처**: tech_advisory §3, system.md §3-3

## S53 · 접근성·다국어·테마·반응형
- **섹션**: P6 비기능
- **헤드라인**: "WCAG 2.1 AA+KWCAG 2.2, 한/영/중/일, 라이트/다크, 데스크톱/모바일 전부."
- **본문**
  - 접근성: WCAG 2.1 AA + 공공 KWCAG 2.2 병행(REQ-N-012), 캔버스/맵 비시각 대안(데이터 테이블·키보드 부스 선택)(REQ-N-013)
  - 다국어: i18n 외부화(한 기본+영/중/일)·hreflang·로케일 포맷(REQ-N-014)
  - 테마: 라이트/다크 CSS 토큰 2벌·prefers-color-scheme(REQ-N-015)
  - 반응형: 데스크톱=설계/에디터, 모바일=현장/조회/승인(REQ-N-016)
  - [구현 계획: 전면 스윕 대기]
- **도표 지시**: 접근성·다국어 매트릭스. 도식ID 없음(매트릭스).
- **REQ**: REQ-N-012·013·014·015·016, REQ-F-069(다국어 정합)
- **출처**: tech_advisory §3, PLANNING §8

## S54 · 관측성·데이터
- **섹션**: P6 비기능
- **헤드라인**: "로그·메트릭·트레이스에 PII·스택트레이스는 남기지 않고, BI는 배치 ETL로 정합한다."
- **본문**
  - 관측성: 로그·메트릭·트레이스 관리존 수집, 자격증명·PII·스택트레이스 미기록(`include-stacktrace: never`)(REQ-N-018)
  - BI 데이터마트: 스타 스키마(FACT/DIM) 야간 배치 ETL 또는 읽기복제 적재, KpiSnapshot(원천-집계 정합 오차 0)(REQ-N-021)
  - 공개영역 CDN·요청률 상한과 정합(REQ-N-019)
- **도표 지시**: 관측성 파이프라인(수집→저장→대시보드). 도식ID 없음.
- **REQ**: REQ-N-018, REQ-N-021, REQ-N-019
- **출처**: tech_advisory §3, data.md §6, tech.md §5

---

# P7. 멀티테넌시·확장 (S55~S57, 배점 5 · WT-5)

## S55 · 멀티테넌트 SaaS 비전
- **섹션**: P7 멀티테넌시·확장
- **헤드라인**: "KINTEX #1에서 검증하고, COEX #2로 확장하며, 제3전시장을 표준으로 맞는다."
- **본문**
  - KINTEX=기준 테넌트 #1, COEX=테넌트 #2(온보딩 대상)
  - 제3전시장(2028, 178,000㎡) 확장 + 국내 전시산업 표준 플랫폼화
  - 개발 부담 최소화: 멀티테넌시=격리 레이어만 추가, 기능 로직 불변(리스크 R-8)
- **도표 지시**: 테넌트 확장 로드맵(KINTEX→COEX→제3전시장→타 전시관). 도식ID 없음(로드맵).
- **REQ**: (비전 — 상세 REQ는 S56·S57)
- **출처**: strategy §1 WT-5·§4 R-8, PLANNING §1A

## S56 · 테넌트 격리 아키텍처
- **섹션**: P7 멀티테넌시·확장
- **헤드라인**: "한 층이라도 불일치하면 차단 — 컨텍스트→서비스→MyBatis→PostGIS 4층 방어."
- **본문**
  - 격리 축: `tenant_id`(전시관) ⊃ `event_id`(행사) ⊃ 행사 RBAC 3중
  - fail-closed 4층: ①컨텍스트 필터(서브도메인+소속, 불일치 거부)→②서비스 가드→③MyBatis 인터셉터(tenant_id 자동 주입)→④PostGIS(tenant_id 선두 복합 인덱스)(REQ-S-018)
  - tenant_id 선두 복합 인덱스로 격리 쿼리 성능(REQ-N-020)
  - [구현 계획: 스키마·컨텍스트 구현 대기, 백필 전 단일테넌트 무중단→검증 후 필터 활성화]
- **도표 지시**: **도식⑪ 멀티테넌시 격리 아키텍처도(수직 4층 방어 스택 + 좌측 테넌트 컨텍스트 진입)**. tech_advisory §1-4 ⑪.
- **REQ**: REQ-F-077·078, REQ-S-018, REQ-N-020
- **출처**: tech_advisory §1-3·§1-4 ⑪

## S57 · 온보딩·2계층 관리자
- **섹션**: P7 멀티테넌시·확장
- **헤드라인**: "코드 배포 없이 데이터 온보딩 6단계로 새 전시관을 연다."
- **본문**
  - 온보딩: 코드 배포 없이 데이터 온보딩(홀·요율·규정 룰셋·마스터데이터 입력 수준)(REQ-F-077)
  - 2계층 관리자: 플랫폼 슈퍼관리자(테넌트 스위처) / 테넌트 관리자(단일 스코프)(REQ-F-079)
  - 테넌트 컨텍스트 해소(REQ-F-078)
  - 공통코드·메뉴 관리(§5B, REQ-F-073) 기반 재사용
- **도표 지시**: 온보딩 6단계 도식 + 테넌트 스위처 화면. 도식ID 없음(단계 도식).
- **REQ**: REQ-F-077·078·079, REQ-F-073
- **출처**: tech_advisory §1-3, strategy §1 WT-5

---

# P8. 사업관리·일정·조직 (S58~S60, 배점 2)

## S58 · 추진 일정·Phase
- **섹션**: P8 사업관리·일정·조직
- **헤드라인**: "Phase 1 코어 → Phase 2 워크플로/운영 → Phase 3 현장/확장, 게이트로 진행."
- **본문**
  - Phase 1(~4M): 아키텍처(A)·공통레이어(B, 2FA/시스템관리)·P0 코어(C: M2·M3·M4·M5)
  - Phase 2(~4M): 옥션 M15·관람 M10·BI M16·관리자 M18·판매/서류/정산 M1/6/7/9·CMS M12/17
  - Phase 3(~4M+): 멀티테넌시·M11·M13·M14·배포 안정화·SM 이관
  - 공수: 총 ~150 M/M 규모(핵심 146 + PMO/QA 4~8), 라이브 스캐폴드로 Phase A/B 공수 실측 절감
  - [주의: 예산·사업기간은 실제 RFP 부재로 가정, 공고 확인 시 재정렬]
- **도표 지시**: **도식⑫ 일정 간트(Phase × 모듈 + 마일스톤 다이아몬드 G1·G2·Phase 게이트·QA 게이트·오픈)**. tech_advisory §1-4 ⑫.
- **REQ**: (일정 — 실행력 근거)
- **출처**: tech_advisory §1-4 ⑫·§5, PLANNING §9

## S59 · 선행 게이트·리스크 관리
- **섹션**: P8 사업관리·일정·조직
- **헤드라인**: "약한 고리를 숨기지 않고 드러내 방어한다 — 선제 대응이 곧 신뢰다."
- **본문**
  - 선행 게이트: G1 나노바나나 승인 [검증됨: 완료]·G2 배포서버 [검증됨: 완료]
  - 리스크 R-1~R-8 정면 방어: 외부 API(승인 게이트+degraded 폴백)·CAD 실측(가정 라벨+협의 선행)·kxwp(단계적 접근)·배점 가정(투명 고지)·이미지 품질(후처리 합성)·AI 오판(사람 확정)·HW 연동(협의 전제)·확장 부담(격리 레이어만)
  - 확인 필요 8항목(C1~C8) 관리
- **도표 지시**: **리스크 매트릭스(발생×영향 2×2에 R-1~R-8·C1~C8 배치)** + 게이트. tech_advisory §1-4 말미(추가 표준 도식).
- **REQ**: (리스크 관리 — 방어 논리)
- **출처**: strategy §4, rfp_analysis §6, tech_advisory §0

## S60 · 품질·형상관리
- **섹션**: P8 사업관리·일정·조직
- **헤드라인**: "배포는 헬스체크로 지키고 실패하면 롤백, 의존성은 SCA 게이트로 막는다."
- **본문**
  - Fail-Safe 배포: 백업→배포→헬스체크 200→실패 시 롤백(이전 jar 유지) [검증됨: deploy_kintex.sh](REQ-N-004)
  - QA 게이트: 점진 경계면 검증·보안 불변·빌드 회귀(Phase 게이트 통과 후 진행)
  - SCA CI 게이트: OWASP Dependency-Check 정기 스캔·패치(REQ-S-019)
  - 형상관리: Gitea `zio/kintex`·Conventional Commits·main 보호·환경 분리(dev/staging/prod)
- **도표 지시**: 품질 게이트 흐름(빌드→테스트→SCA→헬스체크→롤백). 도식ID 없음.
- **REQ**: REQ-N-004, REQ-S-019
- **출처**: tech_advisory §6-5·§0-1(라이브), §4 REQ-S-019

---

# P9. 기대효과 (S61~S63, 가점)

## S61 · 정량 기대효과
- **섹션**: P9 기대효과
- **헤드라인**: "견적 수일→즉시, 배치 수주→수 분, 검수 육안→자동, 결과는 사진으로."
- **본문**
  - 견적: 수일 대기 → 즉시(규칙엔진)
  - 배치: 수주 CAD 외주 → 수 분 3안 자동생성
  - 규정 검수: 육안 → 제출 전 자동 플래깅
  - 위치표시도: 수기 → 좌표 클릭 자동 작도
  - 시공 결과: 개장일 첫 대면 → 신청 시점 사진 예측
- **도표 지시**: **기대효과 정량 인포그래픽(5지표 Before/After)**. tech_advisory §1-4 말미(추가 표준 도식).
- **REQ**: REQ-F-002·007·009·017, REQ-A-001
- **출처**: PLANNING §1-3, strategy §5

## S62 · 정성·전략 효과
- **섹션**: P9 기대효과
- **헤드라인**: "참가업체는 영업력을, 홀매니저는 시간을, 킨텍스는 데이터 주권을 얻는다."
- **본문**
  - 참가업체: 사진급 자료로 영업력·수주력 강화
  - 홀매니저: 규정 검수 병목 해소로 처리량 증대
  - 킨텍스: 온프레미스 우선·외부 AI 격리로 데이터 주권 확보
  - 산업: 국내 전시산업 표준 플랫폼화
- **도표 지시**: 이해관계자별 효과 카드. 도식ID 없음.
- **REQ**: (정성 효과 — 전략)
- **출처**: strategy §3

## S63 · 확장 비전·마무리
- **섹션**: P9 기대효과
- **헤드라인**: "킨텍스에서 검증하고, 코엑스로 확장하며, 다시 사진으로 컨펌한다."
- **본문**
  - 확장: COEX·제3전시장·타 전시관 SaaS 확장
  - 재사용: 검증된 공통 프레임워크(WISE/UIWS) 위에 도메인 코어 이식
  - 클로징: "신청서를 내는 순간, 시공 후 사진을 먼저 본다."
- **도표 지시**: 확장 비전 로드맵 + 클로징 슬로건 대형 타이포. 도식ID 없음.
- **REQ**: REQ-F-077(확장 근거)
- **출처**: strategy §1 WT-5

---

# 부록 (선택 삽입)

## 부록 A · 확인 필요·협의 사항
- C1 평가배점·제출규격(가정) · C2 kxwp API(REQ-F-022) · C3 CAD·트렌치 실측(REQ-F-016 정확도) · C4 인터넷 요율 공식본(REQ-F-002) · C5 나노바나나 G1(완료) · C6 코엑스 실측(REQ-F-077) · C7 사이니지·비콘·IoT HW(REQ-F-070·052~055) · C8 기타 협의
- 정직성 어필: 모든 [가정]·[협의]를 1장 집약 → 발주처 협업 자세

## 부록 B · REQ 커버리지 매트릭스
- 아래 "RTM 반영표" 참조(142 REQ ↔ 슬라이드 1:1)

## 부록 C · 100대 기능 성숙도
- 기구현 63 · 부분 18 · 신규 19(정량, rfp_analysis §4)

---

# RTM 반영표 (REQ → 슬라이드 · 142 REQ 전량)

> 규칙: 각 REQ의 **주 반영 슬라이드**(굵게) + 보조 슬라이드. QA는 이 표로 142 REQ 반영상태 ☑ 최종 검증. 미반영 0.

## REQ-F (기능 81)

| REQ | 요약 | 반영 슬라이드 |
|---|---|---|
| REQ-F-001 | 홀 가용성 캘린더 | **S33** |
| REQ-F-002 | 규칙엔진 견적 | **S33** · S10·S61 |
| REQ-F-003 | 웹폼→HWP | **S33** |
| REQ-F-004 | 부스판매 인벤토리 | **S33** |
| REQ-F-005 | 온라인 셀프선택 | **S33** |
| REQ-F-006 | 임대계약 전자서명 | **S33** |
| REQ-F-007 | 배치 3안 자동생성 | **S24** · S10·S61·S13 |
| REQ-F-008 | 배치안 선택/병합 | **S24** |
| REQ-F-009 | 배치 규정 검증·재검증 | **S25** · S10·S61 |
| REQ-F-010 | 최종안 버전·좌표·초대링크 | **S24** |
| REQ-F-011 | 조립부스 3D 프리뷰 | **S26** |
| REQ-F-012 | 독립부스 3안·버전 | **S26** |
| REQ-F-013 | 설계 규정 사전검증 | **S26** |
| REQ-F-014 | 도면 비전 추출·검증 | **S26** |
| REQ-F-015 | 전기용량·분전반 산출 | **S27** |
| REQ-F-016 | 배선경로 PostGIS 최단 | **S27** · S42 |
| REQ-F-017 | 위치표시도 자동생성 | **S28** · S10·S61 |
| REQ-F-018 | 네트워크·급배수·압축공기 신청 | **S28** |
| REQ-F-019 | 조명 조도 배치안 | **S18** |
| REQ-F-020 | 마일스톤 역산 알림 | **S34** |
| REQ-F-021 | 신고서류 웹폼→HWP/PDF | **S34** |
| REQ-F-022 | kxwp 릴레이 ⚠ | **S34** · S59(리스크 R-3) |
| REQ-F-023 | 서류 버전·전자결재 | **S34** |
| REQ-F-024 | OCR 계약·납품서 | **S34** |
| REQ-F-025 | 역경매 옥션 개설 | **S29** · S12·S13 |
| REQ-F-026 | AI 자료 기반 응찰·PDF | **S29** |
| REQ-F-027 | 실시간 순위·자동마감 | **S30** |
| REQ-F-028 | 종합평가 낙찰 스코어 | **S31** |
| REQ-F-029 | 등록업체 게이트 | **S32** |
| REQ-F-030 | 등록업체 AI 매칭 | **S31** |
| REQ-F-031 | 물량서 BOQ 산출 | **S31** · S29 |
| REQ-F-032 | 낙찰→발주 자동전환 | **S32** · S12 |
| REQ-F-033 | 반입/반출 슬롯 | **S40** |
| REQ-F-034 | 통행증 QR | **S40** |
| REQ-F-035 | 지게차·렌탈 | **S40** |
| REQ-F-036 | 철거 대기열 시뮬 | **S40** |
| REQ-F-037 | 사전등록 | **S35** |
| REQ-F-038 | 모바일 배지/QR | **S35** |
| REQ-F-039 | 현장 체크인·집계 | **S35** |
| REQ-F-040 | 오프라인 체크인 폴백 | **S35** · S51 |
| REQ-F-041 | 리드캡처 | **S35** |
| REQ-F-042 | AI 리드 스코어링 | **S35** |
| REQ-F-043 | 세그먼트 EDM | **S35** |
| REQ-F-044 | 티켓발권·스마트배지 | **S35** |
| REQ-F-045 | AI 비즈매칭 | **S36** |
| REQ-F-046 | 미팅 슬롯·리포트 | **S36** |
| REQ-F-047 | 이벤트 모바일앱 | **S36** |
| REQ-F-048 | 공개 홍보 사이트 | **S36** |
| REQ-F-049 | 인터랙티브 플로어플랜 | **S36** |
| REQ-F-050 | 세그먼트 EDM 캠페인 | **S36** |
| REQ-F-051 | 스폰서십 패키지 | **S36** |
| REQ-F-052 | wayfinding | **S40** |
| REQ-F-053 | 혼잡 모니터·예측 | **S40** |
| REQ-F-054 | 전력부하·주차 | **S40** |
| REQ-F-055 | 안전 이상탐지 | **S40** |
| REQ-F-056 | 납부 스케줄 | **S37** |
| REQ-F-057 | PG 결제 | **S37** |
| REQ-F-058 | 예치금 정산 | **S37** |
| REQ-F-059 | 세금계산서·수수료 | **S37** |
| REQ-F-060 | 환불·취소 규정 | **S37** |
| REQ-F-061 | 가동률 대시보드 | **S38** |
| REQ-F-062 | 매출·P&L | **S38** |
| REQ-F-063 | ROI·RevPAD·㎡당 수익 | **S38** |
| REQ-F-064 | 리텐션·LTV | **S39** |
| REQ-F-065 | 참가업체 ROI 격리 | **S39** |
| REQ-F-066 | 경영진 KPI 드릴다운 | **S39** |
| REQ-F-067 | CMS 게시 워크플로 | **S36** |
| REQ-F-068 | 마이크로사이트 | **S36** |
| REQ-F-069 | 다국어 콘텐츠·hreflang | **S36** · S53 |
| REQ-F-070 | 사이니지 배포 ⚠ | **S40** · S59 |
| REQ-F-071 | RBAC·감사 백오피스 | **S48** |
| REQ-F-072 | 룰셋·마스터데이터 버전 | **S45** |
| REQ-F-073 | 공통코드·메뉴 | **S16** · S57 |
| REQ-F-074 | 공통 업무모듈 | **S16** |
| REQ-F-075 | 회의록 STT·업무보고 PDF | **S16** |
| REQ-F-076 | 통합 알림센터 WebSocket | **S16** |
| REQ-F-077 | 멀티테넌트 격리·온보딩 | **S56·S57** · S55·S63 |
| REQ-F-078 | 테넌트 컨텍스트 해소 | **S56** · S57 |
| REQ-F-079 | 2계층 관리자 | **S57** |
| REQ-F-080 | API·웹훅·CRM/ERP 연동 | **S45** |
| REQ-F-081 | 역할별 프론트 포털 | **S43** · S41·S09 |

## REQ-A (AI 20)

| REQ | 요약 | 반영 슬라이드 |
|---|---|---|
| REQ-A-001 | 샷세트 S1~S7 | **S17·S18** · S01·S12·S61 |
| REQ-A-002 | image-to-image 구조보존 | **S19** · S12 |
| REQ-A-003 | 구조화 프롬프트 사전 | **S19** |
| REQ-A-004 | S6 배선 오버레이 래스터 | **S21** |
| REQ-A-005 | Before/After 슬라이더 | **S21** |
| REQ-A-006 | RenderJob 방어 | **S22** |
| REQ-A-007 | 비동기 큐·WebSocket | **S20** · S44 |
| REQ-A-008 | 간판 텍스트 검수·후처리 | **S22** |
| REQ-A-009 | 배치 3안(제약 솔버+LLM) | **S24** |
| REQ-A-010 | AI 규정 검증 | **S25** · S26 |
| REQ-A-011 | AI 서류 검수 | **S34** |
| REQ-A-012 | 규정 챗봇(근거·인용) | **S34** |
| REQ-A-013 | AI 수요예측·동적가격 | **S39** |
| REQ-A-014 | KPI 브리핑·Text-to-SQL | **S39** |
| REQ-A-015 | AI 카피·번역 | **S36** |
| REQ-A-016 | AI 라우터(Claude→Ollama) | **S44** · S41 |
| REQ-A-017 | RAG·인용·환각 차단 | **S49** · S23 |
| REQ-A-018 | AI 리드 스코어·매칭 | **S35·S36** |
| REQ-A-019 | 현장 이상탐지·예측 | **S40** |
| REQ-A-020 | 도면 비전·OCR 등록 | **S26·S34** |

## REQ-N (비기능 21)

| REQ | 요약 | 반영 슬라이드 |
|---|---|---|
| REQ-N-001 | SLO 99.5% | **S51** |
| REQ-N-002 | 2인스턴스 롤링 무중단 | **S51** · S43 |
| REQ-N-003 | PG 스탠바이·PITR | **S51** |
| REQ-N-004 | Fail-Safe 배포 | **S60** |
| REQ-N-005 | degraded 모드 | **S51** · S20·S44 |
| REQ-N-006 | 나노바나나 40초·1024px | **S52** · S20 |
| REQ-N-007 | 대량 생성 제어 | **S52** · S22 |
| REQ-N-008 | 공간쿼리 GiST 실시간 | **S42** · S12 |
| REQ-N-009 | 워커 독립 스케일 | **S43** |
| REQ-N-010 | BI/공개 읽기복제 | **S43** · S38 |
| REQ-N-011 | 워커 재큐(멱등) | **S43** · S51 |
| REQ-N-012 | WCAG 2.1 AA·KWCAG 2.2 | **S53** |
| REQ-N-013 | 캔버스 비시각 대안 | **S53** |
| REQ-N-014 | 다국어 i18n·hreflang | **S53** |
| REQ-N-015 | 라이트/다크 테마 | **S53** |
| REQ-N-016 | 반응형 | **S53** |
| REQ-N-017 | 단일 공간 원천 | **S42** |
| REQ-N-018 | 관측성·미기록 | **S54** · S50 |
| REQ-N-019 | 공개 CDN·요청률 상한 | **S43** · S54 |
| REQ-N-020 | tenant_id 선두 복합 인덱스 | **S56** |
| REQ-N-021 | BI 데이터마트 배치 ETL | **S54** · S38 |

## REQ-S (보안 20)

| REQ | 요약 | 반영 슬라이드 |
|---|---|---|
| REQ-S-001 | 외부 API 정책 | **S49** · S47 |
| REQ-S-002 | GEMINI 키 워커 env only | **S49** |
| REQ-S-003 | 자격증명·키 완전 제외 | **S50** |
| REQ-S-004 | admin 비번 env 재시드 | **S48** |
| REQ-S-005 | JWT+2FA·실패 잠금 | **S48** |
| REQ-S-006 | 행사 RBAC 3중 | **S48** |
| REQ-S-007 | 미등록 업체 차단(403) | **S32** · S48 |
| REQ-S-008 | admin/internal 게이트 | **S48** |
| REQ-S-009 | 이미지 워터마크 항상 | **S49** · S23·S01 |
| REQ-S-010 | 스택트레이스 미노출 | **S50** |
| REQ-S-011 | DataAccessException 요약 | **S50** |
| REQ-S-012 | 감사로그 전수 | **S50** |
| REQ-S-013 | PII 동의·마스킹·암호화 | **S50** · S39 |
| REQ-S-014 | 입력 검증 | **S50** |
| REQ-S-015 | XSS·CSP | **S50** |
| REQ-S-016 | 인젝션 차단 | **S50** |
| REQ-S-017 | IDOR·CSRF·JWT 회전 | **S50** |
| REQ-S-018 | fail-closed 테넌트 격리 | **S56** · S47 |
| REQ-S-019 | 의존성 SCA CI 게이트 | **S60** · S50 |
| REQ-S-020 | 보안영역 분리 | **S47** |

---

## 커버리지 요약

| 유형 | REQ 수 | 반영 | 미반영 |
|---|---|---|---|
| REQ-F (기능) | 81 | 81 | 0 |
| REQ-A (AI) | 20 | 20 | 0 |
| REQ-N (비기능) | 21 | 21 | 0 |
| REQ-S (보안) | 20 | 20 | 0 |
| **총계** | **142** | **142** | **0** |

**슬라이드 총계**: 63(S01~S63) + 부록 3(A·B·C)
**RTM 커버리지**: 142/142 반영, **미반영 0**
**과장 방지 준수**: 라이브 확인분(인프라·CI/CD·나노바나나·인증·워터마크·PostGIS 코어·평면도 자산)만 [검증됨], 도메인 모듈·멀티테넌시·집계 API·i18n/접근성 전면 적용은 [구현 계획]으로 구분 표기. 시크릿(키·비번·IP·SSH) 전면 미기재. AI 생성 이미지는 전 슬라이드에서 워터마크·금지 고지 정책 명시.
