Merge origin/main (v1.91.7.0) into test-audit-reduction

Keep both intents: v1.91.7.0's functional QA, docsync and exploratory
paid cases and their free owners stay; this branch's deletions stay
deleted. main's new paid keys follow the derived-closure touchfile rule
(free *.test.ts paths dropped, static helper/fixture closure added), its
new helper-only tests join the ratchet baseline, and its free selection
examples that named free test files now assert the derived selection.

Periodic CI keeps seven slices without the retired Autoplan slice; the
gate census keeps seven single-worker slices with --skip-judges. Wall
and census literals are recomputed from the merged planner, durations
are re-recorded on Ubicloud, and VERSION stays 1.91.8.0 above 1.91.7.0.
This commit is contained in:
garrytan committed 2026-09-29 13:48:02 +00:00
commit b421bba2c9
325 files changed
+42569 -8257

No files matched your search

+1 -13
View File
@@ -26,20 +26,8 @@ const evalCollector = createEvalCollector('e2e-qa-bugs');
// (fallback). Neither → skip, never fail.
const describeOutcome = (evalsEnabled && hasApiKey && (asideAvailable() || fs.existsSync(browseBin))) ? describe : describe.skip;
/**
* The BROWSER SETUP section qa/SKILL.md renders (Aside probe + browse fallback
* + driving rules). The agent gets just this, not the 1500-line skill, so the
* driver decision is the skill's own text, not the prompt's.
*/
function browserSetupSection(): string {
const skill = fs.readFileSync(path.join(ROOT, 'qa', 'SKILL.md'), 'utf-8');
const start = skill.indexOf('## BROWSER SETUP');
// The Aside contract is followed by its own H2, '## Browser fallback: ...' — the
// fixture must carry both so a run without Aside can take the $B path.
const fallback = skill.indexOf('\n## Browser fallback', start + 3);
const end = skill.indexOf('\n## ', (fallback > 0 ? fallback : start) + 3);
if (start < 0 || end < 0) throw new Error('qa/SKILL.md: BROWSER SETUP section not found — regenerate with: bun run gen:skill-docs');
return skill.slice(start, end);
return fs.readFileSync(path.join(ROOT, 'qa', 'sections', 'browser-setup.md'), 'utf-8');
}
// Wrap describeOutcome with selection — skip if no planted-bug tests are selected