feat(review): 跳过病例表只进快照;规模表 review 行注明已接受

负责人 2026-10-17:跳过病例.csv 不放进医生目录,只留在 snapshot/,病例总表和问题清单已用大白话说了同样的内容;review 行数超预期一倍,原因对照表本来就该这么长,接受。

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-17 10:33:10 -04:00
parent 35e77777e3
commit 9d82210f31
5 changed files with 23 additions and 14 deletions
+10 -4
View File
@@ -89,7 +89,6 @@ BLANK = [""] * 11
ANSWER_HEADERS = {
"化名对照.csv": ["化名", "病例号", "视频号"],
"诊断.csv": ["化名", "病例号", "临床表诊断编码", "超声表诊断编码", "MR表诊断编码", "诊断名"],
"跳过病例.csv": ["病例", "检查编号", "检查说明", "文件", "列", "涉及值"],
"报告复核句.csv": ["化名", "路", "命中的词", "所在句子"],
}
CASE_FILES = {"临床信息.csv", "超声报告.pdf", "MR报告.pdf", "关键帧"}
@@ -281,7 +280,7 @@ def test_directory_layout(packed: Packed) -> None:
def test_every_csv_has_bom_and_no_placeholder_for_missing(packed: Packed) -> None:
csvs = sorted(packed.pack.rglob("*.csv"))
assert len(csvs) == 2 + 4 + 4 * 2
assert len(csvs) == 2 + 3 + 4 * 2
for path in csvs:
for row in _csv(path):
assert not {"null", "None", "NaN", "nan"} & set(row), path
@@ -435,7 +434,7 @@ def test_raw_problem_list_in_snapshot(packed: Packed) -> None:
"""程序原文照任务书 03 的写法留在快照里,不进医生的目录。"""
assert not (packed.pack / "问题清单_原文.csv").exists()
rows = _csv(packed.result.run_dir / "snapshot" / "问题清单_原文.csv")
skipped = {row[0]: row for row in _csv(packed.pack / "标准答案" / "跳过病例.csv")[1:]}
skipped = {row[0]: row for row in _csv(packed.result.run_dir / "snapshot" / "跳过病例.csv")[1:]}
fit_failed = [f"{slot} 未取到:{FIT_FAILED}" for slot in DYNAMIC]
p008 = {
"B0": "视频开头没有观测到稳定的增强前基线(基线是估计的),B0 不定义",
@@ -551,12 +550,19 @@ def test_copies_are_byte_identical(packed: Packed) -> None:
for source, name in (
("aliases.csv", "化名对照.csv"),
("diagnoses.csv", "诊断.csv"),
("skipped.csv", "跳过病例.csv"),
("review.csv", "报告复核句.csv"),
):
assert (packed.pack / "标准答案" / name).read_bytes() == (answers / source).read_bytes()
def test_skipped_table_only_in_snapshot(packed: Packed) -> None:
"""跳过清单是程序原文:不进医生目录,原样拷进快照(负责人 2026-10-17)。"""
assert not [p for p in packed.pack.rglob("*") if p.name == "跳过病例.csv"]
copied = packed.result.run_dir / "snapshot" / "跳过病例.csv"
assert copied.read_bytes() == (packed.build.answers_dir / "skipped.csv").read_bytes()
assert _csv(copied)[0] == ["病例", "检查编号", "检查说明", "文件", "列", "涉及值"]
def _tool_output(tool: str, *args: str) -> str:
path = shutil.which(tool)
assert path is not None, f"找不到 {tool}"