ag-ui-protocol/ag-ui

prepareRegenerateStream missing context parameter in payload

Aperta

#900 aperta il 6 gen 2026

 (2 commenti) (1 reazione) (0 assegnatari)TypeScript (1262 fork)auto 404
Integrationbuggood first issue

Metriche repository

Star
 (14.090 stelle)
Metriche merge PR
 (Merge medio 9g 15h) (97 PR mergiate in 30 g)

Descrizione

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

Guida contributor