@langchain/langgraph-sdk 1.9.9 → 1.9.11
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.
- package/dist/client/stream/index.cjs +37 -5
- package/dist/client/stream/index.cjs.map +1 -1
- package/dist/client/stream/index.d.cts +7 -14
- package/dist/client/stream/index.d.cts.map +1 -1
- package/dist/client/stream/index.d.ts +7 -14
- package/dist/client/stream/index.d.ts.map +1 -1
- package/dist/client/stream/index.js +37 -5
- package/dist/client/stream/index.js.map +1 -1
- package/dist/client/stream/types.d.cts +8 -3
- package/dist/client/stream/types.d.cts.map +1 -1
- package/dist/client/stream/types.d.ts +8 -3
- package/dist/client/stream/types.d.ts.map +1 -1
- package/dist/headless-tools.cjs +0 -24
- package/dist/headless-tools.cjs.map +1 -1
- package/dist/headless-tools.d.cts.map +1 -1
- package/dist/headless-tools.d.ts.map +1 -1
- package/dist/headless-tools.js +1 -24
- package/dist/headless-tools.js.map +1 -1
- package/dist/stream/controller.cjs +156 -19
- package/dist/stream/controller.cjs.map +1 -1
- package/dist/stream/controller.d.cts +113 -10
- package/dist/stream/controller.d.cts.map +1 -1
- package/dist/stream/controller.d.ts +113 -10
- package/dist/stream/controller.d.ts.map +1 -1
- package/dist/stream/controller.js +157 -20
- package/dist/stream/controller.js.map +1 -1
- package/dist/stream/index.d.cts +2 -2
- package/dist/stream/index.d.ts +2 -2
- package/dist/stream/message-metadata-tracker.cjs +1 -1
- package/dist/stream/message-metadata-tracker.cjs.map +1 -1
- package/dist/stream/message-metadata-tracker.d.cts +1 -1
- package/dist/stream/message-metadata-tracker.d.ts +1 -1
- package/dist/stream/message-metadata-tracker.js +1 -1
- package/dist/stream/message-metadata-tracker.js.map +1 -1
- package/dist/stream/submit-coordinator.cjs +45 -79
- package/dist/stream/submit-coordinator.cjs.map +1 -1
- package/dist/stream/submit-coordinator.d.cts.map +1 -1
- package/dist/stream/submit-coordinator.d.ts.map +1 -1
- package/dist/stream/submit-coordinator.js +45 -79
- package/dist/stream/submit-coordinator.js.map +1 -1
- package/dist/stream/types.d.cts +52 -30
- package/dist/stream/types.d.cts.map +1 -1
- package/dist/stream/types.d.ts +52 -30
- package/dist/stream/types.d.ts.map +1 -1
- package/dist/ui/manager.cjs +47 -34
- package/dist/ui/manager.cjs.map +1 -1
- package/dist/ui/manager.d.cts.map +1 -1
- package/dist/ui/manager.d.ts.map +1 -1
- package/dist/ui/manager.js +47 -34
- package/dist/ui/manager.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/client/stream/index.ts"],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../../src/client/stream/index.ts"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { SubagentHandle } from "./handles/subagents.js";
|
|
|
7
7
|
import { SubgraphHandle, Subscribable } from "./handles/subgraphs.js";
|
|
8
8
|
import { inferChannel, matchesSubscription } from "./subscription.js";
|
|
9
9
|
import { ProtocolError } from "./error.js";
|
|
10
|
-
import { Channel, Event, RunResult, SubscribeParams } from "@langchain/protocol";
|
|
10
|
+
import { Channel, Event, InputRespondParams, RunResult, SubscribeParams } from "@langchain/protocol";
|
|
11
11
|
|
|
12
12
|
//#region src/client/stream/index.d.ts
|
|
13
13
|
/**
|
|
@@ -182,13 +182,12 @@ declare class ThreadStream<TExtensions extends Record<string, unknown> = Record<
|
|
|
182
182
|
metadata?: Record<string, unknown>;
|
|
183
183
|
/**
|
|
184
184
|
* Fork the new run from an explicit checkpoint instead of the
|
|
185
|
-
* thread's latest.
|
|
186
|
-
*
|
|
187
|
-
*
|
|
185
|
+
* thread's latest. This is an SDK-side convenience: it is folded into
|
|
186
|
+
* `config.configurable.checkpoint_id` before the `run.start` message
|
|
187
|
+
* is sent, so the agent server only ever sees the single
|
|
188
|
+
* legacy-compliant fork field (`forkFrom` never hits the wire).
|
|
188
189
|
*/
|
|
189
|
-
forkFrom?:
|
|
190
|
-
checkpointId: string;
|
|
191
|
-
};
|
|
190
|
+
forkFrom?: string;
|
|
192
191
|
/**
|
|
193
192
|
* Controls how concurrent submissions on the same thread are
|
|
194
193
|
* handled by the server (`reject` | `rollback` | `interrupt` |
|
|
@@ -201,13 +200,7 @@ declare class ThreadStream<TExtensions extends Record<string, unknown> = Record<
|
|
|
201
200
|
* See {@link submitRun} for why this exists alongside
|
|
202
201
|
* {@link input.respond}.
|
|
203
202
|
*/
|
|
204
|
-
respondInput(params:
|
|
205
|
-
namespace: readonly string[];
|
|
206
|
-
interrupt_id: string;
|
|
207
|
-
response: unknown;
|
|
208
|
-
config?: Record<string, unknown>;
|
|
209
|
-
metadata?: Record<string, unknown>;
|
|
210
|
-
}): Promise<void>;
|
|
203
|
+
respondInput(params: InputRespondParams): Promise<void>;
|
|
211
204
|
/**
|
|
212
205
|
* Register a listener for every globally-unique event on the thread.
|
|
213
206
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/client/stream/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/client/stream/index.ts"],"mappings":"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"}
|
|
@@ -150,6 +150,37 @@ function normalizeSubscribeParams(paramsOrChannels, options = {}) {
|
|
|
150
150
|
};
|
|
151
151
|
}
|
|
152
152
|
/**
|
|
153
|
+
* Fold the ergonomic top-level `forkFrom` checkpoint id into
|
|
154
|
+
* `config.configurable.checkpoint_id` and strip `forkFrom` from the
|
|
155
|
+
* outgoing params.
|
|
156
|
+
*
|
|
157
|
+
* `forkFrom` is purely an SDK-side convenience: callers say
|
|
158
|
+
* `submit(input, { forkFrom })` instead of hand-building a nested
|
|
159
|
+
* RunnableConfig. The agent server only ever accepts the fork target via
|
|
160
|
+
* `config.configurable.checkpoint_id` (the same field the legacy run
|
|
161
|
+
* endpoints use), so we translate here — before the `run.start` message
|
|
162
|
+
* hits the wire — keeping a single, legacy-compliant way to provide it.
|
|
163
|
+
*
|
|
164
|
+
* `forkFrom` takes precedence over any `checkpoint_id` the caller already
|
|
165
|
+
* placed in `config.configurable`, matching the prior server-side merge.
|
|
166
|
+
*/
|
|
167
|
+
function foldForkFromIntoConfig(params) {
|
|
168
|
+
const { forkFrom, ...rest } = params;
|
|
169
|
+
if (typeof forkFrom !== "string" || forkFrom.length === 0) return rest;
|
|
170
|
+
const config = rest.config != null && typeof rest.config === "object" ? rest.config : {};
|
|
171
|
+
const configurable = config.configurable != null && typeof config.configurable === "object" ? config.configurable : {};
|
|
172
|
+
return {
|
|
173
|
+
...rest,
|
|
174
|
+
config: {
|
|
175
|
+
...config,
|
|
176
|
+
configurable: {
|
|
177
|
+
...configurable,
|
|
178
|
+
checkpoint_id: forkFrom
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
153
184
|
* Async iterable handle for raw event subscriptions.
|
|
154
185
|
*
|
|
155
186
|
* An optional `transform` maps each incoming event before it is queued
|
|
@@ -383,7 +414,7 @@ var ThreadStream = class {
|
|
|
383
414
|
this.#ensureLifecycleTracking();
|
|
384
415
|
this.values;
|
|
385
416
|
return this.#send("run.start", {
|
|
386
|
-
...params,
|
|
417
|
+
...foldForkFromIntoConfig(params),
|
|
387
418
|
assistant_id: this.assistantId
|
|
388
419
|
});
|
|
389
420
|
});
|
|
@@ -485,8 +516,8 @@ var ThreadStream = class {
|
|
|
485
516
|
#prepareForNextRun(respondedInterruptId) {
|
|
486
517
|
this.interrupted = false;
|
|
487
518
|
if (respondedInterruptId != null) {
|
|
488
|
-
const
|
|
489
|
-
|
|
519
|
+
const respondedIds = new Set(Array.isArray(respondedInterruptId) ? respondedInterruptId : [respondedInterruptId]);
|
|
520
|
+
for (let index = this.interrupts.length - 1; index >= 0; index -= 1) if (respondedIds.has(this.interrupts[index].interruptId)) this.interrupts.splice(index, 1);
|
|
490
521
|
} else this.interrupts.length = 0;
|
|
491
522
|
if (this.#terminalPauseTimer != null) {
|
|
492
523
|
clearTimeout(this.#terminalPauseTimer);
|
|
@@ -826,7 +857,7 @@ var ThreadStream = class {
|
|
|
826
857
|
return await this.#withRunStartGate(() => {
|
|
827
858
|
this.#startLifecycleWatcher();
|
|
828
859
|
return this.#send("run.start", {
|
|
829
|
-
...params,
|
|
860
|
+
...foldForkFromIntoConfig(params),
|
|
830
861
|
assistant_id: this.assistantId
|
|
831
862
|
});
|
|
832
863
|
});
|
|
@@ -837,7 +868,8 @@ var ThreadStream = class {
|
|
|
837
868
|
* {@link input.respond}.
|
|
838
869
|
*/
|
|
839
870
|
async respondInput(params) {
|
|
840
|
-
|
|
871
|
+
const respondedIds = "responses" in params ? params.responses.map((entry) => entry.interrupt_id) : params.interrupt_id;
|
|
872
|
+
this.#prepareForNextRun(respondedIds);
|
|
841
873
|
this.#startLifecycleWatcher();
|
|
842
874
|
await this.#send("input.respond", params);
|
|
843
875
|
}
|