Files
tyx_AI_xhs/scripts/record-wp7-02-manual-review.mjs
suyx 05949230ca
Dada P0-A isolated Windows CI / validate-and-package (push) Failing after 2m11s
fix(wp7-02): preserve independent mixed model evidence
2026-08-04 17:35:38 +08:00

48 lines
2.4 KiB
JavaScript

import { existsSync, readFileSync, writeFileSync } from "node:fs";
import { resolve } from "node:path";
import { WP7_02_MODEL_IDS } from "./lib/wp7-02-external-contract.mjs";
import { validateSanitizedEvidence } from "./lib/wp7-02-controlled-executor.mjs";
import { reviewIndependentModelEvidence } from "./lib/wp7-02-manual-review.mjs";
const caseDirectory = process.env.DADA_WP7_02_CASE_DIR;
const runId = process.env.DADA_TDD_RUN_ID;
const confirmed = process.argv.includes("--confirm-manual-review");
function readJson(path) {
return validateSanitizedEvidence(JSON.parse(readFileSync(path, "utf8")));
}
function output(value, error = false) {
const serialized = JSON.stringify(validateSanitizedEvidence(value));
if (error) console.error(serialized); else console.log(serialized);
}
try {
if (!confirmed || !caseDirectory || !runId) throw new Error("WP7_02_MANUAL_REVIEW_CONFIRMATION_REQUIRED");
const entries = [];
for (const modelId of WP7_02_MODEL_IDS) {
const directory = resolve(caseDirectory, modelId.replaceAll(".", "_"));
const paths = ["contract-matrix.json", "external-calls.json", "readiness.json", "redaction.json"]
.map((name) => resolve(directory, name));
if (paths.some((path) => !existsSync(path))) throw new Error("WP7_02_MANUAL_REVIEW_EVIDENCE_MISSING");
const matrix = readJson(paths[0]);
const externalCalls = readJson(paths[1]);
const readiness = readJson(paths[2]);
const redaction = readJson(paths[3]);
entries.push({ directory, externalCalls, matrix, modelId, readiness, redaction });
}
const result = reviewIndependentModelEvidence(entries, { reviewedAt: new Date().toISOString(), runId });
for (let index = 0; index < entries.length; index += 1) {
const review = validateSanitizedEvidence(result.reviews[index]);
writeFileSync(resolve(entries[index].directory, "manual-review.json"), `${JSON.stringify(review, null, 2)}\n`);
}
output({ reviewed: result.reviews.map(({ model_id, status }) => ({ model_id, status })), run_id: runId, status: result.status }, result.status !== "passed");
if (result.status !== "passed") process.exitCode = 3;
} catch (error) {
const message = error instanceof Error ? error.message : String(error);
const code = /^WP7_02_[A-Z0-9_:]+$/.test(message) ? message : "WP7_02_MANUAL_REVIEW_FAILED";
output({ code, run_id: runId, status: "externally_blocked" }, true);
process.exitCode = 3;
}