Playbook 08: check a module compiles with go vet, never go build in its folder (issue 1577)
mesh/merge-gate head 9f0b0215ae6a merged into trunk 86fd4adf9756 — pass: the change touches no module of the mesh's graph
mesh/repo-check head 9f0b0215ae6a merged into trunk 86fd4adf9756 — pass: its merge-check.sh passed
mesh/delivery delivered

go build in a module's folder writes the program beside go.mod, and two such programs were
committed on 2026-10-21, caught only by the review.
This commit is contained in:
jochen
2026-10-21 09:58:44 +02:00
parent 86fd4adf97
commit 9f0b0215ae
+3
View File
@@ -37,6 +37,9 @@ one delivery**. Everything before the try is local and fast.
test that fails today first, on an assertion about what the code does: a test that fails only because it
does not compile has not failed first (playbook [07](07-feature-branches.md) step 1); make the change; keep `gofmt`, `go vet` and the repository's whole unit suite green
before every commit (each test well under a second; never a merge check or a database locally: how-we-build §5, ADR 0391).
Check that it compiles with `go vet`, never `go build` in a module's folder: with one main package it writes the
program beside `go.mod`, and `git add -A` takes it (issue 1577: two 5-10 MB programs committed on 2026-10-21,
caught only by the review); read `git show --stat` before pushing.
The tests are written from the acceptance criteria, at least one per criterion at its level, each citing the
criterion it proves by its label (`<issue>/AC<n>`, playbook 07 step 0 item 5). Commit, naming the issue. For a playbook or design edit, run the repository's own checks (in hq,
`sh merge-check.sh`). Then push the branch and run `mesh-controller.try` on it, so the review reads the