Verification-only commands may run without creating a branch. Before applying any fix discovered during verification, confirm the current branch is a task branch; if it is main, another default branch, or detached HEAD, stop and apply the start-session skill before editing.
-
Inspect the diff once, state the behaviors or contracts that must remain true, and select the smallest command or browser probe that demonstrates each one.
-
For documentation- or instruction-only changes, review the changed text, links, and cross-file contracts. Do not run application lint, build, or browser tests unless the edit affects generated output or executable configuration.
-
Run only tests that exercise changed files and behavior. For games, use that game's focused spec plus a filtered load probe for the changed model; do not load every unrelated game.
-
Verify game controls and essential UI at the primary 1280×720 desktop viewport, including keyboard input and mouse input where appropriate. Test mobile or touch layouts only when the implementation provides or claims that support. Reuse one managed server/browser session when possible.
-
For Next.js code, read the relevant local documentation under node_modules/next/dist/docs/ before evaluating API usage.
-
For Three.js runtime or asset changes, run npm run sync:three-runtime -- --check, npm run validate:game-assets, and npm run test:game-assets. For a new or substantially revised Three.js game, also require one successful npm run inspect:threejs -- --game <id> --model <id> --state active-play run and a manual screenshot review.
-
Run npm run lint locally when JavaScript, TypeScript, tests, or repository/runtime configuration changes.
-
Run npm run build locally when application code, routing, dependencies, Next.js configuration, or shared runtime behavior changes. Standalone game-only changes do not require a local production build.
-
Run the full npm test suite locally only for test or CI infrastructure changes, changes whose impact cannot be bounded reliably, or explicit user requests. Otherwise use the affected Playwright specs:
npm test -- <affected-specs>
-
Reuse passing evidence produced for the current diff. Rerun a check only when relevant inputs changed, the earlier result is stale or ambiguous, or the user explicitly requests another run.
-
Treat any required affected-scope failure as blocking unless evidence shows it is unrelated and pre-existing; report that evidence explicitly.
-
Clean up owned servers, browser sessions, and temporary processes before finishing.