Development record
2026-10-29 — iss-2610241911052191 takes the issue's second remedy, a per-binary test timeout scaled with the load as -p is, not admission on projected headroom (draft itd-2610262141001890). Each test stage's go test -timeout is the Makefile's 40m base while the one-minute load is at most one runnable per online core and twice it past that, two values only because go test hashes -timeout into its cache key and a budget moving with each reading would rerun every cached package on a busy machine, read once as the stage starts by `cmd/test-parallelism -timeout <base>` (machineload.GoTestTimeout, implement.PreflightTimeout). On a CI runner, or where the machine cannot be read, it is the base, so CI's race steps and the local race lane keep one declared budget. The cap of two keeps both stages inside land's four-hour run bound with room for the gates and eval lanes; a bad base is refused loudly, so the stage fails rather than running with go test's 10m default.
2026-10-29 — iss-2610241911052191 takes the issue's second remedy, a per-binary test timeout scaled with the load as -p is, not admission on projected headroom (draft itd-2610262141001890). Each test stage's go test -timeout is the Makefile's 40m base while the one-minute load is at most one runnable per online core and twice it past that, two values only because go test hashes -timeout into its cache key and a budget moving with each reading would rerun every cached package on a busy machine, read once as the stage starts by cmd/test-parallelism -timeout <base> (machineload.GoTestTimeout, implement.PreflightTimeout). On a CI runner, or where the machine cannot be read, it is the base, so CI's race steps and the local race lane keep one declared budget. The cap of two keeps both stages inside land's four-hour run bound with room for the gates and eval lanes; a bad base is refused loudly, so the stage fails rather than running with go test's 10m default.
Frontmatter
| id | dcn-2610291132223552 |
|---|---|
| type | decision |
| date | 2026-10-29 |
.abcd/work/decisions/dcn-2610291132223552-iss-2610241911052191-takes-the-issue-s.md
open on GitHub ↗ · commit history ↗
mentions2
- iss-2610241911052191The load gate opened a whole make preflight at load 17.8 on ten cores, under the 20 threshold, yet three packages (internal/core/claim, internal/core/implement/loop, internal/surface/cli) then hit the twenty-minute test timeout, because the other sessions' ungated stages kept the load near the threshold for the whole run
- itd-2610262141001890abcd adjusts how many preflights run at once from what it recorded