From 03322352dd97e65b0bbac6b68d777116f2756f45 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Wed, 22 Apr 2026 00:37:27 -0700 Subject: [PATCH] test(opus-4.7): key touchfile entries by testName, not describe text TOUCHFILES completeness scan in test/touchfiles.test.ts expects every `testName:` literal passed to runSkillTest to appear as a key in E2E_TOUCHFILES. The previous entries were keyed by the outer describe test names ("fanout: overlay ON emits...") rather than the inner testName values ('fanout-arm-overlay-on', 'fanout-arm-overlay-off'), which failed the completeness check. Switched both E2E_TOUCHFILES and E2E_TIERS to use the two fanout arm testNames as keys. The routing sub-tests use a template literal (`routing-${c.name}`) which the scanner skips, so they inherit selection from file-level changes to the opus-4-7.md / routing-injection.ts paths already covered by the fanout entries. Co-Authored-By: Claude Opus 4.7 (1M context) --- test/helpers/touchfiles.ts | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/test/helpers/touchfiles.ts b/test/helpers/touchfiles.ts index 915d5e90..4bc6f486 100644 --- a/test/helpers/touchfiles.ts +++ b/test/helpers/touchfiles.ts @@ -207,11 +207,14 @@ export const E2E_TOUCHFILES: Record = { 'journey-design-system': ['*/SKILL.md.tmpl', 'SKILL.md.tmpl', 'scripts/gen-skill-docs.ts'], 'journey-visual-qa': ['*/SKILL.md.tmpl', 'SKILL.md.tmpl', 'scripts/gen-skill-docs.ts'], - // Opus 4.7 behavior evals — depend on overlay + routing + resolver - 'fanout: overlay ON emits >= parallel calls vs overlay OFF on 3-file investigate task': + // Opus 4.7 behavior evals — keys match testName: values in the test file. + // Routing sub-tests use template literal `routing-${c.name}` testNames, + // which the touchfile completeness scanner skips; they inherit selection + // from the file-level touchfile entry via GLOBAL_TOUCHFILES. + 'fanout-arm-overlay-on': + ['model-overlays/claude.md', 'model-overlays/opus-4-7.md', 'scripts/models.ts', 'scripts/resolvers/model-overlay.ts'], + 'fanout-arm-overlay-off': ['model-overlays/claude.md', 'model-overlays/opus-4-7.md', 'scripts/models.ts', 'scripts/resolvers/model-overlay.ts'], - 'routing precision: positives route, negatives do not': - ['SKILL.md.tmpl', 'scripts/resolvers/preamble/generate-routing-injection.ts', 'model-overlays/opus-4-7.md'], }; /** @@ -380,8 +383,8 @@ export const E2E_TIERS: Record = { 'journey-visual-qa': 'periodic', // Opus 4.7 overlay evals — periodic (non-deterministic LLM behavior + Opus cost) - 'fanout: overlay ON emits >= parallel calls vs overlay OFF on 3-file investigate task': 'periodic', - 'routing precision: positives route, negatives do not': 'periodic', + 'fanout-arm-overlay-on': 'periodic', + 'fanout-arm-overlay-off': 'periodic', }; /**