From 4b677be8ab8c8c55c801b51484828a51a172e9b3 Mon Sep 17 00:00:00 2001 From: Lan_zhijiang Date: Fri, 23 Oct 2026 18:11:00 +0800 Subject: [PATCH 1/2] =?UTF-8?q?docs:=20=E6=98=8E=E7=A1=AE=E6=8F=90?= =?UTF-8?q?=E5=8F=96=E7=BB=93=E6=9E=9C=E4=B8=8E=E4=BE=9D=E6=8D=AE=E4=BF=9D?= =?UTF-8?q?=E7=95=99=E5=90=88=E5=90=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../knowledge-capability-contract.md | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/20-product-tdd/knowledge-capability-contract.md b/20-product-tdd/knowledge-capability-contract.md index 6920159..5425519 100644 --- a/20-product-tdd/knowledge-capability-contract.md +++ b/20-product-tdd/knowledge-capability-contract.md @@ -89,6 +89,30 @@ source object metadata block -> semantic content block -> storage-backed bytes sole association fact. Root content must not copy that association merely to simplify an adapter. +## 提取结果与保留依据 + +`core.organization.extraction-result.v1` 表达可独立复用的组织产物。其 hydrated +content 为 JSON 对象:`text` 是非空整理正文,`basis` 是非空依据组数组。每组包含 +唯一的非空 `key`、`observed_origin` 和非空 `excerpts` 数组;每条引文为非空原文。 +`observed_origin` 只包含实际取得的非空 `label`,不能臆造。所有这些对象拒绝未知字段。 +整理正文与原文引用应清楚区分, +来源标题不能自动证明发言者归属。 + +来源 Block 指向结果 Block 的关系内容为 JSON +`{"kind":"core.organization.extraction.source.v1","basis_key":"b1"}`,其中 `basis_key` +对应本结果内的组 key。来源身份仅由关系端点表达,不重复保存在结果内容中;该关系表示 +本次取材出处,不等于支持或反对,也不表示原作者认可结果。写入时每组恰好关联一个来源, +读取时允许关联已缺失。歧义或损坏的映射必须明确失败,不能阻断结果正文与内嵌依据的读取。 + +删除或更新原材料不删除或改写已保存的正文、必要引文和历史出处;删除结果则一并删除其 +内嵌依据,不删除来源或其他结果。缺边只说明关联不可用,不能据此判断删除原因。 +结果读取不重新抓取或恢复原材料。 + +提取行为核对实际读取的原文,并在一个产物内保留必要的归属、条件和语境。没有独立增益 +时可以不产出;不能将 token 分片自动视为知识节点。字符串核对不能替代语义判断,任意 +Peer 直接写入该结果类型也不会因此获得真实性认证。采集、查询与其他组织行为不以提取 +为前置步骤,提取也不依赖采集器的完整历史档案或统一修订服务。 + ## Resolver Contract - The resolver identity selects the exact resolver contract version for persisted block From ae3bb7f06a7ea6aeacb4f0e0ee7faec27f1cd3fc Mon Sep 17 00:00:00 2001 From: Lan_zhijiang Date: Mon, 26 Oct 2026 14:43:27 +0800 Subject: [PATCH 2/2] =?UTF-8?q?ref(organization):=20=E7=94=A8=E6=99=AE?= =?UTF-8?q?=E9=80=9A=E6=96=87=E6=9C=AC=E4=B8=8E=E5=85=B3=E7=B3=BB=E8=A1=A8?= =?UTF-8?q?=E8=BE=BE=E6=8F=90=E5=8F=96=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除专用结果 JSON 与依据组映射协议 - 保留正文、必要引文和来源删除后的独立可读性 --- .../knowledge-capability-contract.md | 23 ++++++++----------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/20-product-tdd/knowledge-capability-contract.md b/20-product-tdd/knowledge-capability-contract.md index 5425519..28482e9 100644 --- a/20-product-tdd/knowledge-capability-contract.md +++ b/20-product-tdd/knowledge-capability-contract.md @@ -91,26 +91,21 @@ source object metadata block -> semantic content block -> storage-backed bytes ## 提取结果与保留依据 -`core.organization.extraction-result.v1` 表达可独立复用的组织产物。其 hydrated -content 为 JSON 对象:`text` 是非空整理正文,`basis` 是非空依据组数组。每组包含 -唯一的非空 `key`、`observed_origin` 和非空 `excerpts` 数组;每条引文为非空原文。 -`observed_origin` 只包含实际取得的非空 `label`,不能臆造。所有这些对象拒绝未知字段。 -整理正文与原文引用应清楚区分, -来源标题不能自动证明发言者归属。 - -来源 Block 指向结果 Block 的关系内容为 JSON -`{"kind":"core.organization.extraction.source.v1","basis_key":"b1"}`,其中 `basis_key` -对应本结果内的组 key。来源身份仅由关系端点表达,不重复保存在结果内容中;该关系表示 -本次取材出处,不等于支持或反对,也不表示原作者认可结果。写入时每组恰好关联一个来源, -读取时允许关联已缺失。歧义或损坏的映射必须明确失败,不能阻断结果正文与内嵌依据的读取。 +提取产物是普通 `core.text.v1` Block,正文、必要引文与实际取得的历史出处说明一起 +保存为可读文本。整理正文与原文引用应清楚区分;来源标签不能自动证明发言者归属。 +由何种组织行为产生不构成新增内容类型的理由,也不要求阅读端认识该行为。 + +来源 Block 通过内容为 `extraction` 的 Relation 指向结果 Block。关系端点表达当前 +图中关联,保留的出处文字描述取材时的上下文,不承担另一套关联映射。该关系只表示 +取材出处,不等于支持或反对,也不表示原作者认可结果。 删除或更新原材料不删除或改写已保存的正文、必要引文和历史出处;删除结果则一并删除其 内嵌依据,不删除来源或其他结果。缺边只说明关联不可用,不能据此判断删除原因。 结果读取不重新抓取或恢复原材料。 提取行为核对实际读取的原文,并在一个产物内保留必要的归属、条件和语境。没有独立增益 -时可以不产出;不能将 token 分片自动视为知识节点。字符串核对不能替代语义判断,任意 -Peer 直接写入该结果类型也不会因此获得真实性认证。采集、查询与其他组织行为不以提取 +时可以不产出;不能将 token 分片自动视为知识节点。字符串核对不能替代语义判断, +普通文本或 `extraction` 关系也不构成真实性认证。采集、查询与其他组织行为不以提取 为前置步骤,提取也不依赖采集器的完整历史档案或统一修订服务。 ## Resolver Contract