@langchain/langgraph 1.4.18-rc.0 → 1.4.19

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.
@@ -347,13 +347,27 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
347
347
  * @returns AsyncGenerator yielding tuples of [name, subgraph]
348
348
  */
349
349
  getSubgraphsAsync(namespace?: string, recurse?: boolean): AsyncGenerator<[string, Pregel<any, any>]>;
350
+ /**
351
+ * The checkpointer runs and state methods use: none for `checkpointer: false`,
352
+ * else the one a parent lends a subgraph through the config, else this
353
+ * graph's own.
354
+ */
355
+ private _resolveCheckpointer;
356
+ private _stateCheckpointer;
357
+ /**
358
+ * A `checkpointer: true` subgraph keeps one history per thread, stored
359
+ * under its namespace with the task ids removed.
360
+ */
361
+ private _ownCheckpointConfig;
362
+ private _subgraphForNamespace;
350
363
  /**
351
364
  * Prepares a state snapshot from saved checkpoint data.
352
365
  * This is an internal method used by getState and getStateHistory.
353
366
  *
354
367
  * @param config - Configuration for preparing the snapshot
355
368
  * @param saved - Optional saved checkpoint data
356
- * @param subgraphCheckpointer - Optional checkpointer for subgraphs
369
+ * @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
370
+ * @param recurse - Whether to include each subgraph task's state
357
371
  * @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
358
372
  * @returns A snapshot of the graph state
359
373
  * @internal
@@ -361,12 +375,14 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
361
375
  protected _prepareStateSnapshot({
362
376
  config,
363
377
  saved,
364
- subgraphCheckpointer,
378
+ saver,
379
+ recurse,
365
380
  applyPendingWrites
366
381
  }: {
367
382
  config: RunnableConfig;
368
383
  saved?: CheckpointTuple;
369
- subgraphCheckpointer?: BaseCheckpointSaver;
384
+ saver: BaseCheckpointSaver;
385
+ recurse?: boolean;
370
386
  applyPendingWrites?: boolean;
371
387
  }): Promise<StateSnapshot>;
372
388
  /**
@@ -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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"}
@@ -347,13 +347,27 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
347
347
  * @returns AsyncGenerator yielding tuples of [name, subgraph]
348
348
  */
349
349
  getSubgraphsAsync(namespace?: string, recurse?: boolean): AsyncGenerator<[string, Pregel<any, any>]>;
