ag-ui-protocol/ag-ui

prepareRegenerateStream missing context parameter in payload

Open

#900 opened on Jan 6, 2026

View on GitHub
 (2 comments) (1 reaction) (0 assignees)TypeScript (1,262 forks)auto 404
Integrationbuggood first issue

Repository metrics

Stars
 (14,090 stars)
PR merge metrics
 (Avg merge 9d 15h) (97 merged PRs in 30d)

Description

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
};

Contributor guide