@@ -1003,10 +1003,12 @@ export function selfTest({ tier = 'full' } = {}) {
10031003 'scripts/check-adr-0087-registration.mjs', 'scripts/check-changeset-no-major.mjs']
10041004 .every((script) => valueBearing.some((i) => i.script === script)),
10051005 );
1006+ // The card named three; the third, `scripts/check-prerelease-pin-watch.mjs
1007+ // --verbose`, left the tree with prerelease-pin-watch.yml (objectstack#25697),
1008+ // and the `keyWf` fixture above still carries its shape.
10061009 t(
1007- '⭐ …and the three the card called value-bearing that are really LITERAL render as runnable commands instead',
1008- ['scripts/check-engine-split-ratio.mjs --days 90', 'scripts/check-required-contexts.mjs --verify-required-set',
1009- 'scripts/check-prerelease-pin-watch.mjs --verbose']
1010+ '⭐ …and the two the card called value-bearing that are really LITERAL render as runnable commands instead',
1011+ ['scripts/check-engine-split-ratio.mjs --days 90', 'scripts/check-required-contexts.mjs --verify-required-set']
10101012 .every((key) => direct.some((i) => i.check === key && i.argvVariables.length === 0)),
10111013 );
10121014 t(
@@ -5754,20 +5756,25 @@ export function selfTest({ tier = 'full' } = {}) {
57545756 //
57555757 // Pinned rather than left to the fixture, because the whole finding was that
57565758 // the FIXTURE-shaped question ("can it follow an indirection?") had a
5757- // different answer from the LIVE one. If the console job is renamed or its
5758- // filter re-spelled, re-point these cases — do not delete them: they are the
5759- // measured statement that a pin bump derives its own gates.
5759+ // different answer from the LIVE one. If the job is renamed or its filter
5760+ // re-spelled, re-point these cases — do not delete them: they are the
5761+ // measured statement that a root file a job filter names derives that job's
5762+ // own gates. The card's job, `console-pin` (Console Pin Gate) with the pin
5763+ // file `.objectui-sha`, retired with the objectui pin (objectstack#25697);
5764+ // they are re-pointed at Build Core, whose `core` filter names root files
5765+ // outside every package the same way and whose steps run four dist guards.
57605766 const liveCiPops = jobPathPopulations(readFileSync(nodePath.join(ROOT, '.github/workflows/ci.yml'), 'utf8'), 'ci.yml');
5761- const livePinJob = liveCiPops.find((p) => p.checks.includes('check:console-sha'));
5762- t('the live console job is found by the gate it runs', Boolean(livePinJob));
5763- t('and it is named Console Pin Gate — the name branch protection and the Checks tab use', livePinJob?.name === 'Console Pin Gate');
5767+ const BUILD_CORE_GUARDS = ['check:dts-closure', 'check:dual-build-cjs-loads', 'check:sourcemap-no-sources-content', 'check:lean-entry-closure'];
5768+ const liveFilteredJob = liveCiPops.find((p) => p.checks.includes('check:lean-entry-closure'));
5769+ t('the live Build Core job is found by the gate it runs', Boolean(liveFilteredJob));
5770+ t('and it is named Build Core — the name branch protection and the Checks tab use', liveFilteredJob?.name === 'Build Core');
57645771 t(
5765- 'its derived population covers the pin file, which is the whole acceptance criterion',
5766- Boolean(livePinJob && triggerListCovers(livePinJob .paths, '.objectui-sha ')),
5772+ 'its derived population covers a root file outside every package (tsconfig.json) , which is the whole acceptance criterion',
5773+ Boolean(liveFilteredJob && triggerListCovers(liveFilteredJob .paths, 'tsconfig.json ')),
57675774 );
57685775 t(
5769- 'both console gates are reached, not just the one the card named ',
5770- Boolean(livePinJob?.checks.includes('check:console-sha') && livePinJob? .checks.includes('check:console-injection' )),
5776+ 'all four of its dist guards are reached, not just the one it was found by ',
5777+ Boolean(liveFilteredJob && BUILD_CORE_GUARDS.every((c) => liveFilteredJob .checks.includes(c) )),
57715778 );
57725779 // The NEGATIVE control, and it is the half that keeps the widening honest: a
57735780 // path in none of the four filters must derive nothing extra. AGENTS.md is a
0 commit comments