Skip to content

  • 项目
  • 群组
  • 代码片段
  • 帮助
  • 当前项目
    • 正在载入...
  • 登录 / 注册
B
bit-pm
  • 项目
    • 项目
    • 详情
    • 活动
    • 周期分析
  • 仓库
    • 仓库
    • 文件
    • 提交
    • 分支
    • 标签
    • 贡献者
    • 图表
    • 比较
    • 统计图
  • 议题 0
    • 议题 0
    • 列表
    • 看板
    • 标记
    • 里程碑
  • 合并请求 0
    • 合并请求 0
  • CI / CD
    • CI / CD
    • 流水线
    • 作业
    • 日程
    • 统计图
  • Wiki
    • Wiki
  • 代码片段
    • 代码片段
  • 成员
    • 成员
  • 折叠边栏
  • 活动
  • 图像
  • 聊天
  • 创建新问题
  • 作业
  • 提交
  • 问题看板
  • 燕伟桐
  • bit-pm
  • Repository

切换分支/标签
  • bit-pm
  • src
  • __tests__
  • prepare_step_utils.test.ts
查找文件
BlameHistoryPermalink
  • Will Chen's avatar
    fix: resolve AI_MissingToolResultsError after mid-turn compaction (#3213) · f7b8748f
    由 Will Chen 提交于 4月 14, 2026
    When mid-turn compaction ran during a multi-step tool loop (e.g., after
    web_crawl completed), injected user messages (like screenshots) were
    registered at an array index based on the compacted message history. The
    AI SDK's internal messages don't include the compaction summary, so in
    subsequent steps the stale index caused the injected user message to
    land between a tool_use and its tool_result, breaking the SDK's
    validation.
    
    Fix 1: Track the delta between compacted and SDK base message counts,
    and adjust injection indices after prepareStepMessages runs so future
    re-injections land at the correct position.
    
    Fix 2: Add ensureToolResultOrdering() as a defensive safety net that
    detects and fixes any user messages misplaced between tool_use/
    tool_result pairs before returning from prepareStep.
    <!-- devin-review-badge-begin -->
    
    ---
    
    <a href="https://app.devin.ai/review/dyad-sh/dyad/pull/3213"
    target="_blank">
      <picture>
    <source media="(prefers-color-scheme: dark)"
    srcset="https://static.devin.ai/assets/gh-open-in-devin-review-dark.svg?v=1">
    <img
    src="https://static.devin.ai/assets/gh-open-in-devin-review-light.svg?v=1"
    alt="Open with Devin">
      </picture>
    </a>
    <!-- devin-review-badge-end -->
    
    ---------
    Co-authored-by: 's avatarClaude Opus 4.6 (1M context) <noreply@anthropic.com>
    f7b8748f
prepare_step_utils.test.ts 47.6 KB
编辑Web IDE

Replace prepare_step_utils.test.ts

拖放文件到此处或者 点击上传


取消
将在派生(fork)项目中中创建一个新的分支, 并开启一个新的合并请求。