Skip to content

fix(dag): gate checkpoints self-confirm parent evidence instead of independently verifying it #323

Description

@LeXwDeX

现象

Ultra-flow 的探索检查点返回 verdict: continue,但其背书的证据链里含有一条生产空操作:探索门只"复核父会话的陈述",未独立读源码。该错误证据直到后续设计门独立读源码才被发现。

实例(workflow dag_fe5ff13ada6fUONA2rH3Pypdf4):

  • cp-after-explorationcontinue,认可了 4 条缺陷证据
  • 其中 D4("SystemPrompt.defaultLayer 未提供 Memory")实为生产空操作——Memory.defaultLayer 已在 AppLayerpackages/opencode/src/effect/app-runtime.ts),serviceOption 请求时从 fiber 上下文解析,重复 provide 无效
  • 直到 cp-design-decision 独立抽查源码才否决设计

根因

探索/门类检查点的提示词偏向"确认父会话结论",缺少对抗性独立验证的硬要求(独立读源码、抽查最承重声明并给证据)。自我确认的节点没有证伪能力——一条错误证据即可穿过探索门。

修法选项

  • 门/检查点节点的提示词强制:独立读源码、对最承重声明给出抽查数量要求、把父会话提供的证据视为待检验假设而非事实。
  • 探索阶段输出标记为"provisional",未经独立门确认前,下游不得当作已验证事实消费。

验收

  • 回归测试:在证据链中故意掺入一条可被源码证伪的错误声明,门返回 replan 并在 findings 中指出该条。
  • 证据链为真时门行为不变(仍 continue),不引入新的误报。

关联

  • 同批编排健壮性:replan 裁决缺结构性闸门(见同批 issue)。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions