docs(stage1): add a step-by-step adjudication guide for a first-time adjudicator

Twelve sections covering the single editable file, the two signed files that
must never be touched, safe ways to open a UTF-8 CSV, every one of the 14
columns, the exact attestation string, a worked example, the five decision
groups, the validation command, and what done looks like.

Two prohibitions are stated explicitly: do not edit the signed reviewer files,
and do not run build_human_review_packets.py, which overwrites them with blank
templates. Also flags that adjudicators cannot use needs_source even though
52 rows carry it from reviewer 1.

Every hardcoded string was verified against source: the attestation matches the
validator byte for byte, the allowed final_decision set matches, all 14 columns
are covered with no phantom or missing ones, and all six referenced paths exist.

Corrects an earlier claim in the record. The review_date problem is not one
problem. Reviewer 2 has 2026/9/20 on all 84 rows, a pure formatting issue.
Reviewer 1 has 84 distinct dates incrementing daily to 2026/12/12 - an Excel
drag-fill, mostly future-dated. That column cannot be fixed by reformatting,
since the values themselves are wrong; only reviewer 1 can supply the real date.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Jinotech
2026-09-21 00:23:31 +12:00
co-authored by Claude Opus 5
parent ab175ce253
commit 911d534407
2 changed files with 299 additions and 1 deletions
+20 -1
View File
@@ -1,6 +1,6 @@
# 项目进度档案
版本:1.25
版本:1.26
建立日期:2026-09-20
当前总状态:`in_progress`
当前阶段:阶段 1 `in_progress`;题库、回答字典、919,863 行回答长表及三调查设计字段/方法均已核验;Gate 1 仅剩主要结局的两名实际人工审核者签署
@@ -1055,3 +1055,22 @@ Gate 0 当前判定:`passed`。四项交付物齐备;目标总体政策、
1. 建议为 `build_human_review_packets.py` 增加 fail-closed 防护,禁止覆盖已签署的审核表(本次未授权,未实施);
2. 由裁决人按 A-20260921-072 的三个政策问题成组填写 `final_decision`、身份、日期与声明;
3. 完成后重跑验证器与 Gate 1 验收。
### A-20260921-074:编写裁决操作指南并发现 reviewer 1 日期为拖拽填充伪值
- 时间:2026-09-21T00:22:59+12:00;阶段 1Gate 1 保持 `in_progress`
- 动作:行动前完整读取工作流与本档案并核对干净 Git 状态。按用户要求编写面向零基础裁决人的分步指南;撰写过程中逐项核对指南内所有硬编码字符串与路径。未修改任何审核表或生成物,未替任何人裁决。
- 输出:新增 `research/stage1/adjudication_instructions.md`12 节),与既有 `human_review_instructions.md` 同目录同语言同风格。
- 指南内容要点:唯一可编辑文件与两份只读签署文件的边界;Excel 破坏 UTF-8 与日期的两类风险及三种安全打开方式;14 个列的逐列说明(4 列已填禁改、4 列必填、5 列仅在 `approve_with_correction` 时填、1 列建议填);`final_decision` 仅允许 `approve`/`approve_with_correction`/`reject`;逐行操作步骤与实例;按五个分组批量裁决;验证命令与错误对照表;完成标准。
- **明确写入指南的两条禁令:** 不得编辑两份签署审核表;不得运行 `build_human_review_packets.py`(该脚本会以空白模板覆盖两份签署表)。
- **裁决人不得使用 `needs_source`。** 验证器第 82 行仅接受三值,而 reviewer 1 有 52 行为 `needs_source`。指南明确说明这 52 行必须收敛为三值之一,并说明 `reject` 是工作流允许的正当结果。
- 事实核验(全部通过):裁决人声明串与验证器第 84 行逐字节一致;`final_decision` 允许值集与验证器一致;指南提及的列与 CSV 的 14 列**完全互相覆盖**(无虚构列、无遗漏列);6 个引用路径全部存在;五个分组行数 27+18+18+14+7=84。
- **本次新发现(更正此前记录):** 此前记录与说明将 `review_date` 问题一律描述为“`2026/9/20` 非 ISO 格式”。逐行核对后该描述**仅对 reviewer 2 成立**84 行同为 `2026/9/20`)。**reviewer 1 的 84 行是 84 个互不相同的日期**,自 `2026/9/20` 起逐日递增至 `2026/12/12`,为 Excel 拖拽填充(drag-fill)特征;其中绝大多数晚于当前日期 2026-09-21,属未来日期,首行之后不可能是真实审核日期。
- **该发现改变修复性质:** reviewer 1 的日期**不能以格式规范化修复**,因为值本身错误而非仅形状错误。此前提出的“将 `review_date` 改为 ISO”对 reviewer 1 并不适用——那会把拖拽产生的伪日期固化为合法 ISO 日期。真实日期只能由 reviewer 1 本人提供。指南第 10 节已按此改写。
- 检查:指南所有断言经脚本核对;未运行任何构建脚本;两份签署审核表未读写改动。Gate 1 状态未变。
- 未解决问题:84 项裁决待人工执行;reviewer 1 日期需本人提供真实值、reviewer 2 日期需本人授权改格式;`build_human_review_packets.py` 覆盖风险未加防护;13 项未关闭冲突;2021 提示句缺口。
- 下一步:
1. 将本指南与裁决表交付裁决人;
2. 请 reviewer 1 提供真实审核日期,请 reviewer 2 授权日期格式更正;
3. 裁决完成后重跑验证器与 Gate 1 验收。