350
+ /**
351
+ * The checkpointer runs and state methods use: none for `checkpointer: false`,
352
+ * else the one a parent lends a subgraph through the config, else this
353
+ * graph's own.
354
+ */
355
+ private _resolveCheckpointer;
356
+ private _stateCheckpointer;
357
+ /**
358
+ * A `checkpointer: true` subgraph keeps one history per thread, stored
359
+ * under its namespace with the task ids removed.
360
+ */
361
+ private _ownCheckpointConfig;
362
+ private _subgraphForNamespace;
350
363
  /**
351
364
  * Prepares a state snapshot from saved checkpoint data.
352
365
  * This is an internal method used by getState and getStateHistory.
353
366
  *
354
367
  * @param config - Configuration for preparing the snapshot
355
368
  * @param saved - Optional saved checkpoint data
356
- * @param subgraphCheckpointer - Optional checkpointer for subgraphs
369
+ * @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
370
+ * @param recurse - Whether to include each subgraph task's state
357
371
  * @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
358
372
  * @returns A snapshot of the graph state
359
373
  * @internal
@@ -361,12 +375,14 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
361
375
  protected _prepareStateSnapshot({
362
376
  config,
363
377
  saved,
364
- subgraphCheckpointer,
378
+ saver,
379
+ recurse,
365
380
  applyPendingWrites
366
381
  }: {
367
382
  config: RunnableConfig;
368
383
  saved?: CheckpointTuple;
369
- subgraphCheckpointer?: BaseCheckpointSaver;
384
+ saver: BaseCheckpointSaver;
385
+ recurse?: boolean;
370
386
  applyPendingWrites?: boolean;
371
387
  }): Promise<StateSnapshot>;
372
388
  /**
@@ -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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"}
@@ -423,17 +423,62 @@ var Pregel = class extends PartialRunnable {
423
423
  yield* this.getSubgraphs(namespace, recurse);
424
424
  }
425
425
  /**
426
+ * The checkpointer runs and state methods use: none for `checkpointer: false`,
427
+ * else the one a parent lends a subgraph through the config, else this
428
+ * graph's own.
429
+ */
430
+ _resolveCheckpointer(config) {
431
+ if (this.checkpointer === false) return void 0;
432
+ const lent = config?.configurable?.[CONFIG_KEY_CHECKPOINTER];
433
+ if (lent !== void 0) return lent;
434
+ if (this.checkpointer === true) throw new Error("checkpointer: true cannot be used for root graphs.");
435
+ return this.checkpointer;
436
+ }
437
+ _stateCheckpointer(config) {
438
+ const checkpointer = this._resolveCheckpointer(config);
439
+ if (typeof checkpointer !== "object" || checkpointer === null) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
440
+ return checkpointer;
441
+ }
442
+ /**
443
+ * A `checkpointer: true` subgraph keeps one history per thread, stored
444
+ * under its namespace with the task ids removed.
445
+ */
446
+ _ownCheckpointConfig(config) {
447
+ if (this.checkpointer !== true) return config;
448
+ const ns = config.configurable?.["checkpoint_ns"] ?? "";
449
+ return {
450
+ ...config,
451
+ configurable: {
452
+ ...config.configurable,
453
+ [CONFIG_KEY_CHECKPOINT_NS]: ns.split("|").map((part) => part.split(":")[0]).join("|")
454
+ }
455
+ };
456
+ }
457
+ /**
458
+ * The subgraph a state method's namespaced config addresses, and the config
459
+ * to call it with, lending it `checkpointer`. `undefined` when the config is
460
+ * for this graph, comes from inside a running task, or names no declared
461
+ * subgraph (a dynamically created one, such as a tool-call subgraph).
462
+ */
463
+ async _subgraphForNamespace(config, checkpointer) {
464
+ const checkpointNamespace = config.configurable?.checkpoint_ns ?? "";
465
+ if (checkpointNamespace === "" || config.configurable?.["__pregel_read"] !== void 0 || config.configurable?.["__pregel_checkpointer"] !== void 0) return;
466
+ const recastNamespace = recastCheckpointNamespace(checkpointNamespace);
467
+ for await (const [name, subgraph] of this.getSubgraphsAsync(recastNamespace, true)) if (name === recastNamespace) return [subgraph, patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer })];
468
+ }
469
+ /**
426
470
  * Prepares a state snapshot from saved checkpoint data.
427
471
  * This is an internal method used by getState and getStateHistory.
428
472
  *
429
473
  * @param config - Configuration for preparing the snapshot
430
474
  * @param saved - Optional saved checkpoint data
431
- * @param subgraphCheckpointer - Optional checkpointer for subgraphs
475
+ * @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
476
+ * @param recurse - Whether to include each subgraph task's state
432
477
  * @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
433
478
  * @returns A snapshot of the graph state
434
479
  * @internal
435
480
  */
