请严格按这个监督工作流执行。你是 Codex 监督员,OpenCode 是具体执行员。你负责判 断、下达返工、等待、验收和记录;主体任务尽量让 OpenCode 完成,如果opencode出现API用尽等报错,那你就调用另一个codex来代替opencode的角色来执行任务。

你现在的任务是作为“监督员”指挥 OpenCode 完成当前文件夹内多篇论文的精读、方法拆 解、模型推导和复现材料。你自己主要负责检查、验收、诊断和下达返工指令;具体 生成、补写、改写、生成 PDF、扩充 code_annotations 等主体工作尽量交给 OpenCode 执行。

工作原则:

  1. 监督为主,执行为辅
  1. 以论文本身的文本为主,结合skills完成任务 不要出现论文原始材料包中不存在的内容。如果有PDF文档,最好先转换成md,再进行处理。可以扫描md里的内容,提取多次出现的高频词汇或者关键词,然后用网络搜索的技能去github上搜索相关的skills,必须限定为经济学领域。你可以充分借鉴本地和网络上skills说明里的内容和问题,来基于文章本身的内容进行详细的拆解。 【这一步最好停下来和我确认,这一步的目的是获得高质量的、基于论文内容本身的问题,搜索范围可以是github里的skills,也可以是论文作者,或者本研究领域的其他学者,关键是根据论文内容本身提出一系列问题list,这一步我也会根据我的阅读和思考给出我想要补充的问题】

  2. 让 OpenCode 做充分

  1. OpenCode 调用后的等待节奏
  1. 每篇论文的验收标准 每篇最终必须同时满足三类标准:
  1. 每篇最终交付物 每篇论文目录最终应至少包含:

【如果论文材料中,有原始代码,需要进行注释,按照:code_annotations 要求】 本任务中的 code_annotations 不是“代码审查说明文档”,不能把原始代码改写成 .md 文件来交付。 正确做法是: (1). 先复制原始复现代码文件到 code_annotations/。 (2). 在复制出的代码副本中添加注释,解释代码逻辑、输入输出、表格/图形对应关系、关 键估计步骤和复现风险。 (3). 必须保留原始代码扩展名: - Stata 文件保持 .do - R 文件保持 .R - MATLAB 文件保持 .m - Python 文件保持 .py - 其他语言同理,保留原文件类型 (4). 注释必须使用对应语言的注释语法: - .do 使用 、// 或 / … */ - .R 使用 # - .m 使用 % - .py 使用 # (5). 不得用 .md 文件替代正式注释代码文件。 (6). Markdown 只能作为辅助文件使用,例如 README.md、MANIFEST.md、 COVERAGE_SUMMARY.md 或 annotation_format_audit.md,不能作为代码注释主体。 (7). 如果已经生成了旧版 .md 代码说明文件,应移动到 legacy/ 或 markdown_notes_archive/,并明确说明它们只是历史审查笔记,不是正式 code_annotations 交付物。 (8). 最终验收时,code_annotations/ 的主体文件必须是保留原扩展名的注释代码副本, 而不是 .md 文档。

验收口径:

  1. 逐篇监督流程 对每篇论文按以下流程闭环:

第一步:下达 OpenCode 任务 - 调用 OpenCode 只处理当前这一篇论文。 - 要求opencode按照精读复现workflow的工作流要求和相关skill的标准进行处理,把生成的文献阅读相关内容和代码运行日志、逐行注释等产出存放在workflow下新建的对应文件夹之后,并按照workflow和相关skill的要求进行质量检查;尽量运行5小时以上的时间,质量第一,不限制token用量,如果提前完成可以再检查一遍提高质量

第二步:初审 - 检查当前文件清单。 - 统计五个主 Markdown 和 run_log 的字节数、行数。 - 检查是否有 5 个 PDF。 - 检查 code_annotations/ 文件数量和覆盖范围。 - 读取 run_log,确认 Phase 0-5 是否完整,是否存在时间倒置、耗时异常短、跳过 phase、虚假完成。 - 写入或更新 监督审计报告.mdtodo_for_opencode.md

第三步:下达 OpenCode 任务 - 调用 OpenCode 只处理当前这一篇论文。 - 明确禁止它修改监督文件,除非你专门要求。 - 指令要包含: - 哪些文件需要扩充或修订。 - 达标字节数或参考标准。 - 必须补哪些内容。 - 是否需要新增 code_annotations。 - 是否需要生成 PDF。 - 是否需要清理特殊字符。 - 完成后必须汇报修改文件、PDF 检查结果、仍有限制。

请优先补足以下问题:

要求: - 不要删除已有有效内容,只能补强、同步、清理和归档。 - 如果论文是实证论文,derivation 不要强行写结构模型,应写识别方程、估计式、变量 构造、机制检验和稳健性逻辑。 - 如果数据、软件、许可证缺失,replication 必须写清复现层级,不得伪称完整复现。

完成后请列出: 1. 实际修改/新增文件; 2. 每个 PDF 的页数、大小、U+FFFD 检查结果; 3. code_annotations 数量和覆盖范围; 4. 仍未完成或受限事项。 ” -f “论文精读复现workflow/<论文目录>/todo_for_opencode.md”

第四步:等待 - 调用 OpenCode 后等待约 10 分钟。 - 若未完成,再等 10 分钟。 - 不要频繁刷新。

第五步:独立验收 OpenCode 完成后,不直接相信它的总结。你必须自己验收: - wc -c 检查主文件体量。 - wc -l 检查行数。 - find code_annotations -type f | wc -l 检查代码注释数量。 - pdfinfo 检查每个 PDF 页数和大小。 - pdftotext 检查是否出现 U+FFFD。 - rg 检查主文件和 run_log 是否残留高风险符号。 - 读取 run_log 和 summary,确认交叉验证与四个主文件一致。 高风险符号检查口径: rg -n “|✅|❌|⚠|☒|☑|☐|✓|✔|✗|✘|⭐|│|├|└|─|┃|┗|┛|┏|┓|╔|╗|╚|╝” <相关文件>

PDF 检查口径: for f in 论文精读复现workflow/<论文目录>/*.pdf; do echo “=== \(f ===" pdfinfo "\)f” | rg “Pages|File size” pdftotext “$f” - | LC_ALL=C rg -n “” || true done

第六步:返工 如果发现问题: - 写入 验收记录.md,标明“未通过”和具体问题。 - 把失败清单交给 OpenCode 做窄范围返工。 - 返工指令要非常具体,例如: - “只改 run_log 和 PDF” - “只清理特殊字符” - “只同步质量检查报告” - “不要改主分析 Markdown” - 返工后再次验收。

第七步:通过 通过后更新 验收记录.md: - 状态写为“已通过本轮验收”。 - 勾选所有验收项。 - 写明主文件体量、code_annotations 数量、PDF 页数、U+FFFD 检查结果、仍有限制。 - 最后更新 监督总控.md

  1. 全局总控 完成所有论文后: