@langchain/langgraph 1.2.9 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (141) hide show
  1. package/dist/graph/graph.cjs +6 -2
  2. package/dist/graph/graph.cjs.map +1 -1
  3. package/dist/graph/graph.d.cts +58 -7
  4. package/dist/graph/graph.d.cts.map +1 -1
  5. package/dist/graph/graph.d.ts +58 -7
  6. package/dist/graph/graph.d.ts.map +1 -1
  7. package/dist/graph/graph.js +6 -2
  8. package/dist/graph/graph.js.map +1 -1
  9. package/dist/graph/index.d.ts +1 -1
  10. package/dist/graph/state.cjs +3 -2
  11. package/dist/graph/state.cjs.map +1 -1
  12. package/dist/graph/state.d.cts +13 -5
  13. package/dist/graph/state.d.cts.map +1 -1
  14. package/dist/graph/state.d.ts +13 -5
  15. package/dist/graph/state.d.ts.map +1 -1
  16. package/dist/graph/state.js +3 -2
  17. package/dist/graph/state.js.map +1 -1
  18. package/dist/index.cjs +34 -5
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +12 -2
  21. package/dist/index.d.ts +12 -2
  22. package/dist/index.js +10 -1
  23. package/dist/index.js.map +1 -1
  24. package/dist/prebuilt/agent_executor.d.cts +1 -1
  25. package/dist/prebuilt/agent_executor.d.ts +1 -1
  26. package/dist/pregel/index.cjs +69 -25
  27. package/dist/pregel/index.cjs.map +1 -1
  28. package/dist/pregel/index.d.cts +25 -3
  29. package/dist/pregel/index.d.cts.map +1 -1
  30. package/dist/pregel/index.d.ts +25 -3
  31. package/dist/pregel/index.d.ts.map +1 -1
  32. package/dist/pregel/index.js +69 -25
  33. package/dist/pregel/index.js.map +1 -1
  34. package/dist/pregel/loop.cjs +51 -10
  35. package/dist/pregel/loop.cjs.map +1 -1
  36. package/dist/pregel/loop.js +51 -10
  37. package/dist/pregel/loop.js.map +1 -1
  38. package/dist/pregel/messages-v2.cjs +231 -0
  39. package/dist/pregel/messages-v2.cjs.map +1 -0
  40. package/dist/pregel/messages-v2.js +231 -0
  41. package/dist/pregel/messages-v2.js.map +1 -0
  42. package/dist/pregel/stream.cjs.map +1 -1
  43. package/dist/pregel/stream.d.cts +30 -0
  44. package/dist/pregel/stream.d.cts.map +1 -0
  45. package/dist/pregel/stream.d.ts +30 -1
  46. package/dist/pregel/stream.d.ts.map +1 -0
  47. package/dist/pregel/stream.js.map +1 -1
  48. package/dist/pregel/types.cjs.map +1 -1
  49. package/dist/pregel/types.d.cts +8 -1
  50. package/dist/pregel/types.d.cts.map +1 -1
  51. package/dist/pregel/types.d.ts +8 -1
  52. package/dist/pregel/types.d.ts.map +1 -1
  53. package/dist/pregel/types.js.map +1 -1
  54. package/dist/stream/convert.cjs +207 -0
  55. package/dist/stream/convert.cjs.map +1 -0
  56. package/dist/stream/convert.d.cts +69 -0
  57. package/dist/stream/convert.d.cts.map +1 -0
  58. package/dist/stream/convert.d.ts +69 -0
  59. package/dist/stream/convert.d.ts.map +1 -0
  60. package/dist/stream/convert.js +206 -0
  61. package/dist/stream/convert.js.map +1 -0
  62. package/dist/stream/index.cjs +11 -0
  63. package/dist/stream/index.d.cts +12 -0
  64. package/dist/stream/index.d.ts +12 -0
  65. package/dist/stream/index.js +12 -0
  66. package/dist/stream/mux.cjs +350 -0
  67. package/dist/stream/mux.cjs.map +1 -0
  68. package/dist/stream/mux.d.cts +160 -0
  69. package/dist/stream/mux.d.cts.map +1 -0
  70. package/dist/stream/mux.d.ts +160 -0
  71. package/dist/stream/mux.d.ts.map +1 -0
  72. package/dist/stream/mux.js +345 -0
  73. package/dist/stream/mux.js.map +1 -0
  74. package/dist/stream/run-stream.cjs +439 -0
  75. package/dist/stream/run-stream.cjs.map +1 -0
  76. package/dist/stream/run-stream.d.cts +286 -0
  77. package/dist/stream/run-stream.d.cts.map +1 -0
  78. package/dist/stream/run-stream.d.ts +285 -0
  79. package/dist/stream/run-stream.d.ts.map +1 -0
  80. package/dist/stream/run-stream.js +434 -0
  81. package/dist/stream/run-stream.js.map +1 -0
  82. package/dist/stream/stream-channel.cjs +208 -0
  83. package/dist/stream/stream-channel.cjs.map +1 -0
  84. package/dist/stream/stream-channel.d.cts +129 -0
  85. package/dist/stream/stream-channel.d.cts.map +1 -0
  86. package/dist/stream/stream-channel.d.ts +129 -0
  87. package/dist/stream/stream-channel.d.ts.map +1 -0
  88. package/dist/stream/stream-channel.js +207 -0
  89. package/dist/stream/stream-channel.js.map +1 -0
  90. package/dist/stream/transformers/index.cjs +4 -0
  91. package/dist/stream/transformers/index.d.ts +5 -0
  92. package/dist/stream/transformers/index.js +5 -0
  93. package/dist/stream/transformers/lifecycle.cjs +326 -0
  94. package/dist/stream/transformers/lifecycle.cjs.map +1 -0
  95. package/dist/stream/transformers/lifecycle.d.cts +53 -0
  96. package/dist/stream/transformers/lifecycle.d.cts.map +1 -0
  97. package/dist/stream/transformers/lifecycle.d.ts +53 -0
  98. package/dist/stream/transformers/lifecycle.d.ts.map +1 -0
  99. package/dist/stream/transformers/lifecycle.js +325 -0
  100. package/dist/stream/transformers/lifecycle.js.map +1 -0
  101. package/dist/stream/transformers/messages.cjs +94 -0
  102. package/dist/stream/transformers/messages.cjs.map +1 -0
  103. package/dist/stream/transformers/messages.d.cts +23 -0
  104. package/dist/stream/transformers/messages.d.cts.map +1 -0
  105. package/dist/stream/transformers/messages.d.ts +23 -0
  106. package/dist/stream/transformers/messages.d.ts.map +1 -0
  107. package/dist/stream/transformers/messages.js +94 -0
  108. package/dist/stream/transformers/messages.js.map +1 -0
  109. package/dist/stream/transformers/subgraphs.cjs +125 -0
  110. package/dist/stream/transformers/subgraphs.cjs.map +1 -0
  111. package/dist/stream/transformers/subgraphs.d.cts +95 -0
  112. package/dist/stream/transformers/subgraphs.d.cts.map +1 -0
  113. package/dist/stream/transformers/subgraphs.d.ts +95 -0
  114. package/dist/stream/transformers/subgraphs.d.ts.map +1 -0
  115. package/dist/stream/transformers/subgraphs.js +124 -0
  116. package/dist/stream/transformers/subgraphs.js.map +1 -0
  117. package/dist/stream/transformers/types.d.cts +89 -0
  118. package/dist/stream/transformers/types.d.cts.map +1 -0
  119. package/dist/stream/transformers/types.d.ts +89 -0
  120. package/dist/stream/transformers/types.d.ts.map +1 -0
  121. package/dist/stream/transformers/values.cjs +39 -0
  122. package/dist/stream/transformers/values.cjs.map +1 -0
  123. package/dist/stream/transformers/values.d.cts +21 -0
  124. package/dist/stream/transformers/values.d.cts.map +1 -0
  125. package/dist/stream/transformers/values.d.ts +21 -0
  126. package/dist/stream/transformers/values.d.ts.map +1 -0
  127. package/dist/stream/transformers/values.js +39 -0
  128. package/dist/stream/transformers/values.js.map +1 -0
  129. package/dist/stream/types.cjs +11 -0
  130. package/dist/stream/types.cjs.map +1 -0
  131. package/dist/stream/types.d.cts +255 -0
  132. package/dist/stream/types.d.cts.map +1 -0
  133. package/dist/stream/types.d.ts +255 -0
  134. package/dist/stream/types.d.ts.map +1 -0
  135. package/dist/stream/types.js +11 -0
  136. package/dist/stream/types.js.map +1 -0
  137. package/dist/web.cjs +39 -9
  138. package/dist/web.d.cts +12 -2
  139. package/dist/web.d.ts +12 -2
  140. package/dist/web.js +10 -1
  141. package/package.json +9 -8
