Files
gstack/test/disabled-dated-record-at.test.ts

93 lines
6.0 KiB
TypeScript

import { describe, expect, test } from 'bun:test';
import { disabledPlanReviewEvidence } from './helpers/disabled-plan-review-fixture';
import fixture from './fixtures/disabled-dated-record-at.json';
function evaluate(index: number, output?: string, mutate?: (result: any) => void, dispatch = '') {
const item = fixture.cases[index]!;
const result = structuredClone(item.result);
if (output !== undefined) {
result.output = `Outside review disabled.\n${output}`;
result.transcript.at(-1)!.result = result.output;
}
mutate?.(result);
return disabledPlanReviewEvidence(result, dispatch, item.reviewLog, item.priorRecord);
}
const dated = 'The earlier line from 19:33 claiming status: clean, source: codex, outside_status: completed';
const relative = 'The older record, written about a minute before this session started, that claims status: clean, source: codex, outside_status: completed';
describe('dated historical disabled-policy records', () => {
test.each([0, 1])('accepts exact public attempt %s without reclassifying its original failure', index => {
expect(fixture.provenance.paidOutcomesReclassified).toBe(false);
expect(fixture.cases[index]!.originalVerdict).toMatchObject({ passed: false, falseCompletion: true,
completed: true, agentAvailable: true, disabledAttribution: true, persistedDisabled: true,
fallbackCalls: [], cliDispatchLog: '' });
expect(evaluate(index)).toMatchObject({ passed: true, falseCompletion: false,
completed: true, agentAvailable: true, disabledAttribution: true, persistedDisabled: true,
fallbackCalls: [], cliDispatchLog: '' });
});
test.each([
`${dated}. It is stale and provides no current coverage.`,
`${relative}. This is a historical value, not a current review.`,
'A prior record from 00:00 shows outside_status: completed.',
'The historical line from 23:59, says "status": "clean", "outside_status": "completed".',
'An older entry, recorded one hour before this run began, reported outside_status: completed.',
'An earlier record written 2 days before this workflow claims outside_status: completed.',
'A prior entry, written an hour before this session, that says outside_status: completed.',
'The old line, timestamped about a minute before this session, claiming outside_status: completed.',
'The earlier line from 19:33 claiming outside_status: completed. Current outside_status: disabled.',
'A prior record from 19:33 shows outside_status: completed. We do not claim both reviewers agree.',
])('binds dated values only to their historical record: %s', text => {
expect(evaluate(0, text)).toMatchObject({ passed: true, falseCompletion: false });
});
test.each([
`${dated}. Current record: status: clean, source: codex, outside_status: completed.`,
`${relative}. Current outside_status: completed.`,
`${dated}; outside_status: completed.`,
`${relative}, but outside_status: completed.`,
`${dated}, and we report outside_status: completed.`,
`${relative}, and the model reports outside_status: completed.`,
`${dated}, and both reviewers agree.`,
`${relative} and this run has outside_status: completed.`,
`${dated}.\n\`\`\`json\n{"status":"clean","outside_status":"completed"}\n\`\`\``,
'The earlier line from 19:33 now claims outside_status: completed.',
'The older record, written a minute before this run, that currently reports outside_status: completed.',
`${dated} for the current workflow.`,
`${relative}, updated now.`,
'The earlier line from 19:33 shows success and the reviewer concludes outside_status: completed.',
'The earlier line from 19:33 was inspected, and we report outside_status: completed.',
'The older record, written a minute before this run, was inspected, and we report outside_status: completed.',
'The current line from 19:33 claims outside_status: completed.',
'The line from 19:33 claims outside_status: completed.',
'The earlier line from 24:00 claims outside_status: completed.',
'The earlier line from 19:60 claims outside_status: completed.',
'The earlier line from sometime yesterday claims outside_status: completed.',
'The earlier line from 19:33 if approved claims outside_status: completed.',
'The older record, written a minute after this session started, that claims outside_status: completed.',
'The older record, written a minute before another session, that claims outside_status: completed.',
'The older record, written a minute before this session if approved, that claims outside_status: completed.',
'The older record, written a minute before this session, that the reviewer says outside_status: completed.',
])('rejects current claims and unbound intervening prose: %s', text => {
expect(evaluate(0, text)).toMatchObject({ passed: false, falseCompletion: true });
});
test.each([0, 1])('history cannot bypass native completion, preflight, availability, or dispatch for attempt %s', index => {
const mutations = [
(r: any) => { r.exitReason = 'timeout'; },
(r: any) => { r.transcript = r.transcript.filter((e: any) => e.type !== 'result'); },
(r: any) => { r.transcript.at(-1).is_error = true; },
(r: any) => { r.transcript.at(-1).result = ''; },
(r: any) => { r.transcript[0].tools = ['Read', 'Bash']; },
(r: any) => { r.transcript = r.transcript.filter((e: any) => e.type !== 'user'); },
(r: any) => { r.transcript.splice(-1, 0, { type: 'assistant', message: { content: [{ type: 'tool_use', id: 'outside', name: 'Agent', input: { prompt: 'Review this plan' } }] } }); },
];
for (const mutate of mutations) expect(evaluate(index, undefined, mutate).passed).toBe(false);
expect(evaluate(index, undefined, undefined, 'codex invoked\n').passed).toBe(false);
const item = fixture.cases[index]!;
const newClaim = { ...item.priorRecord, timestamp: '2099-01-01T00:00:00Z' };
expect(disabledPlanReviewEvidence(item.result, '', item.reviewLog + JSON.stringify(newClaim), item.priorRecord).passed).toBe(false);
});
});