diff --git a/.changeset/spotty-ghosts-fly.md b/.changeset/spotty-ghosts-fly.md new file mode 100644 index 000000000..454a27456 --- /dev/null +++ b/.changeset/spotty-ghosts-fly.md @@ -0,0 +1,5 @@ +--- +"@langchain/langgraph-sdk": patch +--- + +Fix mutate function in `onCustomEvent` and in `onUpdateEvent` receiving incorrect previous value diff --git a/libs/sdk/src/react/manager.ts b/libs/sdk/src/react/manager.ts index 5bd66bb4c..a0c2d976d 100644 --- a/libs/sdk/src/react/manager.ts +++ b/libs/sdk/src/react/manager.ts @@ -163,7 +163,10 @@ export class StreamManager< return ( update: Partial | ((prev: StateType) => Partial) ) => { - const prev = { ...historyValues, ...this.state.values }; + const prev = { + ...historyValues, + ...(this.state.values ?? [null, "stream"])[0], + }; const next = typeof update === "function" ? update(prev) : update; this.setStreamValues({ ...prev, ...next }, kind); };