REPO_POLICIES.md sets 20 seconds as the target for make test (60 seconds the hard cap) and asks for an issue when a suite runs past the target. On this shared host make test takes 37 to 76 seconds under load; its time on an unloaded host has not been measured. Since #53 the internal/proxy tests take about 8 seconds rather than 2, because their short timeout is now 5 seconds.
What to do
Measure where make test spends its time (the Docker test phase's module download and build, and each package's go test time) and cut what is not needed, without weakening any test.
Two savings the review of #55 pointed out: write shortTimeout as waitLimit / 2, as its comment says it is, so the two cannot drift apart; and have TestUpgradedConnectionOutlastsTheTimeouts wait until just past shortTimeout after the request was sent, rather than 7.5 seconds after the upgrade.
Definition of done
The PR body states, in a line or two, what make test spends its time on and what the change saves.
No test is weakened, skipped or made able to fail on a hold-up of the test process that it could not fail on before.
make check green; one PR to next, passed by a reviewer who did not write it.
Model: opus-5-5
`REPO_POLICIES.md` sets 20 seconds as the target for `make test` (60 seconds the hard cap) and asks for an issue when a suite runs past the target. On this shared host `make test` takes 37 to 76 seconds under load; its time on an unloaded host has not been measured. Since https://git.eeqj.de/sneak/smallwebwaf/issues/53 the `internal/proxy` tests take about 8 seconds rather than 2, because their short timeout is now 5 seconds.
## What to do
- Measure where `make test` spends its time (the Docker test phase's module download and build, and each package's `go test` time) and cut what is not needed, without weakening any test.
- Two savings the review of https://git.eeqj.de/sneak/smallwebwaf/pulls/55 pointed out: write `shortTimeout` as `waitLimit / 2`, as its comment says it is, so the two cannot drift apart; and have `TestUpgradedConnectionOutlastsTheTimeouts` wait until just past `shortTimeout` after the request was sent, rather than 7.5 seconds after the upgrade.
## Definition of done
- The PR body states, in a line or two, what `make test` spends its time on and what the change saves.
- No test is weakened, skipped or made able to fail on a hold-up of the test process that it could not fail on before.
- `make check` green; one PR to `next`, passed by a reviewer who did not write it.
Model: opus-5-5
clawbot
self-assigned this 2026-10-04 07:53:37 +02:00
#59: the test phase keeps Go's build cache out of the image, and the upgraded-connection test ends with the other timing tests; where make test spends its time is in the PR body.
Model: opus-5-5
https://git.eeqj.de/sneak/smallwebwaf/pulls/59: the test phase keeps Go's build cache out of the image, and the upgraded-connection test ends with the other timing tests; where `make test` spends its time is in the PR body.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
REPO_POLICIES.mdsets 20 seconds as the target formake test(60 seconds the hard cap) and asks for an issue when a suite runs past the target. On this shared hostmake testtakes 37 to 76 seconds under load; its time on an unloaded host has not been measured. Since #53 theinternal/proxytests take about 8 seconds rather than 2, because their short timeout is now 5 seconds.What to do
make testspends its time (the Docker test phase's module download and build, and each package'sgo testtime) and cut what is not needed, without weakening any test.shortTimeoutaswaitLimit / 2, as its comment says it is, so the two cannot drift apart; and haveTestUpgradedConnectionOutlastsTheTimeoutswait until just pastshortTimeoutafter the request was sent, rather than 7.5 seconds after the upgrade.Definition of done
make testspends its time on and what the change saves.make checkgreen; one PR tonext, passed by a reviewer who did not write it.Model: opus-5-5
#59: the test phase keeps Go's build cache out of the image, and the upgraded-connection test ends with the other timing tests; where
make testspends its time is in the PR body.Model: opus-5-5