@vibes.diy/api-svc 14.3.78 → 14.3.80

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 (155) hide show
  1. package/create-handler.d.ts +0 -1
  2. package/create-handler.js +0 -2
  3. package/create-handler.js.map +1 -1
  4. package/evento-handler-manifest.js +6 -2
  5. package/evento-handler-manifest.js.map +1 -1
  6. package/index.d.ts +0 -1
  7. package/index.js +0 -1
  8. package/index.js.map +1 -1
  9. package/intern/account-vibe-activity.d.ts +36 -0
  10. package/intern/account-vibe-activity.js +284 -0
  11. package/intern/account-vibe-activity.js.map +1 -0
  12. package/intern/agent-account-tools.d.ts +21 -1
  13. package/intern/agent-account-tools.js +221 -35
  14. package/intern/agent-account-tools.js.map +1 -1
  15. package/intern/agent-assembly.d.ts +1 -0
  16. package/intern/agent-assembly.js +24 -2
  17. package/intern/agent-assembly.js.map +1 -1
  18. package/intern/agent-belt.js +3 -1
  19. package/intern/agent-belt.js.map +1 -1
  20. package/intern/agent-discussions.d.ts +22 -0
  21. package/intern/agent-discussions.js +131 -0
  22. package/intern/agent-discussions.js.map +1 -0
  23. package/intern/agent-evidence.d.ts +1 -0
  24. package/intern/agent-evidence.js +2 -1
  25. package/intern/agent-evidence.js.map +1 -1
  26. package/intern/agent-file-tools.d.ts +12 -2
  27. package/intern/agent-file-tools.js.map +1 -1
  28. package/intern/agent-options-tool.d.ts +5 -0
  29. package/intern/agent-options-tool.js +77 -6
  30. package/intern/agent-options-tool.js.map +1 -1
  31. package/intern/agent-read-tools.d.ts +1 -0
  32. package/intern/agent-read-tools.js +1 -1
  33. package/intern/agent-read-tools.js.map +1 -1
  34. package/intern/agent-request-frame.d.ts +23 -2
  35. package/intern/agent-request-frame.js +74 -16
  36. package/intern/agent-request-frame.js.map +1 -1
  37. package/intern/agent-session-instruction.d.ts +2 -2
  38. package/intern/agent-session-instruction.js +14 -21
  39. package/intern/agent-session-instruction.js.map +1 -1
  40. package/intern/agent-session.d.ts +5 -0
  41. package/intern/agent-session.js +10 -2
  42. package/intern/agent-session.js.map +1 -1
  43. package/intern/agent-settled-history.d.ts +22 -0
  44. package/intern/agent-settled-history.js +293 -0
  45. package/intern/agent-settled-history.js.map +1 -0
  46. package/intern/agent-top-level-instruction.d.ts +2 -2
  47. package/intern/agent-top-level-instruction.js +7 -4
  48. package/intern/agent-top-level-instruction.js.map +1 -1
  49. package/intern/agent-wake.d.ts +2 -0
  50. package/intern/agent-wake.js +2 -1
  51. package/intern/agent-wake.js.map +1 -1
  52. package/intern/agent-with-vibe.d.ts +24 -1
  53. package/intern/agent-with-vibe.js +97 -30
  54. package/intern/agent-with-vibe.js.map +1 -1
  55. package/intern/builder-settled-history.d.ts +12 -0
  56. package/intern/builder-settled-history.js +71 -0
  57. package/intern/builder-settled-history.js.map +1 -0
  58. package/intern/byok-model-scope.d.ts +7 -0
  59. package/intern/byok-model-scope.js +11 -0
  60. package/intern/byok-model-scope.js.map +1 -0
  61. package/intern/caller-model.d.ts +19 -0
  62. package/intern/caller-model.js +30 -0
  63. package/intern/caller-model.js.map +1 -0
  64. package/intern/design-repair.d.ts +3 -0
  65. package/intern/design-repair.js +41 -1
  66. package/intern/design-repair.js.map +1 -1
  67. package/intern/ensure-chat-id.js +40 -2
  68. package/intern/ensure-chat-id.js.map +1 -1
  69. package/intern/first-build-no-app.d.ts +15 -0
  70. package/intern/first-build-no-app.js +124 -0
  71. package/intern/first-build-no-app.js.map +1 -0
  72. package/intern/get-vibe-route-hints.d.ts +2 -2
  73. package/intern/get-vibe-route-hints.js +9 -5
  74. package/intern/get-vibe-route-hints.js.map +1 -1
  75. package/intern/import-synth.js +1 -0
  76. package/intern/import-synth.js.map +1 -1
  77. package/intern/llm-tool-loop.d.ts +5 -1
  78. package/intern/llm-tool-loop.js +11 -6
  79. package/intern/llm-tool-loop.js.map +1 -1
  80. package/intern/look-lint-engine.js +25 -1
  81. package/intern/look-lint-engine.js.map +1 -1
  82. package/intern/mint-fire-core.js +7 -0
  83. package/intern/mint-fire-core.js.map +1 -1
  84. package/intern/opens-check.js +3 -0
  85. package/intern/opens-check.js.map +1 -1
  86. package/intern/prompt-assembly.d.ts +6 -0
  87. package/intern/prompt-assembly.js +65 -13
  88. package/intern/prompt-assembly.js.map +1 -1
  89. package/package.json +14 -13
  90. package/public/agent-turn-action.js +115 -66
  91. package/public/agent-turn-action.js.map +1 -1
  92. package/public/agent-turn-assembly.d.ts +5 -0
  93. package/public/agent-turn-assembly.js +21 -6
  94. package/public/agent-turn-assembly.js.map +1 -1
  95. package/public/app-documents-write-eventos.js +12 -2
  96. package/public/app-documents-write-eventos.js.map +1 -1
  97. package/public/codegen-turn-route.d.ts +1 -0
  98. package/public/codegen-turn-route.js +2 -1
  99. package/public/codegen-turn-route.js.map +1 -1
  100. package/public/fork-app.js +4 -1
  101. package/public/fork-app.js.map +1 -1
  102. package/public/fs-prompt.d.ts +2 -1
  103. package/public/fs-prompt.js +4 -2
  104. package/public/fs-prompt.js.map +1 -1
  105. package/public/handler-llm-request.d.ts +3 -1
  106. package/public/handler-llm-request.js +14 -2
  107. package/public/handler-llm-request.js.map +1 -1
  108. package/public/home-feed-common.js +1 -1
  109. package/public/home-feed-common.js.map +1 -1
  110. package/public/list-agent-discussions.d.ts +3 -0
  111. package/public/list-agent-discussions.js +45 -0
  112. package/public/list-agent-discussions.js.map +1 -0
  113. package/public/list-app-models.d.ts +20 -0
  114. package/public/list-app-models.js +159 -0
  115. package/public/list-app-models.js.map +1 -0
  116. package/public/list-vibe-activity.d.ts +3 -0
  117. package/public/list-vibe-activity.js +58 -0
  118. package/public/list-vibe-activity.js.map +1 -0
  119. package/public/llm-dispatch-fallback.d.ts +1 -0
  120. package/public/llm-dispatch-fallback.js +4 -0
  121. package/public/llm-dispatch-fallback.js.map +1 -1
  122. package/public/open-chat.js +2 -1
  123. package/public/open-chat.js.map +1 -1
  124. package/public/prompt-chat-section.js +21 -1
  125. package/public/prompt-chat-section.js.map +1 -1
  126. package/public/prompt-section-actions.d.ts +2 -0
  127. package/public/prompt-section-actions.js +5 -2
  128. package/public/prompt-section-actions.js.map +1 -1
  129. package/public/prompt-turn-settled.js +1 -0
  130. package/public/prompt-turn-settled.js.map +1 -1
  131. package/public/prompt-turn-types.d.ts +1 -0
  132. package/public/related-vibes.js +3 -3
  133. package/public/related-vibes.js.map +1 -1
  134. package/public/request-flow.js +7 -1
  135. package/public/request-flow.js.map +1 -1
  136. package/public/resolve-active-handle.d.ts +1 -0
  137. package/public/resolve-active-handle.js +36 -1
  138. package/public/resolve-active-handle.js.map +1 -1
  139. package/public/stream-assembly.js +2 -0
  140. package/public/stream-assembly.js.map +1 -1
  141. package/shard-gate.js +15 -2
  142. package/shard-gate.js.map +1 -1
  143. package/types.d.ts +0 -1
  144. package/types.js.map +1 -1
  145. package/usage-report/first-build-no-app-alarm-util.d.ts +24 -0
  146. package/usage-report/first-build-no-app-alarm-util.js +70 -0
  147. package/usage-report/first-build-no-app-alarm-util.js.map +1 -0
  148. package/usage-report/first-build-no-app-alarm.d.ts +2 -0
  149. package/usage-report/first-build-no-app-alarm.js +180 -0
  150. package/usage-report/first-build-no-app-alarm.js.map +1 -0
  151. package/usage-report/warm-vibe-cache.js +1 -1
  152. package/usage-report/warm-vibe-cache.js.map +1 -1
  153. package/public/similar-vibes.d.ts +0 -11
  154. package/public/similar-vibes.js +0 -86
  155. package/public/similar-vibes.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { exception2Result } from "@adviser/cement";
