更新报告操作说明,使其与这次代码变更一致。 先阅读当前 tools/summary.py 和受影响的 README 小节。 编辑前,把配置名称、允许值、默认值、错误和迁移行为 对应到源码。以当前实现为依据,不要把前一个 Agent 的概述 扩写成代码里没有的新功能。 同时替换相互矛盾的示例与说明文字。说明聚焦于怎样选择格式, 以及怎样从无效配置中恢复。 报告实际运行过哪些命令,附环境和结果。 未执行的检查标为待办。返回文档差异,以及任何需要单独作出 实施决定的代码与文档冲突。 完整变更后脚本 tools/summary.py: ```python import json import os import sys def main(): output = os.environ.get("REPORT_OUTPUT", "text") if output not in {"text", "json"}: print("REPORT_OUTPUT must be text or json", file=sys.stderr) return 2 summary = {"open": 3, "total": 8} if output == "json": print(json.dumps(summary, sort_keys=True)) else: print(f"Open: {summary['open']}; total: {summary['total']}") return 0 if __name__ == "__main__": raise SystemExit(main()) ``` 完整旧README小节,英文原文: ````markdown ## Print a report Run the script from the repository root: ```sh REPORT_FORMAT=json python3 tools/summary.py ``` Set REPORT_FORMAT to json for structured output. Omit it for text. ```` 完整旧README小节,中文对照: ````markdown ## 打印报告 在仓库根目录运行脚本: ```sh REPORT_FORMAT=json python3 tools/summary.py ``` 将 REPORT_FORMAT 设为 json 可获得结构化输出。不设置则输出文本。 ```` 源码事实与文档位置映射: | 示例源码中的事实 | 文档位置 | 需要修改的内容 | | --- | --- | --- | | `os.environ.get("REPORT_OUTPUT", "text")` | 配置说明与快速示例 | 替换旧变量,说明默认值 | | 允许值集合是 `{"text", "json"}` | 配置表 | 列出两个准确的小写值 | | 无效值在格式化前返回 `2` | 错误处理 | 说明错误及不输出报告的行为 | | 错误打印到 `sys.stderr` | 错误处理 | 区分诊断信息与报告输出 | | 展示的脚本不再引用 `REPORT_FORMAT` | 迁移说明 | 解释旧配置不再被读取 | | JSON 分支使用 `summary` 对象 | JSON 示例 | 只展示本例实际包含的两个字段 | | 主程序以 `main()` 的返回值退出 | 退出行为 | 说明预期的成功与失败退出码 |