`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
4.3 KiB
Gate definition, loaded by
/gate-checkfor the TARGET PHASE ONLY. Never load the other five — one gate applies per invocation.
Gate: Technical Setup → Pre-Production
Required Artifacts:
- Engine chosen (CLAUDE.md Technology Stack is not
[CHOOSE]) - Project config populated (
project.yamlhas engine/naming/performance set, or legacy.claude/docs/technical-preferences.mdpopulated) - Art bible exists at
design/art/art-bible.mdwith at least Sections 1–4 (Visual Identity Foundation) - At least 3 Architecture Decision Records in
docs/architecture/covering Foundation-layer systems (scene management, event architecture, save/load) - Engine reference docs exist in
docs/engine-reference/[engine]/ - Test framework initialized:
tests/unit/andtests/integration/directories exist - CI/CD test workflow exists at
.github/workflows/tests.yml(or equivalent) - At least one example test file exists to confirm the framework is functional
- Master architecture document exists at
docs/architecture/architecture.md - Architecture traceability index exists at
docs/architecture/requirements-traceability.md /architecture-reviewhas been run (a review report file exists indocs/architecture/)design/accessibility-requirements.mdexists with accessibility tier committeddesign/ux/interaction-patterns.mdexists (pattern library initialized, even if minimal)
Quality Checks:
- Architecture decisions cover core systems (rendering, input, state management)
- Technical preferences have naming conventions and performance budgets set
- Accessibility tier is defined and documented (even "Basic" is acceptable — undefined is not)
- At least one screen's UX spec started (often the main menu or core HUD is designed during Technical Setup)
- All ADRs have an Engine Compatibility section with engine version stamped
- All ADRs have a GDD Requirements Addressed section with explicit GDD linkage
- No ADR references APIs listed in
docs/engine-reference/[engine]/deprecated-apis.md - All HIGH RISK engine domains (per VERSION.md) have been explicitly addressed in the architecture document or flagged as open questions
- Architecture traceability matrix has zero Foundation layer gaps (all Foundation requirements must have ADR coverage before Pre-Production)
ADR Circular Dependency Check: run the deterministic graph builder rather than reading every ADR to trace the graph by hand — a manual trace across a dozen ADRs eventually misses an edge; the script cannot:
Bash: bash .claude/scripts/adr-dep-graph.sh
It prints ADRS, EDGES (one adr-A -> adr-B per Depends-On reference),
NO_DEPS_SECTION (ADRs with no Depends On), and a CYCLE: line per node in any
dependency cycle.
- Any
CYCLE:lines → FAIL: "Circular ADR dependency: [the nodes on theCYCLE:lines]. Neither can reach Accepted while the cycle exists. Remove one 'Depends On' edge to break the cycle." - No
CYCLE:lines → this check passes. But the acyclic result is only as trustworthy as the dependency sections are complete: ifNO_DEPS_SECTIONlists many ADRs, surface that as a CONCERNS note rather than a clean pass.
Engine Validation (read docs/engine-reference/[engine]/VERSION.md first):
- ADRs that touch post-cutoff engine APIs are flagged with Knowledge Risk: HIGH/MEDIUM
/architecture-reviewengine audit shows no deprecated API usage- All ADRs agree on the same engine version (no stale version references)
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— engine + art bible §1–4+ + 3+ ADRs + architecture + UX specs started + accessibility doc + traceability index all requiredstandard— art bible required only if visual-asset stories exist; ADRs reduced to critical (Foundation-layer) only; UX-specs-started, accessibility doc, interaction-patterns, traceability index → recommendedminimal— only engine configured required (the minimal floor); everything else drops