diff --git a/eval/diagnosis/stats.ts b/eval/diagnosis/stats.ts index 06d977a..0ca0156 100644 --- a/eval/diagnosis/stats.ts +++ b/eval/diagnosis/stats.ts @@ -300,7 +300,7 @@ for (const s of summaries) { ); for (const r of a.diagnosisRounds) { text.push( - `${r.round} | ${r.balanceBefore} | ${r.expectedDiagnosis ? (r.diagnosed ? "做" : "不做") : "无(余额<2)"} | ${r.chosen.join(",") || "—"} | ${r.verificationCount} | ${r.repairCount} | ${r.droppedCount} | ${r.ranCount} | ${r.charged} | ${r.predictionBeforeStart === null ? "—" : r.predictionBeforeStart ? "是" : "否"} | ${r.settlementCount}`, + `${r.round} | ${r.balanceBefore} | ${r.expectedDiagnosis ? (r.diagnosed ? "做" : r.selectDecided ? "不做" : "还没到选实验") : "无(余额<2)"} | ${r.chosen.join(",") || "—"} | ${r.verificationCount} | ${r.repairCount} | ${r.droppedCount} | ${r.ranCount} | ${r.charged} | ${r.predictionBeforeStart === null ? "—" : r.predictionBeforeStart ? "是" : "否"} | ${r.settlementCount}`, ); } text.push( @@ -379,7 +379,7 @@ for (const s of summaries) { for (const r of a.rounds) { const dRound = a.diagnosisRounds.find((x) => x.round === r.round)!; text.push( - `第 ${r.round} 轮(基线 ${r.baseline}):诊断${dRound.diagnosed ? `做了,${dRound.ranCount} 个实验` : dRound.expectedDiagnosis ? "没做(净值不大于 0)" : "没有(余额<2)"};采纳 ${r.adopted ?? "没有"}${r.adoptedScore === null ? "" : `,分数 ${f(r.adoptedScore)},离已知最好 ${f(r.knownBestGap)}`}`, + `第 ${r.round} 轮(基线 ${r.baseline}):诊断${dRound.diagnosed ? `做了,${dRound.ranCount} 个实验` : dRound.expectedDiagnosis ? (dRound.selectDecided ? "没做(净值不大于 0)" : "还没到选实验") : "没有(余额<2)"};采纳 ${r.adopted ?? "没有"}${r.adoptedScore === null ? "" : `,分数 ${f(r.adoptedScore)},离已知最好 ${f(r.knownBestGap)}`}`, ...r.candidates.map( (c) => ` 候选 ${c.candidate}:实测 ${f(c.score)},合并 ${range(c.merged)},落点 ${c.band ?? "—"},作者自评 ${c.authorEstimates.map((u) => `${u.author} ${range(u.range)}`).join("、") || "—"}${c.notRunEvents.length > 0 ? ",不跑:" + c.notRunEvents[0]!.reason : ""}`, diff --git a/eval/lib/diagnosis.ts b/eval/lib/diagnosis.ts index 0872ab5..84fc669 100644 --- a/eval/lib/diagnosis.ts +++ b/eval/lib/diagnosis.ts @@ -250,6 +250,7 @@ export function diagnosisAccounts(records: LedgerRecord[]) { balanceBefore, expectedDiagnosis: balanceBefore >= 2, anyDiagnosisRecord, + selectDecided: select !== null, diagnosed: select?.output.diagnose ?? false, chosen: select?.output.chosen ?? [], chosenNet: select?.output.chosenNet ?? null,