1
+ import { Result, exception2Result } from "@adviser/cement";
2
2
  import { type } from "arktype";
3
3
  import { MAX_TOOL_RESULT_CHARS } from "./llm-tool-loop.js";
4
4
  import { LIST_FILES_TOOL_NAME, READ_FILE_TOOL_NAME, READ_FILES_TOOL_NAME, WORK_READ_FILES_MAX_PATHS } from "./work-tools.js";
@@ -7,6 +7,8 @@ import { GET_DOC_TOOL_NAME, LIST_DATABASES_TOOL_NAME, QUERY_DOCS_TOOL_NAME, READ
7
7
  export const WITH_VIBE_TOOL_NAME = "with_vibe";
8
8
  export const WITH_VIBE_MAX_CALLS = 8;
9
9
  export const WITH_VIBE_RESULT_MAX_CHARS = MAX_TOOL_RESULT_CHARS;
10
+ export const WITH_VIBE_EDIT_TOOL_NAMES = ["edit_file", "write_file", "validate", "commit_version"];
11
+ export const WITH_VIBE_COMMIT_TOOL_NAME = "commit_version";
10
12
  export const WITH_VIBE_INNER_TOOLS = [
11
13
  LIST_FILES_TOOL_NAME,
12
14
  READ_FILE_TOOL_NAME,
@@ -19,6 +21,7 @@ export const WITH_VIBE_INNER_TOOLS = [
19
21
  LIST_DATABASES_TOOL_NAME,
20
22
  QUERY_DOCS_TOOL_NAME,
21
23
  GET_DOC_TOOL_NAME,
24
+ ...WITH_VIBE_EDIT_TOOL_NAMES,
22
25
  ];
23
26
  export const WITH_VIBE_FILE_TOOLS = new Set([LIST_FILES_TOOL_NAME, READ_FILE_TOOL_NAME, READ_FILES_TOOL_NAME]);
24
27
  export const WITH_VIBE_INNER_INPUTS = {
@@ -44,6 +47,10 @@ export const WITH_VIBE_INNER_INPUTS = {
44
47
  "prefix?": "unknown",
45
48
  }).onUndeclaredKey("reject"),
46
49
  [GET_DOC_TOOL_NAME]: type({ dbName: "string", docId: "string" }).onUndeclaredKey("reject"),
50
+ edit_file: type({ path: "string", old_string: "string", new_string: "string" }).onUndeclaredKey("reject"),
51
+ write_file: type({ path: "string", contents: "string" }).onUndeclaredKey("reject"),
52
+ validate: type({}).onUndeclaredKey("reject"),
53
+ commit_version: type({}).onUndeclaredKey("reject"),
47
54
  };
48
55
  function isInnerTool(name) {
49
56
  return WITH_VIBE_INNER_TOOLS.some((t) => t === name);
@@ -64,16 +71,27 @@ const INNER_TOOL_LINES = {
64
71
  [LIST_DATABASES_TOOL_NAME]: "the record collections it has written to",
65
72
  [QUERY_DOCS_TOOL_NAME]: "a page of records ({ dbName, limit?, after?, field?, key?, prefix? })",
66
73
  [GET_DOC_TOOL_NAME]: "one record by id ({ dbName, docId })",
74
+ edit_file: "stage one exact replacement in a file you read ({ path, old_string, new_string }); old_string occurs once",
75
+ write_file: "stage a whole new or replaced file ({ path, contents })",
76
+ validate: "check the staged files without saving; its errors name what to fix",
77
+ commit_version: "save the staged files as a new version — the last call, at most once",
67
78
  };
79
+ export function isWithVibeEditTool(name) {
80
+ return WITH_VIBE_EDIT_TOOL_NAMES.some((t) => t === name);
81
+ }
68
82
  export function withVibeToolDefinition() {
69
83
  return {
70
84
  type: "function",
71
85
  function: {
72
86
  name: WITH_VIBE_TOOL_NAME,
73
- description: "Look inside one of the person's vibes, named by its ownerHandle and appSlug from list_vibes: run up to " +
74
- `${WITH_VIBE_MAX_CALLS} read tools against that vibe and get one result per call, in order. It only reads — ` +
75
- "to change a vibe, use edit_vibe_at. Nothing carries over between with_vibe calls, so call it again to read " +
76
- "further: list the files first, then read the ones you need. The whole answer fits about " +
87
+ description: "Work inside one of the person's vibes, named by its ownerHandle and appSlug from list_vibes: run up to " +
88
+ `${WITH_VIBE_MAX_CALLS} of its tools against that vibe and get one result per call, in order. ` +
89
+ "Nothing carries over between with_vibe calls, so call it again to read further: list the files first, then " +
90
+ "read the ones you need. A small, precise change can be made right here in ONE call: read the file, " +
91
+ "edit_file or write_file, validate, then commit_version last. Those calls stop at the first one that fails " +
92
+ "and save nothing unless commit_version saves, so a failed validate means: call with_vibe again with the fix. " +
93
+ "Edits without commit_version are discarded when the call ends. The edit runs only while no build is " +
94
+ "running on that vibe. A larger or open-ended change goes through edit_vibe_at. The whole answer fits about " +
77
95
  `${Math.floor(WITH_VIBE_RESULT_MAX_CHARS / 1024)} KB, shared between its calls; a result cut to fit says so, ` +
78
96
  "and the same call on its own reads it whole. When a result names a nextCall, put that call in calls. " +
79
97
  "The tools:\n" +
@@ -87,7 +105,7 @@ export function withVibeToolDefinition() {
87
105
  type: "array",
88
106
  minItems: 1,
89
107
  maxItems: WITH_VIBE_MAX_CALLS,
90
- description: "The reads to run against this vibe, in order.",
108
+ description: "The calls to run against this vibe, in order.",
91
109
  items: {
92
110
  type: "object",
93
111
  properties: {
@@ -105,38 +123,85 @@ export function withVibeToolDefinition() {
105
123
  },
106
124
  };
107
125
  }
126
+ const NOT_RUN_MESSAGE = "Not run: an earlier call in this with_vibe failed, so the batch stopped there and saved nothing.";
108
127
  export async function runWithVibeCalls(args) {
109
128
  const entries = [];
129
+ let stopped = false;
110
130
  for (const [index, call] of args.calls.entries()) {
111
- if (isInnerTool(call.tool) === false) {
112
- entries.push({
113
- tool: call.tool,
114
- ok: false,
115
- reason: "not-allowed",
116
- message: `with_vibe runs only these read tools: ${WITH_VIBE_INNER_TOOLS.join(", ")}. To change a vibe, use edit_vibe_at.`,
117
- });
118
- continue;
119
- }
120
- const tool = call.tool;
121
- const input = call.input ?? {};
122
- const problem = innerInputProblem(tool, input);
123
- if (problem !== undefined) {
124
- entries.push({ tool, ok: false, reason: "invalid-input", message: problem });
125
- continue;
126
- }
127
- const r = await args.executor({
128
- call: { id: `${args.callId}-${index}`, name: tool, arguments: JSON.stringify(input) },
129
- signal: args.signal,
130
- ...(args.attachImage === undefined ? {} : { attachImage: args.attachImage }),
131
- });
132
- if (r.isErr()) {
133
- entries.push({ tool, ok: false, reason: "failed", message: r.Err().message });
131
+ if (stopped) {
132
+ entries.push({ tool: call.tool, ok: false, reason: "not-run", message: NOT_RUN_MESSAGE });
134
133
  continue;
135
134
  }
136
- entries.push({ tool, result: parseToolText(r.Ok()) });
135
+ const entry = await runOneCall(args, index, call);
136
+ entries.push(entry);
137
+ if (args.stopOnFailure === true && entryFailed(entry))
138
+ stopped = true;
137
139
  }
138
140
  return entries;
139
141
  }
142
+ async function runOneCall(args, index, call) {
143
+ if (isInnerTool(call.tool) === false) {
144
+ return {
145
+ tool: call.tool,
146
+ ok: false,
147
+ reason: "not-allowed",
148
+ message: `with_vibe runs only these tools: ${WITH_VIBE_INNER_TOOLS.join(", ")}. For any other change, use edit_vibe_at.`,
149
+ };
150
+ }
151
+ const tool = call.tool;
152
+ const input = call.input ?? {};
153
+ const problem = innerInputProblem(tool, input);
154
+ if (problem !== undefined)
155
+ return { tool, ok: false, reason: "invalid-input", message: problem };
156
+ const r = await exception2Result(() => args.executor({
157
+ call: { id: `${args.callId}-${index}`, name: tool, arguments: JSON.stringify(input) },
158
+ signal: args.signal,
159
+ ...(args.attachImage === undefined ? {} : { attachImage: args.attachImage }),
160
+ }));
161
+ if (r.isErr()) {
162
+ args.onThrown?.(tool, `${args.callId}-${index}`, r.Err());
163
+ return { tool, ok: false, reason: "failed", message: r.Err().message };
164
+ }
165
+ return { tool, result: parseToolText(r.Ok()) };
166
+ }
167
+ function entryFailed(entry) {
168
+ if ("result" in entry === false)
169
+ return true;
170
+ const result = entry.result;
171
+ return typeof result === "object" && result !== null && result.ok === false;
172
+ }
173
+ export function withVibeEntrySaved(entry) {
174
+ if (entry.tool !== WITH_VIBE_COMMIT_TOOL_NAME || "result" in entry === false)
175
+ return false;
176
+ const result = entry.result;
177
+ return typeof result === "object" && result !== null && result.saved === true;
178
+ }
179
+ export function createWithVibeFileSession(commit) {
180
+ let draft = [];
181
+ return {
182
+ session: {
183
+ snapshot: () => ({ draft }),
184
+ stage: async (change) => {
185
+ draft = [...draft.filter((file) => file.path !== change.path), change];
186
+ return Result.Ok(undefined);
187
+ },
188
+ },
189
+ queueCommit: async () => {
190
+ if (draft.length === 0) {
191
+ return Result.Ok({
192
+ ok: false,
193
+ saved: false,
194
+ reason: "nothing-to-commit",
195
+ message: "Nothing is staged in this with_vibe call, so there is no change to save. Edit a file first.",
196
+ });
197
+ }
198
+ const r = await commit({ changes: [...draft] });
199
+ if (r.isOk())
200
+ draft = [];
201
+ return r;
202
+ },
203
+ };
204
+ }
140
205
  function parseToolText(text) {
141
206
  const parsed = exception2Result(() => JSON.parse(text));
142
207
  return parsed.isOk() ? parsed.Ok() : text;
@@ -170,5 +235,7 @@ export function fitWithVibeAnswer(envelope, entries, maxChars = WITH_VIBE_RESULT
170
235
  const fitted = entries.map((entry, index) => (sizes[index] <= budgets[index] ? entry : truncatedEntry(entry, budgets[index])));
171
236
  return JSON.stringify({ ...envelope, results: fitted });
172
237
  }
238
+ export const WITH_VIBE_COMMIT_NOTE_PREFIX = "Edited from /agent:";
239
+ export const WITH_VIBE_UNSAVED_NOTE = "Nothing was saved: staged edits last only for this with_vibe call and become a version only when commit_version saves.";
173
240
  export const WITH_VIBE_BUILD_NOTE = "A build is running on this vibe; its files may change when it lands.";
174
241
  //# sourceMappingURL=agent-with-vibe.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-with-vibe.js","sourceRoot":"","sources":["../../jsr/intern/agent-with-vibe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,qBAAqB,EAA2C,MAAM,oBAAoB,CAAC;AACpG,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC7H,OAAO,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACpH,OAAO,EACL,iBAAiB,EACjB,wBAAwB,EACxB,oBAAoB,EACpB,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,wBAAwB,CAAC;AAehC,MAAM,CAAC,MAAM,mBAAmB,GAAG,WAAW,CAAC;AAG/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAOrC,MAAM,CAAC,MAAM,0BAA0B,GAAG,qBAAqB,CAAC;AA0BhE,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,oBAAoB;IACpB,mBAAmB;IACnB,oBAAoB;IACpB,uBAAuB;IACvB,uBAAuB;IACvB,yBAAyB;IACzB,uBAAuB;IACvB,4BAA4B;IAC5B,wBAAwB;IACxB,oBAAoB;IACpB,iBAAiB;CACT,CAAC;AAKX,MAAM,CAAC,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC,CAAC,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,CAAC,CAAC,CAAC;AASpI,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC1D,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC9F,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC7E,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC7D,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC7D,CAAC,yBAAyB,CAAC,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,qBAAqB,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAClG,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC;QAC9B,QAAQ,EAAE,qCAAqC;QAC/C,eAAe,EAAE,QAAQ;QACzB,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC5B,CAAC,4BAA4B,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAClE,CAAC,wBAAwB,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC9D,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC;QAC3B,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ;QAClB,QAAQ,EAAE,QAAQ;QAClB,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,SAAS;KACrB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;IAC5B,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC;CAC9C,CAAC;AAE/C,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;AACvD,CAAC;AAGD,SAAS,iBAAiB,CAAC,IAAuB,EAAE,KAAc;IAChE,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;IACpD,OAAO,OAAO,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC;AAGD,MAAM,gBAAgB,GAAgD;IACpE,CAAC,oBAAoB,CAAC,EAAE,kDAAkD;IAC1E,CAAC,mBAAmB,CAAC,EAAE,0CAA0C;IACjE,CAAC,oBAAoB,CAAC,EAAE,yCAAyC,yBAAyB,GAAG;IAC7F,CAAC,uBAAuB,CAAC,EAAE,4DAA4D;IACvF,CAAC,uBAAuB,CAAC,EAAE,4BAA4B;IACvD,CAAC,yBAAyB,CAAC,EAAE,oDAAoD;IACjF,CAAC,uBAAuB,CAAC,EAAE,mEAAmE;IAC9F,CAAC,4BAA4B,CAAC,EAAE,+DAA+D;IAC/F,CAAC,wBAAwB,CAAC,EAAE,0CAA0C;IACtE,CAAC,oBAAoB,CAAC,EAAE,uEAAuE;IAC/F,CAAC,iBAAiB,CAAC,EAAE,sCAAsC;CAC5D,CAAC;AAGF,MAAM,UAAU,sBAAsB;IACpC,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,mBAAmB;YACzB,WAAW,EACT,yGAAyG;gBACzG,GAAG,mBAAmB,uFAAuF;gBAC7G,6GAA6G;gBAC7G,0FAA0F;gBAC1F,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,GAAG,IAAI,CAAC,8DAA8D;gBAC9G,uGAAuG;gBACvG,cAAc;gBACd,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/E,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uDAAuD,EAAE;oBACrG,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wDAAwD,EAAE;oBAClG,KAAK,EAAE;wBACL,IAAI,EAAE,OAAO;wBACb,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE,mBAAmB;wBAC7B,WAAW,EAAE,+CAA+C;wBAC5D,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE;gCACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,qBAAqB,CAAC,EAAE;gCAC1D,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yDAAyD,EAAE;6BAClG;4BACD,QAAQ,EAAE,CAAC,MAAM,CAAC;4BAClB,oBAAoB,EAAE,KAAK;yBAC5B;qBACF;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC;gBAC7C,oBAAoB,EAAE,KAAK;aAC5B;SACF;KACF,CAAC;AACJ,CAAC;AA0BD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B;IAC/D,MAAM,OAAO,GAAoB,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACjD,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE,yCAAyC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC;aAC1H,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAsB,IAAI,CAAC,IAAI,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAC7E,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC;YAC5B,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YACrF,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;SAC7E,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9E,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IAEjC,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC,CAAC;IACnE,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC5C,CAAC;AAED,MAAM,iBAAiB,GAAG,6FAA6F,CAAC;AAYxH,SAAS,cAAc,CAAC,KAAoB,EAAE,MAAc;IAC1D,MAAM,IAAI,GAAG,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACtF,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,IAAa,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IAC9H,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;IAC7D,SAAS,CAAC;QACR,MAAM,SAAS,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;QAC9C,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QAEnD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAWD,MAAM,UAAU,iBAAiB,CAC/B,QAA2C,EAC3C,OAAiC,EACjC,QAAQ,GAAW,0BAA0B;IAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAChE,IAAI,KAAK,CAAC,MAAM,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAE3D,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjH,MAAM,OAAO,GAAG,IAAI,KAAK,CAAS,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5F,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QAC9D,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/H,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC1D,CAAC;AAGD,MAAM,CAAC,MAAM,oBAAoB,GAAG,sEAAsE,CAAC"}
1
+ {"version":3,"file":"agent-with-vibe.js","sourceRoot":"","sources":["../../jsr/intern/agent-with-vibe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { ChatMessage, LLMMessage } from "@vibes.diy/call-ai-v2";
2
+ import type { AgentSessionSnapshot } from "./agent-session.js";
3
+ export declare const BUILDER_SETTLED_HISTORY_OPEN = "<settled-history>";
4
+ export declare function renderBuilderSettledBand(band: readonly LLMMessage[]): string;
5
+ export interface BuilderSettledHistory {
6
+ readonly band: ChatMessage;
7
+ readonly liveFrom: number;
8
+ }
9
+ export declare function builderSettledHistory(snapshot: AgentSessionSnapshot | undefined, history: {
10
+ readonly messages: readonly ChatMessage[];
11
+ readonly personAt: readonly number[];
12
+ }): BuilderSettledHistory | undefined;
@@ -0,0 +1,71 @@
1
+ import { settledBandLength, settlePersonPart } from "./agent-settled-history.js";
2
+ export const BUILDER_SETTLED_HISTORY_OPEN = "<settled-history>";
3
+ const BUILDER_SETTLED_HISTORY_CLOSE = "</settled-history>";
4
+ const BUILDER_SETTLED_HISTORY_HEADER = "The earlier turns of this conversation, settled: each keeps the person's words exactly, then the agent's final reply with one line per tool call it made and per version it saved. The turns after this block are as they happened. The app as it is now is in the file blocks below; build from those.";
5
+ function partsOf(message) {
6
+ if (typeof message.content === "string")
7
+ return [{ type: "text", text: message.content }];
8
+ return Array.isArray(message.content) ? message.content : [];
9
+ }
10
+ function settledText(message) {
11
+ return partsOf(message)
12
+ .map((part) => (part.type === "text" ? part.text : ""))
13
+ .join("\n");
14
+ }
15
+ function wordsKey(parts) {
16
+ return parts
17
+ .map(settlePersonPart)
18
+ .map((part) => (part.type === "text" ? part.text : ""))
19
+ .join("\u0000");
20
+ }
21
+ export function renderBuilderSettledBand(band) {
22
+ const records = band.slice(1).map((message) => {
23
+ const tag = message.role === "user" ? "person" : "agent";
24
+ return `<${tag}>\n${settledText(message)}\n</${tag}>`;
25
+ });
26
+ return [BUILDER_SETTLED_HISTORY_OPEN, BUILDER_SETTLED_HISTORY_HEADER, ...records, BUILDER_SETTLED_HISTORY_CLOSE].join("\n\n");
27
+ }
28
+ export function builderSettledHistory(snapshot, history) {
29
+ if (snapshot === undefined)
30
+ return undefined;
31
+ const length = settledBandLength(snapshot.messages, snapshot.settledMessages === undefined
32
+ ? undefined
33
+ : { through: snapshot.settledThrough ?? 0, messages: snapshot.settledMessages });
34
+ if (length === 0)
35
+ return undefined;
36
+ const band = snapshot.messages.slice(0, length);
37
+ const people = band.slice(1).filter((message) => message.role === "user");
38
+ if (people.length === 0)
39
+ return undefined;
40
+ let at = -1;
41
+ const matched = [];
42
+ for (const person of people) {
43
+ const key = wordsKey(partsOf(person));
44
+ let found = -1;
45
+ for (let i = at + 1; i < history.messages.length; i++) {
46
+ const message = history.messages[i];
47
+ if (message?.role === "user" && wordsKey(message.content) === key) {
48
+ found = i;
49
+ break;
50
+ }
51
+ }
52
+ if (found === -1)
53
+ return undefined;
54
+ matched.push(found);
55
+ at = found;
56
+ }
57
+ const first = matched[0] ?? at;
58
+ if (history.personAt.some((index) => index > first && index < at && matched.includes(index) === false))
59
+ return undefined;
60
+ const liveFrom = history.personAt.find((index) => index > at);
61
+ if (liveFrom === undefined)
62
+ return undefined;
63
+ return {
64
+ band: {
65
+ role: "user",
66
+ content: [{ type: "text", text: renderBuilderSettledBand(band), cache_control: { type: "ephemeral" } }],
67
+ },
68
+ liveFrom,
69
+ };
70
+ }
71
+ //# sourceMappingURL=builder-settled-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder-settled-history.js","sourceRoot":"","sources":["../../jsr/intern/builder-settled-history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const IMG_LAST_RESORT_MODEL = "google/gemini-2.5-flash-image";
2
+ export interface StoredKeyScopeArgs {
3
+ readonly mode: "codegen" | "runtime" | "img";
4
+ readonly callerModel: string | undefined;
5
+ readonly configuredModel: string;
6
+ }
7
+ export declare function storedKeyCoversModel(args: StoredKeyScopeArgs): boolean;
@@ -0,0 +1,11 @@
1
+ export const IMG_LAST_RESORT_MODEL = "google/gemini-2.5-flash-image";
2
+ export function storedKeyCoversModel(args) {
3
+ switch (args.mode) {
4
+ case "codegen":
5
+ return true;
6
+ case "runtime":
7
+ case "img":
8
+ return args.callerModel === undefined || args.callerModel === args.configuredModel;
9
+ }
10
+ }
11
+ //# sourceMappingURL=byok-model-scope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"byok-model-scope.js","sourceRoot":"","sources":["../../jsr/intern/byok-model-scope.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,MAAM,qBAAqB,GAAG,+BAA+B,CAAC;AAyBrE,MAAM,UAAU,oBAAoB,CAAC,IAAwB;IAC3D,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,IAAI,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,KAAK;YACR,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,eAAe,CAAC;IACvF,CAAC;AACH,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { Result } from "@adviser/cement";
2
+ import type { VibesApiSQLCtx } from "../types.js";
3
+ interface PromptWithModel {
4
+ model?: string;
5
+ }
6
+ export declare function normalizeCallerModel(prompts: readonly (PromptWithModel | undefined)[]): string | undefined;
7
+ export interface AdmitCallerModelArgs {
8
+ readonly mode: "runtime" | "img";
9
+ readonly model: string;
10
+ readonly ownerHandle: string;
11
+ readonly appSlug: string;
12
+ readonly callerUserId: string | undefined;
13
+ }
14
+ export declare function callerModelRefusal(args: {
15
+ readonly mode: "runtime" | "img";
16
+ readonly model: string;
17
+ }): string;
18
+ export declare function admitCallerModel(vctx: VibesApiSQLCtx, args: AdmitCallerModelArgs): Promise<Result<void>>;
19
+ export {};
@@ -0,0 +1,30 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { appModelOptions } from "../public/list-app-models.js";
3
+ export function normalizeCallerModel(prompts) {
4
+ for (const prompt of prompts) {
5
+ if (prompt !== undefined && prompt.model === "")
6
+ delete prompt.model;
7
+ }
8
+ return prompts.find((p) => p?.model !== undefined)?.model;
9
+ }
10
+ const KIND_OF = { runtime: "text", img: "image" };
11
+ export function callerModelRefusal(args) {
12
+ const surface = args.mode === "runtime" ? "callAI" : "ImgGen";
13
+ return `${surface} can use the models listModels({ kind: "${KIND_OF[args.mode]}" }) returns for this app; ${args.model} is not one of them`;
14
+ }
15
+ export async function admitCallerModel(vctx, args) {
16
+ if (args.model.includes(":") || args.model === "openrouter/auto") {
17
+ return Result.Err(callerModelRefusal(args));
18
+ }
19
+ const rOptions = await appModelOptions(vctx, {
20
+ ownerHandle: args.ownerHandle,
21
+ appSlug: args.appSlug,
22
+ callerUserId: args.callerUserId,
23
+ });
24
+ if (rOptions.isErr())
25
+ return Result.Err(rOptions);
26
+ const kind = KIND_OF[args.mode];
27
+ const listed = rOptions.Ok().some((m) => m.kind === kind && m.id === args.model);
28
+ return listed ? Result.Ok(undefined) : Result.Err(callerModelRefusal(args));
29
+ }
30
+ //# sourceMappingURL=caller-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caller-model.js","sourceRoot":"","sources":["../../jsr/intern/caller-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAiB/D,MAAM,UAAU,oBAAoB,CAAC,OAAiD;IACpF,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IACvE,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,SAAS,CAAC,EAAE,KAAK,CAAC;AAC5D,CAAC;AAGD,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAW,CAAC;AAY3D,MAAM,UAAU,kBAAkB,CAAC,IAAkE;IACnG,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9D,OAAO,GAAG,OAAO,2CAA2C,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,IAAI,CAAC,KAAK,qBAAqB,CAAC;AAC9I,CAAC;AASD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAoB,EAAE,IAA0B;IACrF,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,iBAAiB,EAAE,CAAC;QACjE,OAAO,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE;QAC3C,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;IACjF,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9E,CAAC"}
@@ -46,6 +46,9 @@ export interface DesignRepairResult {
46
46
  }
47
47
  export declare function __setDesignRepairModelCallForTests(call: RepairModelCall | undefined): void;
48
48
  export declare function __setDesignRepairPersistHookForTests(hook: (() => Promise<void>) | undefined): void;
49
+ export declare const POUF_NATIVE_PASSTHROUGH: ReadonlySet<string>;
50
+ export declare function ariaGuidance(findings: readonly LookLintFileFinding[]): string[];
51
+ export declare function namedComponentLines(findings: readonly LookLintFileFinding[]): string[];
49
52
  export declare function loadDesignRepairInputs(vctx: VibesApiSQLCtx, args: {
50
53
  readonly fsId: string;
51
54
  readonly snap: SnapPalette;
@@ -3,6 +3,7 @@ import { and, desc, eq, isNotNull } from "drizzle-orm";
3
3
  import { DERIVED_MANIFEST_PREFIX, fileSystemItem, isFetchErrResult, isFetchNotFoundResult, isResError, parseArray, } from "@vibes.diy/api-types";
4
4
  import { FileSystemRef } from "@vibes.diy/call-ai-v2";
5
5
  import { snapPaletteFor } from "@vibes.diy/pouf/lint";
6
+ import { POUF_CATALOG, POUF_CATALOG_MD } from "@vibes.diy/prompts/themes/looks/pouf/catalog.generated.js";
6
7
  import { type } from "arktype";
7
8
  import { captureCodegenDesignRepairSettled } from "../analytics.js";
8
9
  import { autoPublishOnPersist } from "../public/auto-publish-on-persist.js";
@@ -46,9 +47,48 @@ const FILES_INTRO = "These files are the app as it was just saved. A design chec
46
47
  function findingLine(f) {
47
48
  return `${f.file.replace(/^\/+/, "")}:${f.line} [${f.ruleId}] ${f.message}`;
48
49
  }
50
+ function namedComponents(findings) {
51
+ return new Set(findings.flatMap((f) => /^Use (\w+) from /.exec(f.message)?.[1] ?? []));
52
+ }
53
+ export const POUF_NATIVE_PASSTHROUGH = new Set(["Button", "IconButton", "Input", "Textarea"]);
54
+ export function ariaGuidance(findings) {
55
+ return [...namedComponents(findings)].map((name) => {
56
+ if (POUF_NATIVE_PASSTHROUGH.has(name))
57
+ return `\`${name}\` passes \`aria-*\` through to its element, so keep them as written.`;
58
+ const props = new Set(POUF_CATALOG.find((c) => c.name === name)?.props.map((p) => p.name) ?? []);
59
+ const nameProp = ["label", "title"].find((p) => props.has(p));
60
+ const moves = [
61
+ ...(nameProp === undefined ? [] : [`put \`aria-label\`'s text in its \`${nameProp}\` prop`]),
62
+ ...(props.has("describedBy") ? ["`aria-describedby`'s id in its `describedBy` prop"] : []),
63
+ ];
64
+ return moves.length === 0
65
+ ? `\`${name}\` drops \`aria-*\`; its visible text names it.`
66
+ : `\`${name}\` drops \`aria-*\`: ${moves.join(" and ")}.`;
67
+ });
68
+ }
69
+ export function namedComponentLines(findings) {
70
+ const named = namedComponents(findings);
71
+ return POUF_CATALOG_MD.split("\n").filter((line) => {
72
+ const name = /^- `(\w+)` \(/.exec(line)?.[1];
73
+ return name !== undefined && named.has(name);
74
+ });
75
+ }
49
76
  function findingsAsk(findings) {
50
- const listed = findings.slice(0, FINDINGS_ASKED_MAX).map((f) => `- ${findingLine(f)}`);
77
+ const asked = findings.slice(0, FINDINGS_ASKED_MAX);
78
+ const listed = asked.map((f) => `- ${findingLine(f)}`);
79
+ const components = namedComponentLines(asked);
80
+ const componentsPart = components.length === 0
81
+ ? ""
82
+ : "The components those findings name, with their props:\n\n" +
83
+ `${components.join("\n")}\n\n` +
84
+ "A component takes no `className` or `style`: what the hand-built element said with classes (on or off, " +
85
+ "its meaning colour, its size) moves to the component's props (`variant`, `tone`, `size`), and its pointer " +
86
+ "handlers carry over as written. Its `aria-*` props:\n\n" +
87
+ `${ariaGuidance(asked)
88
+ .map((line) => `- ${line}`)
89
+ .join("\n")}\n\n`;
51
90
  return (`The design check reported:\n\n${listed.join("\n")}\n\n` +
91
+ componentsPart +
52
92
  "Write the corrected files in full, same format (each file under its `### `path`` heading, complete, once).");
53
93
  }
54
94
  function rollup(findings) {
@@ -1 +1 @@
1
- {"version":3,"file":"design-repair.js","sourceRoot":"","sources":["../../jsr/intern/design-repair.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-repair.js","sourceRoot":"","sources":["../../jsr/intern/design-repair.ts"],"names":[],"mappings":"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"}