完成第八篇当前运行 demo-01 的提取阶段。资料、工具说明和实验记录均为教学模拟。
允许读取本项目 README.md、contract.json、workflow.py、validate_output.py，以及 runs/demo-01/state.json、events.jsonl、evidence.txt 和 read/ 下的六份来源检查点。
先运行 python workflow.py status demo-01，只有输入/产物复核通过、状态为 waiting_input、阶段为 extract 时继续。否则说明实际停止原因，不初始化、不补造来源。
从实际取得的证据提取 contract.json 规定顺序的 12 条记录，顶层为 schema_version、demand_id、records，每条键为 record_id、tool、version、field、value、unit、state、source_refs、note。
保持 D5-v1 契约：state 为 known、missing 或 conflict；missing/conflict 的 value 是 null，零值与缺失分开；原始耗时的单位只依资料定义转换，不从字段名猜测。冲突保留双方数值与解释；每条 source_refs 指向实际提供的原文，note 为单行非空字符串。
只创建 runs/demo-01/inbox/candidate-v1.json，不覆盖已有候选。已存在时先停止并报告，待读者选新版本名。不要读取独立答案、其他模型输出或其他运行。
写入后只运行 python workflow.py resume demo-01 --candidate inbox/candidate-v1.json，记录真实退出码和状态。程序结构检查通过只说明结构与定位存在，事实含义仍需人工核对。
结束时报告实际写入位置、记录数量、状态、待审稿位置和未完成项。不得自行执行 approve、修改 state.json、扩权、联网、发送、发布或把 waiting_review 写成 completed。
如果没有文件/终端工具，返回完整 JSON 文本供读者另存，并明确本轮没有实际创建文件或运行程序。
