@vibes.diy/api-svc 2.0.3 → 2.0.6

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 (50) hide show
  1. package/create-handler.js +4 -0
  2. package/create-handler.js.map +1 -1
  3. package/index.d.ts +1 -0
  4. package/index.js +1 -0
  5. package/index.js.map +1 -1
  6. package/intern/ensure-chat-id.js +64 -1
  7. package/intern/ensure-chat-id.js.map +1 -1
  8. package/intern/ensure-slug-binding.d.ts +8 -1
  9. package/intern/ensure-slug-binding.js +71 -40
  10. package/intern/ensure-slug-binding.js.map +1 -1
  11. package/intern/grouped-vibe-import-map.d.ts +2 -22
  12. package/intern/grouped-vibe-import-map.js +3 -23
  13. package/intern/grouped-vibe-import-map.js.map +1 -1
  14. package/intern/pre-allocate.d.ts +12 -0
  15. package/intern/pre-allocate.js +56 -0
  16. package/intern/pre-allocate.js.map +1 -0
  17. package/intern/write-apps.js +16 -3
  18. package/intern/write-apps.js.map +1 -1
  19. package/models.json +19 -6
  20. package/package.json +11 -10
  21. package/public/app-documents.d.ts +7 -0
  22. package/public/app-documents.js +210 -0
  23. package/public/app-documents.js.map +1 -0
  24. package/public/ensure-app-settings.js +25 -2
  25. package/public/ensure-app-settings.js.map +1 -1
  26. package/public/fork-app.d.ts +5 -0
  27. package/public/fork-app.js +287 -0
  28. package/public/fork-app.js.map +1 -0
  29. package/public/open-chat.js +1 -0
  30. package/public/open-chat.js.map +1 -1
  31. package/public/prompt-chat-section.d.ts +5 -3
  32. package/public/prompt-chat-section.js +324 -41
  33. package/public/prompt-chat-section.js.map +1 -1
  34. package/public/request-flow.d.ts +5 -0
  35. package/public/request-flow.js +33 -0
  36. package/public/request-flow.js.map +1 -1
  37. package/svc-ws-send-provider.d.ts +1 -0
  38. package/svc-ws-send-provider.js +1 -0
  39. package/svc-ws-send-provider.js.map +1 -1
  40. package/types.d.ts +1 -0
  41. package/types.js.map +1 -1
  42. package/usage-report/inspect-db-report-template.d.ts +4 -0
  43. package/usage-report/inspect-db-report-template.js +25 -7
  44. package/usage-report/inspect-db-report-template.js.map +1 -1
  45. package/usage-report/inspect-db-report.js +25 -0
  46. package/usage-report/inspect-db-report.js.map +1 -1
  47. package/vibes-msg-evento.js +3 -1
  48. package/vibes-msg-evento.js.map +1 -1
  49. package/intern/import-map.ts-off +0 -405
  50. package/intern/invite-system.ts-off +0 -392
@@ -1,16 +1,37 @@
1
- import { Result, Option, EventoResult, exception2Result, chunkyAsync, BuildURI, pathOps, URI, } from "@adviser/cement";
1
+ import { Result, Option, EventoResult, exception2Result, chunkyAsync, BuildURI, pathOps, URI, uint8array2stream, } from "@adviser/cement";
2
2
  import { scopey } from "@adviser/scopey";
3
- import { isReqCreationPromptChatSection, isReqPromptApplicationChatSection, isReqPromptFSChatSection, isReqPromptFSUpdateChatSection, isReqPromptImageChatSection, isReqPromptLLMChatSection, parseArrayWarning, PromptAndBlockMsgs, reqPromptChatSection, isPromptReq, isReqPromptFSSetChatSection, parseArray, vibeFile, isVibeCodeBlock, } from "@vibes.diy/api-types";
3
+ import { isReqCreationPromptChatSection, isReqPromptApplicationChatSection, isPromptFSStyle, isReqPromptFSChatSection, isReqPromptFSUpdateChatSection, isReqPromptImageChatSection, isReqPromptLLMChatSection, parseArrayWarning, PromptAndBlockMsgs, reqPromptChatSection, isPromptReq, isReqPromptFSSetChatSection, parseArray, vibeFile, isVibeCodeBlock, isActiveSkills, isActiveTitle, } from "@vibes.diy/api-types";
4
4
  import { ensureLogger } from "@fireproof/core-runtime";
