From fd5754083aee8feed9552f27e52e52900c568716 Mon Sep 17 00:00:00 2001 From: Codex Agent Date: Sat, 6 Jun 2026 13:26:44 +0800 Subject: [PATCH] fix: keep CaseRun autoEvaluation summaries false Keep CaseRun build and collect summaries aligned with evidence.autoEvaluation=false so flow-only runs do not look auto-graded. Co-Authored-By: Codex --- tools/hwlab-cli/caserun.test.ts | 2 ++ tools/src/hwlab-caserun-lib.ts | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/tools/hwlab-cli/caserun.test.ts b/tools/hwlab-cli/caserun.test.ts index ba73ac31..596e6c30 100644 --- a/tools/hwlab-cli/caserun.test.ts +++ b/tools/hwlab-cli/caserun.test.ts @@ -164,8 +164,10 @@ test("case run orchestrates agent prompt, diff capture, and compile evidence wit assert.equal(result.payload.agent.stageStatus, "completed"); assert.equal(result.payload.agent.traceId.startsWith("trc_case_"), true); assert.match(result.payload.agentDiff.statusShort, /projects\/01_baseline\/main\.c/u); + assert.equal(result.payload.build.autoEvaluation, false); assert.equal(result.payload.build.hwpodExitCode, 0); assert.equal(result.payload.build.keilStatus, "completed"); + assert.equal(result.payload.collect.autoEvaluation, false); const prompt = await readFile(path.join(cwd, ".state", "hwlab-cli", "caserun", "run-agent-flow", "agent-prompt.md"), "utf8"); assert.match(prompt, /without auto-grading/u); diff --git a/tools/src/hwlab-caserun-lib.ts b/tools/src/hwlab-caserun-lib.ts index f2227b09..faaa6ddd 100644 --- a/tools/src/hwlab-caserun-lib.ts +++ b/tools/src/hwlab-caserun-lib.ts @@ -264,7 +264,7 @@ export async function collectCaseRun(context: CaseContext, prepared?: PreparedCa caseRepo: run.caseRepo, caseRepoFiles: files, status: evidence.status, - autoEvaluation: evidence.autoEvaluation === false + autoEvaluation: false }; return ok("case.collect", { caseId: run.caseId, runId: run.runId, runDir: run.runDir, compileOnly: true, summary, evidence, run }, "completed"); } @@ -863,7 +863,7 @@ function prepareSummary(run: PreparedCaseRun) { } function buildSummary(evidence: any) { - return { status: evidence.status, autoEvaluation: evidence.autoEvaluation === false, hwpodExitCode: evidence.hwpod?.exitCode ?? null, jobId: evidence.keilJob?.jobId ?? null, keilStatus: evidence.keilJob?.status ?? null, artifacts: evidence.artifacts ?? [] }; + return { status: evidence.status, autoEvaluation: false, hwpodExitCode: evidence.hwpod?.exitCode ?? null, jobId: evidence.keilJob?.jobId ?? null, keilStatus: evidence.keilJob?.status ?? null, artifacts: evidence.artifacts ?? [] }; } function renderEvidenceSummary(evidence: any) {