mirror of
https://github.com/garrytan/gstack.git
synced 2026-10-03 09:56:57 +02:00
test(qa-functional): fix mode requires only the happy scenario from the model (carried byte-identical from #3002 183b01f4..3e6074b4)
verifyQANativeRegression already reruns all eight webhook scenarios on the repaired source, so the model-side eight-scenario requirement in fix mode duplicated harness coverage and pushed qa-functional-webhook-fix past its budget. qa-only still requires every scenario.
This commit is contained in:
1 parent
1643cd94de
commit
271c14078b
4 files changed
+37
-13
No files matched your search
@@ -188,6 +188,22 @@ describe('functional evidence and native regression controls', () => {
|
||||
} finally { fixture.cleanup(); }
|
||||
});
|
||||
|
||||
test('webhook scenario coverage binds the report-only run; the fix run needs the happy path and relies on the post-repair recheck of all eight', () => {
|
||||
const fixture = createQAFunctionalFixture('webhook');
|
||||
try {
|
||||
const calls: NativeCall[] = [{ tool: 'Read', input: { file_path: 'qa/sections/system-functional.md' }, output: 'Functional QA native instruction read '.repeat(8) }];
|
||||
for (const scenario of ['happy', 'concurrent-ab', 'concurrent-ab', 'cancel', 'dependency']) recordedProbe(fixture, calls, ['probe.ts', scenario]);
|
||||
const result = nativeCapture(calls);
|
||||
const section = { path: 'qa/sections/system-functional.md', content: calls[0]!.output };
|
||||
const missing = (mode: 'qa' | 'qa-only') => qaFunctionalVerdict(fixture, mode, result, observation, {}, section)
|
||||
.filter(failure => /^missing native [a-z-]+ probe$/.test(failure)).sort();
|
||||
expect(missing('qa-only')).toEqual(['missing native duplicate probe', 'missing native partial probe', 'missing native reject probe', 'missing native concurrent-ba probe'].sort());
|
||||
expect(missing('qa')).toEqual([]);
|
||||
const noHappy = nativeCapture(calls.filter(call => !(call.tool === 'Bash' && call.input.command === 'bun run probe -- happy')));
|
||||
expect(qaFunctionalVerdict(fixture, 'qa', noHappy, observation, {}, section)).toContain('missing native happy probe');
|
||||
} finally { fixture.cleanup(); }
|
||||
});
|
||||
|
||||
test('native-shaped adverse receipts cannot hide stream, input, state or interruption failures', () => {
|
||||
const cli = createQAFunctionalFixture('cli', { healthy: true });
|
||||
const webhook = createQAFunctionalFixture('webhook', { healthy: true });
|
||||
|
||||
Reference in new issue
Block a user