Files
Claude-Code-Game-Studios/.claude/skills/gate-check/references/gate-production.md
T
DonchitosandClaude Opus 5 d05699707f Release 1.1.0 — one config file, and a process weight you choose
`project.yaml` at the repo root is now the single source of truth for a
project's configuration, replacing `production/stage.txt`,
`production/review-mode.txt` and `.claude/docs/technical-preferences.md` (all
three still read as a fallback; nothing is force-deleted).

**`modes.rigor` — one question instead of six.** `minimal`, `standard` or
`full` fronts six knobs: `modes.workflow`, `docs.density`, `qa.level`,
`modes.story_granularity`, `modes.review_mode` and `team.size`. It defaults to
`minimal`, which is a change from 1.0's behaviour: the heavier tier was
measured costing several times more to reach working code without producing a
better result, and returning nothing when a fresh developer inherited the
project. Pin `modes.rigor: standard` to keep 1.0's process level.

Also in this release:

- `/settings` to view or change any setting, and `project.local.yaml` for
  per-developer preferences that should not be committed.
- `system_overrides` to hold one system to a higher standard than the rest of
  the project, and `testing.strict` to set per test type whether missing
  evidence blocks a story or warns.
- A story that changes anything the player sees is not closed until the game
  has been launched, observed, and a screenshot retained in
  `production/qa/evidence/`. A parse check is not a run. This holds at every
  rigor level, including `minimal`, where automated tests are waived but the
  look is not.
- The code root is engine-specific and enforced as such: Godot `src/`, Unity
  `Assets/`, Unreal `Source/<Module>/`. Two of the three will not build a
  project laid out any other way.
- Migration tooling for existing projects: `.claude/scripts/migrate-v1-config.sh`
  converts a 1.0 layout, non-destructively by default, with a report to review
  before `--finalize` deletes anything.
- Ask-before-write holds regardless of personal automation settings.

Upgrading from 1.0 or earlier: see UPGRADING.md. Full list of changes:
CHANGELOG.md.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016xvzG3i7pWQg4LjyDwWMXd
2026-09-23 12:25:11 +10:00

5.8 KiB

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.