Audit pipeline PR #9: determinism + fact extraction + verifier gate + KB stats #9

Merged
profit merged 34 commits from test/enrich-prd-pipeline into main 2026-04-23 05:29:39 +00:00
2 changed files with 14 additions and 4 deletions
Showing only changes of commit 1e00eb4472 - Show all commits

View File

@ -112,9 +112,19 @@ export async function runInferenceCheck(claims: Claim[], diff: string): Promise<
{ role: "system", content: systemMsg },
{ role: "user", content: userMsg },
],
max_tokens: 3000,
temperature: 0.2,
think: true, // T3 overseer should reason — JSON shape is still required
// Deterministic classification mode — temp=0 is greedy-sample,
// so identical input → identical output on the same model
// version. think=false disables the reasoning trace that was
// letting variable prose leak into the classification output
// and inflate the audit_lessons signature set (observed as
// sig_count creep across the 9-run empirical test).
//
// max_tokens tightened to 1500 — the structured JSON response
// fits comfortably in 1500 tokens for typical PRs (~7 claims);
// the old 3000 just gave the model room to wander.
max_tokens: 1500,
temperature: 0,
think: false,
}),
signal: AbortSignal.timeout(CALL_TIMEOUT_MS),
});

View File

@ -28,7 +28,7 @@ const AUDIT_LESSONS = `${REPO}/data/_kb/audit_lessons.jsonl`;
const VERDICTS_DIR = `${REPO}/data/_auditor/verdicts`;
const POLL_INTERVAL_MS = 5_000;
const AUDIT_TIMEOUT_MS = 180_000;
const RUNS = 9;
const RUNS = Number(process.env.LH_AUDIT_RUNS ?? 9);
const TARGET_PR = Number(process.env.LH_AUDIT_PR ?? 8);
async function sh(cmd: string): Promise<{ stdout: string; stderr: string; code: number }> {