`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
3.0 KiB
Test Evidence: [Story Title]
Story:
[path to story file]Story Type: [Visual/Feel | UI] Date: [date] Tester: [who performed the test] Build / Commit: [version or git hash]
What Was Tested
[One paragraph describing the feature or behaviour that was validated. Include the acceptance criteria numbers from the story that this evidence covers.]
Acceptance criteria covered: [AC-1, AC-2, AC-3]
Acceptance Criteria Results
| # | Criterion (from story) | Result | Notes |
|---|---|---|---|
| AC-1 | [exact criterion text] | PASS / FAIL | [any observations] |
| AC-2 | [exact criterion text] | PASS / FAIL | |
| AC-3 | [exact criterion text] | PASS / FAIL |
Screenshots / Video
List all captured evidence below. Store files in the same directory as this
document or in production/qa/evidence/[story-slug]/.
The file must actually be on disk. Visual/Feel and UI gates are BLOCKING by
default, and /story-done and /test-evidence-review glob for the image — a
filename listed here with no file beside it does not satisfy the gate.
| # | Filename | What It Shows | Acceptance Criterion |
|---|---|---|---|
| 1 | [filename.png] |
[brief description of what is visible] | AC-1 |
| 2 | [filename.png] |
AC-2 |
If video: note the timestamp and what it demonstrates.
Test Conditions
- Game state at start: [e.g., "fresh save, player at level 1, no items"]
- Platform / hardware: [e.g., "Windows 11, GTX 1080, 1080p"]
- Framerate during test: [e.g., "stable 60fps" or "~45fps — within budget"]
- Any special setup required: [e.g., "dev menu used to trigger specific state"]
Observations
[Anything noteworthy that didn't cause a FAIL but should be recorded. Examples: minor visual jitter, frame dip under load, behaviour that technically passes but felt slightly off. These become candidates for polish work.]
- [Observation 1]
- [Observation 2]
If nothing notable: No significant observations.
Sign-Off
All roles must sign off before the story can be marked COMPLETE via /story-done.
Visual/Feel stories require the designer or art-lead sign-off. UI stories require
the UX lead or designer sign-off.
Solo developers: all sign-offs may be by the same person in each role. The intent is that someone deliberately reviews the evidence before marking complete — not that three separate people must participate.
| Role | Name | Date | Signature |
|---|---|---|---|
| Developer (implemented) | [ ] Approved | ||
| Designer / Art Lead / UX Lead | [ ] Approved | ||
| QA Lead | [ ] Approved |
Any sign-off can be marked "Deferred — [reason]" if the person is unavailable. Deferred sign-offs must be resolved before the story advances past the sprint review.
Template: .claude/docs/templates/test-evidence.md
Used for: Visual/Feel and UI story type evidence records
Location: production/qa/evidence/[story-slug]-evidence.md