@convex-dev/agent 0.0.1-alpha.0 → 0.0.1-alpha.2
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/README.md +297 -6
- package/dist/commonjs/client/index.d.ts +521 -62
- package/dist/commonjs/client/index.d.ts.map +1 -1
- package/dist/commonjs/client/index.js +230 -118
- package/dist/commonjs/client/index.js.map +1 -1
- package/dist/commonjs/client/types.d.ts +3 -0
- package/dist/commonjs/client/types.d.ts.map +1 -1
- package/dist/commonjs/component/messages.d.ts +22 -17
- package/dist/commonjs/component/messages.d.ts.map +1 -1
- package/dist/commonjs/component/messages.js +107 -47
- package/dist/commonjs/component/messages.js.map +1 -1
- package/dist/commonjs/component/schema.d.ts +16 -12
- package/dist/commonjs/component/schema.d.ts.map +1 -1
- package/dist/commonjs/component/schema.js +10 -3
- package/dist/commonjs/component/schema.js.map +1 -1
- package/dist/commonjs/component/vector/index.d.ts +41 -0
- package/dist/commonjs/component/vector/index.d.ts.map +1 -0
- package/dist/commonjs/component/vector/index.js +120 -0
- package/dist/commonjs/component/vector/index.js.map +1 -0
- package/dist/commonjs/component/vector/tables.d.ts.map +1 -1
- package/dist/commonjs/component/vector/tables.js +4 -2
- package/dist/commonjs/component/vector/tables.js.map +1 -1
- package/dist/commonjs/mapping.d.ts +6 -1
- package/dist/commonjs/mapping.d.ts.map +1 -1
- package/dist/commonjs/mapping.js +25 -0
- package/dist/commonjs/mapping.js.map +1 -1
- package/dist/commonjs/validators.d.ts +1375 -0
- package/dist/commonjs/validators.d.ts.map +1 -1
- package/dist/commonjs/validators.js +27 -0
- package/dist/commonjs/validators.js.map +1 -1
- package/dist/esm/client/index.d.ts +521 -62
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +230 -118
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/client/types.d.ts +3 -0
- package/dist/esm/client/types.d.ts.map +1 -1
- package/dist/esm/component/messages.d.ts +22 -17
- package/dist/esm/component/messages.d.ts.map +1 -1
- package/dist/esm/component/messages.js +107 -47
- package/dist/esm/component/messages.js.map +1 -1
- package/dist/esm/component/schema.d.ts +16 -12
- package/dist/esm/component/schema.d.ts.map +1 -1
- package/dist/esm/component/schema.js +10 -3
- package/dist/esm/component/schema.js.map +1 -1
- package/dist/esm/component/vector/index.d.ts +41 -0
- package/dist/esm/component/vector/index.d.ts.map +1 -0
- package/dist/esm/component/vector/index.js +120 -0
- package/dist/esm/component/vector/index.js.map +1 -0
- package/dist/esm/component/vector/tables.d.ts.map +1 -1
- package/dist/esm/component/vector/tables.js +4 -2
- package/dist/esm/component/vector/tables.js.map +1 -1
- package/dist/esm/mapping.d.ts +6 -1
- package/dist/esm/mapping.d.ts.map +1 -1
- package/dist/esm/mapping.js +25 -0
- package/dist/esm/mapping.js.map +1 -1
- package/dist/esm/validators.d.ts +1375 -0
- package/dist/esm/validators.d.ts.map +1 -1
- package/dist/esm/validators.js +27 -0
- package/dist/esm/validators.js.map +1 -1
- package/package.json +2 -2
- package/src/client/index.ts +428 -232
- package/src/client/types.ts +4 -0
- package/src/component/_generated/api.d.ts +138 -11
- package/src/component/messages.ts +136 -66
- package/src/component/schema.ts +10 -3
- package/src/component/vector/index.ts +144 -0
- package/src/component/vector/tables.ts +7 -5
- package/src/mapping.ts +46 -11
- package/src/validators.test.ts +9 -0
- package/src/validators.ts +32 -0
|
@@ -229,19 +229,19 @@ export declare const vMessageDoc: import("convex/values").VObject<{
|
|
|
229
229
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
230
230
|
model?: string | undefined;
|
|
231
231
|
userId?: string | undefined;
|
|
232
|
-
|
|
232
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
233
233
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
234
234
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
235
235
|
agentName?: string | undefined;
|
|
236
236
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
237
237
|
stepOrder?: number | undefined;
|
|
238
238
|
tool: boolean;
|
|
239
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
240
239
|
status: "pending" | "success" | "failed";
|
|
240
|
+
order: number;
|
|
241
241
|
}, {
|
|
242
242
|
id: import("convex/values").VString<string | undefined, "optional">;
|
|
243
243
|
userId: import("convex/values").VString<string | undefined, "optional">;
|
|
244
|
-
chatId: import("convex/values").VId<import("convex/values").GenericId<"chats"
|
|
244
|
+
chatId: import("convex/values").VId<import("convex/values").GenericId<"chats"> | undefined, "optional">;
|
|
245
245
|
threadId: import("convex/values").VId<import("convex/values").GenericId<"messages"> | undefined, "optional">;
|
|
246
246
|
stepId: import("convex/values").VId<import("convex/values").GenericId<"steps"> | undefined, "optional">;
|
|
247
247
|
agentName: import("convex/values").VString<string | undefined, "optional">;
|
|
@@ -731,7 +731,7 @@ export declare const vMessageDoc: import("convex/values").VObject<{
|
|
|
731
731
|
text: import("convex/values").VString<string | undefined, "optional">;
|
|
732
732
|
embeddingId: import("convex/values").VUnion<import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined, import("convex/values").VId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096", "required">[], "optional", never>;
|
|
733
733
|
tool: import("convex/values").VBoolean<boolean, "required">;
|
|
734
|
-
order: import("convex/values").VFloat64<number
|
|
734
|
+
order: import("convex/values").VFloat64<number, "required">;
|
|
735
735
|
stepOrder: import("convex/values").VFloat64<number | undefined, "optional">;
|
|
736
736
|
fileId: import("convex/values").VId<import("convex/values").GenericId<"files"> | undefined, "optional">;
|
|
737
737
|
status: import("convex/values").VUnion<"pending" | "success" | "failed", [import("convex/values").VLiteral<"pending", "required">, import("convex/values").VLiteral<"success", "required">, import("convex/values").VLiteral<"failed", "required">], "required", never>;
|
|
@@ -740,6 +740,8 @@ export declare const messageStatuses: ("pending" | "success" | "failed")[];
|
|
|
740
740
|
export declare const addMessages: import("convex/server").RegisteredMutation<"public", {
|
|
741
741
|
pending?: boolean | undefined;
|
|
742
742
|
model?: string | undefined;
|
|
743
|
+
userId?: string | undefined;
|
|
744
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
743
745
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
744
746
|
agentName?: string | undefined;
|
|
745
747
|
parentMessageId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
@@ -831,7 +833,6 @@ export declare const addMessages: import("convex/server").RegisteredMutation<"pu
|
|
|
831
833
|
content: string;
|
|
832
834
|
};
|
|
833
835
|
}[];
|
|
834
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
835
836
|
}, Promise<{
|
|
836
837
|
messages: {
|
|
837
838
|
_id: import("convex/values").GenericId<"messages">;
|
|
@@ -924,15 +925,15 @@ export declare const addMessages: import("convex/server").RegisteredMutation<"pu
|
|
|
924
925
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
925
926
|
model?: string | undefined;
|
|
926
927
|
userId?: string | undefined;
|
|
927
|
-
|
|
928
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
928
929
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
929
930
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
930
931
|
agentName?: string | undefined;
|
|
931
932
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
932
933
|
stepOrder?: number | undefined;
|
|
933
934
|
tool: boolean;
|
|
934
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
935
935
|
status: "pending" | "success" | "failed";
|
|
936
|
+
order: number;
|
|
936
937
|
}[];
|
|
937
938
|
}>>;
|
|
938
939
|
export declare const addSteps: import("convex/server").RegisteredMutation<"public", {
|
|
@@ -1373,6 +1374,7 @@ export declare const commitMessage: import("convex/server").RegisteredMutation<"
|
|
|
1373
1374
|
export declare const getChatMessages: import("convex/server").RegisteredQuery<"public", {
|
|
1374
1375
|
limit?: number | undefined;
|
|
1375
1376
|
order?: "asc" | "desc" | undefined;
|
|
1377
|
+
parentMessageId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1376
1378
|
cursor?: string | undefined;
|
|
1377
1379
|
statuses?: ("pending" | "success" | "failed")[] | undefined;
|
|
1378
1380
|
isTool?: boolean | undefined;
|
|
@@ -1469,15 +1471,15 @@ export declare const getChatMessages: import("convex/server").RegisteredQuery<"p
|
|
|
1469
1471
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
1470
1472
|
model?: string | undefined;
|
|
1471
1473
|
userId?: string | undefined;
|
|
1472
|
-
|
|
1474
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1473
1475
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1474
1476
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
1475
1477
|
agentName?: string | undefined;
|
|
1476
1478
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
1477
1479
|
stepOrder?: number | undefined;
|
|
1478
1480
|
tool: boolean;
|
|
1479
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
1480
1481
|
status: "pending" | "success" | "failed";
|
|
1482
|
+
order: number;
|
|
1481
1483
|
}[];
|
|
1482
1484
|
continueCursor: string;
|
|
1483
1485
|
isDone: boolean;
|
|
@@ -1492,6 +1494,7 @@ export declare const searchMessages: import("convex/server").RegisteredAction<"p
|
|
|
1492
1494
|
} | undefined;
|
|
1493
1495
|
userId?: string | undefined;
|
|
1494
1496
|
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1497
|
+
parentMessageId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1495
1498
|
limit: number;
|
|
1496
1499
|
}, Promise<{
|
|
1497
1500
|
_id: import("convex/values").GenericId<"messages">;
|
|
@@ -1584,19 +1587,20 @@ export declare const searchMessages: import("convex/server").RegisteredAction<"p
|
|
|
1584
1587
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
1585
1588
|
model?: string | undefined;
|
|
1586
1589
|
userId?: string | undefined;
|
|
1587
|
-
|
|
1590
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1588
1591
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1589
1592
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
1590
1593
|
agentName?: string | undefined;
|
|
1591
1594
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
1592
1595
|
stepOrder?: number | undefined;
|
|
1593
1596
|
tool: boolean;
|
|
1594
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
1595
1597
|
status: "pending" | "success" | "failed";
|
|
1598
|
+
order: number;
|
|
1596
1599
|
}[]>>;
|
|
1597
1600
|
export declare const _fetchVectorMessages: import("convex/server").RegisteredQuery<"internal", {
|
|
1598
1601
|
userId?: string | undefined;
|
|
1599
1602
|
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1603
|
+
parentMessageId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1600
1604
|
textSearchMessages?: {
|
|
1601
1605
|
id?: string | undefined;
|
|
1602
1606
|
text?: string | undefined;
|
|
@@ -1686,18 +1690,19 @@ export declare const _fetchVectorMessages: import("convex/server").RegisteredQue
|
|
|
1686
1690
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
1687
1691
|
model?: string | undefined;
|
|
1688
1692
|
userId?: string | undefined;
|
|
1689
|
-
|
|
1693
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1690
1694
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1691
1695
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
1692
1696
|
agentName?: string | undefined;
|
|
1693
1697
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
1694
1698
|
stepOrder?: number | undefined;
|
|
1695
1699
|
tool: boolean;
|
|
1696
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
1697
1700
|
status: "pending" | "success" | "failed";
|
|
1701
|
+
order: number;
|
|
1698
1702
|
_creationTime: number;
|
|
1699
1703
|
_id: import("convex/values").GenericId<"messages">;
|
|
1700
1704
|
}[] | undefined;
|
|
1705
|
+
limit: number;
|
|
1701
1706
|
messageRange: {
|
|
1702
1707
|
before: number;
|
|
1703
1708
|
after: number;
|
|
@@ -1794,15 +1799,15 @@ export declare const _fetchVectorMessages: import("convex/server").RegisteredQue
|
|
|
1794
1799
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
1795
1800
|
model?: string | undefined;
|
|
1796
1801
|
userId?: string | undefined;
|
|
1797
|
-
|
|
1802
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1798
1803
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1799
1804
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
1800
1805
|
agentName?: string | undefined;
|
|
1801
1806
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
1802
1807
|
stepOrder?: number | undefined;
|
|
1803
1808
|
tool: boolean;
|
|
1804
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
1805
1809
|
status: "pending" | "success" | "failed";
|
|
1810
|
+
order: number;
|
|
1806
1811
|
}[]>>;
|
|
1807
1812
|
export declare const textSearch: import("convex/server").RegisteredQuery<"public", {
|
|
1808
1813
|
userId?: string | undefined;
|
|
@@ -1900,14 +1905,14 @@ export declare const textSearch: import("convex/server").RegisteredQuery<"public
|
|
|
1900
1905
|
fileId?: import("convex/values").GenericId<"files"> | undefined;
|
|
1901
1906
|
model?: string | undefined;
|
|
1902
1907
|
userId?: string | undefined;
|
|
1903
|
-
|
|
1908
|
+
chatId?: import("convex/values").GenericId<"chats"> | undefined;
|
|
1904
1909
|
threadId?: import("convex/values").GenericId<"messages"> | undefined;
|
|
1905
1910
|
stepId?: import("convex/values").GenericId<"steps"> | undefined;
|
|
1906
1911
|
agentName?: string | undefined;
|
|
1907
1912
|
embeddingId?: import("convex/values").GenericId<"embeddings_128" | "embeddings_256" | "embeddings_512" | "embeddings_768" | "embeddings_1024" | "embeddings_1536" | "embeddings_2048" | "embeddings_3072" | "embeddings_4096"> | undefined;
|
|
1908
1913
|
stepOrder?: number | undefined;
|
|
1909
1914
|
tool: boolean;
|
|
1910
|
-
chatId: import("convex/values").GenericId<"chats">;
|
|
1911
1915
|
status: "pending" | "success" | "failed";
|
|
1916
|
+
order: number;
|
|
1912
1917
|
}[]>>;
|
|
1913
1918
|
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/component/messages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/component/messages.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export const getChatsByUserId = query({
|
|
|
31
31
|
.eq("status", status)
|
|
32
32
|
.eq("userId", args.userId)
|
|
33
33
|
.gte("order", args.offset ?? 0)));
|
|
34
|
-
const chats = await mergedStream(streams, ["order"
|
|
34
|
+
const chats = await mergedStream(streams, ["order"]).paginate({
|
|
35
35
|
numItems: args.limit ?? 100,
|
|
36
36
|
cursor: args.cursor ?? null,
|
|
37
37
|
});
|
|
@@ -280,7 +280,8 @@ export const getFilesToDelete = query({
|
|
|
280
280
|
export const vMessageDoc = schema.tables.messages.validator;
|
|
281
281
|
export const messageStatuses = vMessageDoc.fields.status.members.map((m) => m.value);
|
|
282
282
|
const addMessagesArgs = {
|
|
283
|
-
|
|
283
|
+
userId: v.optional(v.string()),
|
|
284
|
+
chatId: v.optional(v.id("chats")),
|
|
284
285
|
stepId: v.optional(v.id("steps")),
|
|
285
286
|
parentMessageId: v.optional(v.id("messages")),
|
|
286
287
|
messages: v.array(vMessageWithFileAndId),
|
|
@@ -298,23 +299,31 @@ export const addMessages = mutation({
|
|
|
298
299
|
}),
|
|
299
300
|
});
|
|
300
301
|
async function addMessagesHandler(ctx, args) {
|
|
301
|
-
|
|
302
|
-
|
|
302
|
+
let userId = args.userId;
|
|
303
|
+
const chatId = args.chatId;
|
|
304
|
+
if (!userId && args.chatId) {
|
|
305
|
+
const chat = await ctx.db.get(args.chatId);
|
|
306
|
+
assert(chat, `Chat ${args.chatId} not found`);
|
|
307
|
+
userId = chat._id;
|
|
308
|
+
}
|
|
303
309
|
const { failPendingSteps, pending, messages, parentMessageId, ...rest } = args;
|
|
304
|
-
|
|
310
|
+
const parent = parentMessageId && (await ctx.db.get(parentMessageId));
|
|
311
|
+
if (failPendingSteps && parent?.status !== "pending") {
|
|
312
|
+
assert(args.chatId, "chatId is required to fail pending steps");
|
|
305
313
|
const pendingMessages = await ctx.db
|
|
306
314
|
.query("messages")
|
|
307
|
-
.withIndex("chatId_status_tool_order_stepOrder", (q) => q.eq("chatId",
|
|
315
|
+
.withIndex("chatId_status_tool_order_stepOrder", (q) => q.eq("chatId", chatId).eq("status", "pending"))
|
|
308
316
|
.collect();
|
|
309
317
|
await Promise.all(pendingMessages.map((m) => ctx.db.patch(m._id, { status: "failed", text: "Restarting" })));
|
|
310
318
|
}
|
|
311
|
-
let
|
|
312
|
-
const maxMessage = await getMaxMessage(ctx,
|
|
319
|
+
let threadId = parentMessageId;
|
|
320
|
+
const maxMessage = await getMaxMessage(ctx, chatId, userId);
|
|
313
321
|
// If the previous message isn't our parent, we make a new thread.
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
322
|
+
threadId =
|
|
323
|
+
parentMessageId && maxMessage?._id === parentMessageId
|
|
324
|
+
? maxMessage.threadId ?? parentMessageId
|
|
325
|
+
: parentMessageId;
|
|
326
|
+
let order = maxMessage?.order ?? -1;
|
|
318
327
|
const toReturn = [];
|
|
319
328
|
if (messages.length > 0) {
|
|
320
329
|
for (const { message, fileId, id } of messages) {
|
|
@@ -326,7 +335,7 @@ async function addMessagesHandler(ctx, args) {
|
|
|
326
335
|
const messageId = await ctx.db.insert("messages", {
|
|
327
336
|
...rest,
|
|
328
337
|
threadId,
|
|
329
|
-
userId
|
|
338
|
+
userId,
|
|
330
339
|
message,
|
|
331
340
|
id,
|
|
332
341
|
order,
|
|
@@ -340,11 +349,20 @@ async function addMessagesHandler(ctx, args) {
|
|
|
340
349
|
}
|
|
341
350
|
return { messages: toReturn };
|
|
342
351
|
}
|
|
343
|
-
async function getMaxMessage(ctx, chatId) {
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
352
|
+
async function getMaxMessage(ctx, chatId, userId) {
|
|
353
|
+
assert(chatId || userId, "One of chatId or userId is required");
|
|
354
|
+
if (chatId) {
|
|
355
|
+
return mergedStream(["success", "pending"].map((status) => stream(ctx.db, schema)
|
|
356
|
+
.query("messages")
|
|
357
|
+
.withIndex("chatId_status_tool_order_stepOrder", (q) => q.eq("chatId", chatId).eq("status", status).eq("tool", false))
|
|
358
|
+
.order("desc")), ["order", "stepOrder"]).first();
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
return mergedStream(["success", "pending"].map((status) => stream(ctx.db, schema)
|
|
362
|
+
.query("messages")
|
|
363
|
+
.withIndex("userId_status_tool_order_stepOrder", (q) => q.eq("userId", userId).eq("status", status).eq("tool", false))
|
|
364
|
+
.order("desc")), ["order", "stepOrder"]).first();
|
|
365
|
+
}
|
|
348
366
|
}
|
|
349
367
|
const addStepsArgs = {
|
|
350
368
|
chatId: v.id("chats"),
|
|
@@ -396,7 +414,8 @@ async function addStepsHandler(ctx, args) {
|
|
|
396
414
|
pending: step.finishReason === "stop" ? false : true,
|
|
397
415
|
failPendingSteps: false,
|
|
398
416
|
});
|
|
399
|
-
if
|
|
417
|
+
// We don't commit if the parent is still pending.
|
|
418
|
+
if (step.finishReason === "stop" && parentMessage.status === "success") {
|
|
400
419
|
await commitMessageHandler(ctx, { messageId: args.messageId });
|
|
401
420
|
}
|
|
402
421
|
steps.push((await ctx.db.get(stepId)));
|
|
@@ -448,6 +467,7 @@ async function commitMessageHandler(ctx, { messageId }) {
|
|
|
448
467
|
.eq("order", order))), ["order", "stepOrder"]).collect();
|
|
449
468
|
for (const message of messages) {
|
|
450
469
|
await ctx.db.patch(message._id, { status: "success" });
|
|
470
|
+
// TODO: recursively commit steps & messages that might depend on this one.
|
|
451
471
|
}
|
|
452
472
|
}
|
|
453
473
|
export const getChatMessages = query({
|
|
@@ -459,14 +479,25 @@ export const getChatMessages = query({
|
|
|
459
479
|
// Note: the other arguments cannot change from when the cursor was created.
|
|
460
480
|
cursor: v.optional(v.string()),
|
|
461
481
|
statuses: v.optional(v.array(vMessageStatus)),
|
|
482
|
+
parentMessageId: v.optional(v.id("messages")),
|
|
462
483
|
},
|
|
463
484
|
handler: async (ctx, args) => {
|
|
464
485
|
const statuses = args.statuses ?? ["success"];
|
|
486
|
+
const parent = args.parentMessageId && (await ctx.db.get(args.parentMessageId));
|
|
465
487
|
const toolOptions = args.isTool === undefined ? [true, false] : [args.isTool];
|
|
466
488
|
const order = args.order ?? "desc";
|
|
467
489
|
const streams = toolOptions.flatMap((tool) => statuses.map((status) => stream(ctx.db, schema)
|
|
468
490
|
.query("messages")
|
|
469
|
-
.withIndex("chatId_status_tool_order_stepOrder", (q) =>
|
|
491
|
+
.withIndex("chatId_status_tool_order_stepOrder", (q) => {
|
|
492
|
+
const qq = q
|
|
493
|
+
.eq("chatId", args.chatId)
|
|
494
|
+
.eq("status", status)
|
|
495
|
+
.eq("tool", tool);
|
|
496
|
+
if (parent) {
|
|
497
|
+
return qq.lte("order", parent.order);
|
|
498
|
+
}
|
|
499
|
+
return qq;
|
|
500
|
+
})
|
|
470
501
|
.order(order)));
|
|
471
502
|
const messages = await mergedStream(streams, [
|
|
472
503
|
"order",
|
|
@@ -491,6 +522,7 @@ export const searchMessages = action({
|
|
|
491
522
|
args: {
|
|
492
523
|
userId: v.optional(v.string()),
|
|
493
524
|
chatId: v.optional(v.id("chats")),
|
|
525
|
+
parentMessageId: v.optional(v.id("messages")),
|
|
494
526
|
...vSearchOptions.fields,
|
|
495
527
|
},
|
|
496
528
|
returns: v.array(v.doc("messages")),
|
|
@@ -535,10 +567,10 @@ export const searchMessages = action({
|
|
|
535
567
|
userId: args.userId,
|
|
536
568
|
chatId: args.chatId,
|
|
537
569
|
vectorIds,
|
|
538
|
-
textSearchMessages: textSearchMessages
|
|
539
|
-
?.filter((m) => !vectorIds.includes(m.embeddingId))
|
|
540
|
-
.slice(0, limit - vectorIds.length),
|
|
570
|
+
textSearchMessages: textSearchMessages?.filter((m) => !vectorIds.includes(m.embeddingId)),
|
|
541
571
|
messageRange: args.messageRange ?? DEFAULT_MESSAGE_RANGE,
|
|
572
|
+
parentMessageId: args.parentMessageId,
|
|
573
|
+
limit,
|
|
542
574
|
});
|
|
543
575
|
return messages;
|
|
544
576
|
}
|
|
@@ -552,61 +584,89 @@ export const _fetchVectorMessages = internalQuery({
|
|
|
552
584
|
vectorIds: v.array(vVectorId),
|
|
553
585
|
textSearchMessages: v.optional(v.array(v.doc("messages"))),
|
|
554
586
|
messageRange: v.object({ before: v.number(), after: v.number() }),
|
|
587
|
+
parentMessageId: v.optional(v.id("messages")),
|
|
588
|
+
limit: v.number(),
|
|
555
589
|
},
|
|
556
590
|
returns: v.array(v.doc("messages")),
|
|
557
591
|
handler: async (ctx, args) => {
|
|
558
|
-
const
|
|
592
|
+
const parent = args.parentMessageId && (await ctx.db.get(args.parentMessageId));
|
|
593
|
+
const { userId, chatId } = args;
|
|
594
|
+
assert(userId || chatId, "Specify userId or chatId to search");
|
|
595
|
+
let messages = (await Promise.all(args.vectorIds.map((embeddingId) => ctx.db
|
|
559
596
|
.query("messages")
|
|
560
597
|
.withIndex("embeddingId", (q) => q.eq("embeddingId", embeddingId))
|
|
561
|
-
.filter((q) =>
|
|
562
|
-
? q.eq("userId",
|
|
598
|
+
.filter((q) => userId
|
|
599
|
+
? q.eq("userId", userId)
|
|
563
600
|
: // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
564
|
-
q.eq("chatId",
|
|
565
|
-
|
|
566
|
-
.first()))).filter((m) => m !== undefined);
|
|
601
|
+
q.eq("chatId", chatId))
|
|
602
|
+
.first()))).filter((m) => m !== undefined && m !== null && (!parent || m.order <= parent.order));
|
|
567
603
|
messages.push(...(args.textSearchMessages ?? []));
|
|
604
|
+
// TODO: prioritize more recent messages
|
|
568
605
|
messages.sort((a, b) => a.order - b.order);
|
|
606
|
+
messages = messages.slice(0, args.limit);
|
|
569
607
|
// Fetch the surrounding messages
|
|
608
|
+
if (!chatId) {
|
|
609
|
+
return messages.sort((a, b) => a.order - b.order);
|
|
610
|
+
}
|
|
570
611
|
const included = {};
|
|
571
612
|
for (const m of messages) {
|
|
572
|
-
|
|
573
|
-
|
|
613
|
+
const searchId = m.chatId ?? m.userId;
|
|
614
|
+
if (!included[searchId]) {
|
|
615
|
+
included[searchId] = new Set();
|
|
574
616
|
}
|
|
575
|
-
included[
|
|
617
|
+
included[searchId].add(m.order);
|
|
576
618
|
}
|
|
577
619
|
const ranges = {};
|
|
578
620
|
const { before, after } = args.messageRange;
|
|
579
621
|
for (const m of messages) {
|
|
622
|
+
const searchId = m.chatId ?? m.userId;
|
|
580
623
|
const order = m.order;
|
|
581
624
|
let earliest = order - before;
|
|
582
625
|
let latest = order + after;
|
|
583
626
|
for (; earliest <= latest; earliest++) {
|
|
584
|
-
if (!included[
|
|
627
|
+
if (!included[searchId].has(earliest)) {
|
|
585
628
|
break;
|
|
586
629
|
}
|
|
587
630
|
}
|
|
588
631
|
for (; latest >= earliest; latest--) {
|
|
589
|
-
if (!included[
|
|
632
|
+
if (!included[searchId].has(latest)) {
|
|
590
633
|
break;
|
|
591
634
|
}
|
|
592
635
|
}
|
|
593
636
|
for (let i = earliest; i <= latest; i++) {
|
|
594
|
-
included[
|
|
637
|
+
included[searchId].add(i);
|
|
595
638
|
}
|
|
596
639
|
if (earliest !== latest) {
|
|
597
|
-
|
|
598
|
-
.
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
ranges[
|
|
640
|
+
if (m.chatId) {
|
|
641
|
+
const surrounding = await ctx.db
|
|
642
|
+
.query("messages")
|
|
643
|
+
.withIndex("chatId_status_tool_order_stepOrder", (q) => q
|
|
644
|
+
.eq("chatId", m.chatId)
|
|
645
|
+
.eq("status", "success")
|
|
646
|
+
.eq("tool", false)
|
|
647
|
+
.gt("order", earliest)
|
|
648
|
+
.lt("order", latest))
|
|
649
|
+
.collect();
|
|
650
|
+
if (!ranges[searchId]) {
|
|
651
|
+
ranges[searchId] = [];
|
|
652
|
+
}
|
|
653
|
+
ranges[searchId].push(...surrounding);
|
|
654
|
+
}
|
|
655
|
+
else {
|
|
656
|
+
const surrounding = await ctx.db
|
|
657
|
+
.query("messages")
|
|
658
|
+
.withIndex("userId_status_tool_order_stepOrder", (q) => q
|
|
659
|
+
.eq("userId", m.userId)
|
|
660
|
+
.eq("status", "success")
|
|
661
|
+
.eq("tool", false)
|
|
662
|
+
.gt("order", earliest)
|
|
663
|
+
.lt("order", latest))
|
|
664
|
+
.collect();
|
|
665
|
+
if (!ranges[searchId]) {
|
|
666
|
+
ranges[searchId] = [];
|
|
667
|
+
}
|
|
668
|
+
ranges[searchId].push(...surrounding);
|
|
608
669
|
}
|
|
609
|
-
ranges[m.chatId].push(...surrounding);
|
|
610
670
|
}
|
|
611
671
|
}
|
|
612
672
|
return Object.values(ranges)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/component/messages.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/component/messages.ts"],"names":[],"mappings":"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"}
|