M1 Foundation Plan
Draft V0.1 · 2026-05-22 · CODEX PM · 목표 시기 2026-06
1. 목적
M1은 베타의 핵심 전제가 실제로 성립하는지 증거를 만드는 Foundation Proof 단계다. 기술 근거와 검증 절차 없이 “될 것”으로 착수하지 않는다.
2. 목표 정합성
| 축 | 질문 | M1 답변 |
| Scenario Workflow Proof | 작가 매크로 원고를 읽을 수 있는 게임 workflow로 바꿀 수 있는가 | parser -> canonical JSON -> workflow import -> flow visualization 증거 |
| Platform Foundation Proof | Flutter 앱이 베타 클라이언트로 출발 가능한가 | skeleton build, auth loop 방향, Agora 최소 증거, Socket.IO 최소 증거 |
Workflow First
- app이 무엇을 실행하는지 모르면 게임 진행 검증 문장이 공허해진다.
- Studio와 API가 다른 workflow 언어를 쓰면 Flutter 구현이 맞아도 시나리오 제작이 실패한다.
- owner와 PM이 순서도를 보고 원고와 비교할 수 있어야 조건, 분기, 조사, 투표 누락을 발견할 수 있다.
3. M1 Scope
Track A. Scenario Workflow Proof
- Reference fixture:
/챕터, /배포, /타이머 또는 /확인, /조사, /단서, /알림, /투표, ?조건, 분기를 포함한다.
- Parse: macro source에서 최소 명령, 조건 블록, 대사, 지문을 구조화하고 미지원 문법을 validation으로 드러낸다.
- Canonical JSON: source reference와 runtime structure를 구분하고 unresolved resource와 jump를 검출한다.
- Workflow import: chapter/Phase, action, condition, branch, resource reference를 workflow model로 옮긴다.
- Flow visualization: source macro와 순서도를 나란히 대조할 수 있게 한다.
Track B. Flutter Platform Foundation
- Flutter skeleton: beta app 위치, Android/Windows 시작점, 환경 기준.
- Auth contract: login start, callback/app return, credential 저장과
/auth/me 근거.
- Agora evidence: Android 최소 연결, background/screen-lock 리스크, Windows 최소 가능성.
- Socket.IO evidence: Flutter에서 API 최소 connect evidence.
4. 비범위
- 베타 전체 게임 기능 구현.
- Studio 완성 UI.
- WWW/Admin 대규모 구현.
- AI GM/NPC 품질 완성.
- 3편 시나리오 양산, 결제, iOS, 정산 자동화.
5. 필요한 결정
| 결정 | 이유 |
챕터와 Phase 관계 | workflow model과 app progression contract 고정 |
| canonical JSON 최소 schema | parser, workflow import, API가 같은 산출물을 봄 |
| M1 fixture 범위 | 검증 대상을 작게 고정 |
| Flutter auth return 방식 | 인증 재작성 리스크 축소 |
6. 검증 절차
| 단계 | 검증 | Evidence |
| Source fixture | M1 macro 문법 범위를 포함하는가 | fixture 문서와 owner/PM review |
| Parser | 구조화와 unsupported syntax 보고가 되는가 | parser test, token/AST sample, error sample |
| JSON | schema와 validation을 통과하는가 | schema validation, JSON snapshot |
| Import | workflow model로 의미 손실 없이 옮기는가 | import test, node/edge/action summary |
| Visualization | source와 flow를 대조할 수 있는가 | flow screenshot/export, walkthrough note |
검증 상태는 Confirmed, Failed, Blocked, Unknown으로만 표기한다. Planned는 완료 상태가 아니다.
7. Exit Criteria
- M1 fixture macro source 확정.
- parser에서 canonical JSON 변환 증거.
- JSON에서 workflow import 증거.
- owner/PM이 읽을 수 있는 flow visualization.
챕터와 Phase 관계에 대한 명시적 결론.
- Flutter skeleton과 auth/Agora/Socket.IO foundation evidence.
- M2 playable runtime fixture 범위 잠금.
8. 다음 계획 산출물
- M1 fixture scope note.
- chapter/Phase concept note.
- canonical scenario JSON draft.
- owner review checkpoint가 포함된 verification matrix.