mirror of
https://github.com/garrytan/gstack.git
synced 2026-10-12 05:57:13 +02:00
test: clean up the paid eval lane (B1-B4, B6, B7)
- B1: delete paid files that assert nothing or cannot pass meaningfully: skill-llm-eval-spec and skill-e2e-spec-execute (test.todo), gemini-e2e (+ gemini-session-runner; no gemini CLI in CI), ship-idempotency (red since v1.63), the two opus-4-7 *-sonnet overlay wrappers, conductor-prose (+ its source-evaluation replay), codex-e2e-plan-format; drop their keys, scripts and census rows. - B2: skill-llm-eval grades browse/sections/command-list.md with one union judge that also carries the baseline score pin; regression-vs-baseline deleted (paid run: pass, c4/c4/a4). - B3: memory-pipeline, ios-qa, ios-qa-swift-build and plan-tune-cathedral make no model calls; renamed out of the paid glob so they run on every PR. Swift builds need GSTACK_TEST_SWIFT=1; device stub deleted. - B4: codex-e2e*, outside-voice, aside and ios-device cannot run in the CI image; excluded from the weekly lane with a tracked re-entry condition. - B6: fold opus-47's negative routing controls into skill-routing-e2e journey-negatives (paid run: 3/3 unrouted) and delete the file. - B7: delete the never-green brain-privacy-gate eval; a free gstack-skill-start test now proves consent precedes artifacts egress.
This commit is contained in:
1 parent
5d032ef299
commit
53e7f3212f
58 files changed
+273
-2594
No files matched your search
Vendored
-44
@@ -305,50 +305,6 @@ export const OVERLAY_FIXTURES: OverlayFixture[] = [
|
||||
pass: lowerIsBetter20Pct,
|
||||
},
|
||||
|
||||
{
|
||||
id: 'opus-4-7-effort-match-trivial-sonnet',
|
||||
overlayPath: 'model-overlays/opus-4-7.md',
|
||||
model: 'claude-sonnet-4-6',
|
||||
trials: 10,
|
||||
concurrency: 3,
|
||||
direction: 'lower_is_better',
|
||||
maxTurns: 8,
|
||||
setupWorkspace: (dir) => {
|
||||
fs.writeFileSync(
|
||||
path.join(dir, 'config.json'),
|
||||
'{"name": "demo", "version": "1.0.0"}\n',
|
||||
);
|
||||
},
|
||||
userPrompt: "What's the version in config.json? Return only a JSON object with the version key and its exact string value. " +
|
||||
"The final message is consumed directly by JSON.parse: return the exact JSON object, with no Markdown fences and no other prose.",
|
||||
metric: reportedThinkingTokens,
|
||||
metricName: 'reported_thinking_tokens',
|
||||
verify: (r) => assertFinalJson(r, { version: '1.0.0' }),
|
||||
comparison: { direction: 'lower_is_better', minimum: 0 },
|
||||
pass: lowerIsBetter20Pct,
|
||||
},
|
||||
|
||||
{
|
||||
id: 'opus-4-7-literal-interpretation-sonnet',
|
||||
overlayPath: 'model-overlays/opus-4-7.md',
|
||||
model: 'claude-sonnet-4-6',
|
||||
trials: 10,
|
||||
concurrency: 3,
|
||||
direction: 'higher_is_better',
|
||||
allowedTools: ['Read', 'Glob', 'Grep', 'Bash', 'Edit', 'Write'],
|
||||
maxTurns: 15,
|
||||
setupWorkspace: setupLiteralWorkspace,
|
||||
userPrompt: 'Fix the failing tests. Preserve the specified behavior and repair the implementation.',
|
||||
metric: (_r, dir, deadlineAt) => {
|
||||
if (!dir) throw new Error('literal fixture metric needs its workspace');
|
||||
return correctLiteralTargets(dir, deadlineAt);
|
||||
},
|
||||
metricName: 'correct_target_behaviors',
|
||||
taskCorrect: (metric) => metric === 3,
|
||||
allowedChanges: ['src/auth.ts', 'src/billing.ts', 'src/notifications.ts'],
|
||||
comparison: { direction: 'higher_is_better', minimum: 0, maximum: 3 },
|
||||
pass: higherIsBetter20Pct,
|
||||
},
|
||||
];
|
||||
|
||||
// Validate at module load so a broken fixture fails fast at test startup,
|
||||
|
||||
Reference in new issue
Block a user