436
- async _prepareStateSnapshot({ config, saved, subgraphCheckpointer, applyPendingWrites = false }) {
481
+ async _prepareStateSnapshot({ config, saved, saver, recurse = false, applyPendingWrites = false }) {
437
482
  if (saved === void 0) return {
438
483
  values: {},
439
484
  next: [],
@@ -441,7 +486,7 @@ var Pregel = class extends PartialRunnable {
441
486
  tasks: []
442
487
  };
443
488
  const channels = await channelsFromCheckpoint(this.channels, saved.checkpoint, {
444
- saver: typeof this.checkpointer === "object" ? this.checkpointer : void 0,
489
+ saver,
445
490
  config: saved.config ?? config
446
491
  });
447
492
  if (saved.pendingWrites?.length) {
@@ -461,10 +506,10 @@ var Pregel = class extends PartialRunnable {
461
506
  const taskStates = {};
462
507
  for (const task of nextTasks) {
463
508
  const matchingSubgraph = subgraphs.find(([name]) => name === task.name);
464
- if (!matchingSubgraph) continue;
509
+ if (!matchingSubgraph || matchingSubgraph[1].checkpointer === false) continue;
465
510
  let taskNs = `${String(task.name)}:${task.id}`;
466
511
  if (parentNamespace) taskNs = `${parentNamespace}|${taskNs}`;
467
- if (subgraphCheckpointer === void 0) {
512
+ if (!recurse) {
468
513
  const config = { configurable: {
469
514
  thread_id: saved.config.configurable?.thread_id,
470
515
  checkpoint_ns: taskNs
@@ -472,7 +517,7 @@ var Pregel = class extends PartialRunnable {
472
517
  taskStates[task.id] = config;
473
518
  } else {
474
519
  const subgraphConfig = { configurable: {
475
- [CONFIG_KEY_CHECKPOINTER]: subgraphCheckpointer,
520
+ [CONFIG_KEY_CHECKPOINTER]: saver,
476
521
  thread_id: saved.config.configurable?.thread_id,
477
522
  checkpoint_ns: taskNs
478
523
  } };
@@ -520,19 +565,20 @@ var Pregel = class extends PartialRunnable {
520
565
  * @throws {GraphValueError} If no checkpointer is configured
521
566
  */
522
567
  async getState(config, options) {
523
- const checkpointer = config.configurable?.["__pregel_checkpointer"] ?? this.checkpointer;
524
- if (!checkpointer) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
525
- const checkpointNamespace = config.configurable?.checkpoint_ns ?? "";
526
- if (checkpointNamespace !== "" && config.configurable?.["__pregel_read"] === void 0 && config.configurable?.["__pregel_checkpointer"] === void 0) {
527
- const recastNamespace = recastCheckpointNamespace(checkpointNamespace);
528
- for await (const [name, subgraph] of this.getSubgraphsAsync(recastNamespace, true)) if (name === recastNamespace) return await subgraph.getState(patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer }), { subgraphs: options?.subgraphs });
568
+ const checkpointer = this._stateCheckpointer(config);
569
+ const subgraph = await this._subgraphForNamespace(config, checkpointer);
570
+ if (subgraph !== void 0) {
571
+ const [pregel, subgraphConfig] = subgraph;
572
+ return await pregel.getState(subgraphConfig, { subgraphs: options?.subgraphs });
529
573
  }
530
- const mergedConfig = mergeConfigs(this.config, config);
531
- const saved = await checkpointer.getTuple(config);
574
+ const ownConfig = this._ownCheckpointConfig(config);
575
+ const mergedConfig = mergeConfigs(this.config, ownConfig);
576
+ const saved = await checkpointer.getTuple(ownConfig);
532
577
  return await this._prepareStateSnapshot({
533
578
  config: mergedConfig,
534
579
  saved,
535
- subgraphCheckpointer: options?.subgraphs ? checkpointer : void 0,
580
+ saver: checkpointer,
581
+ recurse: options?.subgraphs,
536
582
  applyPendingWrites: !config.configurable?.checkpoint_id
537
583
  });
538
584
  }
@@ -550,20 +596,18 @@ var Pregel = class extends PartialRunnable {
550
596
  * @throws {Error} If no checkpointer is configured
551
597
  */
552
598
  async *getStateHistory(config, options) {
553
- const checkpointer = config.configurable?.["__pregel_checkpointer"] ?? this.checkpointer;
554
- if (!checkpointer) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
555
- const checkpointNamespace = config.configurable?.checkpoint_ns ?? "";
556
- if (checkpointNamespace !== "" && config.configurable?.["__pregel_checkpointer"] === void 0) {
557
- const recastNamespace = recastCheckpointNamespace(checkpointNamespace);
558
- for await (const [name, pregel] of this.getSubgraphsAsync(recastNamespace, true)) if (name === recastNamespace) {
559
- yield* pregel.getStateHistory(patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer }), options);
560
- return;
561
- }
599
+ const checkpointer = this._stateCheckpointer(config);
600
+ const subgraph = await this._subgraphForNamespace(config, checkpointer);
601
+ if (subgraph !== void 0) {
602
+ const [pregel, subgraphConfig] = subgraph;
603
+ yield* pregel.getStateHistory(subgraphConfig, options);
604
+ return;
562
605
  }
563
- const mergedConfig = mergeConfigs(this.config, config, { configurable: { checkpoint_ns: checkpointNamespace } });
606
+ const mergedConfig = this._ownCheckpointConfig(mergeConfigs(this.config, config, { configurable: { checkpoint_ns: config.configurable?.checkpoint_ns ?? "" } }));
564
607
  for await (const checkpointTuple of checkpointer.list(mergedConfig, options)) yield this._prepareStateSnapshot({
565
608
  config: checkpointTuple.config,
566
- saved: checkpointTuple
609
+ saved: checkpointTuple,
610
+ saver: checkpointer
567
611
  });
568
612
  }
569
613
  /**
@@ -583,18 +627,18 @@ var Pregel = class extends PartialRunnable {
583
627
  * @throws {InvalidUpdateError} If the update cannot be attributed to a node or an update can be only applied in sequence.
584
628
  */
585
629
  async bulkUpdateState(startConfig, supersteps) {
586
- const checkpointer = startConfig.configurable?.["__pregel_checkpointer"] ?? this.checkpointer;
587
- if (!checkpointer) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
630
+ const checkpointer = this._stateCheckpointer(startConfig);
588
631
  if (supersteps.length === 0) throw new Error("No supersteps provided");
589
632
  if (supersteps.some((s) => s.updates.length === 0)) throw new Error("No updates provided");
590
- const checkpointNamespace = startConfig.configurable?.checkpoint_ns ?? "";
591
- if (checkpointNamespace !== "" && startConfig.configurable?.["__pregel_checkpointer"] === void 0) {
592
- const recastNamespace = recastCheckpointNamespace(checkpointNamespace);
593
- for await (const [, pregel] of this.getSubgraphsAsync(recastNamespace, true)) return await pregel.bulkUpdateState(patchConfigurable(startConfig, { [CONFIG_KEY_CHECKPOINTER]: checkpointer }), supersteps);
594
- throw new Error(`Subgraph "${recastNamespace}" not found`);
633
+ const subgraph = await this._subgraphForNamespace(startConfig, checkpointer);
634
+ if (subgraph !== void 0) {
635
+ const [pregel, subgraphConfig] = subgraph;
636
+ return await pregel.bulkUpdateState(subgraphConfig, supersteps);
595
637
  }
638
+ const checkpointNamespace = startConfig.configurable?.checkpoint_ns ?? "";
639
+ if (checkpointNamespace !== "" && startConfig.configurable?.["__pregel_read"] === void 0 && startConfig.configurable?.["__pregel_checkpointer"] === void 0) throw new Error(`Subgraph "${recastCheckpointNamespace(checkpointNamespace)}" not found`);
596
640
  const updateSuperStep = async (inputConfig, updates) => {
597
- const config = this.config ? mergeConfigs(this.config, inputConfig) : inputConfig;
641
+ const config = this._ownCheckpointConfig(this.config ? mergeConfigs(this.config, inputConfig) : inputConfig);
598
642
  const saved = await checkpointer.getTuple(config);
599
643
  const checkpoint = saved !== void 0 ? copyCheckpoint(saved.checkpoint) : emptyCheckpoint();
600
644
  const checkpointPreviousVersions = { ...saved?.checkpoint.channel_versions };
@@ -698,7 +742,7 @@ var Pregel = class extends PartialRunnable {
698
742
  name: INPUT,
699
743
  writes: inputWrites,
700
744
  triggers: []
701
- }], checkpointer.getNextVersion.bind(this.checkpointer), this.triggerToNodes);
745
+ }], checkpointer.getNextVersion.bind(checkpointer), this.triggerToNodes);
702
746
  const nextStep = saved?.metadata?.step != null ? saved.metadata.step + 1 : -1;
703
747
  const nextConfig = await checkpointer.put(checkpointConfig, createCheckpoint(checkpoint, channels, nextStep), {
704
748
  source: "input",
@@ -796,7 +840,7 @@ var Pregel = class extends PartialRunnable {
796
840
  const channelWrites = task.writes.filter((w) => w[0] !== PUSH);
797
841
  if (saved !== void 0 && channelWrites.length > 0) await checkpointer.putWrites(checkpointConfig, channelWrites, task.id);
798
842
  }
799
- _applyWrites(checkpoint, channels, tasks, checkpointer.getNextVersion.bind(this.checkpointer), this.triggerToNodes);
843
+ _applyWrites(checkpoint, channels, tasks, checkpointer.getNextVersion.bind(checkpointer), this.triggerToNodes);
800
844
  const newVersions = getNewChannelVersions(checkpointPreviousVersions, checkpoint.channel_versions);
801
845
  const nextConfig = await checkpointer.put(checkpointConfig, createCheckpoint(checkpoint, channels, step + 1), {
802
846
  source: "update",
@@ -876,11 +920,7 @@ var Pregel = class extends PartialRunnable {
876
920
  else defaultStreamMode = this.streamMode;
877
921
  streamModeSingle = true;
878
922
  }
879
- let defaultCheckpointer;
880
- if (this.checkpointer === false) defaultCheckpointer = void 0;
881
- else if (config !== void 0 && config.configurable?.["__pregel_checkpointer"] !== void 0) defaultCheckpointer = config.configurable[CONFIG_KEY_CHECKPOINTER];
882
- else if (this.checkpointer === true) throw new Error("checkpointer: true cannot be used for root graphs.");
883
- else defaultCheckpointer = this.checkpointer;
923
+ const defaultCheckpointer = this._resolveCheckpointer(config);
884
924
  const defaultStore = config.store ?? this.store;
885
925
  const defaultCache = config.cache ?? this.cache;
886
926
  if (config.durability != null && config.checkpointDuring != null) throw new Error("Cannot use both `durability` and `checkpointDuring` at the same time.");
@@ -1020,11 +1060,7 @@ var Pregel = class extends PartialRunnable {
1020
1060
  if (typeof config.context !== "undefined") config.context = await this._validateContext(config.context);
1021
1061
  else config.configurable = await this._validateContext(config.configurable);
1022
1062
  const stream = new IterableReadableWritableStream({ modes: new Set(streamMode) });
1023
- if (this.checkpointer === true) {
1024
- config.configurable ??= {};
1025
- const ns = config.configurable["checkpoint_ns"] ?? "";
1026
- config.configurable[CONFIG_KEY_CHECKPOINT_NS] = ns.split("|").map((part) => part.split(":")[0]).join("|");
1027
- }
1063
+ config.configurable = this._ownCheckpointConfig(config).configurable;
1028
1064
  if (streamMode.includes("messages")) {
1029
1065
  const messageStreamer = isV3 ? new StreamProtocolMessagesHandler((chunk) => stream.push(chunk)) : new StreamMessagesHandler((chunk) => stream.push(chunk));
1030
1066
  const { callbacks } = config;