关掉未登录就会触发约 20 秒计算的入口,并记下 BUG-1342。普通导出的逐字节锁保留。自测 tsc 0 错,lint 0 error / 123 warning,改到的前端测试 fail=0,两份 Python 测试通过,test:db 失败 13 条与 Windows 已知清单一致。 Co-Authored-By: Grok (agent loop)
32 lines
1.9 KiB
TypeScript
32 lines
1.9 KiB
TypeScript
import assert from "node:assert/strict";
|
|
import { readFileSync } from "node:fs";
|
|
import test from "node:test";
|
|
|
|
import { homeSurface as pageSource } from "./home-surface.ts";
|
|
|
|
const rowSource = readFileSync(new URL("../src/components/chat-message-row.tsx", import.meta.url), "utf8");
|
|
const contentSource = readFileSync(new URL("../src/components/chat-message-content.tsx", import.meta.url), "utf8");
|
|
const globalStyles = readFileSync(new URL("../src/app/globals.css", import.meta.url), "utf8");
|
|
|
|
test("assistant messages fold the user-facing Technique Audit Table and never remount the internal panel", () => {
|
|
assert.doesNotMatch(rowSource, /EvidenceAuditPanel/);
|
|
assert.doesNotMatch(rowSource, /claimStatus=\{message\.techniqueTruth\}/);
|
|
assert.doesNotMatch(rowSource, /workflowReceipt=\{message\.workflowReceipt\}/);
|
|
assert.match(contentSource, /TechniqueAuditDisclosure/);
|
|
// 原值总展示 receipt;新值寒暄明确无 auditRows,咨询保持原字段。
|
|
assert.match(rowSource, /auditRows=\{smalltalk \? undefined : message\.agentExecutionReceipt\?\.techniqueAuditTable\}/);
|
|
// 原值: 读 evidence-audit-panel 源码并断言内部表文案,以及 globals.css 里 .evidence-audit-panel / .raw-evidence-receipt 存在
|
|
// 新值: 删掉这些正向断言。聊天行不得挂内部面板,读者侧 TechniqueAuditDisclosure 与 .technique-audit / .markdown-table 保留
|
|
// 原因: 内部面板组件与对应死样式已删除,否定合同不放宽
|
|
assert.match(globalStyles, /\.technique-audit >/);
|
|
assert.match(globalStyles, /\.markdown-table/);
|
|
});
|
|
|
|
test("consult responses persist workflow receipt headers for evidence rendering", () => {
|
|
assert.match(pageSource, /x-jyotish-workflow-route/);
|
|
assert.match(pageSource, /x-jyotish-workflow-status/);
|
|
assert.match(pageSource, /x-jyotish-precise-timing/);
|
|
assert.match(pageSource, /x-jyotish-missing-layers/);
|
|
assert.match(pageSource, /workflowReceipt/);
|
|
});
|