--- name: 确认知识草稿 description: 用户明确确认后把知识草稿翻成作品正式知识面,写入实体或关系、绑定知识库并迁移向量 owner。抽取或拆书产出的卡需要转正时使用;不处理正文候选、规划确认和冲突裁决。 disable-model-invocation: true --- # 确认知识草稿(知识轨的 Shadow→Canonical) **只在用户明确说"确认这张卡"之后执行,主会话与智能体不得自行发起。** 与正文轨的分工:正文候选的接受、合并、丢弃归 `决定正文候选去留`,表集是 `content_text` 与归因、事实账本、投影登记;本 Skill 的表集是 `muse_knowledge_draft` / `muse_knowledge_entity` / `muse_knowledge_relation` 与向量 owner,两边完全不交。**采纳正文 ≠ 确认知识**。 ## 输入 ```bash # 试跑单张草稿 .venv/bin/python muse/content/entity/skills/sovereignty/确认知识草稿/scripts/confirm_knowledge.py \ --draft-id --dry-run # 批量必须显式点名范围 .venv/bin/python muse/content/entity/skills/sovereignty/确认知识草稿/scripts/confirm_knowledge.py \ --all-entities .venv/bin/python muse/content/entity/skills/sovereignty/确认知识草稿/scripts/confirm_knowledge.py \ --all-relations ``` 来源限于 `chapter_extract`、`parse_book`、`upgrade_book` 三类抽取草稿。 ## 输出 逐草稿的确认回执:草稿 id、翻转后的状态、写入的实体或关系 id、知识库绑定结果与向量 owner 迁移结果。`--dry-run` 走完整事务再回滚,只报告将发生什么。 ## 数据边界 单事务内完成四件事:`muse_knowledge_draft` 翻 `confirmed`、实体写 `muse_knowledge_entity(active)`(关系卡写 `muse_knowledge_relation`)、确保作品↔知识库绑定、迁移实体向量 owner。任一失败整体回滚,不留半确认的卡。不写正文表、不写事实账本、不写投影登记。 ## 红线 - 未经用户明确确认不得执行;Agent 不得自行触发。 - 有冲突的卡必须先裁决再确认,不得靠批量确认掩盖冲突。 - 批量确认必须显式给出 `--all-entities` 或 `--all-relations`,不提供"确认全部草稿"的无范围入口。 - 不接受正文候选 id;正文轨走 `决定正文候选去留`。 ## 复利合同 - 成功落库后经 `记录运行证据` 的 `propose_lesson_dedup` 登记 `example_lesson`(绑 run_id / work_id)。 - 升格仍走人工评审,不自动把单次运行升为公共范式。