@@ -3,8 +3,10 @@ import { Command, CommandInstance } from "../constants.cjs";
3
3
  import { LangGraphRunnableConfig } from "./runnable_types.cjs";
4
4
  import { RetryPolicy } from "./utils/index.cjs";
5
5
  import { PregelNode } from "./read.cjs";
6
+ import { InferExtensions, StreamTransformer } from "../stream/types.cjs";
6
7
  import { Durability, GetStateOptions, MultipleChannelSubscriptionOptions, PregelInputType, PregelInterface, PregelOptions, PregelOutputType, PregelParams, SingleChannelSubscriptionOptions, StateSnapshot, StreamMode, StreamOutputMap } from "./types.cjs";
7
8
  import { StrRecord } from "./algo.cjs";
9
+ import { GraphRunStream } from "../stream/run-stream.cjs";
8
10
  import { ChannelWrite } from "./write.cjs";
9
11
  import { All, BaseCache, BaseCheckpointSaver, BaseStore, CheckpointListOptions, CheckpointTuple } from "@langchain/langgraph-checkpoint";
10
12
  import { Runnable, RunnableConfig, RunnableFunc } from "@langchain/core/runnables";
@@ -15,6 +17,14 @@ import { IterableReadableStream } from "@langchain/core/utils/stream";
15
17
  //#region src/pregel/index.d.ts
