wiki-synthesize 是做什么的?
首次运行前,请阅读工具包中的
docs/GOTCHAS.md(关于摄取、综合和代码检查的操作注意事项)和docs/SEALS.md(封印格式)。
这是“living-synthesis”层的“外科医生”。它将笔记中已验证的发现存储(概念笔记中的 ## Key Findings;方法笔记中包含声明的小节)重新组织成一个“State-of-Knowledge”区块,该区块捕捉证据的 流动:已解决、有争议、已被取代、新兴。它绝不捏造声明。每个条目都追溯到一个现有的发现,并且每个新或更改的条目在用户批准之前都会对照其引用的每篇 PDF 进行检查(证据检查第 2 层)。
模式
- 默认:
/wiki-synthesize <NoteName>对一篇概念或方法笔记进行综合。 - 工作清单:
/wiki-synthesize(无参数)运行wiki-lint检查 15,然后呈现check15_missing按优先级排序(首先按synthesis.priority_fields中列出的字段排序,然后按来源作品数量降序排序)以及check15_stale(需要重新综合的候选笔记),并询问要处理哪篇笔记。该工作清单是一个积压任务,不是必须立即全部完成的任务。合格集合是检查 15 实时报告的内容;冻结在文档中的计数值会过时。 - 批量:
/wiki-synthesize --batch [N]是一种管理式异常处理的批量模式(默认批次大小为 8)。它运行检查 15,形成一个优先级队列,分派并行子代理(每个子代理遵循SYNTHESIS-WORKFLOW.md并返回一个区块和一份自报告,从不写入),通过证据检查和scripts/synth_validate.py对每次写入进行把关,写入干净的笔记,并在 4 个触发条件(T1 无法验证的关键数字、T2 信息丢失、T3 结构异常、T4 子代理置信度低)以及检查发现的任何缺陷时进行升级。请参阅references/BATCH-WORKFLOW.md。首先向用户提出一个批次的子代理方案(它们做什么、数量、使用哪个模型),并等待用户批准。
角色与边界
执行: 读取笔记的发现存储,根据 evidence_level 和内联测量进行权衡,起草区块,检查每个新或更改的条目对照 PDF,提交供批准,然后写入(插入区块并吸收 ## Controversies or Gaps),封印来源笔记,运行门控,记录日志。
不执行: 捏造数字或声明,创建 debates/ 笔记(改为在报告中标记候选对象),触碰低于综合阈值的笔记,或在用户批准之前写入任何内容。
文件位置
路径来自 wiki.config.json。笔记:<wiki_root>/concepts/、methods/、papers/、books/。开始前请始终阅读 WIKI_SCHEMA.md(Living-Synthesis 层)。
阈值(综合前必须满足的条件)
status: final 并且(synthesis.min_sources 或更多不同的来源作品(默认为 3)或者至少一个引用的来源具有 synthesis.sr_levels 中的 evidence_level(默认为 SR-MA、SR))。这恰好是 wiki-lint 检查 15 的资格测试。如果不满足:报告并停止。
工作流程
完整流程见 references/SYNTHESIS-WORKFLOW.md。总结:读取契约,解析笔记(精确的 test -f/内容搜索,绝不能仅用 glob),阈值门控,预全文检查,将发现聚类到子问题,检查新或更改的条目对照 PDF,在聊天中提出区块(附引文和页码),批准,写入(scripts/synth_write.py:在 ## Definition 之后插入,吸收 Controversies,打戳),封印来源笔记(<kit>/tools/seal.py),如果区块已存在则进行重新综合 diff,然后记录日志,重新运行门控并重新运行检查 15。
安全规则
- 绝不捏造。 每个条目都追溯到一个现有的发现;不允许来自记忆或来源笔记的新数字。
- 证据检查第 2 层:没有经过 PDF 检查的新或更改的条目。 对于最多 3 个不同的来源作品,编排器负责检查;超过 3 个,它提议一个子代理,其职责仅限于差异,并等待用户确认。在更改任何内容之前,每个缺陷都要在 PDF 中重新阅读,并且来源笔记要用笔记的名称进行封印。来源笔记上的全文封印并不能保护笔记对该作品的陈述:在之前对此方法的审计中,大约 4/10 的抽样笔记-来源笔记对存在缺陷。
- 人在回路中。 交互模式:提议、批准、写入(未经用户确认不写入)。批量模式:
synth_validate.py对每次写入进行把关,4 个触发条件会升级;绝不实现完全自主。 - 零信息丢失。 在
## Controversies or Gaps小节被吸收之前,该小节中的每个要点都必须映射到一个区块条目。 - 预全文检查。 预全文队列中的一篇引用的论文(在
synthesis.prefulltext_cutoff之前创建且未进行全文封印,或仅以摘要级别封印的论文笔记)会降低受影响条目的置信度,并获得内联⚠标志;仅当条目所依赖的数字本身无法验证时才暂停该条目。书籍章节是可信锚点,除非其自身的status:是draft或stub,这表示笔记是在未获取全文的情况下被摄取的(全文级别的source_verification会覆盖状态)。synth_validate.pyV4 会机械地强制执行此规则。 - 声明需要来源。 每个条目引用
[[wikilinks]]。 - 文件系统优先。 使用主机的文件工具;不需要 Obsidian 插件或 MCP。
相关技能
wiki-lint:检查 15 生成此技能的工作清单;检查 32 标记(笔记、作品)对,如果无封印。综合后运行它以确认无漂移(链接检查干净,检查 15 将笔记从missing中移除)。wiki-ingest:上游。此技能重新组织的发现是由摄取写入的。
参考资料
references/SYNTHESIS-WORKFLOW.md:详细流程、区块模板、门控逻辑、重新综合处理。references/BATCH-WORKFLOW.md:批量模式、编排器循环、子代理摘要、V1-V5 写入门控、升级触发条件。scripts/synth_validate.py:写入门控和全维基扫描。scripts/synth_write.py:区块插入。<kit>/tools/seal.py:封印。