@@ -21,11 +21,14 @@
## Efficient execution
-Choose the smallest task that proves the change, then run the required wider gate.
+Choose the smallest task that proves the change.
- During iteration, use one extension's local `lint`, `test`, or `check` task.
-- For complete tests, run root `//:test` once; do not fan out all extension `test` wrappers into one Vitest process per extension.
-- For complete static validation, run root `//:check` once; do not fan out all extension `check` wrappers because each repeats repository-wide TypeScript checking.
+- Agents stop after the smallest affected tasks pass.
+- Agents run `//:ci`, `//:e2e`, or unrelated suites only when the user explicitly requests that exact wider gate.
+- Commits, merges, and generic verification requests do not imply wider gates.
+- For explicitly requested complete tests, run root `//:test` once; do not fan out all extension `test` wrappers into one Vitest process per extension.
+- For explicitly requested complete static validation, run root `//:check` once; do not fan out all extension `check` wrappers because each repeats repository-wide TypeScript checking.
Mise task jobs and tool workers multiply.
Set `--jobs` deliberately when invoking multiple independent tasks, because Vitest, Playwright, and other tools manage their own workers.
@@ -79,7 +82,7 @@
## Git hooks
-- `pre-commit` runs format, lint, and test.
+- `pre-commit` runs check and lint.
- `pre-push` runs full CI.
## Troubleshooting