git:20260726.9e1f595 to git:20260727.45ec00f

49 added, 18 removed. Audit A to A.

---
name: double6-deep-research
description: 面向开放全景、固定对象比较和有界决策问题,使用宿主已有搜索与网页读取能力完成多来源深度研究并交付完整、可读、可核验的报告。用于用户要求深入调研某一主题、比较多个对象、形成有证据的决策建议、梳理某领域截至当前的研究进展或核验一组复杂事实,也适用于英文 deep research、landscape review、evidence-based comparison 请求;不用于任务状态查询、简单事实查询、单页摘要、热点推送、PDF 翻译或基础搜索工具横评。
---
# Double6 Deep Research
目标是回答用户的问题并交付一份真正可读的完整报告。来源数量、ledger 大小、字段数量和
validator 通过都不能代替报告质量。
## 1. 冻结任务合同
把用户请求拆成明确的问题清单,记录:
- 研究对象、时间范围、地域和排除项;
- 每个必须回答的问题;
- 用户需要的输出形态、比较维度和决策用途;
- 哪些结论需要当前信息,哪些可以使用稳定历史材料。
有关键歧义且不同解释会改变报告时再提问;否则采用保守假设并在报告中说明。报告语言和
格式跟随用户请求;用户未指定时使用其提问语言。
成本、时延、部署、采用、风险等用户明确要求的维度必须分别成为可检查的问题,不能合并成
“应考虑这些因素”的泛化清单。
## 2. 制定自适应研究计划
- 为每个问题确定最合适的来源角色,例如官方材料、论文或技术报告、独立评测、可靠行业
- 分析、用户或采用证据。优先一手来源,重要争议至少寻找一个独立来源或反证。
+ 为每个问题先冻结覆盖合同:需要哪些来源类型、是否必须有利益关系独立的证据、必须执行
+ 哪些时效性/反证/遗漏检查,以及需要覆盖哪些对象和比较维度。优先一手来源;比较胜负、
+ 行动建议、风险、真实采用等结论不能只依赖利益相关方自述。
不要预先规定统一来源总数。开放全景通常需要比固定比较更多来源,但是否充分取决于:
- 每个重要问题是否已经有证据;
- 关键对象和反例是否覆盖;
- 来源是否足以区分事实、厂商自述和推断;
- 继续搜索是否仍会改变主要结论。
- 7 条或 13 条来源不能自动构成深度研究;50 条错配或重复来源同样不合格。
+ 不得把预设来源数量、搜索工具单批返回上限、耗时或完成若干轮当作充分性证明。
## 3. 研究并持续补最高缺口
只使用宿主已经提供且用户允许的搜索、网页、浏览器或材料读取能力。不要配置 provider、
读取 credential、启动自建 runtime,或执行与研究交付无关的外部操作。
- 执行至少一轮主体研究和一轮缺口检查:
+ 按以下职责循环研究:
1. 按问题而不是按网站收集材料;
2. 打开正文,区分全文、实质章节、元数据和不可访问状态;
3. 记录来源标题、发布者、URL、访问日和支持范围;时效性来源同时记录发布日期;
4. 对日期、价格、百分比、排名和建议所依赖的事实保存精确证据;
- 5. 主动搜索遗漏对象、更新材料、反证和不一致;
- 6. 对最高优先级缺口继续研究,不能因为达到某个来源数、耗时或完成若干轮就停止。
+ 5. 完成主体覆盖后,按覆盖合同检查缺少的来源角色、对象、维度、更新材料和反证;
+ 6. 再用不同策略执行对抗性饱和检查,主动寻找会改变、收窄或推翻主要结论的证据;
+ 7. 最后一轮仍改变主要结论时继续研究,直到新的饱和检查不再产生实质变化,或如实交付
+ `partial`/`blocked`。
+ 如果 WebFetch 或浏览器打开的只是导航页、目录页、登录页、脚本壳或错误页,不得标记为
+ `full_text`。优先寻找同一官方站点的正文子页、官方 PDF、仓库中的原始 LICENSE/文档或
+ 其它能直接支持该 claim 的权威材料;替代来源只能支持它实际覆盖的较窄结论。搜索结果
+ 摘要可以帮助定位正文,但不能补足正文证据。
+
不得把搜索 snippet、研究者摘要、导航页或自己写的“来源快照”冒充官方正文。需要保存
快照时,必须是宿主实际取得的页面或文档内容,并记录 SHA-256。
## 4. 先完成报告,再整理最小审计记录
报告结构由问题决定,但至少包括:
- 执行摘要:直接回答最重要的问题;
- 范围、时间点和方法;
- 按用户问题组织的主体分析;
- 必要的对象比较、冲突证据和决策建议;
- 不确定性、限制和仍未知事项;
- 可点击或可定位的来源。
不要把 source ledger、检索过程或内部字段机械展开成正文。每个章节都要形成读者可以理解
和使用的结论;建议要区分来源事实、跨来源推断和本报告的政策/行动判断。
对明确要求的量化或决策维度,给出可比数据及口径;公开数据未定位时逐项写明未知边界、
已检查的来源范围和可执行的本地测量方案,不能用模型单价或定性框架冒充任务成本、时延、
部署状态或真实采用证据。
交付目录只需:
```text
request_snapshot.md
final_report.md
research_record.json
snapshots/ # 仅在实际保存正文时需要
validation_receipt.json # 运行最小 validator 后生成
independent_review.json # 完成独立审阅后生成
```
- `research_record.json` 的最小字段见
+ `research_record.json` 使用 schema v2,最小字段见
[report-quality.md](references/report-quality.md)。只登记问题、来源、关键 claim、研究轮次
- 和停止理由,不做逐行 statement audit、候选全集回执或复杂双向 schema。
+ 和停止理由,不保存完整查询或候选全集。必须分别记录 `research_status`、
+ `research_as_of`、逐问题覆盖要求、来源材料类型和利益关系、各轮检查策略与结论影响;
+ 不要用一个模糊的 `status` 同时表达研究完成度与独立复核结果。
## 5. 停止与完成
只有同时满足以下条件才可标记 `complete`:
- 原始问题清单全部在报告中得到明确回答;
+ - 每个问题要求的来源类型、独立证据、检查、对象和维度全部覆盖;
- 没有未关闭的高优先级证据缺口;
- - 已执行缺口/反证检查;
- - 关键结论的引用可核验;
+ - 已执行覆盖缺口和对抗性饱和检查;
+ - 最后一次饱和检查没有再改变、收窄或推翻主要结论;
+ - 关键结论及引用出现在对应问题的论证章节中且可核验;
- 报告从头到尾完整可读;
- 能解释为什么继续搜索不太可能改变主要结论。
- 否则交付 `partial`,清楚列出缺失问题、当前证据和下一步;不要伪装成完整报告。
+ 否则:
+ - 已有可用证据但问题未完全闭合时交付 `partial`,逐项列出缺失问题、当前证据和下一步;
+ - 授权、工具、访问或核心证据条件使研究无法继续时交付 `blocked`,列出阻塞条件和解除条件;
+ - 不要把诚实的 `partial`/`blocked` 伪装成完整报告,也不要把它们当作 validator 失败。
+
运行最小底线检查:
```bash
+ # macOS / Linux
python3 <skill-dir>/scripts/validate_research_bundle.py <bundle-dir>
+
+ # Windows PowerShell / CMD
+ py -3 "<skill-dir>\scripts\validate_research_bundle.py" "<bundle-dir>"
```
- 脚本需要 Python 3.10 或更高版本,只使用标准库。它检查来源记录一致性、关键引用完整性、
- 完整报告存在性和明显提前停止;它不联网验证来源内容,也不判断报告是否优秀。
+ 脚本需要 Python 3.10 或更高版本,只使用标准库;Windows 没有 `py` launcher 时把命令中的
+ `py -3` 换成可用的 `python`。它按 `complete`、`partial`、`blocked` 分别检查状态合同,
+ 检查逐问题来源与检查覆盖、饱和停止、关键引用、候选文件哈希和独立复核记录。合法的部分
+ 交付返回校验成功并保留 `partial`/`blocked` 标签;脚本不联网验证来源内容,也不判断
+ 覆盖要求是否合理或报告是否优秀。
+ 所有路径都使用宿主原生绝对路径或 bundle 内相对路径。不要假定 `/tmp`、POSIX 路径或
+ `cygpath` 一定存在;Windows 工具要求盘符路径时,先用宿主提供的路径转换能力取得
+ `C:\...` 形式,再读取文件。`snapshot_path` 必须留在 bundle 目录内。
+
## 6. 独立审阅
- 完整报告必须由未参与生成的 reviewer 从头到尾阅读。Reviewer:
+ 完整报告必须由未参与生成的 reviewer 从头到尾阅读。Reviewer 使用未继承生成对话的新鲜
+ 上下文,只接收原始请求、候选产物和核验来源。Reviewer:
- 逐项核对原始问题是否回答;
- 核验全部关键结论,并抽检普通事实;
- - 检查明显遗漏、过时信息、错误对象、错误价格和不受支持的建议;
+ - 检查覆盖要求是否合理、是否提前停止,以及明显遗漏、过时信息、错误对象、错误价格和
+ 不受支持的建议;
- 只评价,不修补候选报告。
- 把复核结果保存为 `independent_review.json`,最小格式见
+ 先运行 validator 并取得候选文件 SHA-256,再把复核结果和这些哈希保存为
+ `independent_review.json`,随后再次运行 validator。最小格式、独立性标准和宿主示例见
[report-quality.md](references/report-quality.md)。报告和 validator 完成但尚无独立审阅时,
- 状态只能是 `complete_draft`;只有独立 reviewer 给出 `0 blocker / 0 major` 才能标记
- `reviewed_pass`。宿主没有独立 reviewer 时如实交付未复核草稿,不能由生成者自评为通过。
+ 交付标签只能是 `complete_draft`;只有独立 reviewer 给出 `0 blocker / 0 major`、确认研究
+ 深度充分且饱和检查可信、全部问题覆盖和全部关键 claim 核验通过,并且候选文件哈希未变化时,validator 才会产生
+ `reviewed_pass`。宿主没有隔离 reviewer 时如实交付未复核草稿,不能由生成者自评为通过。
Validator 通过、来源很多或文件很大都不能替代独立审阅结论。
隐私、授权和失败关闭边界见
[privacy-and-fail-closed.md](references/privacy-and-fail-closed.md)。