# N. Codex Build Brief — POC Lab AI MVP 구축 지시서

원문 Canvas URL: https://chatgpt.com/canvas/shared/69f5d8fb250c819186eef182513d0634

## Codex에 넣을 최종 지시문

당신은 시니어 풀스택 개발자이자 AI SaaS 아키텍트입니다.

목표: “POC Lab AI”라는 AI 기반 가상 시장검증 MVP를 구축하세요. 사용자가 스타트업 아이템, 핵심 기능, 검증 가설, 초기 타깃을 입력하면 AI가 다음 결과를 생성해야 합니다.

1. 아이템별 동적 타깃 설정 카테고리
2. 고객 반응 차이를 만드는 B특성
3. B특성 분포 기반 Synthetic Persona 10명
4. 페르소나별 가상 제품 사용 반응
5. 결과 요약 리포트

기술 스택:

- Next.js App Router
- TypeScript
- Tailwind CSS
- Prisma
- PostgreSQL
- OpenAI API
- Zod
- 추후 확장을 위해 Redis/BullMQ 구조를 고려하되, MVP 1차 버전은 동기 실행 또는 간단 Job Status 방식으로 구현

필수 화면:

1. `/` : 랜딩 + 새 프로젝트 생성 버튼
2. `/projects/new` : 사업 아이템 입력 화면
3. `/projects/[projectId]` : 프로젝트 상세 및 시뮬레이션 실행 화면
4. `/projects/[projectId]/result` : 결과 리포트 화면

입력 화면 필드:

- 프로젝트명
- 제품/서비스 설명
- 초기 타깃 A특성
- 핵심 기능 목록, 최소 2개
- 검증 가설 목록, 최소 2개, 최대 7개

DB 모델:

- Project
- TargetAxis
- BFeature
- Persona
- SimulationResponse
- Report
- SimulationJob

API:

- `POST /api/projects` : 프로젝트 생성
- `GET /api/projects/[projectId]` : 프로젝트 조회
- `POST /api/projects/[projectId]/run` : AI 시뮬레이션 실행
- `GET /api/projects/[projectId]/result` : 결과 조회

AI 파이프라인:

1. `generateTargetAxes(input)`
2. `generateBFeatures(input, targetAxes)`
3. `generatePersonas(input, bFeatures, count=10)`
4. `generateSimulationResponses(input, personas)`
5. `generateReport(input, personas, responses)`

각 AI 응답은 반드시 JSON 구조로 받아야 하며 Zod로 검증하세요. 검증 실패 시 재시도 로직을 1회 넣으세요.

프롬프트 설계 원칙:

- B특성은 단순 인구통계가 아니라 구매의사, 사용지속성, 가격저항, 기능선호에 영향을 주는 행동/상황/심리 변수여야 함
- 페르소나는 A특성을 공유하되 B특성 분포와 상관관계를 반영해야 함
- 가상 사용 반응은 제품을 3일간 사용했다고 가정하고 작성하되, 무조건 긍정하지 말고 장점/단점/구매의사/가격저항을 포함해야 함
- 리포트는 실제 POC 계획으로 이어질 수 있게 작성해야 함

UI 스타일:

- 다크 기반, 프리미엄 SaaS 느낌
- “AI가 분석 중”이라는 신뢰감을 주는 Progress Console 포함
- 페르소나는 카드 UI로 보여주고, 클릭 시 상세 반응을 볼 수 있게 설계
- 결과 리포트는 요약, B특성, 페르소나, 후기, 인사이트, 실제 POC 체크리스트로 구성

구현 순서:

1. Next.js 프로젝트 초기화
2. Prisma 스키마 작성
3. 프로젝트 생성 API 구현
4. 입력 화면 구현
5. AI 프롬프트 파일 작성
6. AI 파이프라인 구현
7. run API 구현
8. 결과 저장
9. 결과 화면 구현
10. 샘플 데이터 기반 로컬 테스트

완성 기준:

- 사용자가 실제로 아이템을 입력할 수 있어야 함
- 버튼을 누르면 AI 시뮬레이션이 실행되어야 함
- 결과 화면에서 타깃 축, B특성, 10명 페르소나, 후기, 인사이트를 확인할 수 있어야 함
- 최소한 로컬 개발 환경에서 `npm run dev`로 동작해야 함

## N-1. File Structure

```text
poc-lab-ai/
├─ app/
│  ├─ page.tsx
│  ├─ projects/
│  │  ├─ new/page.tsx
│  │  └─ [projectId]/
│  │     ├─ page.tsx
│  │     └─ result/page.tsx
│  └─ api/
│     └─ projects/
│        ├─ route.ts
│        └─ [projectId]/
│           ├─ route.ts
│           ├─ run/route.ts
│           └─ result/route.ts
├─ components/
│  ├─ ProjectForm.tsx
│  ├─ SimulationConsole.tsx
│  ├─ PersonaCard.tsx
│  ├─ ResultReport.tsx
│  └─ FeatureListInput.tsx
├─ lib/
│  ├─ db/prisma.ts
│  ├─ ai/client.ts
│  ├─ ai/prompts.ts
│  ├─ ai/pipeline.ts
│  ├─ ai/schemas.ts
│  └─ utils.ts
├─ prisma/
│  └─ schema.prisma
├─ .env.example
├─ package.json
└─ README.md
```

## N-2. Development Milestone

- Day 1: 프로젝트 세팅 — Next.js, Prisma, Tailwind, env 구성 완료
- Day 2: DB/API — Project 생성·조회 API 동작
- Day 3: 입력 UX — 사업 아이템·기능·가설 입력 가능
- Day 4: AI 파이프라인 — 타깃 축, B특성, 페르소나 JSON 생성
- Day 5: 결과 저장 — AI 결과가 DB에 저장됨
- Day 6: 결과 UI — 페르소나 카드와 리포트 화면 구현
- Day 7: 테스트/보정 — 샘플 아이템 3개 이상 테스트 완료

## N-3. First Test Cases

1. 키즈밀 플래너 — 어린 자녀 식단 추천 + 장보기 자동화. B2C 육아 서비스 테스트용.
2. 소상공인 리뷰관리 SaaS — 네이버·카카오 리뷰를 모니터링하고 답변 초안을 생성하는 B2B SaaS 테스트용.
3. 시니어 병원 동행 매칭 — 고령자 병원 방문을 보호자 대신 동행해주는 로컬 서비스 테스트용.

## N-4. Acceptance Criteria

### 기능 기준

- 프로젝트 생성 가능
- 핵심 기능 2개 이상 입력 가능
- 가설 2~7개 입력 가능
- AI 시뮬레이션 실행 가능
- 결과 DB 저장 가능

### 품질 기준

- B특성이 아이템별로 다르게 도출될 것
- 페르소나 10명이 서로 구분될 것
- 후기가 과도하게 긍정적이지 않을 것
- 리포트가 실제 POC 액션으로 연결될 것
- JSON 파싱 오류 발생 시 재시도할 것
