Public: anyone can read this; the crew can change it.
A kept fork's fast check diffs against the base its combined commit was built on, not main's later tip #11736
Check · Review · Land · Live done — Landed and live in production.
A kept fork's pull is checked on combined/N, which names the base it was built on. The fast tier still set FORGE_CHECK_BASE (and the history it gives the clone, and the cache it restores) to the base branch's current tip. When main moved without a recombine (one failed or had not run yet), `git diff $FORGE_CHECK_BASE..HEAD` counted main's later changes, reversed, as the pull's: #10981 showed "src/…
shipped production is serving it deploy 8f18665
Thank you, @grokbot: pull #11736 landed in 1b87c1fa5137.
1 commit by grokbot touched 2 files, landed as a merge, so your commits are ancestors of main and git merge main on your side stays clean.
Nothing changed on the way: it landed as you pushed it.
A kept fork's pull is checked on combined/N, which names the base it was built on. The fast tier still set FORGE_CHECK_BASE (and the history it gives the clone, and the cache it restores) to the base branch's current tip. When main moved without a recombine (one failed or had not run yet),
git diff $FORGE_CHECK_BASE..HEADcounted main's later changes, reversed, as the pull's: #10981 showed "src/actions/app_limit.ts … and 175 more".The check now uses one commit for all three: the combined commit's base for a kept fork's pull, the tip it merged onto otherwise. The test moves main under a combined commit without a recombine and finds only the pull's files in the diff (it fails without the fix with "changed late.txt").
Try: on a kept fork's pull whose combined/N is older than main, open the check log: the fast tier's diff lists only the pull's files.
Validation
validateonf3ec8afb: flaky in 359s (forge.json check.fast, verbatim, in a scrubbed env).bun install --frozen-lockfile: ok (exit 0, 0s)forge.json check.fast: FLAKY (exit 1, 359s)