ci: pin the Windows image and make its leg measurable - #10
Merged
Conversation
martin-fleck-at
force-pushed
the
ci/windows
branch
4 times, most recently
from
September 9, 2026 11:23
2d84768 to
2a2589d
Compare
Baseline - Pin windows-2025 instead of the windows-latest alias, which advances a major Windows Server release under the workflow; a leg whose runtime and failure rate move on someone else's schedule cannot be measured against a change made here - Bump actions/checkout to v7.0.1 and actions/setup-node to v7.0.0 across both workflows, so neither is forced onto a Node it does not declare - Say what the Windows leg is actually for: child-process startup and per-file cost, alongside the path and URI divergence it already named - Correct the claim that setup-node ignores packageManager; it reads the field to pick a cache, and still never installs that version Dispatch knobs - Add a turbo_concurrency input wired into the gate job's environment, so repeated runs of one commit can vary the cap without a commit each - Add a skip_e2e input, since repeating a run to measure the gate should not also repeat four minutes e2e shares nothing with - Record what is in force rather than what was asked for: the variable turbo consults, and the heap ceiling V8 reports - Report that ceiling twice, with the cap and without it. V8 derives its own from physical memory and these runners sit just under the 16 GB boundary its flag documentation names, so only the pair says whether the cap raises, matches or lowers what V8 would have chosen - Record it through tee, so the figures survive in the log an API can read and not only in a summary a person has to open - Record the machine beside them, because the ceiling is per process and turbo runs many, and no log states the cores or the memory - Leave all of it inert outside a dispatch: the input is empty on a push and a pull request, turbo reads empty as unset, and the e2e condition is written so only an explicit true can suppress the job Six facts checked rather than assumed. - turbo does read TURBO_CONCURRENCY, an invalid value being rejected by name, and does treat an empty one as absent - The snippet prints the cap when set and a default marker when empty, which is the state of every push and pull-request run - Its node fragments survive the quoting: the backticks they emit are not taken as command substitution - tee reaches both destinations, so neither copy is the only one - The uncapped probe cannot redden the gate: with the command missing it prints its fallback and the block still exits zero - The step sits after Setup Node because V8 derives its default ceiling from physical memory per version, so read earlier the figure would describe the preinstalled Node the build never runs
martin-fleck-at
force-pushed
the
ci/windows
branch
from
September 9, 2026 11:43
2a2589d to
13ce538
Compare
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.
Baseline
Dispatch knobs
Two facts checked rather than assumed.