5
5
  import { type } from "arktype";
6
6
  import { checkAuth } from "../check-auth.js";
7
7
  import { unwrapMsgBase, wrapMsgBase } from "../unwrap-msg-base.js";
8
8
  import { and, desc, eq } from "drizzle-orm/sql/expressions";
9
- import { createStatsCollector, createLineStream, createDataStream, createSseStream, createDeltaStream, createSectionsStream, isBlockEnd, isCodeBegin, isCodeEnd, isCodeLine, FileSystemRef, isBlockStreamMsg, } from "@vibes.diy/call-ai-v2";
9
+ import { createStatsCollector, createLineStream, createDataStream, createSseStream, createDeltaStream, createSectionsStream, isBlockEnd, isCodeBegin, isCodeEnd, isCodeLine, isToplevelLine, FileSystemRef, isBlockStreamMsg, isBlockImage, } from "@vibes.diy/call-ai-v2";
10
10
  import { makeBaseSystemPrompt, resolveEffectiveModel } from "@vibes.diy/prompts";
11
11
  import { ensureAppSlugItem } from "./ensure-app-slug-item.js";
12
12
  import { getModelDefaults } from "../intern/get-model-defaults.js";
13
13
  async function appendBlockEvent({ ctx, vctx, req, promptId, blockSeq, evt, emitMode = "store", }) {
14
+ if (isBlockImage(evt)) {
15
+ const imgEvt = evt;
16
+ if (imgEvt.url.startsWith("data:")) {
17
+ const match = imgEvt.url.match(/^data:([^;]+);base64,(.+)$/);
18
+ if (match) {
19
+ const mime = match[1];
20
+ const raw = Uint8Array.from(atob(match[2]), (c) => c.charCodeAt(0));
21
+ const [storageResult] = await vctx.storage.ensure(uint8array2stream(raw));
22
+ if (storageResult?.isOk()) {
23
+ imgEvt.url = `/assets/cid?url=${encodeURIComponent(storageResult.Ok().getURL)}&mime=${encodeURIComponent(mime)}`;
24
+ console.log("[block.image] Stored as asset:", imgEvt.url, "size:", raw.length);
25
+ }
26
+ else {
27
+ console.error("[block.image] Failed to store asset:", storageResult?.Err());
28
+ }
29
+ }
30
+ }
31
+ else {
32
+ console.log("[block.image] Server received URL:", imgEvt.url.substring(0, 100));
33
+ }
34
+ }
14
35
  const now = new Date();
15
36
  const msgBase = wrapMsgBase(ctx.validated, {
16
37
  payload: {
@@ -24,6 +45,7 @@ async function appendBlockEvent({ ctx, vctx, req, promptId, blockSeq, evt, emitM
24
45
  tid: req.outerTid,
25
46
  src: "promptChatSection",
26
47
  });
48
+ console.log("[appendBlockEvent] emitting:", evt.type, "connections:", vctx.connections.size, "chatId:", req.chatId);
27
49
  for (const conn of vctx.connections) {
28
50
  const chatCtx = conn.chatIds.get(req.chatId);
29
51
  if (chatCtx) {
@@ -46,7 +68,7 @@ async function appendBlockEvent({ ctx, vctx, req, promptId, blockSeq, evt, emitM
46
68
  }
47
69
  return Result.Ok();
48
70
  }
49
- export async function handlePromptContext({ vctx, req, resChat, promptId, blockSeq, value, collectedMsgs: iCollectedMsgs, blockChunks = 100, }) {
71
+ export async function handlePromptContext({ vctx, req, resChat, promptId, blockSeq, value, collectedMsgs: iCollectedMsgs, blockChunks = 100, fileSystem, }) {
50
72
  let fsRef = Option.None();
51
73
  const code = [];
52
74
  const sections = [];
@@ -87,13 +109,9 @@ export async function handlePromptContext({ vctx, req, resChat, promptId, blockS
87
109
  }
88
110
  }
89
111
  }
90
- if (code.length > 0 && resChat.mode === "chat") {
91
- const rFs = await ensureAppSlugItem(vctx, {
92
- type: "vibes.diy.req-ensure-app-slug",
93
- mode: "dev",
94
- appSlug: resChat.appSlug,
95
- userSlug: resChat.userSlug,
96
- fileSystem: code.reduce((acc, block, idx) => {
112
+ if (code.length > 0 && (resChat.mode === "chat" || isPromptFSStyle(resChat.mode))) {
113
+ const resolvedFileSystem = fileSystem ??
114
+ code.reduce((acc, block, idx) => {
97
115
  if (block.end) {
98
116
  const content = block.lines.map((l) => l.line).join("\n");
99
117
  let filename;
@@ -119,7 +137,13 @@ export async function handlePromptContext({ vctx, req, resChat, promptId, blockS
119
137
  });
120
138
  }
121
139
  return acc;
122
- }, []),
140
+ }, []);
141
+ const rFs = await ensureAppSlugItem(vctx, {
142
+ type: "vibes.diy.req-ensure-app-slug",
143
+ mode: "dev",
144
+ appSlug: resChat.appSlug,
145
+ userSlug: resChat.userSlug,
146
+ fileSystem: resolvedFileSystem,
123
147
  auth: req.auth,
124
148
  _auth: req._auth,
125
149
  });
@@ -163,27 +187,85 @@ export async function handlePromptContext({ vctx, req, resChat, promptId, blockS
163
187
  iCollectedMsgs.splice(0, collectedMsgs.length);
164
188
  return Result.Ok({ blockSeq, fsRef });
165
189
  }
190
+ export function reconstructConversationMessages(sectionMsgs) {
191
+ const messages = [];
192
+ const assistantLines = [];
193
+ function flushAssistant() {
194
+ if (assistantLines.length === 0)
195
+ return;
196
+ messages.push({
197
+ role: "assistant",
198
+ content: [{ type: "text", text: assistantLines.join("\n") }],
199
+ });
200
+ assistantLines.length = 0;
201
+ }
202
+ for (const msg of sectionMsgs) {
203
+ switch (true) {
204
+ case isPromptReq(msg):
205
+ flushAssistant();
206
+ messages.push(...msg.request.messages.filter((m) => m.role === "user"));
207
+ break;
208
+ case isToplevelLine(msg):
209
+ assistantLines.push(msg.line);
210
+ break;
211
+ case isCodeBegin(msg):
212
+ assistantLines.push("```" + msg.lang);
213
+ break;
214
+ case isCodeLine(msg):
215
+ assistantLines.push(msg.line);
216
+ break;
217
+ case isCodeEnd(msg):
218
+ assistantLines.push("```");
219
+ break;
220
+ }
221
+ }
222
+ flushAssistant();
223
+ return messages;
224
+ }
225
+ async function loadActiveSettings(vctx, chatId) {
226
+ const rChat = await exception2Result(() => vctx.sql.db
227
+ .select({ appSlug: vctx.sql.tables.chatContexts.appSlug, userSlug: vctx.sql.tables.chatContexts.userSlug })
228
+ .from(vctx.sql.tables.chatContexts)
229
+ .where(eq(vctx.sql.tables.chatContexts.chatId, chatId))
230
+ .limit(1)
231
+ .then((r) => r[0]));
232
+ if (rChat.isErr() || !rChat.Ok())
233
+ return {};
234
+ const { appSlug, userSlug } = rChat.Ok();
235
+ const rApp = await exception2Result(() => vctx.sql.db
236
+ .select({ settings: vctx.sql.tables.appSettings.settings })
237
+ .from(vctx.sql.tables.appSettings)
238
+ .where(and(eq(vctx.sql.tables.appSettings.appSlug, appSlug), eq(vctx.sql.tables.appSettings.userSlug, userSlug)))
239
+ .limit(1)
240
+ .then((r) => r[0]));
241
+ if (rApp.isErr() || !rApp.Ok())
242
+ return {};
243
+ const entries = (rApp.Ok().settings ?? []);
244
+ return {
245
+ skills: entries.find(isActiveSkills)?.skills,
246
+ title: entries.find(isActiveTitle)?.title,
247
+ };
248
+ }
166
249
  async function injectSystemPrompt(vctx, chatId, model) {
167
250
  const sections = await vctx.sql.db
168
251
  .select()
169
252
  .from(vctx.sql.tables.chatSections)
170
253
  .where(eq(vctx.sql.tables.chatSections.chatId, chatId))
171
254
  .orderBy(vctx.sql.tables.chatSections.created);
172
- const userMessages = [];
255
+ const allSectionMsgs = [];
173
256
  for (const rowSection of sections) {
174
257
  const { filtered: sectionMsgs, warning: sectionWarning } = parseArrayWarning(rowSection.blocks, PromptAndBlockMsgs);
175
258
  if (sectionWarning.length > 0) {
176
259
  ensureLogger(vctx.sthis, "buildUserMessages").Warn().Any({ parseErrors: sectionWarning }).Msg("skip");
177
260
  }
178
- for (const msg of sectionMsgs) {
179
- if (isPromptReq(msg)) {
180
- userMessages.push(...msg.request.messages.filter((m) => m.role === "user"));
181
- }
182
- }
261
+ allSectionMsgs.push(...sectionMsgs);
183
262
  }
263
+ const conversationMessages = reconstructConversationMessages(allSectionMsgs);
264
+ const { skills, title } = await loadActiveSettings(vctx, chatId);
184
265
  const systemPrompt = await exception2Result(async () => makeBaseSystemPrompt(await resolveEffectiveModel({ model }, {}), {
185
- dependenciesUserOverride: true,
186
- dependencies: ["fireproof", "callai", "web-audio"],
266
+ skills,
267
+ title,
268
+ demoData: false,
187
269
  fetch: async (url, _init) => {
188
270
  console.log("Fetching asset for system prompt from URL:", url.toString(), vctx.params.pkgRepos.workspace);
189
271
  const uri = URI.from(url);
@@ -200,26 +282,19 @@ async function injectSystemPrompt(vctx, chatId, model) {
200
282
  console.error("Failed to fetch asset for system prompt from URL:", url.toString(), "with error:", rRes.Err());
201
283
  return new Response(JSON.stringify({ error: rRes.Err() }), { status: 500 });
202
284
  }
203
- const res = new Response(rRes.Ok());
204
- return res;
205
- },
206
- callAi: {
207
- ModuleAndOptionsSelection: async (_msgs) => {
208
- return Result.Err(`Module and options selection is not supported in system prompts at this time`);
209
- },
285
+ return new Response(rRes.Ok());
210
286
  },
211
287
  }));
212
288
  if (systemPrompt.isErr()) {
213
289
  console.error("Failed to create system prompt:", systemPrompt.Err());
214
290
  return Result.Err(systemPrompt);
215
291
  }
216
- if (userMessages.length === 0) {
292
+ if (!conversationMessages.some((m) => m.role === "user")) {
217
293
  return Result.Err(`No user messages found in the prompt`);
218
294
  }
219
295
  return Result.Ok({
220
296
  model,
221
297
  messages: [
222
- ...userMessages,
223
298
  {
224
299
  role: "system",
225
300
  content: [
@@ -229,16 +304,28 @@ async function injectSystemPrompt(vctx, chatId, model) {
229
304
  },
230
305
  ],
231
306
  },
307
+ ...conversationMessages,
232
308
  ],
233
309
  });
234
310
  }
235
311
  async function getResChatFromMode(vctx, req, orig) {
236
- const iResChat = await vctx.sql.db
237
- .select()
238
- .from(vctx.sql.tables.chatContexts)
239
- .where(and(eq(vctx.sql.tables.chatContexts.userId, req._auth.verifiedAuth.claims.userId), eq(vctx.sql.tables.chatContexts.chatId, req.chatId)))
240
- .limit(1)
241
- .then((r) => r[0]);
312
+ let iResChat;
313
+ if (isReqPromptApplicationChatSection(orig) || isReqPromptImageChatSection(orig)) {
314
+ iResChat = await vctx.sql.db
315
+ .select()
316
+ .from(vctx.sql.tables.applicationChats)
317
+ .where(and(eq(vctx.sql.tables.applicationChats.userId, req._auth.verifiedAuth.claims.userId), eq(vctx.sql.tables.applicationChats.chatId, req.chatId)))
318
+ .limit(1)
319
+ .then((r) => r[0]);
320
+ }
321
+ else {
322
+ iResChat = await vctx.sql.db
323
+ .select()
324
+ .from(vctx.sql.tables.chatContexts)
325
+ .where(and(eq(vctx.sql.tables.chatContexts.userId, req._auth.verifiedAuth.claims.userId), eq(vctx.sql.tables.chatContexts.chatId, req.chatId)))
326
+ .limit(1)
327
+ .then((r) => r[0]);
328
+ }
242
329
  if (!iResChat) {
243
330
  if (isReqCreationPromptChatSection(orig)) {
244
331
  return Result.Err(`Creation Chat ID ${req.chatId} not found`);
@@ -302,7 +389,7 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
302
389
  if (req.mode === "chat") {
303
390
  withSystemPrompt = await injectSystemPrompt(vctx, req.chatId, req.prompt.model ?? modelId);
304
391
  }
305
- else if (req.mode === "app") {
392
+ else if (req.mode === "app" || req.mode === "img") {
306
393
  withSystemPrompt = Result.Ok({
307
394
  model: req.prompt.model ?? modelId,
308
395
  messages: req.prompt.messages,
@@ -320,9 +407,10 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
320
407
  ...vctx.params.llm.enforced,
321
408
  model: withSystemPrompt.model,
322
409
  headers: vctx.params.llm.headers,
323
- logprobs: true,
410
+ logprobs: req.mode !== "img",
324
411
  stream: true,
325
- ...(isInitialTurn ? { verbosity: "low" } : {}),
412
+ ...(isInitialTurn && req.mode === "chat" ? { verbosity: "low" } : {}),
413
+ ...(req.mode === "img" ? { modalities: ["text", "image"] } : {}),
326
414
  };
327
415
  const res = await scope
328
416
  .evalResult(async () => {
@@ -339,8 +427,176 @@ async function handlerLlmRequest({ scope, ctx, vctx, blockSeq, req, resChat, pro
339
427
  .do();
340
428
  return { res, blockSeq };
341
429
  }
342
- async function handleEndMsg({ collectedMsgs, vctx, req, ctx, resChat, promptId, value, blockSeq, }) {
343
- const r = await handlePromptContext({ vctx, req, promptId, resChat, value, blockSeq, collectedMsgs });
430
+ async function handleProdiaImageRequest({ scope, ctx, vctx, req, promptId, blockSeq, }) {
431
+ const prodiaToken = vctx.prodiaToken;
432
+ if (!prodiaToken) {
433
+ return Result.Err("PRODIA_TOKEN not configured");
434
+ }
435
+ const userMessages = req.prompt.messages.filter((m) => m.role === "user");
436
+ const lastUserMsg = userMessages[userMessages.length - 1];
437
+ const promptText = lastUserMsg?.content?.[0]?.text ?? "";
438
+ if (!promptText) {
439
+ return Result.Err("No prompt text found in user messages");
440
+ }
441
+ const inputImageDataUrl = req.inputImageBase64;
442
+ await scope
443
+ .evalResult(async () => {
444
+ const r = await appendBlockEvent({
445
+ ctx,
446
+ vctx,
447
+ req,
448
+ promptId,
449
+ blockSeq,
450
+ evt: {
451
+ type: "prompt.req",
452
+ streamId: promptId,
453
+ chatId: req.chatId,
454
+ seq: blockSeq,
455
+ request: req.prompt,
456
+ timestamp: new Date(),
457
+ },
458
+ });
459
+ blockSeq++;
460
+ return r;
461
+ })
462
+ .do();
463
+ let prodiaRes;
464
+ if (inputImageDataUrl) {
465
+ const base64Data = inputImageDataUrl.split(",")[1];
466
+ const binaryString = atob(base64Data);
467
+ const bytes = new Uint8Array(binaryString.length);
468
+ for (let i = 0; i < binaryString.length; i++) {
469
+ bytes[i] = binaryString.charCodeAt(i);
470
+ }
471
+ const formData = new FormData();
472
+ formData.append("job", new Blob([JSON.stringify({ type: "inference.flux-2.klein.9b.img2img.v1", config: { prompt: promptText } })], {
473
+ type: "application/json",
474
+ }), "job.json");
475
+ formData.append("input", new Blob([bytes], { type: "image/jpeg" }), "input.jpg");
476
+ prodiaRes = await fetch("https://inference.prodia.com/v2/job", {
477
+ method: "POST",
478
+ headers: {
479
+ Authorization: `Bearer ${prodiaToken}`,
480
+ Accept: "image/png",
481
+ },
482
+ body: formData,
483
+ });
484
+ }
485
+ else {
486
+ prodiaRes = await fetch("https://inference.prodia.com/v2/job", {
487
+ method: "POST",
488
+ headers: {
489
+ Authorization: `Bearer ${prodiaToken}`,
490
+ Accept: "image/png",
491
+ "Content-Type": "application/json",
492
+ },
493
+ body: JSON.stringify({
494
+ type: "inference.flux-2.klein.9b.txt2img.v1",
495
+ config: { prompt: promptText },
496
+ }),
497
+ });
498
+ }
499
+ if (!prodiaRes.ok) {
500
+ const errorText = await prodiaRes.text().catch(() => "");
501
+ return Result.Err(`Prodia request failed: ${prodiaRes.status} ${prodiaRes.statusText} ${errorText}`);
502
+ }
503
+ if (!prodiaRes.body) {
504
+ return Result.Err("Prodia response has no body");
505
+ }
506
+ const [storageResult] = await vctx.storage.ensure(prodiaRes.body);
507
+ if (!storageResult?.isOk()) {
508
+ return Result.Err(`Failed to store Prodia image: ${storageResult?.Err()}`);
509
+ }
510
+ const assetUrl = `/assets/cid?url=${encodeURIComponent(storageResult.Ok().getURL)}&mime=${encodeURIComponent("image/png")}`;
511
+ console.log("[block.image] Prodia stored as asset:", assetUrl);
512
+ const blockId = vctx.sthis.nextId(12).str;
513
+ const now = new Date();
514
+ await appendBlockEvent({
515
+ ctx,
516
+ vctx,
517
+ req,
518
+ promptId,
519
+ blockSeq: blockSeq++,
520
+ evt: {
521
+ type: "block.begin",
522
+ blockId,
523
+ streamId: promptId,
524
+ seq: blockSeq,
525
+ blockNr: 0,
526
+ timestamp: now,
527
+ },
528
+ });
529
+ await appendBlockEvent({
530
+ ctx,
531
+ vctx,
532
+ req,
533
+ promptId,
534
+ blockSeq: blockSeq++,
535
+ evt: {
536
+ type: "block.image",
537
+ sectionId: vctx.sthis.nextId(12).str,
538
+ url: assetUrl,
539
+ blockId,
540
+ streamId: promptId,
541
+ seq: blockSeq,
542
+ blockNr: 1,
543
+ timestamp: now,
544
+ stats: { lines: 0, bytes: assetUrl.length, cnt: 1 },
545
+ },
546
+ });
547
+ const zeroStats = { lines: 0, bytes: 0 };
548
+ const imageStats = { lines: 0, bytes: assetUrl.length, cnt: 1 };
549
+ await appendBlockEvent({
550
+ ctx,
551
+ vctx,
552
+ req,
553
+ promptId,
554
+ blockSeq: blockSeq++,
555
+ evt: {
556
+ type: "block.end",
557
+ blockId,
558
+ streamId: promptId,
559
+ seq: blockSeq,
560
+ blockNr: 2,
561
+ timestamp: now,
562
+ stats: {
563
+ toplevel: zeroStats,
564
+ code: zeroStats,
565
+ image: imageStats,
566
+ total: imageStats,
567
+ },
568
+ usage: {
569
+ given: [],
570
+ calculated: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
571
+ },
572
+ },
573
+ emitMode: "emit-only",
574
+ });
575
+ const promptContextSql = {
576
+ type: "prompt.usage.sql",
577
+ usage: {
578
+ given: [],
579
+ calculated: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
580
+ },
581
+ };
582
+ await exception2Result(() => vctx.sql.db.insert(vctx.sql.tables.chatSections).values({
583
+ chatId: req.chatId,
584
+ promptId,
585
+ blockSeq: blockSeq++,
586
+ blocks: [promptContextSql],
587
+ created: now.toISOString(),
588
+ }));
589
+ for (const conn of vctx.connections) {
590
+ const chatCtx = conn.chatIds.get(req.chatId);
591
+ const promptIdCtx = chatCtx?.promptIds.get(promptId);
592
+ if (promptIdCtx && chatCtx) {
593
+ chatCtx.promptIds.delete(promptId);
594
+ }
595
+ }
596
+ return Result.Ok(blockSeq);
597
+ }
598
+ async function handleEndMsg({ collectedMsgs, vctx, req, ctx, resChat, promptId, value, blockSeq, fileSystem, }) {
599
+ const r = await handlePromptContext({ vctx, req, promptId, resChat, value, blockSeq, collectedMsgs, fileSystem });
344
600
  if (r.isErr()) {
345
601
  return Result.Err(r);
346
602
  }
@@ -528,6 +784,7 @@ export async function handleFSPrompt({ scope, vctx, resChat, req, ctx, promptId,
528
784
  timestamp: new Date(),
529
785
  lang: file.lang,
530
786
  blockNr,
787
+ stats: { lines: file.content.split("\n").length, bytes },
531
788
  },
532
789
  ];
533
790
  }),
@@ -555,6 +812,19 @@ export async function handleFSPrompt({ scope, vctx, resChat, req, ctx, promptId,
555
812
  timestamp: new Date(),
556
813
  };
557
814
  collectedMsgs.push(value);
815
+ for (const msg of collectedMsgs) {
816
+ if (!isBlockEnd(msg)) {
817
+ await appendBlockEvent({
818
+ ctx,
819
+ vctx,
820
+ req,
821
+ promptId,
822
+ blockSeq: blockSeq++,
823
+ evt: msg,
824
+ emitMode: "emit-only",
825
+ });
826
+ }
827
+ }
558
828
  return handleEndMsg({
559
829
  collectedMsgs,
560
830
  vctx,
@@ -564,6 +834,7 @@ export async function handleFSPrompt({ scope, vctx, resChat, req, ctx, promptId,
564
834
  promptId,
565
835
  value,
566
836
  blockSeq,
837
+ fileSystem,
567
838
  });
568
839
  })
569
840
  .do();
@@ -591,7 +862,19 @@ export const promptChatSection = {
591
862
  }
592
863
  const resChat = rResChat.Ok();
593
864
  let prompSectionAction;
594
- if (isReqPromptLLMChatSection(orig)) {
865
+ if (isReqPromptImageChatSection(orig) && vctx.prodiaToken) {
866
+ prompSectionAction = async (scope, blockSeq) => {
867
+ return handleProdiaImageRequest({
868
+ scope,
869
+ ctx,
870
+ vctx,
871
+ req: orig,
872
+ promptId,
873
+ blockSeq,
874
+ });
875
+ };
876
+ }
877
+ else if (isReqPromptLLMChatSection(orig)) {
595
878
  prompSectionAction = async (scope, blockSeq) => {
596
879
  const res = await handlerLlmRequest({
597
880
  ctx,
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-chat-section.js","sourceRoot":"","sources":["../../jsr/public/prompt-chat-section.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-chat-section.js","sourceRoot":"","sources":["../../jsr/public/prompt-chat-section.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import { EventoHandler, Result } from "@adviser/cement";
2
2
  import { MsgBase, ReqListRequestGrants, ResListRequestGrants, ReqRequestAccess, ResRequestAccess, ReqApproveRequest, ResApproveRequest, ReqRequestSetRole, ResRequestSetRole, ReqRevokeRequest, ResRevokeRequest, ReqHasAccessRequest, ResHasAccessRequest, VibesDiyError, W3CWebSocketEvent, ResRequestAccessError, ResFlowOwnerError, ClerkClaim } from "@vibes.diy/api-types";
3
3
  import { VibesApiSQLCtx } from "../types.js";
4
+ export declare function approveAllPendingRequests(vctx: VibesApiSQLCtx, ref: {
5
+ userId: string;
6
+ appSlug: string;
7
+ userSlug: string;
8
+ }): Promise<Result<number>>;
4
9
  export declare function hasAccessRequest(vctx: VibesApiSQLCtx, req: {
5
10
  foreignUserId: string;
6
11
  appSlug: string;