@vibes.diy/api-svc 8.1.1 → 8.1.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.
Files changed (109) hide show
  1. package/cf-serve.js +2 -0
  2. package/cf-serve.js.map +1 -1
  3. package/create-handler.d.ts +5 -0
  4. package/create-handler.js +4 -0
  5. package/create-handler.js.map +1 -1
  6. package/index.d.ts +4 -0
  7. package/index.js +4 -0
  8. package/index.js.map +1 -1
  9. package/intern/backend-db-callback.js +10 -3
  10. package/intern/backend-db-callback.js.map +1 -1
  11. package/intern/backend-egress.d.ts +12 -0
  12. package/intern/backend-egress.js +122 -31
  13. package/intern/backend-egress.js.map +1 -1
  14. package/intern/delete-access-gate.js +6 -1
  15. package/intern/delete-access-gate.js.map +1 -1
  16. package/intern/distill-url.d.ts +14 -0
  17. package/intern/distill-url.js +270 -0
  18. package/intern/distill-url.js.map +1 -0
  19. package/intern/ensure-push-seeded-chat.js +1 -0
  20. package/intern/ensure-push-seeded-chat.js.map +1 -1
  21. package/intern/fetch-url-tool.d.ts +38 -0
  22. package/intern/fetch-url-tool.js +299 -0
  23. package/intern/fetch-url-tool.js.map +1 -0
  24. package/intern/first-message-embedding.js +5 -4
  25. package/intern/first-message-embedding.js.map +1 -1
  26. package/intern/llm-tool-loop.d.ts +66 -0
  27. package/intern/llm-tool-loop.js +355 -0
  28. package/intern/llm-tool-loop.js.map +1 -0
  29. package/intern/load-owner-egress-status.d.ts +1 -1
  30. package/intern/load-owner-egress-status.js.map +1 -1
  31. package/intern/load-research-context.d.ts +17 -0
  32. package/intern/load-research-context.js +160 -0
  33. package/intern/load-research-context.js.map +1 -0
  34. package/intern/persist-url-research.d.ts +37 -0
  35. package/intern/persist-url-research.js +249 -0
  36. package/intern/persist-url-research.js.map +1 -0
  37. package/intern/prompt-assembly.d.ts +3 -0
  38. package/intern/prompt-assembly.js +33 -7
  39. package/intern/prompt-assembly.js.map +1 -1
  40. package/intern/provider-sse.d.ts +3 -0
  41. package/intern/provider-sse.js +12 -0
  42. package/intern/provider-sse.js.map +1 -0
  43. package/intern/read-anonymous-seed-docs.js +17 -10
  44. package/intern/read-anonymous-seed-docs.js.map +1 -1
  45. package/intern/recovery.js +5 -1
  46. package/intern/recovery.js.map +1 -1
  47. package/intern/resend-prev-msg.js +5 -4
  48. package/intern/resend-prev-msg.js.map +1 -1
  49. package/intern/turn-url-fetch-budget.d.ts +16 -0
  50. package/intern/turn-url-fetch-budget.js +33 -0
  51. package/intern/turn-url-fetch-budget.js.map +1 -0
  52. package/intern/url-activation.d.ts +8 -0
  53. package/intern/url-activation.js +79 -0
  54. package/intern/url-activation.js.map +1 -0
  55. package/intern/url-research-queue.d.ts +7 -0
  56. package/intern/url-research-queue.js +31 -0
  57. package/intern/url-research-queue.js.map +1 -0
  58. package/intern/url-research.d.ts +112 -0
  59. package/intern/url-research.js +631 -0
  60. package/intern/url-research.js.map +1 -0
  61. package/intern/version-timeline.d.ts +1 -0
  62. package/intern/version-timeline.js +15 -4
  63. package/intern/version-timeline.js.map +1 -1
  64. package/package.json +13 -11
  65. package/public/access-output-decoder.d.ts +12 -0
  66. package/public/access-output-decoder.js +130 -0
  67. package/public/access-output-decoder.js.map +1 -0
  68. package/public/app-documents-read-eventos.js +87 -40
  69. package/public/app-documents-read-eventos.js.map +1 -1
  70. package/public/app-documents-shared.d.ts +11 -4
  71. package/public/app-documents-shared.js +1 -1
  72. package/public/app-documents-shared.js.map +1 -1
  73. package/public/app-documents-write-eventos.js +6 -1
  74. package/public/app-documents-write-eventos.js.map +1 -1
  75. package/public/channel-read-filter.d.ts +11 -5
  76. package/public/channel-read-filter.js +5 -6
  77. package/public/channel-read-filter.js.map +1 -1
  78. package/public/db-acl-resolver.d.ts +9 -3
  79. package/public/db-acl-resolver.js +1 -1
  80. package/public/db-acl-resolver.js.map +1 -1
  81. package/public/files-asset.js +1 -1
  82. package/public/files-asset.js.map +1 -1
  83. package/public/fork-app.js +1 -0
  84. package/public/fork-app.js.map +1 -1
  85. package/public/get-application-chat.js +5 -4
  86. package/public/get-application-chat.js.map +1 -1
  87. package/public/get-chat-details.js +5 -4
  88. package/public/get-chat-details.js.map +1 -1
  89. package/public/get-chat-response.js +5 -4
  90. package/public/get-chat-response.js.map +1 -1
  91. package/public/get-vibe-chips.js +5 -4
  92. package/public/get-vibe-chips.js.map +1 -1
  93. package/public/image-gen.js +2 -1
  94. package/public/image-gen.js.map +1 -1
  95. package/public/img-doc-write.js +1 -1
  96. package/public/img-doc-write.js.map +1 -1
  97. package/public/inherit-read-resolver.d.ts +2 -7
  98. package/public/inherit-read-resolver.js +27 -65
  99. package/public/inherit-read-resolver.js.map +1 -1
  100. package/public/llm-dispatch.d.ts +10 -3
  101. package/public/llm-dispatch.js +97 -13
  102. package/public/llm-dispatch.js.map +1 -1
  103. package/public/prompt-chat-section.js +23 -8
  104. package/public/prompt-chat-section.js.map +1 -1
  105. package/public/stream-assembly.d.ts +4 -2
  106. package/public/stream-assembly.js +12 -8
  107. package/public/stream-assembly.js.map +1 -1
  108. package/types.d.ts +5 -0
  109. package/types.js.map +1 -1
