document parallel test gate
This commit is contained in:
parent
ce5fa65f03
commit
de192bc59b
3 changed files with 14 additions and 3 deletions
|
|
@ -131,6 +131,9 @@ intentionally unclaimed; the built-in health endpoint is `/up`.
|
||||||
- Run the focused PHPUnit test while developing.
|
- Run the focused PHPUnit test while developing.
|
||||||
- Use `just backend-types-check` for Larastan and `just backend-test` for the
|
- Use `just backend-types-check` for Larastan and `just backend-test` for the
|
||||||
full PHPUnit suite during iteration.
|
full PHPUnit suite during iteration.
|
||||||
|
- The completion gate runs `backend-test-unit` and `backend-test-feature` as
|
||||||
|
concurrent processes. This is safe because each process owns its own
|
||||||
|
in-memory SQLite database.
|
||||||
- Fix failures caused by the change. Report unrelated baseline failures
|
- Fix failures caused by the change. Report unrelated baseline failures
|
||||||
precisely rather than expanding scope silently.
|
precisely rather than expanding scope silently.
|
||||||
- The shared `just test-all` command is the required completion gate. Focused
|
- The shared `just test-all` command is the required completion gate. Focused
|
||||||
|
|
|
||||||
|
|
@ -95,6 +95,10 @@ backend and does not proxy the frontend.
|
||||||
|
|
||||||
- Cypress is configured under `cypress/` and runs through `npm run test:e2e`
|
- Cypress is configured under `cypress/` and runs through `npm run test:e2e`
|
||||||
or `just frontend-cypress-run`.
|
or `just frontend-cypress-run`.
|
||||||
|
- Every Cypress spec must appear in exactly one `frontend_specs_*` group in
|
||||||
|
the root `justfile`. The completion gate runs those groups concurrently,
|
||||||
|
and its `cypress-spec-coverage` job rejects ungrouped, duplicate, or missing
|
||||||
|
specs. Keep `frontend-cypress-run` for whole-suite iteration.
|
||||||
- Prefer the cheapest test seam that proves the behavior. Cypress covers
|
- Prefer the cheapest test seam that proves the behavior. Cypress covers
|
||||||
routing, browser forms, authentication flows, request wiring, and responsive
|
routing, browser forms, authentication flows, request wiring, and responsive
|
||||||
behavior.
|
behavior.
|
||||||
|
|
|
||||||
10
ai/shared.md
10
ai/shared.md
|
|
@ -223,12 +223,16 @@ gate passes against that worktree:
|
||||||
3. Run the complete gate from the worktree root:
|
3. Run the complete gate from the worktree root:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
direnv exec "$(git rev-parse --show-toplevel)" just test-all
|
JUST_JOBS=4 direnv exec "$(git rev-parse --show-toplevel)" just test-all
|
||||||
```
|
```
|
||||||
|
|
||||||
4. Do not hand-assemble a substitute from focused commands. `test-all` runs
|
4. Do not hand-assemble a substitute from focused commands. `test-all` runs
|
||||||
frontend format and lint checks, frontend type checking, Larastan, the
|
one pool of 13 jobs: frontend format, lint, type, build, and Cypress
|
||||||
production build, PHPUnit, and Cypress in fail-fast order.
|
groups; Larastan; the PHPUnit Unit and Feature suites; and the Cypress
|
||||||
|
spec coverage guard. Jobs report as they finish, failed output is buffered
|
||||||
|
and printed at the end, and every job runs even after another job fails.
|
||||||
|
`JUST_JOBS` limits concurrency and defaults to 4. Use 2 when resources are
|
||||||
|
constrained or 1 for a serial debugging run.
|
||||||
5. Everything must pass before completion. Report exact baseline or
|
5. Everything must pass before completion. Report exact baseline or
|
||||||
environmental failures rather than hiding them.
|
environmental failures rather than hiding them.
|
||||||
6. If the stack was started only for validation, stop it when finished:
|
6. If the stack was started only for validation, stop it when finished:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue