> Gate definition, loaded by `/gate-check` for the TARGET PHASE ONLY. > Never load the other five — one gate applies per invocation. # Gate: Pre-Production → Production **Required Artifacts:** - [ ] Vertical slice exists in `prototypes/` with a REPORT.md (run `/vertical-slice`) — **recommended, not blocking**; if absent, surface as CONCERNS - [ ] First sprint plan exists in `production/sprints/` - [ ] Art bible is complete (all 9 sections) and AD-ART-BIBLE sign-off verdict is recorded in `design/art/art-bible.md` - [ ] Entity inventory exists at `design/assets/entity-inventory.md` (recommended — run `/asset-spec` with no arguments to generate collaboratively from GDDs + art bible) - [ ] All MVP-tier GDDs from systems index are complete - [ ] Master architecture document exists at `docs/architecture/architecture.md` - [ ] At least 3 ADRs covering Foundation-layer decisions exist in `docs/architecture/` - [ ] All Foundation and Core layer ADRs have status `Accepted` (not `Proposed`) — stories cannot be unblocked until their governing ADR is accepted - [ ] Control manifest exists at `docs/architecture/control-manifest.md` (generated by `/create-control-manifest` from Accepted ADRs) - [ ] Epics defined in `production/epics/` with at least Foundation and Core layer epics present (use `/create-epics layer: foundation` and `/create-epics layer: core` to create them, then `/create-stories [epic-slug]` for each epic) - [ ] Vertical Slice build exists and is playable (not just scope-defined) — **recommended, not blocking**; if absent, surface as CONCERNS - [ ] Vertical Slice has been playtested with at least 1 documented session — **recommended, not blocking**; if absent, surface as CONCERNS - [ ] Vertical Slice playtest report exists at `production/qa/playtests/` or equivalent — **recommended, not blocking**; if absent, surface as CONCERNS - [ ] UX specs exist for key screens: main menu, core gameplay HUD (at `design/ux/`), pause menu - [ ] HUD design document exists at `design/ux/hud.md` (if game has in-game HUD) - [ ] All key screen UX specs have passed `/ux-review` (verdict APPROVED or NEEDS REVISION accepted) **Quality Checks:** - [ ] **Core loop fun is validated** — playtest data confirms the central mechanic is enjoyable, not just functional. Explicitly check the Vertical Slice playtest report. - [ ] UX specs cover all UI Requirements sections from MVP-tier GDDs - [ ] Interaction pattern library documents patterns used in key screens - [ ] Accessibility tier from `design/accessibility-requirements.md` is addressed in all key screen UX specs - [ ] Sprint plan references real story file paths from `production/epics/` (not just GDDs — stories must embed GDD req ID + ADR reference) - [ ] **Vertical Slice is COMPLETE**, not just scoped — the build demonstrates the full core loop end-to-end. At least one complete [start → challenge → resolution] cycle works. - [ ] Architecture document has no unresolved open questions in Foundation or Core layers - [ ] All ADRs have Engine Compatibility sections stamped with the engine version - [ ] All ADRs have ADR Dependencies sections (even if all fields are "None") - [ ] Manual validation confirms GDDs + architecture + epics are coherent (run `/review-all-gdds` and `/architecture-review` if not done recently) - [ ] **Core fantasy is delivered** — at least one playtester independently described an experience that matches the Player Fantasy section of the core system GDDs (without being prompted). **Vertical Slice Validation** (only run these checks if a Vertical Slice was built): - [ ] A human has played through the core loop without developer guidance - [ ] The game communicates what to do within the first 2 minutes of play - [ ] No critical "fun blocker" bugs exist in the Vertical Slice build - [ ] The core mechanic feels good to interact with (this is a subjective check — ask the user) > **Verdict rules for Vertical Slice:** > - **Slice was built AND any validation item is NO** → verdict is automatically FAIL. A broken > or unfun vertical slice should not advance to Production. > - **Slice was not built (skipped)** → downgrade to CONCERNS only, not FAIL. Surface the risk > clearly: "Advancing without a validated Vertical Slice increases the risk of late-stage design > pivots. Recommended before committing full production scope." The user decides. > - Skipping is a valid solo dev or time-constrained call. Shipping a broken one is not. ## Workflow tier reductions The checklist above is the **`full` baseline**. At lower tiers apply the reduction for the resolved tier; items not named keep their status above. Reductions only ever *relax* a requirement — `workflow_overrides` is the only thing that adds one. - **`full`** — sprint plan + complete (9-section) art bible + epics + 3+ playtests + UX specs + control manifest all required; **Vertical Slice keeps its Section 2 status** (see note) - **`standard`** — **1+ playtest** required (not 3); epics + sprint plan required; art bible complete + UX specs + control manifest → recommended - **`minimal`** — only **sprint plan** required (the minimal floor); epics, playtests, art bible, UX, control manifest all **drop** > **The Vertical Slice keeps its Section 2 status at every tier.** The > Pre-Production → Production "prototype/Vertical Slice" floor is NOT upgraded to > blocking by the tier table — the Vertical Slice artifacts stay *recommended, > not blocking* (absent → CONCERNS, not FAIL) exactly as Section 2 defines, at > `full`, `standard`, and `minimal` alike. The genuinely-required floor item at > this gate is the **sprint plan**. The one hard rule that binds at every tier: > if a Vertical Slice *was built* and any of its validation items is NO, the > verdict is FAIL regardless of tier — tier reductions relax what must *exist*, > never what must *work*.