@vibes.diy/api-svc 14.3.35 → 14.3.37

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 (35) hide show
  1. package/intern/agent-read-tools.d.ts +6 -0
  2. package/intern/agent-read-tools.js +153 -0
  3. package/intern/agent-read-tools.js.map +1 -1
  4. package/intern/agent-request-frame.d.ts +1 -1
  5. package/intern/agent-request-frame.js +1 -1
  6. package/intern/agent-request-frame.js.map +1 -1
  7. package/intern/agent-session-instruction.d.ts +2 -2
  8. package/intern/agent-session-instruction.js +10 -1
  9. package/intern/agent-session-instruction.js.map +1 -1
  10. package/intern/agent-wake.d.ts +1 -0
  11. package/intern/agent-wake.js +2 -0
  12. package/intern/agent-wake.js.map +1 -1
  13. package/intern/draft-lane-config.d.ts +3 -0
  14. package/intern/draft-lane-config.js +3 -0
  15. package/intern/draft-lane-config.js.map +1 -1
  16. package/intern/draft-lane.d.ts +3 -1
  17. package/intern/draft-lane.js +32 -4
  18. package/intern/draft-lane.js.map +1 -1
  19. package/intern/draft-variation-ast.d.ts +26 -0
  20. package/intern/draft-variation-ast.js +389 -0
  21. package/intern/draft-variation-ast.js.map +1 -0
  22. package/intern/draft-variation.d.ts +46 -0
  23. package/intern/draft-variation.js +249 -0
  24. package/intern/draft-variation.js.map +1 -0
  25. package/intern/latest-screenshot.d.ts +17 -1
  26. package/intern/latest-screenshot.js +29 -6
  27. package/intern/latest-screenshot.js.map +1 -1
  28. package/intern/llm-tool-loop.d.ts +7 -0
  29. package/intern/llm-tool-loop.js +33 -3
  30. package/intern/llm-tool-loop.js.map +1 -1
  31. package/intern/opens-check.js +1 -0
  32. package/intern/opens-check.js.map +1 -1
  33. package/intern/prompt-assembly.js +7 -4
  34. package/intern/prompt-assembly.js.map +1 -1
  35. package/package.json +12 -12