@@ -0,0 +1,249 @@
1
+ import { exception2Result, Result } from "@adviser/cement";
2
+ import { type } from "arktype";
3
+ import { and, eq } from "drizzle-orm/sql/expressions";
4
+ import { PromptContextSql, ResearchPointer } from "@vibes.diy/call-ai-v2";
5
+ import { isPromptResearch, isValidIsoTimestamp, PromptResearch, RESEARCH_BLOCK_SEQ, } from "@vibes.diy/api-types";
6
+ function documentFromInput(input) {
7
+ if (typeof input === "object" && input !== null && "result" in input)
8
+ return input.result;
9
+ return input;
10
+ }
11
+ function sameEvent(left, right) {
12
+ return JSON.stringify(left) === JSON.stringify(right);
13
+ }
14
+ function toPromptResearchEvent(document, args) {
15
+ if (isValidIsoTimestamp(document.completedAt) === false)
16
+ return Result.Err("invalid_research_timestamp");
17
+ const event = {
18
+ type: "prompt.research",
19
+ version: document.version,
20
+ streamId: args.promptId,
21
+ chatId: args.chatId,
22
+ seq: RESEARCH_BLOCK_SEQ,
23
+ timestamp: document.completedAt,
24
+ researchId: document.researchId,
25
+ status: document.status,
26
+ brief: document.brief,
27
+ sources: document.sources.map((source) => ({
28
+ url: source.url,
29
+ finalUrl: source.finalUrl,
30
+ contentType: source.contentType,
31
+ httpStatus: source.httpStatus,
32
+ backendFetchable: source.backendFetchable,
33
+ fetched: source.fetched,
34
+ ...(source.errorCode !== null ? { errorCode: source.errorCode } : {}),
35
+ })),
36
+ api: document.apiEndpoints,
37
+ excerpts: document.excerpts,
38
+ seedRows: document.seedRows,
39
+ completedAt: document.completedAt,
40
+ ...(document.errorCode !== undefined ? { errorCode: document.errorCode } : {}),
41
+ };
42
+ const parsed = PromptResearch(event);
43
+ return parsed instanceof type.errors ? Result.Err("invalid_url_research_result") : Result.Ok(parsed);
44
+ }
45
+ function pointerForEvent(event) {
46
+ const parsed = ResearchPointer({
47
+ researchId: event.researchId,
48
+ status: event.status,
49
+ sectionBlockSeq: RESEARCH_BLOCK_SEQ,
50
+ completedAt: event.completedAt,
51
+ });
52
+ return parsed instanceof type.errors ? Result.Err("invalid_research_pointer") : Result.Ok(parsed);
53
+ }
54
+ async function ownsChat({ db, vctx, userId, chatId }) {
55
+ const t = vctx.sql.tables.chatContexts;
56
+ const row = await db
57
+ .select({ chatId: t.chatId })
58
+ .from(t)
59
+ .where(and(eq(t.userId, userId), eq(t.chatId, chatId)))
60
+ .limit(1)
61
+ .then((rows) => rows[0]);
62
+ return row !== undefined;
63
+ }
64
+ function storedEventMatchesScope(event, args) {
65
+ return event.chatId === args.chatId && event.streamId === args.promptId && event.seq === RESEARCH_BLOCK_SEQ;
66
+ }
67
+ async function readResearchEvent(db, vctx, args) {
68
+ const sections = vctx.sql.tables.chatSections;
69
+ const chats = vctx.sql.tables.chatContexts;
70
+ const row = await db
71
+ .select({ blocks: sections.blocks })
72
+ .from(chats)
73
+ .innerJoin(sections, eq(sections.chatId, chats.chatId))
74
+ .where(and(eq(chats.userId, args.userId), eq(chats.chatId, args.chatId), eq(sections.promptId, args.promptId), eq(sections.blockSeq, RESEARCH_BLOCK_SEQ)))
75
+ .limit(1)
76
+ .then((rows) => rows[0]);
77
+ if (row === undefined)
78
+ return undefined;
79
+ const parsed = PromptResearch.array()(row.blocks);
80
+ if (parsed instanceof type.errors ||
81
+ parsed.length !== 1 ||
82
+ isPromptResearch(parsed[0]) === false ||
83
+ storedEventMatchesScope(parsed[0], args) === false) {
84
+ return null;
85
+ }
86
+ return parsed[0];
87
+ }
88
+ async function attachStoredResearchPointerWithDb(input) {
89
+ const { db, vctx, args, event } = input;
90
+ if ((await ownsChat({ db, vctx, userId: args.userId, chatId: args.chatId })) === false)
91
+ return Result.Err("chat_not_owned");
92
+ const pointerResult = pointerForEvent(event);
93
+ if (pointerResult.isErr())
94
+ return Result.Err(pointerResult);
95
+ const pointer = pointerResult.Ok();
96
+ const t = vctx.sql.tables.promptContexts;
97
+ const row = await db
98
+ .select({ ref: t.ref })
99
+ .from(t)
100
+ .where(and(eq(t.userId, args.userId), eq(t.chatId, args.chatId), eq(t.promptId, args.promptId)))
101
+ .limit(1)
102
+ .then((rows) => rows[0]);
103
+ if (row === undefined)
104
+ return Result.Ok({ attached: false });
105
+ const parsedRef = PromptContextSql(row.ref);
106
+ if (parsedRef instanceof type.errors)
107
+ return Result.Err("prompt_context_ref_invalid");
108
+ if (parsedRef.research !== undefined) {
109
+ if (JSON.stringify(parsedRef.research) !== JSON.stringify(pointer)) {
110
+ return Result.Err("research_pointer_conflict");
111
+ }
112
+ return Result.Ok({ attached: true });
113
+ }
114
+ const nextRef = PromptContextSql({ ...parsedRef, research: pointer });
115
+ if (nextRef instanceof type.errors)
116
+ return Result.Err("prompt_context_ref_invalid");
117
+ await db
118
+ .update(t)
119
+ .set({ ref: nextRef })
120
+ .where(and(eq(t.userId, args.userId), eq(t.chatId, args.chatId), eq(t.promptId, args.promptId)));
121
+ return Result.Ok({ attached: true });
122
+ }
123
+ export async function reconcileResearchPointer(vctx, args) {
124
+ return exception2Result(() => vctx.sql.db.transaction(async (tx) => {
125
+ if ((await ownsChat({ db: tx, vctx, userId: args.userId, chatId: args.chatId })) === false)
126
+ return Result.Err("chat_not_owned");
127
+ const event = await readResearchEvent(tx, vctx, args);
128
+ if (event === undefined)
129
+ return Result.Ok({ attached: false });
130
+ if (event === null)
131
+ return Result.Err("research_section_invalid");
132
+ return attachStoredResearchPointerWithDb({ db: tx, vctx, args, event });
133
+ }));
134
+ }
135
+ export function isTerminalUrlResearchPersistenceError(error) {
136
+ const message = String(error);
137
+ return [
138
+ "chat_not_owned",
139
+ "research_scope_conflict",
140
+ "research_id_mismatch",
141
+ "research_id_conflict",
142
+ "research_event_conflict",
143
+ "research_section_invalid",
144
+ "research_pointer_conflict",
145
+ "prompt_context_ref_invalid",
146
+ "invalid_research_timestamp",
147
+ "invalid_url_research_result",
148
+ "invalid_research_pointer",
149
+ ].some((code) => message.includes(code));
150
+ }
151
+ export async function inspectUrlResearch(vctx, args) {
152
+ return exception2Result(async () => {
153
+ if ((await ownsChat({ db: vctx.sql.db, vctx, userId: args.userId, chatId: args.chatId })) === false)
154
+ return Result.Err("chat_not_owned");
155
+ const t = vctx.sql.tables.chatSections;
156
+ const row = await vctx.sql.db
157
+ .select({ blocks: t.blocks })
158
+ .from(t)
159
+ .where(and(eq(t.chatId, args.chatId), eq(t.promptId, args.promptId), eq(t.blockSeq, RESEARCH_BLOCK_SEQ)))
160
+ .limit(1)
161
+ .then((rows) => rows[0]);
162
+ if (row === undefined)
163
+ return Result.Ok("missing");
164
+ const parsed = PromptResearch.array()(row.blocks);
165
+ if (parsed instanceof type.errors ||
166
+ parsed.length !== 1 ||
167
+ isPromptResearch(parsed[0]) === false ||
168
+ storedEventMatchesScope(parsed[0], args) === false) {
169
+ return Result.Ok("conflict");
170
+ }
171
+ return Result.Ok(parsed[0].researchId === args.researchId ? "same" : "conflict");
172
+ });
173
+ }
174
+ export async function persistUrlResearch(vctx, args) {
175
+ const document = documentFromInput(args.result);
176
+ if (document.researchId !== args.researchId)
177
+ return Result.Err("research_id_mismatch");
178
+ const eventResult = toPromptResearchEvent(document, args);
179
+ if (eventResult.isErr())
180
+ return Result.Err(eventResult);
181
+ const incoming = eventResult.Ok();
182
+ const transactionResult = await exception2Result(() => vctx.sql.db.transaction(async (tx) => {
183
+ if ((await ownsChat({ db: tx, vctx, userId: args.userId, chatId: args.chatId })) === false) {
184
+ return Result.Err("chat_not_owned");
185
+ }
186
+ const t = vctx.sql.tables.chatSections;
187
+ let row = await tx
188
+ .select({ blocks: t.blocks })
189
+ .from(t)
190
+ .where(and(eq(t.chatId, args.chatId), eq(t.promptId, args.promptId), eq(t.blockSeq, RESEARCH_BLOCK_SEQ)))
191
+ .limit(1)
192
+ .then((rows) => rows[0]);
193
+ let action = "unchanged";
194
+ if (row === undefined) {
195
+ const insertedRows = await tx
196
+ .insert(t)
197
+ .values({
198
+ chatId: args.chatId,
199
+ promptId: args.promptId,
200
+ blockSeq: RESEARCH_BLOCK_SEQ,
201
+ blocks: [incoming],
202
+ created: new Date().toISOString(),
203
+ })
204
+ .onConflictDoNothing({ target: [t.chatId, t.promptId, t.blockSeq] })
205
+ .returning({ chatId: t.chatId });
206
+ action = insertedRows.length > 0 ? "inserted" : "unchanged";
207
+ row = await tx
208
+ .select({ blocks: t.blocks })
209
+ .from(t)
210
+ .where(and(eq(t.chatId, args.chatId), eq(t.promptId, args.promptId), eq(t.blockSeq, RESEARCH_BLOCK_SEQ)))
211
+ .limit(1)
212
+ .then((rows) => rows[0]);
213
+ }
214
+ if (row === undefined)
215
+ return Result.Err("research_section_insert_failed");
216
+ const parsed = PromptResearch.array()(row.blocks);
217
+ if (parsed instanceof type.errors ||
218
+ parsed.length !== 1 ||
219
+ isPromptResearch(parsed[0]) === false ||
220
+ storedEventMatchesScope(parsed[0], args) === false) {
221
+ return Result.Err("research_section_invalid");
222
+ }
223
+ const persisted = parsed[0];
224
+ if (persisted.researchId !== incoming.researchId) {
225
+ return Result.Err("research_id_conflict");
226
+ }
227
+ if (sameEvent(persisted, incoming) === false) {
228
+ return Result.Err("research_event_conflict");
229
+ }
230
+ const pointerResult = await attachStoredResearchPointerWithDb({
231
+ db: tx,
232
+ vctx,
233
+ args: { userId: args.userId, chatId: args.chatId, promptId: args.promptId },
234
+ event: persisted,
235
+ });
236
+ if (pointerResult.isErr())
237
+ return Result.Err(pointerResult);
238
+ return Result.Ok({
239
+ action,
240
+ pointerAttached: pointerResult.Ok().attached,
241
+ event: persisted,
242
+ });
243
+ }));
244
+ if (transactionResult.isErr())
245
+ return Result.Err(transactionResult);
246
+ return transactionResult;
247
+ }
248
+ export { toPromptResearchEvent };
249
+ //# sourceMappingURL=persist-url-research.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persist-url-research.js","sourceRoot":"","sources":["../../jsr/intern/persist-url-research.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAgD,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,cAAc,EACd,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AA8B9B,SAAS,iBAAiB,CAAC,KAA8C;IACvE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,QAAQ,IAAI,KAAK;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IAC1F,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,IAAyB,EAAE,KAA0B;IACtE,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,qBAAqB,CAC5B,QAA6B,EAC7B,IAAyD;IAEzD,IAAI,mBAAmB,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,KAAK;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IACzG,MAAM,KAAK,GAAG;QACZ,IAAI,EAAE,iBAA0B;QAChC,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,GAAG,EAAE,kBAAkB;QAKvB,SAAS,EAAE,QAAQ,CAAC,WAAW;QAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACzC,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;YACzC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtE,CAAC,CAAC;QACH,GAAG,EAAE,QAAQ,CAAC,YAAY;QAC1B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,GAAG,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC/E,CAAC;IACF,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACrC,OAAO,MAAM,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,eAAe,CAAC,KAA0B;IACjD,MAAM,MAAM,GAAG,eAAe,CAAC;QAC7B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,eAAe,EAAE,kBAAkB;QACnC,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC,CAAC;IACH,OAAO,MAAM,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACpG,CAAC;AASD,KAAK,UAAU,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAgB;IAChE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,EAAE;SACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAC5B,IAAI,CAAC,CAAC,CAAC;SACP,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;SACtD,KAAK,CAAC,CAAC,CAAC;SACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,OAAO,GAAG,KAAK,SAAS,CAAC;AAC3B,CAAC;AAED,SAAS,uBAAuB,CAAC,KAA0B,EAAE,IAAkC;IAC7F,OAAO,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,KAAK,kBAAkB,CAAC;AAC9G,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,EAAc,EACd,IAAoB,EACpB,IAAkC;IAElC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;IAC3C,MAAM,GAAG,GAAG,MAAM,EAAE;SACjB,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;SACnC,IAAI,CAAC,KAAK,CAAC;SACX,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;SACtD,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAC7B,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAC7B,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EACpC,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAC1C,CACF;SACA,KAAK,CAAC,CAAC,CAAC;SACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAClD,IACE,MAAM,YAAY,IAAI,CAAC,MAAM;QAC7B,MAAM,CAAC,MAAM,KAAK,CAAC;QACnB,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;QACrC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,KAAK,EAClD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAOD,KAAK,UAAU,iCAAiC,CAAC,KAKhD;IACC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IACxC,IAAI,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,KAAK;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5H,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,aAAa,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,EAAE,CAAC;IACnC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC;IACzC,MAAM,GAAG,GAAG,MAAM,EAAE;SACjB,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;SACtB,IAAI,CAAC,CAAC,CAAC;SACP,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;SAC/F,KAAK,CAAC,CAAC,CAAC;SACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAE7D,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,SAAS,YAAY,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IACtF,IAAI,SAAS,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;YACnE,OAAO,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,OAAO,GAAG,gBAAgB,CAAC,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,IAAI,OAAO,YAAY,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IACpF,MAAM,EAAE;SACL,MAAM,CAAC,CAAC,CAAC;SACT,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;SACrB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnG,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AACvC,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,IAAoB,EACpB,IAAkC;IAElC,OAAO,gBAAgB,CAAC,GAAG,EAAE,CAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAA0C,EAAE;QAC3E,IAAI,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,KAAK;YACxF,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACtD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/D,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAClE,OAAO,iCAAiC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AASD,MAAM,UAAU,qCAAqC,CAAC,KAAc;IAClE,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO;QACL,gBAAgB;QAChB,yBAAyB;QACzB,sBAAsB;QACtB,sBAAsB;QACtB,yBAAyB;QACzB,0BAA0B;QAC1B,2BAA2B;QAC3B,4BAA4B;QAC5B,4BAA4B;QAC5B,6BAA6B;QAC7B,0BAA0B;KAC3B,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3C,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAoB,EACpB,IAAkH;IAElH,OAAO,gBAAgB,CAAC,KAAK,IAA+C,EAAE;QAC5E,IAAI,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,KAAK;YACjG,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE;aAC1B,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;aAC5B,IAAI,CAAC,CAAC,CAAC;aACP,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;aACxG,KAAK,CAAC,CAAC,CAAC;aACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,IACE,MAAM,YAAY,IAAI,CAAC,MAAM;YAC7B,MAAM,CAAC,MAAM,KAAK,CAAC;YACnB,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;YACrC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,KAAK,EAClD,CAAC;YACD,OAAO,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;AACL,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,IAAoB,EACpB,IAA4B;IAE5B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,QAAQ,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACvF,MAAM,WAAW,GAAG,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1D,IAAI,WAAW,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,EAAE,CAAC;IAElC,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACpD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACnC,IAAI,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC;YAC3F,OAAO,MAAM,CAAC,GAAG,CAA6B,gBAAgB,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,IAAI,GAAG,GAAG,MAAM,EAAE;aACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;aAC5B,IAAI,CAAC,CAAC,CAAC;aACP,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;aACxG,KAAK,CAAC,CAAC,CAAC;aACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,MAAM,GAA8B,WAAW,CAAC;QAEpD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,EAAE;iBAC1B,MAAM,CAAC,CAAC,CAAC;iBACT,MAAM,CAAC;gBACN,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,kBAAkB;gBAC5B,MAAM,EAAE,CAAC,QAAQ,CAAC;gBAIlB,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aAClC,CAAC;iBACD,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;iBACnE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACnC,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;YAC5D,GAAG,GAAG,MAAM,EAAE;iBACX,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;iBAC5B,IAAI,CAAC,CAAC,CAAC;iBACP,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;iBACxG,KAAK,CAAC,CAAC,CAAC;iBACR,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAED,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,GAAG,CAA6B,gCAAgC,CAAC,CAAC;QACvG,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAClD,IACE,MAAM,YAAY,IAAI,CAAC,MAAM;YAC7B,MAAM,CAAC,MAAM,KAAK,CAAC;YACnB,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK;YACrC,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,KAAK,EAClD,CAAC;YACD,OAAO,MAAM,CAAC,GAAG,CAA6B,0BAA0B,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,SAAS,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;YACjD,OAAO,MAAM,CAAC,GAAG,CAA6B,sBAAsB,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,SAAS,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;YAC7C,OAAO,MAAM,CAAC,GAAG,CAA6B,yBAAyB,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,iCAAiC,CAAC;YAC5D,EAAE,EAAE,EAAE;YACN,IAAI;YACJ,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YAC3E,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC,GAAG,CAA6B,aAAa,CAAC,CAAC;QACxF,OAAO,MAAM,CAAC,EAAE,CAAC;YACf,MAAM;YACN,eAAe,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,QAAQ;YAC5C,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;IACL,CAAC,CAAC,CACH,CAAC;IACF,IAAI,iBAAiB,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACpE,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC"}
@@ -8,6 +8,7 @@ export interface ReconstructOpts {
8
8
  export declare function reconstructConversationMessages(sectionMsgs: PromptAndBlockMsgs[], opts?: ReconstructOpts): ChatMessage[];
9
9
  export interface AssemblePromptPayloadArgs {
10
10
  readonly chatId: string;
11
+ readonly userId?: string;
11
12
  readonly model: string;
12
13
  readonly newUserMessages: readonly ChatMessage[];
13
14
  readonly selected?: SelectedSlotInput;
@@ -26,7 +27,9 @@ export interface AssemblePromptPayloadArgs {
26
27
  export declare function assemblePromptPayload(vctx: VibesApiSQLCtx, args: AssemblePromptPayloadArgs): Promise<Result<{
27
28
  model: string;
28
29
  messages: ChatMessage[];
30
+ isInitialTurn: boolean;
29
31
  codegenTheme?: string;
32
+ enrichedPrompt?: string;
30
33
  }>>;
31
34
  export declare function persistCodegenThemeMarker(vctx: VibesApiSQLCtx, args: {
32
35
  readonly userId: string;
@@ -1,9 +1,9 @@
1
1
  import { Result, exception2Result } from "@adviser/cement";
2
- import { PromptAndBlockMsgs, isActiveCodegenTheme, isActiveEnrichedPrompt, isActiveSkills, isActiveTheme, isActiveTitle, isPromptReq, parseArrayWarning, } from "@vibes.diy/api-types";
3
- import { isCodeBegin, isCodeEnd, isCodeLine, isToplevelLine } from "@vibes.diy/call-ai-v2";
2
+ import { PromptAndBlockMsgs, isActiveCodegenTheme, isActiveEnrichedPrompt, isActiveSkills, isActiveTheme, isActiveTitle, isPromptResearch, isPromptReq, parseArrayWarning, RESEARCH_BLOCK_SEQ, } from "@vibes.diy/api-types";
3
+ import { isCodeBegin, isCodeEnd, isCodeLine, isToplevelLine, isUserChatMessage } from "@vibes.diy/call-ai-v2";
4
4
  import { ensureLogger } from "@vibes.diy/identity";
5
5
  import { sql } from "drizzle-orm";
6
- import { and, eq } from "drizzle-orm/sql/expressions";
6
+ import { and, eq, ne } from "drizzle-orm/sql/expressions";
7
7
  import { getDefaultSkills, makeBaseSystemPrompt } from "@vibes.diy/prompts";
8
8
  import { createPromptAssetFetch, promptsPkgBaseUrl } from "./prompt-asset-fetch.js";
9
9
  import { loadModels } from "../public/list-models.js";
@@ -13,6 +13,7 @@ import { inflateFileAttachments, stripVibesFileBlocks } from "./inflate-file-att
13
13
  import { assembleSlotMessages, renderSlotMessagesAs } from "./slot-assembler.js";
14
14
  import { loadLatestPromptId, loadVersionTimeline, selectSlotSources } from "./version-timeline.js";
15
15
  import { readComposedSettings, readComposedSettingsForApp, writeAppSettingItems } from "../public/app-setting-items.js";
16
+ import { loadResearchContextMessages } from "./load-research-context.js";
16
17
  const SCREENSHOT_CAPTION = "Attached is a screenshot of the app as it currently renders, for visual reference. Use it to ground layout, spacing, color, and alignment edits.";
17
18
  export function reconstructConversationMessages(sectionMsgs, opts = {}) {
18
19
  const messages = [];
@@ -33,7 +34,9 @@ export function reconstructConversationMessages(sectionMsgs, opts = {}) {
33
34
  case isPromptReq(msg):
34
35
  flushAssistant();
35
36
  currentStreamId = msg.streamId;
36
- messages.push(...msg.request.messages.filter((m) => m.role === "user"));
37
+ messages.push(...msg.request.messages.filter(isUserChatMessage));
38
+ break;
39
+ case isPromptResearch(msg):
37
40
  break;
38
41
  case isToplevelLine(msg):
39
42
  assistantLines.push(msg.line);
@@ -83,7 +86,10 @@ export function reconstructConversationMessages(sectionMsgs, opts = {}) {
83
86
  }
84
87
  async function loadActiveSettings(vctx, chatId) {
85
88
  const rChat = await exception2Result(() => vctx.sql.db
86
- .select({ appSlug: vctx.sql.tables.chatContexts.appSlug, ownerHandle: vctx.sql.tables.chatContexts.ownerHandle })
89
+ .select({
90
+ appSlug: vctx.sql.tables.chatContexts.appSlug,
91
+ ownerHandle: vctx.sql.tables.chatContexts.ownerHandle,
92
+ })
87
93
  .from(vctx.sql.tables.chatContexts)
88
94
  .where(eq(vctx.sql.tables.chatContexts.chatId, chatId))
89
95
  .limit(1)
@@ -118,11 +124,12 @@ export async function assemblePromptPayload(vctx, args) {
118
124
  const sections = await vctx.sql.db
119
125
  .select()
120
126
  .from(vctx.sql.tables.chatSections)
121
- .where(eq(vctx.sql.tables.chatSections.chatId, chatId))
127
+ .where(and(eq(vctx.sql.tables.chatSections.chatId, chatId), ne(vctx.sql.tables.chatSections.blockSeq, RESEARCH_BLOCK_SEQ)))
122
128
  .orderBy(vctx.sql.tables.chatSections.created);
123
129
  const allSectionMsgs = [];
124
130
  for (const rowSection of sections) {
125
- const { filtered: sectionMsgs, warning: sectionWarning } = parseArrayWarning(rowSection.blocks, PromptAndBlockMsgs);
131
+ const { filtered: parsedSectionMsgs, warning: sectionWarning } = parseArrayWarning(rowSection.blocks, PromptAndBlockMsgs);
132
+ const sectionMsgs = parsedSectionMsgs.filter((block) => !isPromptResearch(block));
126
133
  if (sectionWarning.length > 0) {
127
134
  ensureLogger(vctx.sthis, "assemblePromptPayload").Warn().Any({ parseErrors: sectionWarning }).Msg("skip");
128
135
  }
@@ -140,12 +147,28 @@ export async function assemblePromptPayload(vctx, args) {
140
147
  const reconstructed = reconstructConversationMessages(allSectionMsgs, {
141
148
  keepFullTurnStreamId: compactionDisabled ? undefined : latestPromptId,
142
149
  });
150
+ const chatOwner = await vctx.sql.db
151
+ .select({ userId: vctx.sql.tables.chatContexts.userId })
152
+ .from(vctx.sql.tables.chatContexts)
153
+ .where(eq(vctx.sql.tables.chatContexts.chatId, chatId))
154
+ .limit(1)
155
+ .then((rows) => rows[0]);
156
+ if (args.userId !== undefined && chatOwner !== undefined && chatOwner.userId !== args.userId) {
157
+ return Result.Err("chat_not_owned");
158
+ }
159
+ const researchContextResult = chatOwner === undefined
160
+ ? Result.Ok([])
161
+ : await loadResearchContextMessages(vctx, { userId: args.userId ?? chatOwner.userId, chatId });
162
+ if (researchContextResult.isErr())
163
+ return Result.Err(researchContextResult);
164
+ const researchContextMessages = researchContextResult.Ok();
143
165
  const newUserOnly = newUserMessages.filter((m) => m.role === "user");
144
166
  const hasFileRefs = [...reconstructed, ...newUserOnly].some((m) => m.role === "user" && m.content.some((c) => c.type === "vibes_file"));
145
167
  const activeSettings = args.activeSettingsOverride ?? (await loadActiveSettings(vctx, chatId));
146
168
  const { skills, theme, title, enrichedPrompt } = activeSettings;
147
169
  const codegenTheme = "codegenTheme" in activeSettings ? activeSettings.codegenTheme : undefined;
148
170
  const isInitial = timeline.length === 0;
171
+ const isFirstGeneratedTurn = timeline.filter((e) => !e.seeded).length === 0;
149
172
  const themeChanged = (theme ?? "") !== (codegenTheme ?? "");
150
173
  const includeTheme = isInitial || themeChanged;
151
174
  const systemPrompt = await exception2Result(async () => {
@@ -227,6 +250,7 @@ export async function assemblePromptPayload(vctx, args) {
227
250
  }
228
251
  const assembled = [
229
252
  { role: "system", content: [{ type: "text", text: systemPrompt.Ok().systemPrompt }] },
253
+ ...researchContextMessages,
230
254
  ...reconstructed,
231
255
  ...slotChatMessages,
232
256
  ...finalNewUser,
@@ -244,7 +268,9 @@ export async function assemblePromptPayload(vctx, args) {
244
268
  return Result.Ok({
245
269
  model,
246
270
  messages,
271
+ isInitialTurn: isFirstGeneratedTurn,
247
272
  codegenTheme: theme,
273
+ ...(enrichedPrompt !== undefined ? { enrichedPrompt } : {}),
248
274
  });
249
275
  }
250
276
  export async function persistCodegenThemeMarker(vctx, args) {
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../../jsr/intern/prompt-assembly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../../jsr/intern/prompt-assembly.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { type SseStreamMsg } from "@vibes.diy/call-ai-v2";
3
+ export declare function createProviderSseStream(response: Response, streamId: string): Result<ReadableStream<SseStreamMsg>>;
@@ -0,0 +1,12 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { createDataStream, createLineStream, createSseStream, createStatsCollector, } from "@vibes.diy/call-ai-v2";
3
+ export function createProviderSseStream(response, streamId) {
4
+ if (response.body === null)
5
+ return Result.Err("LLM provider response did not include a body");
6
+ return Result.Ok(response.body
7
+ .pipeThrough(createStatsCollector(streamId, 1000))
8
+ .pipeThrough(createLineStream(streamId))
9
+ .pipeThrough(createDataStream(streamId))
10
+ .pipeThrough(createSseStream(streamId)));
11
+ }
12
+ //# sourceMappingURL=provider-sse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-sse.js","sourceRoot":"","sources":["../../jsr/intern/provider-sse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,oBAAoB,GAErB,MAAM,uBAAuB,CAAC;AAG/B,MAAM,UAAU,uBAAuB,CAAC,QAAkB,EAAE,QAAgB;IAC1E,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAC9F,OAAO,MAAM,CAAC,EAAE,CACd,QAAQ,CAAC,IAAI;SACV,WAAW,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SACjD,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;SACvC,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;SACvC,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAC1C,CAAC;AACJ,CAAC"}
@@ -6,6 +6,7 @@ import { resolveAccessBinding } from "../public/access-binding-resolver.js";
6
6
  import { extractContribution, newSeededReduce } from "../public/grant-reduce.js";
7
7
  import { filterDocsByChannel } from "../public/channel-read-filter.js";
8
8
  import { resolveInheritReadChannels } from "../public/inherit-read-resolver.js";
9
+ import { decodeAccessOutputRows } from "../public/access-output-decoder.js";
9
10
  import { mintFilesUrls } from "../public/files-url-mint.js";
10
11
  import { isDirectChannel } from "@vibes.diy/api-types";
11
12
  export async function readAnonymousSeedDocs(vctx, ownerHandle, appSlug) {
@@ -27,7 +28,7 @@ async function readAnonymousSeedDocsInner(vctx, ownerHandle, appSlug) {
27
28
  return undefined;
28
29
  const seed = {};
29
30
  for (const dbName of dbNames) {
30
- const rAcl = await resolveDbAcl(vctx, ownerHandle, appSlug, dbName);
31
+ const rAcl = await resolveDbAcl({ vctx, ownerHandle, appSlug, dbName });
31
32
  if (rAcl.isErr())
32
33
  continue;
33
34
  const acl = rAcl.Ok();
@@ -64,25 +65,31 @@ async function readAnonymousSeedDocsInner(vctx, ownerHandle, appSlug) {
64
65
  .from(tOut)
65
66
  .where(and(eq(tOut.ownerHandle, ownerHandle), eq(tOut.appSlug, appSlug), eq(tOut.dbName, dbName)));
66
67
  const reduce = newSeededReduce(ownerHandle, []);
67
- for (const row of allOutputs) {
68
- const parsed = JSON.parse(row.output);
69
- const hasGrantSurface = (parsed.members !== undefined && Object.keys(parsed.members).length > 0) ||
70
- (parsed.grant?.users !== undefined && Object.keys(parsed.grant.users).length > 0) ||
71
- (parsed.grant?.roles !== undefined && Object.keys(parsed.grant.roles).length > 0) ||
72
- (parsed.grant?.public !== undefined && parsed.grant.public.length > 0);
68
+ const decodedOutputs = decodeAccessOutputRows(allOutputs);
69
+ for (const { row, descriptor } of decodedOutputs) {
70
+ const hasGrantSurface = (descriptor.members !== undefined && Object.keys(descriptor.members).length > 0) ||
71
+ (descriptor.grant?.users !== undefined && Object.keys(descriptor.grant.users).length > 0) ||
72
+ (descriptor.grant?.roles !== undefined && Object.keys(descriptor.grant.roles).length > 0) ||
73
+ (descriptor.grant?.public !== undefined && descriptor.grant.public.length > 0);
73
74
  if (hasGrantSurface) {
74
- reduce.addDoc(row.docId, extractContribution(parsed));
75
+ reduce.addDoc(row.docId, extractContribution(descriptor));
75
76
  }
76
77
  }
77
78
  const inheritCh = await resolveInheritReadChannels(vctx, {
78
79
  ownerHandle,
79
80
  appSlug,
80
- outputs: allOutputs,
81
+ outputs: decodedOutputs,
81
82
  userHandle: null,
82
83
  access: "none",
83
84
  devHandles: [],
84
85
  });
85
- visible = filterDocsByChannel(docs, allOutputs, null, inheritCh, reduce.publicChannels, false, false);
86
+ visible = filterDocsByChannel({
87
+ docs,
88
+ outputRows: decodedOutputs,
89
+ userHandle: null,
90
+ effectiveChannels: inheritCh,
91
+ publicChannels: reduce.publicChannels,
92
+ });
86
93
  }
87
94
  if (visible.length > 0) {
88
95
  seed[dbName] = visible;
@@ -1 +1 @@
1
- {"version":3,"file":"read-anonymous-seed-docs.js","sourceRoot":"","sources":["../../jsr/intern/read-anonymous-seed-docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-anonymous-seed-docs.js","sourceRoot":"","sources":["../../jsr/intern/read-anonymous-seed-docs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Result } from "@adviser/cement";
2
+ import { isChatMessage, } from "@vibes.diy/call-ai-v2";
2
3
  import { assembleSlotMessages } from "./slot-assembler.js";
3
4
  export const RECOVERY_RENDER_BUDGET = { maxFileBytes: 16_000, maxTotalBytes: 32_000 };
4
5
  export const SLOT_RENDER_BUDGET = { maxFileBytes: 262_144, maxTotalBytes: 524_288 };
@@ -39,11 +40,14 @@ function renderPartialResume(assistantPartial, focusPath, lastReplaceFileLines)
39
40
  ].join("\n");
40
41
  }
41
42
  function mergeRecoveryIntoSystem(messages, recoverySuffix) {
42
- const firstSystemIdx = messages.findIndex((m) => m.role === "system");
43
+ const firstSystemIdx = messages.findIndex((m) => isChatMessage(m) && m.role === "system");
43
44
  if (firstSystemIdx === -1) {
44
45
  return [{ role: "system", content: [{ type: "text", text: recoverySuffix }] }, ...messages];
45
46
  }
46
47
  const original = messages[firstSystemIdx];
48
+ if (isChatMessage(original) === false || original.role !== "system") {
49
+ return [...messages];
50
+ }
47
51
  const originalText = original.content[0]?.type === "text" ? original.content[0].text : "";
48
52
  const merged = {
49
53
  role: "system",