16
18
  type WriteValue = Runnable | RunnableFunc<unknown, unknown> | unknown;
17
19
  type StreamEventsOptions = Parameters<Runnable["streamEvents"]>[2];
20
+ type StreamEventsV3Options<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any>, TTransformers extends ReadonlyArray<() => StreamTransformer<any>>, TEncoding extends "text/event-stream" | undefined = undefined> = Partial<Omit<PregelOptions<Nodes, Channels, ContextType>, "encoding" | "subgraphs">> & {
21
+ version: "v3"; /** User-supplied transformer factories for custom projections. */
22
+ transformers?: TTransformers;
23
+ } & (TEncoding extends "text/event-stream" ? {
24
+ encoding: "text/event-stream";
25
+ } : {
26
+ encoding?: undefined;
27
+ });
18
28
  /**
19
29
  * Utility class for working with channels in the Pregel system.
20
30
  * Provides static methods for subscribing to channels and writing to them.
@@ -159,7 +169,8 @@ declare class PartialRunnable<RunInput, RunOutput, CallOptions extends RunnableC
159
169
  * @typeParam InputType - Type of input values accepted by the graph
160
170
  * @typeParam OutputType - Type of output values produced by the graph
161
171
  */
162
- declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any> = StrRecord<string, any>, InputType = PregelInputType, OutputType = PregelOutputType, StreamUpdatesType = InputType, StreamValuesType = OutputType, NodeReturnType = unknown, CommandType = CommandInstance, StreamCustom = any> extends PartialRunnable<InputType | CommandType | null, OutputType, PregelOptions<Nodes, Channels, ContextType>> implements PregelInterface<Nodes, Channels, ContextType> {
172
+ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any> = StrRecord<string, any>, InputType = PregelInputType, OutputType = PregelOutputType, StreamUpdatesType = InputType, StreamValuesType = OutputType, NodeReturnType = unknown, CommandType = CommandInstance, StreamCustom = any, TStreamTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []> extends PartialRunnable<InputType | CommandType | null, OutputType, PregelOptions<Nodes, Channels, ContextType>> implements PregelInterface<Nodes, Channels, ContextType> {
173
+ #private;
163
174
  /**
164
175
  * Name of the class when serialized
165
176
  * @internal
@@ -242,6 +253,12 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
242
253
  * @internal
243
254
  */
244
255
  private userInterrupt?;
256
+ /**
257
+ * Stream reducer factories registered at compile time. These run
258
+ * automatically for every `streamEvents(..., { version: "v3" })` call,
259
+ * before any call-site transformers.
260
+ */
261
+ streamTransformers: TStreamTransformers;
245
262
  /**
246
263
  * The trigger to node mapping for the graph run.
247
264
  * @internal
@@ -252,7 +269,7 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
252
269
  *
253
270
  * @internal
254
271
  */
255
- constructor(fields: PregelParams<Nodes, Channels>);
272
+ constructor(fields: PregelParams<Nodes, Channels, TStreamTransformers>);
256
273
  /**
257
274
  * Creates a new instance of the Pregel graph with updated configuration.
258
275
  * This method follows the immutable pattern - instead of modifying the current instance,
@@ -272,7 +289,10 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
272
289
  * @param config - The configuration to merge with the current configuration
273
290
  * @returns A new Pregel instance with the merged configuration
274
291
  */
275
- withConfig(config: Omit<LangGraphRunnableConfig, "store" | "writer" | "interrupt">): typeof this;
292
+ withConfig<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(config: Omit<LangGraphRunnableConfig, "store" | "writer" | "interrupt"> & {
293
+ streamTransformers: TTransformers;
294
+ }): Pregel<Nodes, Channels, ContextType, InputType, OutputType, StreamUpdatesType, StreamValuesType, NodeReturnType, CommandType, StreamCustom, readonly [...TStreamTransformers, ...TTransformers]>;
295
+ withConfig(config: PregelOptions<Nodes, Channels, ContextType>): this;
276
296
  /**
277
297
  * Validates the graph structure to ensure it is well-formed.
278
298
  * Checks for:
@@ -454,6 +474,8 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
454
474
  /**
455
475
  * @inheritdoc
456
476
  */
477
+ streamEvents<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(input: InputType | CommandType | null, options: StreamEventsV3Options<Nodes, Channels, ContextType, TTransformers, "text/event-stream">): Promise<IterableReadableStream<Uint8Array>>;
478
+ streamEvents<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(input: InputType | CommandType | null, options: StreamEventsV3Options<Nodes, Channels, ContextType, TTransformers>): Promise<GraphRunStream<OutputType, InferExtensions<readonly [...TStreamTransformers, ...TTransformers]>>>;
457
479
  streamEvents(input: InputType | CommandType | null, options: Partial<PregelOptions<Nodes, Channels, ContextType>> & {
458
480
  version: "v1" | "v2";
459
481
  }, streamOptions?: StreamEventsOptions): IterableReadableStream<StreamEvent>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
@@ -3,8 +3,10 @@ import { Command, CommandInstance } from "../constants.js";
3
3
  import { LangGraphRunnableConfig } from "./runnable_types.js";
4
4
  import { RetryPolicy } from "./utils/index.js";
5
5
  import { PregelNode } from "./read.js";
6
+ import { InferExtensions, StreamTransformer } from "../stream/types.js";
6
7
  import { Durability, GetStateOptions, MultipleChannelSubscriptionOptions, PregelInputType, PregelInterface, PregelOptions, PregelOutputType, PregelParams, SingleChannelSubscriptionOptions, StateSnapshot, StreamMode, StreamOutputMap } from "./types.js";
7
8
  import { StrRecord } from "./algo.js";
9
+ import { GraphRunStream } from "../stream/run-stream.js";
8
10
  import { ChannelWrite } from "./write.js";
9
11
  import { All, BaseCache, BaseCheckpointSaver, BaseStore, CheckpointListOptions, CheckpointTuple } from "@langchain/langgraph-checkpoint";
10
12
  import { Runnable, RunnableConfig, RunnableFunc } from "@langchain/core/runnables";
@@ -15,6 +17,14 @@ import { StreamEvent } from "@langchain/core/tracers/log_stream";
15
17
  //#region src/pregel/index.d.ts
16
18
  type WriteValue = Runnable | RunnableFunc<unknown, unknown> | unknown;
17
19
  type StreamEventsOptions = Parameters<Runnable["streamEvents"]>[2];
20
+ type StreamEventsV3Options<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any>, TTransformers extends ReadonlyArray<() => StreamTransformer<any>>, TEncoding extends "text/event-stream" | undefined = undefined> = Partial<Omit<PregelOptions<Nodes, Channels, ContextType>, "encoding" | "subgraphs">> & {
21
+ version: "v3"; /** User-supplied transformer factories for custom projections. */
22
+ transformers?: TTransformers;
23
+ } & (TEncoding extends "text/event-stream" ? {
24
+ encoding: "text/event-stream";
25
+ } : {
26
+ encoding?: undefined;
27
+ });
18
28
  /**
19
29
  * Utility class for working with channels in the Pregel system.
20
30
  * Provides static methods for subscribing to channels and writing to them.
@@ -159,7 +169,8 @@ declare class PartialRunnable<RunInput, RunOutput, CallOptions extends RunnableC
159
169
  * @typeParam InputType - Type of input values accepted by the graph
160
170
  * @typeParam OutputType - Type of output values produced by the graph
161
171
  */
162
- declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any> = StrRecord<string, any>, InputType = PregelInputType, OutputType = PregelOutputType, StreamUpdatesType = InputType, StreamValuesType = OutputType, NodeReturnType = unknown, CommandType = CommandInstance, StreamCustom = any> extends PartialRunnable<InputType | CommandType | null, OutputType, PregelOptions<Nodes, Channels, ContextType>> implements PregelInterface<Nodes, Channels, ContextType> {
172
+ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels extends StrRecord<string, BaseChannel>, ContextType extends Record<string, any> = StrRecord<string, any>, InputType = PregelInputType, OutputType = PregelOutputType, StreamUpdatesType = InputType, StreamValuesType = OutputType, NodeReturnType = unknown, CommandType = CommandInstance, StreamCustom = any, TStreamTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []> extends PartialRunnable<InputType | CommandType | null, OutputType, PregelOptions<Nodes, Channels, ContextType>> implements PregelInterface<Nodes, Channels, ContextType> {
173
+ #private;
163
174
  /**
164
175
  * Name of the class when serialized
165
176
  * @internal
@@ -242,6 +253,12 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
242
253
  * @internal
243
254
  */
244
255
  private userInterrupt?;
256
+ /**
257
+ * Stream reducer factories registered at compile time. These run
258
+ * automatically for every `streamEvents(..., { version: "v3" })` call,
259
+ * before any call-site transformers.
260
+ */
261
+ streamTransformers: TStreamTransformers;
245
262
  /**
246
263
  * The trigger to node mapping for the graph run.
247
264
  * @internal
@@ -252,7 +269,7 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
252
269
  *
253
270
  * @internal
254
271
  */
255
- constructor(fields: PregelParams<Nodes, Channels>);
272
+ constructor(fields: PregelParams<Nodes, Channels, TStreamTransformers>);
256
273
  /**
257
274
  * Creates a new instance of the Pregel graph with updated configuration.
258
275
  * This method follows the immutable pattern - instead of modifying the current instance,
@@ -272,7 +289,10 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
272
289
  * @param config - The configuration to merge with the current configuration
273
290
  * @returns A new Pregel instance with the merged configuration
274
291
  */
275
- withConfig(config: Omit<LangGraphRunnableConfig, "store" | "writer" | "interrupt">): typeof this;
292
+ withConfig<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(config: Omit<LangGraphRunnableConfig, "store" | "writer" | "interrupt"> & {
293
+ streamTransformers: TTransformers;
294
+ }): Pregel<Nodes, Channels, ContextType, InputType, OutputType, StreamUpdatesType, StreamValuesType, NodeReturnType, CommandType, StreamCustom, readonly [...TStreamTransformers, ...TTransformers]>;
295
+ withConfig(config: PregelOptions<Nodes, Channels, ContextType>): this;
276
296
  /**
277
297
  * Validates the graph structure to ensure it is well-formed.
278
298
  * Checks for:
@@ -454,6 +474,8 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
454
474
  /**
455
475
  * @inheritdoc
456
476
  */
477
+ streamEvents<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(input: InputType | CommandType | null, options: StreamEventsV3Options<Nodes, Channels, ContextType, TTransformers, "text/event-stream">): Promise<IterableReadableStream<Uint8Array>>;
478
+ streamEvents<const TTransformers extends ReadonlyArray<() => StreamTransformer<any>> = []>(input: InputType | CommandType | null, options: StreamEventsV3Options<Nodes, Channels, ContextType, TTransformers>): Promise<GraphRunStream<OutputType, InferExtensions<readonly [...TStreamTransformers, ...TTransformers]>>>;
457
479
  streamEvents(input: InputType | CommandType | null, options: Partial<PregelOptions<Nodes, Channels, ContextType>> & {
458
480
  version: "v1" | "v2";
459
481
  }, streamOptions?: StreamEventsOptions): IterableReadableStream<StreamEvent>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
@@ -13,7 +13,11 @@ import { printStepCheckpoint, printStepTasks, printStepWrites, tasksWithWrites }
13
13
  import { IterableReadableStreamWithAbortSignal, IterableReadableWritableStream, StreamToolsHandler, toEventStream } from "./stream.js";
14
14
  import { PregelLoop } from "./loop.js";
15
15
  import { StreamMessagesHandler } from "./messages.js";
16
+ import { StreamProtocolMessagesHandler } from "./messages-v2.js";
16
17
  import { PregelRunner } from "./runner.js";
18
+ import { STREAM_EVENTS_V3_MODES } from "../stream/convert.js";
19
+ import { createGraphRunStream } from "../stream/run-stream.js";
20
+ import "../stream/index.js";
17
21
  import { validateGraph, validateKeys } from "./validate.js";
18
22
  import { Topic } from "../channels/topic.js";
19
23
  import { interrupt } from "../interrupt.js";
@@ -21,6 +25,22 @@ import { SCHEDULED, compareChannelVersions, copyCheckpoint, emptyCheckpoint, uui
21
25
  import { Runnable, RunnableSequence, _coerceToRunnable, mergeConfigs, patchConfig } from "@langchain/core/runnables";
22
26
  import { CallbackManager } from "@langchain/core/callbacks/manager";
23
27
  //#region src/pregel/index.ts
28
+ function protocolEventsToEventStream(run) {
29
+ const encoder = new TextEncoder();
30
+ return new ReadableStream({ async start(controller) {
31
+ try {
32
+ for await (const event of run) {
33
+ const namespace = event.params.namespace;
34
+ const eventName = namespace.length ? `${event.method}|${namespace.join("|")}` : event.method;
35
+ controller.enqueue(encoder.encode(`event: ${eventName}\ndata: ${JSON.stringify(event.params.data ?? {})}\n\n`));
36
+ }
37
+ } catch (error) {
38
+ controller.enqueue(encoder.encode(`event: error\ndata: ${JSON.stringify({ message: String(error) })}\n\n`));
39
+ } finally {
40
+ controller.close();
41
+ }
42
+ } });
43
+ }
24
44
  /**
25
45
  * Utility class for working with channels in the Pregel system.
26
46
  * Provides static methods for subscribing to channels and writing to them.
@@ -245,6 +265,12 @@ var Pregel = class extends PartialRunnable {
245
265
  */
246
266
  userInterrupt;
247
267
  /**
268
+ * Stream reducer factories registered at compile time. These run
269
+ * automatically for every `streamEvents(..., { version: "v3" })` call,
270
+ * before any call-site transformers.
271
+ */
272
+ streamTransformers;
273
+ /**
248
274
  * The trigger to node mapping for the graph run.
249
275
  * @internal
250
276
  */
@@ -279,32 +305,17 @@ var Pregel = class extends PartialRunnable {
279
305
  this.name = fields.name;
280
306
  this.triggerToNodes = fields.triggerToNodes ?? this.triggerToNodes;
281
307
  this.userInterrupt = fields.userInterrupt;
308
+ this.streamTransformers = fields.streamTransformers ?? [];
282
309
  if (this.autoValidate) this.validate();
283
310
  }
284
- /**
285
- * Creates a new instance of the Pregel graph with updated configuration.
286
- * This method follows the immutable pattern - instead of modifying the current instance,
287
- * it returns a new instance with the merged configuration.
288
- *
289
- * @example
290
- * ```typescript
291
- * // Create a new instance with debug enabled
292
- * const debugGraph = graph.withConfig({ debug: true });
293
- *
294
- * // Create a new instance with a specific thread ID
295
- * const threadGraph = graph.withConfig({
296
- * configurable: { thread_id: "123" }
297
- * });
298
- * ```
299
- *
300
- * @param config - The configuration to merge with the current configuration
301
- * @returns A new Pregel instance with the merged configuration
302
- */
303
311
  withConfig(config) {
304
- const mergedConfig = mergeConfigs(this.config, config);
312
+ const { streamTransformers, ...restConfig } = config;
313
+ const mergedConfig = mergeConfigs(this.config, restConfig);
314
+ const mergedStreamTransformers = [...this.streamTransformers, ...streamTransformers ?? []];
305
315
  return new this.constructor({
306
316
  ...this,
307
- config: mergedConfig
317
+ config: mergedConfig,
318
+ streamTransformers: mergedStreamTransformers
308
319
  });
309
320
  }
310
321
  /**
@@ -913,7 +924,34 @@ var Pregel = class extends PartialRunnable {
913
924
  const stream = await super.stream(input, config);
914
925
  return new IterableReadableStreamWithAbortSignal(options?.encoding === "text/event-stream" ? toEventStream(stream) : stream, abortController);
915
926
  }
927
+ async #streamEventsV3(input, options) {
928
+ const { version, encoding, transformers: userTransformers, ...restOptions } = options;
929
+ const streamOptions = {
930
+ recursionLimit: this.config?.recursionLimit,
931
+ ...restOptions,
932
+ configurable: {
933
+ ...this.config?.configurable,
934
+ ...restOptions?.configurable
935
+ },
936
+ version,
937
+ streamMode: STREAM_EVENTS_V3_MODES,
938
+ subgraphs: true,
939
+ encoding: void 0
940
+ };
941
+ const sourcePromise = this.stream(input, streamOptions);
942
+ const graphRun = createGraphRunStream({ [Symbol.asyncIterator]: async function* () {
943
+ const src = await sourcePromise;
944
+ for await (const chunk of src) yield chunk;
945
+ } }, [...this.streamTransformers ?? [], ...userTransformers ?? []]);
946
+ if (encoding === "text/event-stream") {
947
+ const abortController = new AbortController();
948
+ abortController.signal.addEventListener("abort", () => graphRun.abort(abortController.signal.reason), { once: true });
949
+ return new IterableReadableStreamWithAbortSignal(protocolEventsToEventStream(graphRun), abortController);
950
+ }
951
+ return graphRun;
952
+ }
916
953
  streamEvents(input, options, streamOptions) {
954
+ if (options.version === "v3") return this.#streamEventsV3(input, options);
917
955
  const abortController = new AbortController();
918
956
  const config = {
919
957
  recursionLimit: this.config?.recursionLimit,
@@ -972,7 +1010,7 @@ var Pregel = class extends PartialRunnable {
972
1010
  config.configurable[CONFIG_KEY_CHECKPOINT_NS] = ns.split("|").map((part) => part.split(":")[0]).join("|");
973
1011
  }
974
1012
  if (streamMode.includes("messages")) {
975
- const messageStreamer = new StreamMessagesHandler((chunk) => stream.push(chunk));
1013
+ const messageStreamer = options?.version === "v3" ? new StreamProtocolMessagesHandler((chunk) => stream.push(chunk)) : new StreamMessagesHandler((chunk) => stream.push(chunk));
976
1014
  const { callbacks } = config;
977
1015
  if (callbacks === void 0) config.callbacks = [messageStreamer];
978
1016
  else if (Array.isArray(callbacks)) config.callbacks = callbacks.concat(messageStreamer);
@@ -1004,7 +1042,8 @@ var Pregel = class extends PartialRunnable {
1004
1042
  };
1005
1043
  config.interrupt ??= this.userInterrupt ?? interrupt;
1006
1044
  if (config.serverInfo == null) config.serverInfo = _buildServerInfo(config);
1007
- const runManager = await (await CallbackManager._configureSync(config?.callbacks, void 0, config?.tags, void 0, config?.metadata, void 0, { tracerInheritableMetadata: _getTracingMetadataDefaults(config) }))?.handleChainStart(this.toJSON(), _coerceToDict(input, "input"), runId, void 0, void 0, void 0, config?.runName ?? this.getName());
1045
+ const callbackManagerOptions = { tracerInheritableMetadata: _getTracingMetadataDefaults(config) };
1046
+ const runManager = await (await CallbackManager._configureSync(config?.callbacks, void 0, config?.tags, void 0, config?.metadata, void 0, callbackManagerOptions))?.handleChainStart(this.toJSON(), _coerceToDict(input, "input"), runId, void 0, void 0, void 0, config?.runName ?? this.getName());
1008
1047
  const channelSpecs = getOnlyChannels(this.channels);
1009
1048
  let loop;
1010
1049
  let loopError;
@@ -1071,7 +1110,7 @@ var Pregel = class extends PartialRunnable {
1071
1110
  try {
1072
1111
  for await (const chunk of stream) {
1073
1112
  if (chunk === void 0) throw new Error("Data structure error.");
1074
- const [namespace, mode, payload] = chunk;
1113
+ const [namespace, mode, payload, meta] = chunk;
1075
1114
  if (streamMode.includes(mode)) {
1076
1115
  if (streamEncoding === "text/event-stream") {
1077
1116
  if (streamSubgraphs) yield [
@@ -1086,7 +1125,12 @@ var Pregel = class extends PartialRunnable {
1086
1125
  ];
1087
1126
  continue;
1088
1127
  }
1089
- if (streamSubgraphs && !streamModeSingle) yield [
1128
+ if (streamSubgraphs && !streamModeSingle) yield meta !== void 0 ? [
1129
+ namespace,
1130
+ mode,
1131
+ payload,
1132
+ meta
1133
+ ] : [
1090
1134
  namespace,
1091
1135
  mode,
1092
1136
  payload