docs(ci): haus's acquire holds two suites, and a step's floor is not the pole - #620
Merged
Merged
Conversation
…t the pole haus's nix half was described here as "`haus add` alone". It carries `test/haus-settings.sh` too since hausfold/haus#766 — the other suite that drives a real consumer flake through a real nix, and the last bash suite in that repo CI was not running. Rule 5 gains that as its fourth worked example, because it is the one direction the rule did not have written down. The three already there all ask whether a JOB divides. This one is a STEP: haus's nix half had a local heuristic that a new step is measured against the ~35s cache restore in front of it, and above that it earns a job of its own. The settings suite is 66s, twice that bar, and joined an existing job anyway — the pole there is `nix flake check` at 243s, which no fourth job can shorten. A fixed cost says what a job is worth paying for. It says nothing about what a step is worth moving, and reading it as a floor sends you to a job that buys the gate nothing. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
What
Two edits to
docs/ci.md.nix eval…,nix flake checkalone,haus addalone".acquirecarriestest/haus-settings.shas well since ci: test/haus-settings.sh runs on the Linux runner, and always could haus#766 — the other suite that drives a real consumer flake through a real nix, and the last bash suite in that repo CI was not running at all.Why
The row was simply stale. The rule-5 addition is the part worth reading.
Rule 5's three existing worked examples — haus's
agents(no), perch and trill (yes), scruff (neither) — all answer the same question: does this job divide? hausfold/haus#766 asked a different one and the rule had no written answer for it: is this step worth a job of its own?haus's nix half had a local heuristic for that — a new step is measured against the ~35s cache restore standing in front of it, and above that bar it earns a job.
test/haus-settings.shcame in at 66s, twice the bar, and joined an existing job anyway, because the pole in that gate isnix flake checkat 243s and a fourth job cannot take a second off it. The job went 46s → ~112s and the run cost what it cost before.So: a fixed cost says what a job is worth paying for. It says nothing about what a step is worth moving, and reading it as a floor sends you to a job that buys the gate nothing. The gap to the pole answers both.
Verify
docs/ci.mdonly. No code, no workflow, nothingbenchreads.checks243s, runner-upeval75s,acquire46s).Watch out
script/probes/README.md's stamped figures are untouched and still correct — #766 changes no job those measure.