langgraph-api 0.2.8__py3-none-any.whl → 0.2.10__py3-none-any.whl
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.
Potentially problematic release.
This version of langgraph-api might be problematic. Click here for more details.
- langgraph_api/__init__.py +1 -1
- langgraph_api/js/build.mts +3 -6
- langgraph_api/js/client.mts +50 -29
- langgraph_api/js/package.json +2 -2
- langgraph_api/js/src/graph.mts +5 -32
- langgraph_api/js/tests/api.test.mts +7 -5
- langgraph_api/js/yarn.lock +9 -9
- langgraph_api/worker.py +21 -0
- {langgraph_api-0.2.8.dist-info → langgraph_api-0.2.10.dist-info}/METADATA +1 -1
- {langgraph_api-0.2.8.dist-info → langgraph_api-0.2.10.dist-info}/RECORD +13 -18
- langgraph_api/js/src/parser/parser.mts +0 -474
- langgraph_api/js/src/parser/parser.worker.mjs +0 -12
- langgraph_api/js/src/parser/schema/types.mts +0 -2016
- langgraph_api/js/src/parser/schema/types.template.mts +0 -78
- langgraph_api/js/tests/parser.test.mts +0 -885
- {langgraph_api-0.2.8.dist-info → langgraph_api-0.2.10.dist-info}/LICENSE +0 -0
- {langgraph_api-0.2.8.dist-info → langgraph_api-0.2.10.dist-info}/WHEEL +0 -0
- {langgraph_api-0.2.8.dist-info → langgraph_api-0.2.10.dist-info}/entry_points.txt +0 -0
langgraph_api/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.2.
|
|
1
|
+
__version__ = "0.2.10"
|
langgraph_api/js/build.mts
CHANGED
|
@@ -4,13 +4,10 @@ import "./src/preload.mjs";
|
|
|
4
4
|
import { z } from "zod";
|
|
5
5
|
import * as fs from "node:fs/promises";
|
|
6
6
|
import * as path from "node:path";
|
|
7
|
-
import {
|
|
8
|
-
type GraphSchema,
|
|
9
|
-
resolveGraph,
|
|
10
|
-
runGraphSchemaWorker,
|
|
11
|
-
} from "./src/graph.mts";
|
|
7
|
+
import { type GraphSchema, resolveGraph } from "./src/graph.mts";
|
|
12
8
|
import { build } from "@langchain/langgraph-ui";
|
|
13
9
|
import { checkLangGraphSemver } from "@langchain/langgraph-api/semver";
|
|
10
|
+
import { getStaticGraphSchema } from "@langchain/langgraph-api/schema";
|
|
14
11
|
import { filterValidExportPath } from "./src/utils/files.mts";
|
|
15
12
|
|
|
16
13
|
const __dirname = new URL(".", import.meta.url).pathname;
|
|
@@ -54,7 +51,7 @@ async function main() {
|
|
|
54
51
|
|
|
55
52
|
try {
|
|
56
53
|
console.info(`[${graphId}]: Extracting schema`);
|
|
57
|
-
GRAPH_SCHEMAS[graphId] = await
|
|
54
|
+
GRAPH_SCHEMAS[graphId] = await getStaticGraphSchema(spec, {
|
|
58
55
|
timeoutMs: 120_000,
|
|
59
56
|
});
|
|
60
57
|
} catch (error) {
|
langgraph_api/js/client.mts
CHANGED
|
@@ -38,7 +38,6 @@ import { BaseMessageChunk, isBaseMessage } from "@langchain/core/messages";
|
|
|
38
38
|
import type { PyItem, PyResult } from "./src/utils/pythonSchemas.mts";
|
|
39
39
|
import type { RunnableConfig } from "@langchain/core/runnables";
|
|
40
40
|
import {
|
|
41
|
-
runGraphSchemaWorker,
|
|
42
41
|
GraphSchema,
|
|
43
42
|
resolveGraph,
|
|
44
43
|
GraphSpec,
|
|
@@ -52,6 +51,10 @@ import {
|
|
|
52
51
|
authorize,
|
|
53
52
|
registerAuth,
|
|
54
53
|
} from "@langchain/langgraph-api/auth";
|
|
54
|
+
import {
|
|
55
|
+
getRuntimeGraphSchema,
|
|
56
|
+
getStaticGraphSchema,
|
|
57
|
+
} from "@langchain/langgraph-api/schema";
|
|
55
58
|
import { filterValidExportPath } from "./src/utils/files.mts";
|
|
56
59
|
|
|
57
60
|
const logger = createLogger({
|
|
@@ -177,7 +180,7 @@ async function getOrExtractSchema(graphId: string) {
|
|
|
177
180
|
// ignore
|
|
178
181
|
}
|
|
179
182
|
|
|
180
|
-
GRAPH_SCHEMA[graphId] = await
|
|
183
|
+
GRAPH_SCHEMA[graphId] = await getStaticGraphSchema(GRAPH_SPEC[graphId], {
|
|
181
184
|
timeoutMs,
|
|
182
185
|
});
|
|
183
186
|
timer.done({ message: `Extracting schema for ${graphId} finished` });
|
|
@@ -482,6 +485,15 @@ function pyItemToJs(item?: PyItem): Item | undefined {
|
|
|
482
485
|
};
|
|
483
486
|
}
|
|
484
487
|
|
|
488
|
+
function isPyItem(result: unknown): result is PyItem {
|
|
489
|
+
return (
|
|
490
|
+
result != null &&
|
|
491
|
+
typeof result === "object" &&
|
|
492
|
+
"value" in result &&
|
|
493
|
+
"key" in result
|
|
494
|
+
);
|
|
495
|
+
}
|
|
496
|
+
|
|
485
497
|
export class RemoteStore extends BaseStore {
|
|
486
498
|
async batch<Op extends Operation[]>(
|
|
487
499
|
operations: Op,
|
|
@@ -492,16 +504,10 @@ export class RemoteStore extends BaseStore {
|
|
|
492
504
|
|
|
493
505
|
return results.map((result) => {
|
|
494
506
|
if (Array.isArray(result)) {
|
|
495
|
-
return result.map((item) => pyItemToJs(item));
|
|
496
|
-
} else if (
|
|
497
|
-
result &&
|
|
498
|
-
typeof result === "object" &&
|
|
499
|
-
"value" in result &&
|
|
500
|
-
"key" in result
|
|
501
|
-
) {
|
|
502
|
-
return pyItemToJs(result);
|
|
507
|
+
return result.map((item) => (isPyItem(item) ? pyItemToJs(item) : item));
|
|
503
508
|
}
|
|
504
|
-
|
|
509
|
+
|
|
510
|
+
return isPyItem(result) ? pyItemToJs(result) : result;
|
|
505
511
|
}) as OperationResults<Op>;
|
|
506
512
|
}
|
|
507
513
|
|
|
@@ -788,25 +794,33 @@ async function getSubgraphsRequest(
|
|
|
788
794
|
rawPayload: z.infer<typeof GetSubgraphsPayload>,
|
|
789
795
|
) {
|
|
790
796
|
const { graph_id: graphId, ...payload } = rawPayload;
|
|
791
|
-
const graphConfig = getRunnableConfig(payload.graph_config);
|
|
792
|
-
const graph = await getGraph(graphId, graphConfig, payload.graph_name);
|
|
793
|
-
const result: Array<[name: string, Record<string, any>]> = [];
|
|
794
797
|
|
|
795
|
-
const
|
|
796
|
-
const
|
|
798
|
+
const config = getRunnableConfig(payload.graph_config);
|
|
799
|
+
const graph = await getGraph(graphId, config, payload.graph_name);
|
|
797
800
|
|
|
798
|
-
|
|
801
|
+
const result: Array<[name: string, schema: Record<string, any>]> = [];
|
|
802
|
+
let graphSchemaPromise: ReturnType<typeof getOrExtractSchema> | undefined;
|
|
799
803
|
|
|
800
|
-
for await (const [
|
|
804
|
+
for await (const [ns, subgraph] of graph.getSubgraphsAsync(
|
|
801
805
|
payload.namespace ?? undefined,
|
|
802
806
|
payload.recurse ?? undefined,
|
|
803
807
|
)) {
|
|
804
|
-
const schema =
|
|
805
|
-
|
|
806
|
-
|
|
808
|
+
const schema = await (async () => {
|
|
809
|
+
const runtimeSchema = await getRuntimeGraphSchema(subgraph);
|
|
810
|
+
if (runtimeSchema) return runtimeSchema;
|
|
811
|
+
|
|
812
|
+
graphSchemaPromise ??= getOrExtractSchema(graphId);
|
|
813
|
+
const graphSchema = await graphSchemaPromise;
|
|
814
|
+
const rootGraphId = Object.keys(graphSchema).find(
|
|
815
|
+
(i) => !i.includes("|"),
|
|
816
|
+
);
|
|
817
|
+
if (!rootGraphId) throw new Error("Failed to find root graph");
|
|
818
|
+
return graphSchema[`${rootGraphId}|${ns}`] || graphSchema[rootGraphId];
|
|
819
|
+
})();
|
|
820
|
+
|
|
821
|
+
result.push([ns, schema]);
|
|
807
822
|
}
|
|
808
823
|
|
|
809
|
-
// TODO: make this a stream
|
|
810
824
|
return Object.fromEntries(result);
|
|
811
825
|
}
|
|
812
826
|
|
|
@@ -864,14 +878,21 @@ const GetSchemaPayload = z.object({
|
|
|
864
878
|
|
|
865
879
|
async function getSchemaRequest(payload: z.infer<typeof GetSchemaPayload>) {
|
|
866
880
|
const { graph_id: graphId } = payload;
|
|
867
|
-
// TODO: add support for schema inference with dynamic graphs (now that Zod is supported)
|
|
868
881
|
|
|
869
|
-
const
|
|
870
|
-
const
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
874
|
-
|
|
882
|
+
const config = getRunnableConfig(payload.graph_config);
|
|
883
|
+
const graph = await getGraph(graphId, config, payload.graph_name);
|
|
884
|
+
|
|
885
|
+
const schema = await (async () => {
|
|
886
|
+
const runtimeSchema = await getRuntimeGraphSchema(graph);
|
|
887
|
+
if (runtimeSchema) return runtimeSchema;
|
|
888
|
+
|
|
889
|
+
const graphSchema = await getOrExtractSchema(graphId);
|
|
890
|
+
const rootGraphId = Object.keys(graphSchema).find((i) => !i.includes("|"));
|
|
891
|
+
if (!rootGraphId) throw new Error("Failed to find root graph");
|
|
892
|
+
return graphSchema[rootGraphId];
|
|
893
|
+
})();
|
|
894
|
+
|
|
895
|
+
return schema;
|
|
875
896
|
}
|
|
876
897
|
|
|
877
898
|
const GetStateHistoryPayload = z.object({
|
langgraph_api/js/package.json
CHANGED
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
"undici": "^6.21.1",
|
|
25
25
|
"uuid": "^10.0.0",
|
|
26
26
|
"winston": "^3.17.0",
|
|
27
|
-
"@langchain/langgraph-api": "~0.0.
|
|
28
|
-
"@langchain/langgraph-ui": "~0.0.
|
|
27
|
+
"@langchain/langgraph-api": "~0.0.32",
|
|
28
|
+
"@langchain/langgraph-ui": "~0.0.32",
|
|
29
29
|
"zod": "^3.23.8"
|
|
30
30
|
},
|
|
31
31
|
"resolutions": {
|
langgraph_api/js/src/graph.mts
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { Worker } from "node:worker_threads";
|
|
2
|
-
import { register } from "node:module";
|
|
3
1
|
import * as fs from "node:fs/promises";
|
|
4
|
-
import type { CompiledGraph, Graph } from "@langchain/langgraph";
|
|
5
2
|
import * as path from "node:path";
|
|
3
|
+
|
|
4
|
+
import type { CompiledGraph, Graph } from "@langchain/langgraph";
|
|
6
5
|
import type { JSONSchema7 } from "json-schema";
|
|
7
6
|
|
|
8
7
|
export interface GraphSchema {
|
|
@@ -40,14 +39,14 @@ export async function resolveGraph(
|
|
|
40
39
|
options?: { onlyFilePresence?: boolean },
|
|
41
40
|
) {
|
|
42
41
|
const [userFile, exportSymbol] = spec.split(":", 2);
|
|
42
|
+
const sourceFile = path.resolve(process.cwd(), userFile);
|
|
43
43
|
|
|
44
44
|
// validate file exists
|
|
45
|
-
await fs.stat(
|
|
45
|
+
await fs.stat(sourceFile);
|
|
46
46
|
if (options?.onlyFilePresence) {
|
|
47
|
-
return { sourceFile
|
|
47
|
+
return { sourceFile, exportSymbol, resolved: undefined };
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
-
const sourceFile = path.resolve(process.cwd(), userFile);
|
|
51
50
|
type GraphLike = CompiledGraph<string> | Graph<string>;
|
|
52
51
|
|
|
53
52
|
type GraphUnknown =
|
|
@@ -89,29 +88,3 @@ export async function resolveGraph(
|
|
|
89
88
|
|
|
90
89
|
return { sourceFile, exportSymbol, resolved };
|
|
91
90
|
}
|
|
92
|
-
|
|
93
|
-
export async function runGraphSchemaWorker(
|
|
94
|
-
spec: GraphSpec,
|
|
95
|
-
options?: { timeoutMs?: number },
|
|
96
|
-
) {
|
|
97
|
-
return await new Promise<Record<string, GraphSchema>>((resolve, reject) => {
|
|
98
|
-
const worker = new Worker(
|
|
99
|
-
new URL("./parser/parser.worker.mjs", import.meta.url).pathname,
|
|
100
|
-
);
|
|
101
|
-
|
|
102
|
-
// Set a timeout to reject if the worker takes too long
|
|
103
|
-
const timeoutId = setTimeout(() => {
|
|
104
|
-
worker.terminate();
|
|
105
|
-
reject(new Error("Schema extract worker timed out"));
|
|
106
|
-
}, options?.timeoutMs ?? 30_000);
|
|
107
|
-
|
|
108
|
-
worker.on("message", (result) => {
|
|
109
|
-
worker.terminate();
|
|
110
|
-
clearTimeout(timeoutId);
|
|
111
|
-
resolve(result);
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
worker.on("error", reject);
|
|
115
|
-
worker.postMessage(spec);
|
|
116
|
-
});
|
|
117
|
-
}
|
|
@@ -303,7 +303,7 @@ describe("threads crud", () => {
|
|
|
303
303
|
});
|
|
304
304
|
|
|
305
305
|
describe("threads copy", () => {
|
|
306
|
-
it.concurrent("copy", async () => {
|
|
306
|
+
it.concurrent("copy", { retry: 3 }, async () => {
|
|
307
307
|
const assistantId = "agent";
|
|
308
308
|
const thread = await client.threads.create();
|
|
309
309
|
const input = { messages: [{ type: "human", content: "foo" }] };
|
|
@@ -377,7 +377,7 @@ describe("threads copy", () => {
|
|
|
377
377
|
}
|
|
378
378
|
});
|
|
379
379
|
|
|
380
|
-
it.concurrent("copy runs", async () => {
|
|
380
|
+
it.concurrent("copy runs", { retry: 3 }, async () => {
|
|
381
381
|
const assistantId = "agent";
|
|
382
382
|
const thread = await client.threads.create();
|
|
383
383
|
|
|
@@ -423,7 +423,7 @@ describe("threads copy", () => {
|
|
|
423
423
|
expect(currentOriginalThreadState).toEqual(originalThreadState);
|
|
424
424
|
});
|
|
425
425
|
|
|
426
|
-
it.concurrent("get thread history", async () => {
|
|
426
|
+
it.concurrent("get thread history", { retry: 3 }, async () => {
|
|
427
427
|
const assistant = await client.assistants.create({ graphId: "agent" });
|
|
428
428
|
const thread = await client.threads.create();
|
|
429
429
|
const input = { messages: [{ type: "human", content: "foo" }] };
|
|
@@ -467,7 +467,7 @@ describe("threads copy", () => {
|
|
|
467
467
|
expect(filteredHistory.at(-1)?.values.messages.length).toBe(4);
|
|
468
468
|
});
|
|
469
469
|
|
|
470
|
-
it.concurrent("copy update", async () => {
|
|
470
|
+
it.concurrent("copy update", { retry: 3 }, async () => {
|
|
471
471
|
const assistantId = "agent";
|
|
472
472
|
const thread = await client.threads.create();
|
|
473
473
|
const input = {
|
|
@@ -561,7 +561,9 @@ describe("runs", () => {
|
|
|
561
561
|
}
|
|
562
562
|
|
|
563
563
|
if (chunk.event === "values") {
|
|
564
|
-
const messageIds = chunk.data.messages.map(
|
|
564
|
+
const messageIds = chunk.data.messages.map(
|
|
565
|
+
(message: any) => message.id,
|
|
566
|
+
);
|
|
565
567
|
expect(messageIds.slice(0, -1)).toEqual(previousMessageIds);
|
|
566
568
|
previousMessageIds = messageIds;
|
|
567
569
|
}
|
langgraph_api/js/yarn.lock
CHANGED
|
@@ -203,15 +203,15 @@
|
|
|
203
203
|
zod "^3.22.4"
|
|
204
204
|
zod-to-json-schema "^3.22.3"
|
|
205
205
|
|
|
206
|
-
"@langchain/langgraph-api@~0.0.
|
|
207
|
-
version "0.0.
|
|
208
|
-
resolved "https://registry.yarnpkg.com/@langchain/langgraph-api/-/langgraph-api-0.0.
|
|
209
|
-
integrity sha512-
|
|
206
|
+
"@langchain/langgraph-api@~0.0.32":
|
|
207
|
+
version "0.0.32"
|
|
208
|
+
resolved "https://registry.yarnpkg.com/@langchain/langgraph-api/-/langgraph-api-0.0.32.tgz#65f41373318055b330fa64e7d4ccd7c994f7dc8d"
|
|
209
|
+
integrity sha512-wYflud8iCGjwh3/GtzrTeWlwcc91kXBa49Goc2iaHcJRjMnTbl+loE3eklegDPnQGx1VKUCiB9qW/HutxuqXGA==
|
|
210
210
|
dependencies:
|
|
211
211
|
"@babel/code-frame" "^7.26.2"
|
|
212
212
|
"@hono/node-server" "^1.12.0"
|
|
213
213
|
"@hono/zod-validator" "^0.2.2"
|
|
214
|
-
"@langchain/langgraph-ui" "0.0.
|
|
214
|
+
"@langchain/langgraph-ui" "0.0.32"
|
|
215
215
|
"@types/json-schema" "^7.0.15"
|
|
216
216
|
"@typescript/vfs" "^1.6.0"
|
|
217
217
|
dedent "^1.5.3"
|
|
@@ -256,10 +256,10 @@
|
|
|
256
256
|
p-retry "4"
|
|
257
257
|
uuid "^9.0.0"
|
|
258
258
|
|
|
259
|
-
"@langchain/langgraph-ui@0.0.
|
|
260
|
-
version "0.0.
|
|
261
|
-
resolved "https://registry.yarnpkg.com/@langchain/langgraph-ui/-/langgraph-ui-0.0.
|
|
262
|
-
integrity sha512-
|
|
259
|
+
"@langchain/langgraph-ui@0.0.32", "@langchain/langgraph-ui@~0.0.32":
|
|
260
|
+
version "0.0.32"
|
|
261
|
+
resolved "https://registry.yarnpkg.com/@langchain/langgraph-ui/-/langgraph-ui-0.0.32.tgz#7e0cab750ba1e65f47d7b1d2adf955a36e50664e"
|
|
262
|
+
integrity sha512-65QZpouvw4P+hCpklYebNiwR88M84h7awjNB6FaKWHvCZa6NcSzlruFa/PnvU1o/kRK5NNpXNPyDUQLhT3tmTA==
|
|
263
263
|
dependencies:
|
|
264
264
|
"@commander-js/extra-typings" "^13.0.0"
|
|
265
265
|
commander "^13.0.0"
|
langgraph_api/worker.py
CHANGED
|
@@ -275,6 +275,27 @@ async def worker(
|
|
|
275
275
|
# let it bubble up and rollback db transaction, thus marking the run
|
|
276
276
|
# as available to be picked up by another worker
|
|
277
277
|
|
|
278
|
+
# If a stateful run succeeded but no checkoint was returned, it's likely because
|
|
279
|
+
# there was a retriable exception that resumed right at the end
|
|
280
|
+
if checkpoint is None and (not temporary) and webhook and status == "success":
|
|
281
|
+
await logger.ainfo(
|
|
282
|
+
"Fetching missing checkpoint for webhook",
|
|
283
|
+
run_id=str(run_id),
|
|
284
|
+
run_attempt=attempt,
|
|
285
|
+
)
|
|
286
|
+
try:
|
|
287
|
+
state_snapshot = await Threads.State.get(
|
|
288
|
+
conn, run["kwargs"]["config"], subgraphs=True
|
|
289
|
+
)
|
|
290
|
+
checkpoint = {"values": state_snapshot.values}
|
|
291
|
+
except Exception:
|
|
292
|
+
await logger.aerror(
|
|
293
|
+
"Failed to fetch missing checkpoint for webhook. Continuing...",
|
|
294
|
+
exc_info=True,
|
|
295
|
+
run_id=str(run_id),
|
|
296
|
+
run_attempt=attempt,
|
|
297
|
+
)
|
|
298
|
+
|
|
278
299
|
return WorkerResult(
|
|
279
300
|
checkpoint=checkpoint,
|
|
280
301
|
status=status,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
LICENSE,sha256=ZPwVR73Biwm3sK6vR54djCrhaRiM4cAD2zvOQZV8Xis,3859
|
|
2
|
-
langgraph_api/__init__.py,sha256=
|
|
2
|
+
langgraph_api/__init__.py,sha256=waXgc7p-jgGCsUjdVfO_KjlVZblnCvrzf4A0dsBj_lg,23
|
|
3
3
|
langgraph_api/api/__init__.py,sha256=YVzpbn5IQotvuuLG9fhS9QMrxXfP4s4EpEMG0n4q3Nw,5625
|
|
4
4
|
langgraph_api/api/assistants.py,sha256=mcKaVeNG8hQAV4IQDhaukS7FgVqTIVQNTyti3GfK2KI,14649
|
|
5
5
|
langgraph_api/api/mcp.py,sha256=RvRYgANqRzNQzSmgjNkq4RlKTtoEJYil04ot9lsmEtE,14352
|
|
@@ -29,27 +29,23 @@ langgraph_api/js/.gitignore,sha256=l5yI6G_V6F1600I1IjiUKn87f4uYIrBAYU1MOyBBhg4,5
|
|
|
29
29
|
langgraph_api/js/.prettierrc,sha256=0es3ovvyNIqIw81rPQsdt1zCQcOdBqyR_DMbFE4Ifms,19
|
|
30
30
|
langgraph_api/js/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
31
31
|
langgraph_api/js/base.py,sha256=gjY6K8avI03OrI-Hy6a311fQ_EG5r_x8hUYlc7uqxdE,534
|
|
32
|
-
langgraph_api/js/build.mts,sha256=
|
|
32
|
+
langgraph_api/js/build.mts,sha256=05bkP9mpxf1JVuJ3at0y56p13QBkHgf7Q6eG6pOZsIg,2784
|
|
33
33
|
langgraph_api/js/client.http.mts,sha256=AGA-p8J85IcNh2oXZjDxHQ4PnQdJmt-LPcpZp6j0Cws,4687
|
|
34
|
-
langgraph_api/js/client.mts,sha256=
|
|
34
|
+
langgraph_api/js/client.mts,sha256=N9CTH7mbXGSD-gpv-XyruYsHI-rgrObL8cQoAp5s3_U,30986
|
|
35
35
|
langgraph_api/js/errors.py,sha256=Cm1TKWlUCwZReDC5AQ6SgNIVGD27Qov2xcgHyf8-GXo,361
|
|
36
36
|
langgraph_api/js/global.d.ts,sha256=j4GhgtQSZ5_cHzjSPcHgMJ8tfBThxrH-pUOrrJGteOU,196
|
|
37
|
-
langgraph_api/js/package.json,sha256=
|
|
37
|
+
langgraph_api/js/package.json,sha256=craKzuSIEnt-WQpKZDaACwdm75lPqpRQde6l9LfS-eI,1289
|
|
38
38
|
langgraph_api/js/remote.py,sha256=ipAITSDyh-kNau37nfRg-PSB-6Lbtax3UJap8-lLZdw,35729
|
|
39
39
|
langgraph_api/js/schema.py,sha256=7idnv7URlYUdSNMBXQcw7E4SxaPxCq_Oxwnlml8q5ik,408
|
|
40
|
-
langgraph_api/js/src/graph.mts,sha256=
|
|
40
|
+
langgraph_api/js/src/graph.mts,sha256=9zTQNdtanI_CFnOwNRoamoCVHHQHGbNlbm91aRxDeOc,2675
|
|
41
41
|
langgraph_api/js/src/load.hooks.mjs,sha256=xNVHq75W0Lk6MUKl1pQYrx-wtQ8_neiUyI6SO-k0ecM,2235
|
|
42
|
-
langgraph_api/js/src/parser/parser.mts,sha256=iW5G-YIVIuwuFsfn_GS3_CZsjpa00SxypICfPf2SN9Q,14156
|
|
43
|
-
langgraph_api/js/src/parser/parser.worker.mjs,sha256=Byo65U2aI3FtZaUwRRq65xBpwornoR6ldak333jxH4c,387
|
|
44
|
-
langgraph_api/js/src/parser/schema/types.mts,sha256=Vx34tLAncRnITwAVe1wABFgM86TpByMLQ5y5pnit4tI,62693
|
|
45
|
-
langgraph_api/js/src/parser/schema/types.template.mts,sha256=Dbjj_8d-OubqH4QY_OaxSu8ocZ4dVjI94oncL20fqtk,2235
|
|
46
42
|
langgraph_api/js/src/preload.mjs,sha256=ORV7xwMuZcXWL6jQxNAcCYp8GZVYIvVJbUhmle8jbno,759
|
|
47
43
|
langgraph_api/js/src/utils/files.mts,sha256=MXC-3gy0pkS82AjPBoUN83jY_qg37WSAPHOA7DwfB4M,141
|
|
48
44
|
langgraph_api/js/src/utils/importMap.mts,sha256=pX4TGOyUpuuWF82kXcxcv3-8mgusRezOGe6Uklm2O5A,1644
|
|
49
45
|
langgraph_api/js/src/utils/pythonSchemas.mts,sha256=98IW7Z_VP7L_CHNRMb3_MsiV3BgLE2JsWQY_PQcRR3o,685
|
|
50
46
|
langgraph_api/js/src/utils/serde.mts,sha256=D9o6MwTgwPezC_DEmsWS5NnLPnjPMVWIb1I1D4QPEPo,743
|
|
51
47
|
langgraph_api/js/sse.py,sha256=lsfp4nyJyA1COmlKG9e2gJnTttf_HGCB5wyH8OZBER8,4105
|
|
52
|
-
langgraph_api/js/tests/api.test.mts,sha256=
|
|
48
|
+
langgraph_api/js/tests/api.test.mts,sha256=UT5UotPULGYUMQ5ZQ5yLBhRP-0cfPmQ3-4-a5GQ9p58,69458
|
|
53
49
|
langgraph_api/js/tests/auth.test.mts,sha256=mMhKe9ggJw4BgUqzSVwqYY3HLMXXEBZ23iiKK8Yq1mM,21678
|
|
54
50
|
langgraph_api/js/tests/compose-postgres.auth.yml,sha256=iPfJbCeYZdV6GiRLiDn_f7qgpG4TyyGaQ4lV-ZXr6Qk,1768
|
|
55
51
|
langgraph_api/js/tests/compose-postgres.yml,sha256=w4B3YRS0QEnTcZH2-MY0DYvR_c5GcER0uDa1Ga_knf8,1960
|
|
@@ -69,11 +65,10 @@ langgraph_api/js/tests/graphs/nested.mts,sha256=e06kFzcX2zEJlb7e5B6kMnuZn6sfvsO7
|
|
|
69
65
|
langgraph_api/js/tests/graphs/package.json,sha256=8kgqWdZJCwekCqjsSrhbLrAPZ2vEy1DmcC8EQnwJMDU,262
|
|
70
66
|
langgraph_api/js/tests/graphs/weather.mts,sha256=Gef9dCXxoVgNa4Ba0AcoptodYV85Ed2CGcleUB9BRMk,1656
|
|
71
67
|
langgraph_api/js/tests/graphs/yarn.lock,sha256=HDLJKx47Y-csPzA5eYUMVHWE8fMKrZgrc4SEkQAYYCE,11201
|
|
72
|
-
langgraph_api/js/tests/parser.test.mts,sha256=BBKUTveZnf-RI6B9XfTBLqy6tp84ddyu1tN3z041IAs,27900
|
|
73
68
|
langgraph_api/js/tests/utils.mts,sha256=Jk1ZZmllNgSS6FJlSs9VaQxHqCEUzkqB5rRQwTSAOP4,441
|
|
74
69
|
langgraph_api/js/tsconfig.json,sha256=imCYqVnqFpaBoZPx8k1nO4slHIWBFsSlmCYhO73cpBs,341
|
|
75
70
|
langgraph_api/js/ui.py,sha256=XNT8iBcyT8XmbIqSQUWd-j_00HsaWB2vRTVabwFBkik,2439
|
|
76
|
-
langgraph_api/js/yarn.lock,sha256=
|
|
71
|
+
langgraph_api/js/yarn.lock,sha256=qtnJQjwX8OUQVzsh51N1imtjYGg5RCI9xkg5n5VZMKI,84019
|
|
77
72
|
langgraph_api/logging.py,sha256=JJIzbNIgLCN6ClQ3tA-Mm5ffuBGvpRDSZsEvnIlsuu4,3693
|
|
78
73
|
langgraph_api/metadata.py,sha256=ptaxwmzdx2bUBSc1KRhqgF-Xnm-Zh2gqwSiHpl8LD9c,4482
|
|
79
74
|
langgraph_api/middleware/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -95,14 +90,14 @@ langgraph_api/tunneling/cloudflare.py,sha256=iKb6tj-VWPlDchHFjuQyep2Dpb-w2NGfJKt
|
|
|
95
90
|
langgraph_api/utils.py,sha256=92mSti9GfGdMRRWyESKQW5yV-75Z9icGHnIrBYvdypU,3619
|
|
96
91
|
langgraph_api/validation.py,sha256=zMuKmwUEBjBgFMwAaeLZmatwGVijKv2sOYtYg7gfRtc,4950
|
|
97
92
|
langgraph_api/webhook.py,sha256=1ncwO0rIZcj-Df9sxSnFEzd1gP1bfS4okeZQS8NSRoE,1382
|
|
98
|
-
langgraph_api/worker.py,sha256=
|
|
93
|
+
langgraph_api/worker.py,sha256=lLrTBfUdUzhPU9W6YQ6sCO3HOaWTfGxfLjlaVPQuOVs,12136
|
|
99
94
|
langgraph_license/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
100
95
|
langgraph_license/validation.py,sha256=ZKraAVJArAABKqrmHN-EN18ncoNUmRm500Yt1Sc7tUA,537
|
|
101
96
|
langgraph_runtime/__init__.py,sha256=O4GgSmu33c-Pr8Xzxj_brcK5vkm70iNTcyxEjICFZxA,1075
|
|
102
97
|
logging.json,sha256=3RNjSADZmDq38eHePMm1CbP6qZ71AmpBtLwCmKU9Zgo,379
|
|
103
98
|
openapi.json,sha256=GefWJwBrbrN_jNDAEFlwNEXx1ottRtvjOmKBi965KLU,133756
|
|
104
|
-
langgraph_api-0.2.
|
|
105
|
-
langgraph_api-0.2.
|
|
106
|
-
langgraph_api-0.2.
|
|
107
|
-
langgraph_api-0.2.
|
|
108
|
-
langgraph_api-0.2.
|
|
99
|
+
langgraph_api-0.2.10.dist-info/LICENSE,sha256=ZPwVR73Biwm3sK6vR54djCrhaRiM4cAD2zvOQZV8Xis,3859
|
|
100
|
+
langgraph_api-0.2.10.dist-info/METADATA,sha256=UCAG8IhwMEOsdWD6CZgSX3h4aaz7Semsq8dTf-cA5lQ,4241
|
|
101
|
+
langgraph_api-0.2.10.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
|
102
|
+
langgraph_api-0.2.10.dist-info/entry_points.txt,sha256=3EYLgj89DfzqJHHYGxPH4A_fEtClvlRbWRUHaXO7hj4,77
|
|
103
|
+
langgraph_api-0.2.10.dist-info/RECORD,,
|