@@ -1 +1 @@
1
- {"version":3,"file":"draft-lane.js","sourceRoot":"","sources":["../../jsr/intern/draft-lane.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"draft-lane.js","sourceRoot":"","sources":["../../jsr/intern/draft-lane.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Result } from "@adviser/cement";
2
+ export declare const HOLE_OPEN = "/*__HOLE ";
3
+ export declare const HOLE_CLOSE = " __*/";
4
+ export declare function holeMarker(name: string): string;
5
+ export interface HollowedFunction {
6
+ readonly name: string;
7
+ readonly params: string;
8
+ readonly body: string;
9
+ readonly indent: string;
10
+ }
11
+ export interface Hollowed {
12
+ readonly template: string;
13
+ readonly holes: readonly HollowedFunction[];
14
+ }
15
+ export interface HollowOptions {
16
+ readonly source: string;
17
+ readonly max: number;
18
+ }
19
+ export interface FillOptions {
20
+ readonly template: string;
21
+ readonly name: string;
22
+ readonly body: string;
23
+ }
24
+ export declare function hollowLeafFunctions(o: HollowOptions): Result<Hollowed>;
25
+ export declare function fillHole(o: FillOptions): Result<string>;
26
+ export declare function freeIdentifiers(source: string): Result<readonly string[]>;
@@ -0,0 +1,389 @@
1
+ import { exception2Result, Result } from "@adviser/cement";
2
+ import { Parser } from "acorn";
3
+ import acornJsx from "acorn-jsx";
4
+ export const HOLE_OPEN = "/*__HOLE ";
5
+ export const HOLE_CLOSE = " __*/";
6
+ export function holeMarker(name) {
7
+ return `${HOLE_OPEN}${name}${HOLE_CLOSE}`;
8
+ }
9
+ const JsxParser = Parser.extend(acornJsx());
10
+ const MIN_BODY = 60;
11
+ const MAX_BODY = 2500;
12
+ function isNode(value) {
13
+ return typeof value === "object" && value !== null && typeof value.type === "string";
14
+ }
15
+ function nodesOf(value) {
16
+ return Array.isArray(value) ? value.filter(isNode) : [];
17
+ }
18
+ function nameOf(node) {
19
+ return isNode(node) && typeof node.name === "string" ? node.name : undefined;
20
+ }
21
+ function parse(source) {
22
+ const parsed = exception2Result(() => JsxParser.parse(source, { ecmaVersion: "latest", sourceType: "module" }));
23
+ if (parsed.isErr())
24
+ return Result.Err(parsed.Err());
25
+ const program = parsed.Ok();
26
+ if (isNode(program) === false)
27
+ return Result.Err("unreadable module");
28
+ return Result.Ok(program);
29
+ }
30
+ function childrenOf(node) {
31
+ const out = [];
32
+ for (const [key, value] of Object.entries(node)) {
33
+ if (key === "type" || key === "start" || key === "end" || key === "loc" || key === "range")
34
+ continue;
35
+ if (Array.isArray(value))
36
+ for (const child of nodesOf(value))
37
+ out.push({ key, child });
38
+ else if (isNode(value))
39
+ out.push({ key, child: value });
40
+ }
41
+ return out;
42
+ }
43
+ function leafCandidate(args) {
44
+ const { source, name, fn } = args;
45
+ const body = fn.body;
46
+ if (name === undefined || isNode(body) === false || body.type !== "BlockStatement")
47
+ return undefined;
48
+ const len = body.end - body.start;
49
+ if (len < MIN_BODY || len > MAX_BODY)
50
+ return undefined;
51
+ if (/^[A-Z]/.test(name) || name === "App")
52
+ return undefined;
53
+ const params = nodesOf(fn.params)
54
+ .map((p) => source.slice(p.start, p.end))
55
+ .join(", ");
56
+ return { name, params, start: body.start + 1, end: body.end - 1, open: body.start, len };
57
+ }
58
+ function leafCandidates(source, program) {
59
+ const out = [];
60
+ function visit(node) {
61
+ if (node.type === "FunctionDeclaration") {
62
+ const c = leafCandidate({ source, name: nameOf(node.id), fn: node });
63
+ if (c !== undefined)
64
+ out.push(c);
65
+ }
66
+ const init = node.init;
67
+ if (node.type === "VariableDeclarator" &&
68
+ isNode(init) &&
69
+ (init.type === "ArrowFunctionExpression" || init.type === "FunctionExpression") &&
70
+ isNode(node.id) &&
71
+ node.id.type === "Identifier") {
72
+ const c = leafCandidate({ source, name: nameOf(node.id), fn: init });
73
+ if (c !== undefined)
74
+ out.push(c);
75
+ }
76
+ for (const { child } of childrenOf(node))
77
+ visit(child);
78
+ }
79
+ visit(program);
80
+ return out;
81
+ }
82
+ function lineIndentAt(source, pos) {
83
+ const lineStart = source.lastIndexOf("\n", pos - 1) + 1;
84
+ const match = /^[ \t]*/.exec(source.slice(lineStart, pos));
85
+ return match === null ? "" : match[0];
86
+ }
87
+ export function hollowLeafFunctions(o) {
88
+ const { source, max } = o;
89
+ const rProgram = parse(source);
90
+ if (rProgram.isErr())
91
+ return Result.Err(rProgram.Err());
92
+ const candidates = leafCandidates(source, rProgram.Ok()).sort((a, b) => b.len - a.len || a.start - b.start);
93
+ const picked = [];
94
+ for (const c of candidates) {
95
+ if (picked.length >= max)
96
+ break;
97
+ const clashes = picked.some((p) => p.name === c.name || (c.open < p.end + 1 && p.open < c.end + 1));
98
+ if (clashes === false)
99
+ picked.push(c);
100
+ }
101
+ if (picked.length === 0)
102
+ return Result.Err("no hollowable function: no non-capitalized function with a 60..2500 char body");
103
+ picked.sort((a, b) => a.start - b.start);
104
+ let template = "";
105
+ let cursor = 0;
106
+ const holes = [];
107
+ for (const c of picked) {
108
+ const lineIndent = lineIndentAt(source, c.open);
109
+ const indent = `${lineIndent} `;
110
+ template += `${source.slice(cursor, c.start)}\n${indent}${holeMarker(c.name)}\n${lineIndent}`;
111
+ cursor = c.end;
112
+ holes.push({ name: c.name, params: c.params, body: source.slice(c.start, c.end), indent });
113
+ }
114
+ template += source.slice(cursor);
115
+ return Result.Ok({ template, holes });
116
+ }
117
+ export function fillHole(o) {
118
+ const { template, name, body } = o;
119
+ const marker = holeMarker(name);
120
+ const at = template.indexOf(marker);
121
+ if (at < 0)
122
+ return Result.Err(`no hole marker for ${name}`);
123
+ const before = template.slice(0, at);
124
+ const after = template.slice(at + marker.length);
125
+ const lead = /\s*$/.exec(before);
126
+ const trail = /^\s*/.exec(after);
127
+ const from = lead === null ? at : at - lead[0].length;
128
+ const to = trail === null ? at + marker.length : at + marker.length + trail[0].length;
129
+ if (template[from - 1] !== "{" || template[to] !== "}")
130
+ return Result.Err(`hole marker for ${name} is not a function's whole body`);
131
+ const interior = body.startsWith("\n") ? body : `\n${body.replace(/\s+$/, "")}\n${lineIndentAt(template, to)}`;
132
+ return Result.Ok(`${template.slice(0, from)}${interior}${template.slice(to)}`);
133
+ }
134
+ const GLOBALS = new Set([
135
+ "React",
136
+ "Date",
137
+ "Math",
138
+ "JSON",
139
+ "Object",
140
+ "Array",
141
+ "String",
142
+ "Number",
143
+ "Boolean",
144
+ "Promise",
145
+ "Set",
146
+ "Map",
147
+ "console",
148
+ "window",
149
+ "document",
150
+ "localStorage",
151
+ "navigator",
152
+ "setTimeout",
153
+ "clearTimeout",
154
+ "setInterval",
155
+ "clearInterval",
156
+ "requestAnimationFrame",
157
+ "cancelAnimationFrame",
158
+ "fetch",
159
+ "URL",
160
+ "Intl",
161
+ "parseInt",
162
+ "parseFloat",
163
+ "isNaN",
164
+ "Error",
165
+ "undefined",
166
+ "NaN",
167
+ "Infinity",
168
+ "crypto",
169
+ "Symbol",
170
+ "Reflect",
171
+ "alert",
172
+ "confirm",
173
+ "prompt",
174
+ "encodeURIComponent",
175
+ "decodeURIComponent",
176
+ "structuredClone",
177
+ "Blob",
178
+ "File",
179
+ "FileReader",
180
+ "Image",
181
+ "Audio",
182
+ "AbortController",
183
+ "Event",
184
+ "CustomEvent",
185
+ "globalThis",
186
+ "arguments",
187
+ "RegExp",
188
+ "Function",
189
+ ]);
190
+ function bindPattern(pattern, scope) {
191
+ if (isNode(pattern) === false)
192
+ return;
193
+ switch (pattern.type) {
194
+ case "Identifier": {
195
+ const name = nameOf(pattern);
196
+ if (name !== undefined)
197
+ scope.add(name);
198
+ return;
199
+ }
200
+ case "ObjectPattern":
201
+ for (const p of nodesOf(pattern.properties))
202
+ bindPattern(p.type === "RestElement" ? p.argument : p.value, scope);
203
+ return;
204
+ case "ArrayPattern":
205
+ for (const e of nodesOf(pattern.elements))
206
+ bindPattern(e, scope);
207
+ return;
208
+ case "AssignmentPattern":
209
+ bindPattern(pattern.left, scope);
210
+ return;
211
+ case "RestElement":
212
+ bindPattern(pattern.argument, scope);
213
+ return;
214
+ }
215
+ }
216
+ function hoist(statements, scope) {
217
+ for (const st of statements) {
218
+ switch (st.type) {
219
+ case "FunctionDeclaration":
220
+ case "ClassDeclaration": {
221
+ const name = nameOf(st.id);
222
+ if (name !== undefined)
223
+ scope.add(name);
224
+ break;
225
+ }
226
+ case "VariableDeclaration":
227
+ for (const d of nodesOf(st.declarations))
228
+ bindPattern(d.id, scope);
229
+ break;
230
+ case "ImportDeclaration":
231
+ for (const sp of nodesOf(st.specifiers)) {
232
+ const name = nameOf(sp.local);
233
+ if (name !== undefined)
234
+ scope.add(name);
235
+ }
236
+ break;
237
+ case "ExportNamedDeclaration":
238
+ if (isNode(st.declaration))
239
+ hoist([st.declaration], scope);
240
+ break;
241
+ case "ExportDefaultDeclaration": {
242
+ const name = isNode(st.declaration) ? nameOf(st.declaration.id) : undefined;
243
+ if (name !== undefined)
244
+ scope.add(name);
245
+ break;
246
+ }
247
+ }
248
+ }
249
+ }
250
+ function scopeOf(node) {
251
+ switch (node.type) {
252
+ case "Program":
253
+ case "BlockStatement":
254
+ case "StaticBlock": {
255
+ const scope = new Set();
256
+ hoist(nodesOf(node.body), scope);
257
+ return scope;
258
+ }
259
+ case "SwitchStatement": {
260
+ const scope = new Set();
261
+ for (const c of nodesOf(node.cases))
262
+ hoist(nodesOf(c.consequent), scope);
263
+ return scope;
264
+ }
265
+ case "FunctionDeclaration":
266
+ case "FunctionExpression":
267
+ case "ArrowFunctionExpression": {
268
+ const scope = new Set();
269
+ for (const p of nodesOf(node.params))
270
+ bindPattern(p, scope);
271
+ const name = nameOf(node.id);
272
+ if (name !== undefined)
273
+ scope.add(name);
274
+ if (isNode(node.body) && node.body.type === "BlockStatement")
275
+ hoist(nodesOf(node.body.body), scope);
276
+ return scope;
277
+ }
278
+ case "ClassExpression": {
279
+ const scope = new Set();
280
+ const name = nameOf(node.id);
281
+ if (name !== undefined)
282
+ scope.add(name);
283
+ return scope;
284
+ }
285
+ case "ForStatement":
286
+ case "ForOfStatement":
287
+ case "ForInStatement": {
288
+ const scope = new Set();
289
+ const init = node.type === "ForStatement" ? node.init : node.left;
290
+ if (isNode(init) && init.type === "VariableDeclaration")
291
+ for (const d of nodesOf(init.declarations))
292
+ bindPattern(d.id, scope);
293
+ return scope;
294
+ }
295
+ case "CatchClause": {
296
+ const scope = new Set();
297
+ bindPattern(node.param, scope);
298
+ return scope;
299
+ }
300
+ }
301
+ return undefined;
302
+ }
303
+ function isNotARead(parent, key) {
304
+ const computed = parent.computed === true;
305
+ switch (parent.type) {
306
+ case "VariableDeclarator":
307
+ return key === "id";
308
+ case "FunctionDeclaration":
309
+ case "FunctionExpression":
310
+ case "ArrowFunctionExpression":
311
+ return key === "params" || key === "id";
312
+ case "ClassDeclaration":
313
+ case "ClassExpression":
314
+ return key === "id";
315
+ case "MemberExpression":
316
+ return key === "property" && computed === false;
317
+ case "Property":
318
+ return key === "key" && computed === false && parent.shorthand !== true;
319
+ case "PropertyDefinition":
320
+ case "MethodDefinition":
321
+ return key === "key" && computed === false;
322
+ case "AssignmentPattern":
323
+ return key === "left";
324
+ case "CatchClause":
325
+ return key === "param";
326
+ case "ObjectPattern":
327
+ case "ArrayPattern":
328
+ case "RestElement":
329
+ case "ImportSpecifier":
330
+ case "ImportDefaultSpecifier":
331
+ case "ImportNamespaceSpecifier":
332
+ case "ExportSpecifier":
333
+ case "LabeledStatement":
334
+ case "BreakStatement":
335
+ case "ContinueStatement":
336
+ case "MetaProperty":
337
+ return true;
338
+ }
339
+ return false;
340
+ }
341
+ function bound(scopes, name) {
342
+ return scopes.some((s) => s.has(name));
343
+ }
344
+ function containsReturn(node) {
345
+ if (node.type === "ReturnStatement")
346
+ return true;
347
+ return childrenOf(node).some(({ child }) => containsReturn(child));
348
+ }
349
+ export function freeIdentifiers(source) {
350
+ const rProgram = parse(source);
351
+ if (rProgram.isErr())
352
+ return Result.Err(rProgram.Err());
353
+ const program = rProgram.Ok();
354
+ const found = [];
355
+ function visit(args) {
356
+ const { node, at } = args;
357
+ const own = scopeOf(node);
358
+ const scopes = own === undefined ? args.scopes : [...args.scopes, own];
359
+ if (node.type === "Identifier") {
360
+ const name = nameOf(node);
361
+ if (name === undefined)
362
+ return;
363
+ const notARead = at !== undefined && isNotARead(at.parent, at.key);
364
+ if (notARead === false && GLOBALS.has(name) === false && bound(scopes, name) === false)
365
+ found.push(name);
366
+ return;
367
+ }
368
+ if (node.type === "JSXIdentifier" && at !== undefined && at.parent.type === "JSXOpeningElement" && at.key === "name") {
369
+ const name = nameOf(node);
370
+ if (name !== undefined && /^[A-Z]/.test(name) && bound(scopes, name) === false)
371
+ found.push(`<${name}>`);
372
+ }
373
+ for (const { key, child } of childrenOf(node))
374
+ visit({ node: child, scopes, at: { parent: node, key } });
375
+ }
376
+ visit({ node: program, scopes: [] });
377
+ for (const st of nodesOf(program.body)) {
378
+ const decl = st.type === "ExportDefaultDeclaration" || st.type === "ExportNamedDeclaration" ? st.declaration : st;
379
+ if (isNode(decl) === false || decl.type !== "FunctionDeclaration")
380
+ continue;
381
+ const name = nameOf(decl.id);
382
+ if (name === undefined || /^[A-Z]/.test(name) === false)
383
+ continue;
384
+ if (isNode(decl.body) && containsReturn(decl.body) === false)
385
+ found.push(`${name} has no return`);
386
+ }
387
+ return Result.Ok([...new Set(found)]);
388
+ }
389
+ //# sourceMappingURL=draft-variation-ast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"draft-variation-ast.js","sourceRoot":"","sources":["../../jsr/intern/draft-variation-ast.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { AutofixAndCheck } from "./draft-lane-autofix.js";
2
+ import type { DraftModelCall, DraftModelUsage } from "./draft-lane-classify.js";
3
+ import { type HollowedFunction } from "./draft-variation-ast.js";
4
+ export declare const VARIATION_MAX_HOLES = 4;
5
+ export declare const VARIATION_FILL_ATTEMPTS = 3;
6
+ export declare const VARIATION_MAX_TOKENS = 600;
7
+ export declare const VARIATION_DOC_HEAD = "# vibes.diy quick reference: small Fireproof apps\n\nRules every example follows:\n- Components come from `@vibes.diy/look` (Card, Badge, Button, Input); classes are semantic tokens (`bg-background`, `text-muted-foreground`), never hex colors.\n- Records are documents with a `type`; reads are `useLiveQuery`, writes are `database.put({ type, ..., createdAt: Date.now() })`.\n- Copy is specific and friendly; a helper does one thing and returns a value.\n\n## Example\n\n```jsx\n";
8
+ export interface VariationEvent {
9
+ readonly step: "hollowed" | "shaped" | "filled" | "settled";
10
+ readonly data: Readonly<Record<string, unknown>>;
11
+ }
12
+ export interface VaryDraftOptions {
13
+ readonly vfs: ReadonlyMap<string, string>;
14
+ readonly sentence: string;
15
+ readonly callModel: DraftModelCall;
16
+ readonly autofixAndCheck: AutofixAndCheck;
17
+ readonly deadlineMs: number;
18
+ readonly model?: string;
19
+ readonly log?: (event: VariationEvent) => void;
20
+ readonly random?: () => number;
21
+ }
22
+ export interface VaryDraftResult {
23
+ readonly vfs: ReadonlyMap<string, string>;
24
+ readonly notes: readonly string[];
25
+ readonly varied: boolean;
26
+ readonly holes: readonly string[];
27
+ readonly restored: readonly string[];
28
+ readonly usage: readonly DraftModelUsage[];
29
+ }
30
+ interface Outline {
31
+ readonly title: string;
32
+ readonly tagline: string;
33
+ readonly purposes: ReadonlyMap<string, string>;
34
+ }
35
+ export declare function fallbackPurpose(hole: Pick<HollowedFunction, "name" | "params">): string;
36
+ export declare function stripFence(text: string): string;
37
+ export declare function parseShapeReply(text: string, holes: readonly HollowedFunction[]): Outline;
38
+ export declare function composeFillPrompt(o: {
39
+ readonly template: string;
40
+ readonly hole: HollowedFunction;
41
+ readonly holes: readonly HollowedFunction[];
42
+ readonly purposes: ReadonlyMap<string, string>;
43
+ readonly nonce: string;
44
+ }): string;
45
+ export declare function varyDraft(opts: VaryDraftOptions): Promise<VaryDraftResult>;
46
+ export {};