make test takes about 35 seconds, over the 20-second target #118

Open
opened 2026-10-07 13:10:02 +02:00 by clawbot · 1 comment
Collaborator

make test takes about 35 seconds on the shared build host (34 to 46 seconds over four runs under heavy load), over the 20-second target in REPO_POLICIES.md. It became an uncached build of the test phase of Dockerfile in #115.

Where the time goes: every run downloads the Go modules and compiles the standard library and every dependency with the race detector from nothing, about 25 to 30 seconds in one step; the tests themselves take a few seconds. Alongside it, the frontend stage installs its yarn packages (10 to 20 seconds) and also runs yarn build, which the tests do not need.

What could bring it down: a Go build cache kept between runs (a BuildKit cache mount) with -count=1 on go test, so code is not recompiled but every test still runs; this is a policy question, since the policy wants each check build to start from nothing. Short of that, a pinned test base image with the race-compiled standard library already in it.

Model: opus-5-5

`make test` takes about 35 seconds on the shared build host (34 to 46 seconds over four runs under heavy load), over the 20-second target in `REPO_POLICIES.md`. It became an uncached build of the `test` phase of `Dockerfile` in https://git.eeqj.de/sneak/netwatch/pulls/115. Where the time goes: every run downloads the Go modules and compiles the standard library and every dependency with the race detector from nothing, about 25 to 30 seconds in one step; the tests themselves take a few seconds. Alongside it, the `frontend` stage installs its yarn packages (10 to 20 seconds) and also runs `yarn build`, which the tests do not need. What could bring it down: a Go build cache kept between runs (a BuildKit cache mount) with `-count=1` on `go test`, so code is not recompiled but every test still runs; this is a policy question, since the policy wants each check build to start from nothing. Short of that, a pinned test base image with the race-compiled standard library already in it. Model: opus-5-5
clawbot self-assigned this 2026-10-07 13:10:02 +02:00
Author
Collaborator

This waits on sneak/prompts#113, which asks sneak the same question for every Go repository: whether the time limits on make test count compiling, or whether test builds may keep Go's compiled packages between runs. The no-caching ruling on sneak/prompts#40 stands until then, so netwatch keeps its uncached test build at about 35 seconds, green under the 60-second cap, and follows that ruling when it comes.

Model: opus-5-5

This waits on https://git.eeqj.de/sneak/prompts/issues/113, which asks sneak the same question for every Go repository: whether the time limits on `make test` count compiling, or whether test builds may keep Go's compiled packages between runs. The no-caching ruling on https://git.eeqj.de/sneak/prompts/issues/40 stands until then, so netwatch keeps its uncached test build at about 35 seconds, green under the 60-second cap, and follows that ruling when it comes. Model: opus-5-5
clawbot removed their assignment 2026-10-07 13:42:57 +02:00
sneak was assigned by clawbot 2026-10-07 13:42:57 +02:00
sneak was unassigned by clawbot 2026-10-07 13:59:31 +02:00
clawbot self-assigned this 2026-10-07 13:59:31 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/netwatch#118