-
Notifications
You must be signed in to change notification settings - Fork 0
设计:同层冲突交给 LLM 仲裁会破坏确定性 #6
Copy link
Copy link
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Description
Activity
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
背景
SPEC §8.4 的 conflict resolution decision tree 定义了 scope/enforcement 的决策顺序。其中第 4 条写到:相同 enforcement、相同 hierarchy position、不同来源时,两条 asset 都进入上下文,由 LLM 选择更适用的一条。
同一节末尾又声明:相同 asset set 和相同
pools.toml必须产生相同结果,不能依赖随机性或 session state。问题
LLM 仲裁不能作为协议级决策规则。即使输入完全相同,不同模型、不同版本、不同 temperature、不同上下文窗口压力都可能让选择变化。
这会让下面几件事变得不可验证:
engram validate无法输出唯一 effective winner。建议
把第 4 条改成确定性协议:
LLM 可以做三件事:
overrides:、调整订阅优先级、或取消订阅某个 pool。但 LLM 不应成为“最终生效规则”的一部分。
可选补充:在
pools.toml中加入显式来源优先级,例如:没有显式优先级时,冲突保持 ambiguous,并由
engram review处理。参考
SPEC.md§8.4 rule 4:同层不同来源由 LLM 仲裁。SPEC.md§8.4 invariant:相同输入必须相同输出。DESIGN.md§8.1 invariant 7/8/12:MCP stateless、CLI idempotent、cross-process safety 都依赖确定性。