Repository navigation
ci: growth runs on main only; a pull request's coverage keeps its growth status - #453
Merged
Merged
Conversation
…wth status Every pull request push ran the Growth job, about 1.5 minutes of billed time, before any change could merge. A leak check proves memory does not grow with the work. Main catches a leak before any release, because a release waits for main's CI run on the tagged commit. Growth now runs only on push, which is main, and always at full length. Skipping the job alone fails Coverage. With #452's own reports and no growth report, the check found 6 gaps ("cli.serve: growth is missing"), and --write rewrote those 6 cells from covered to missing, which fails the stale check. The generator takes --not-run LEVEL: - A missing cell at that level is no gap. - The status files keep the committed status at that level. CI passes --not-run growth on pull requests and nothing on main. Evidence, from #452's reports through make coverage-check: - PR shape, no growth report, with --not-run growth: exit 0, docs unchanged. - Main shape, no growth report: fails on "growth is missing". - Main shape, with the growth report: exit 0. Two tooling tests: the gap filter and the kept status. If this is wrong, a pull request that adds a leak merges, and main's Growth job fails on it before a release. A change that breaks coverage at another level still fails the pull request.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull requests no longer run the Growth job. Main runs it on every push, at full length.
Why
Growth took about 1.5 billed minutes on every pull request push. A release waits for main's CI run on the tagged commit, so main catches a leak before any release.
Skipping Growth needed a coverage change
With #452's own reports and no growth report:
--checkfound 6 gaps, for examplecli.serve: growth is missing.--writerewrote those 6 cells fromcoveredtomissing, so the stale check would fail too.The generator now takes
--not-run LEVEL:CI passes
--not-run growthon pull requests and nothing on main. The expression isevent_name != 'push' && '--not-run growth' || ''. The reverse form,== 'push' && '' || ..., always yields the flag, because''is falsy.Evidence (#452's reports through
make coverage-check)--not-run growthdocs/coverageunchangedgrowth is missingTwo new tooling tests, and all 211 tooling tests pass.
Locally
make test-growth GROWTH=boundedruns the growth tier at about ten seconds a test.