ag-ui-protocol/ag-ui

prepareRegenerateStream missing context parameter in payload

开放

#900 创建于 2026年1月6日

 (2 条评论) (1 个反应) (0 位负责人)TypeScript (1,262 个派生)auto 404
Integrationbuggood first issue

仓库指标

星标
 (14,090 个星标)
PR 合并指标
 (平均合并 9天 15小时) (30 天内合并 97 个 PR)

描述

When regenerating/editing messages, the context parameter is not included in the LangGraph run payload, causing agent context to be undefined on the backend.

File

integrations/langgraph/typescript/src/agent.ts

Root Cause

prepareStream (line 344-354) includes context:

const payload = {
  ...restProps,
  command,
  streamMode,
  input: payloadInput,
  config: payloadConfig,
  context: {
    ...context,
    ...(payloadConfig?.configurable ?? {}),
  }
};

prepareRegenerateStream (line 216-226) does NOT include context:

const payload = {
  ...(input.forwardedProps ?? {}),
  input: this.langGraphDefaultMergeState(
    timeTravelCheckpoint.values,
    [messageCheckpoint],
    input,
  ),
  checkpointId: fork.checkpoint.checkpoint_id!,
  streamMode,
};

Expected Behavior

Both methods should pass context to LangGraph so agent context is available regardless of whether it's a new message or a regeneration.

Reproduction:

  1. Use useAgentContext to provide context (e.g., model settings)
  2. Send a new message → context works ✅
  3. Edit the message and resend → context is undefined ❌

Suggested Fix: Add context to the payload in prepareRegenerateStream:

const payload = {
  ...(input.forwardedProps ?? {}),
  input: this.langGraphDefaultMergeState(
    timeTravelCheckpoint.values,
    [messageCheckpoint],
    input,
  ),
  checkpointId: fork.checkpoint.checkpoint_id!,
  streamMode,
  context: input.context,  // Add this line
};

贡献者指南