@@ -421,8 +421,13 @@ repository has paid for that before.
421421 are the main cause of F3. They return only if the build becomes incremental across checkouts. That needs
422422 a measured cause (Part VII) and a fix that keeps the stale-object hazards already recorded in
423423 ` .agents/docs/2026-05-15-stdcompat-restat-e2e.md ` and ` cross-build-test.yml:416-434 ` out of the result.
424- - ** Concurrency.** ` cancel-in-progress ` becomes ` ${{ github.event_name == 'pull_request' }} ` . A push to
425- ` main ` runs to completion and writes its caches; a superseded pull-request run is still cancelled.
424+ - ** Concurrency.** ` cancel-in-progress ` becomes ` ${{ github.event_name == 'pull_request' }} ` , and a push
425+ to ` main ` has a group of its own commit. A push to ` main ` runs to completion and writes its caches; a
426+ superseded pull-request run is still cancelled. One group for all pushes to ` main ` would not be enough,
427+ because GitHub keeps one pending run per group and cancels the older pending run when another arrives.
428+ - ** Keys name what fills the cache.** The sandbox key hashes ` ci.yml ` as well as ` mcpp.toml ` and
429+ ` .xlings.json ` , because ` ci.yml ` lists what the build job installs before it saves. A cache saved under
430+ an unchanged key is never saved again, so a toolchain added to that list would otherwise never reach it.
426431- ** Wine.** The Wine packages come from one pinned archive, published once as a release asset of this
427432 repository, instead of from the ` apt ` mirrors with a cache that eviction removes (F7). The archive's
428433 sha256 is checked before installation.
@@ -620,6 +625,18 @@ reading taken while building it.
620625 machine that has them and failed on every runner, and nothing noticed, because
621626 no runner ran it. The fixture's root is now a library, which is what the test
622627 says it is: "this test compiles only".
628+ - ** The review of the change** (a code review of mcpp #759 ) found eight defects. Each was repaired before
629+ merging:
630+ - the coverage check matched test names inside comments and inside longer names, and now matches whole
631+ tokens outside comments;
632+ - ` changes ` failed, rather than running the whole CI, when the GitHub API did not answer;
633+ - pushes to ` main ` shared a concurrency group;
634+ - the cache keys did not name the install list;
635+ - the Linux shards' toolchain installs shared the suite's time limit, and now have a step of their own;
636+ - the ` macos-27 ` label's effect was undocumented (it is read on the next push);
637+ - the CHANGELOG gave three Linux shards;
638+ - a path-dependency root with a tab in its path could be cut short in the build record, and is now left
639+ unrecorded, which declines the fast path.
623640- ** Coverage found more than F9.** Classifying the tests of the 2026-10-01
624641 logs found 24 that ran on no runner and were named by no workflow. The
625642 seven ` llvm ` tests are among them, and so are three ` musl ` tests: the probe
0 commit comments