vibes-diy 2.2.1 → 2.2.2-dev.1

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.
@@ -7,6 +7,7 @@ import { resEnsureAppSlug, isSectionEvent } from "@vibes.diy/api-types";
7
7
  import { cmdTsDefaultArgs } from "../cli-ctx.js";
8
8
  import { sendMsg, sendProgress } from "../cmd-evento.js";
9
9
  import { resolveUserSlug } from "../resolve-user-slug.js";
10
+ import { resolveSectionStream } from "./resolve-section-stream.js";
10
11
  export const ResGenerate = type({
11
12
  type: "'use-vibes.cli.res-generate'",
12
13
  appSlug: "string",
@@ -63,65 +64,52 @@ export const generateEvento = {
63
64
  if (rPrompt.isErr()) {
64
65
  return Result.Err(`Failed to send prompt: ${JSON.stringify(rPrompt.Err())}`);
65
66
  }
66
- const codeBlocks = [];
67
- let currentBlock;
68
- let done = false;
69
- const reader = chat.sectionStream.getReader();
70
- while (!done) {
71
- const { value: event, done: streamDone } = await reader.read();
72
- if (streamDone)
73
- break;
74
- if (!isSectionEvent(event))
75
- continue;
76
- for (const msg of event.blocks) {
77
- const m = msg;
78
- switch (m.type) {
79
- case "block.code.begin":
80
- currentBlock = { lang: m.lang ?? "jsx", lines: [] };
81
- if (args.verbose)
82
- process.stderr.write(`\n--- code block (${currentBlock.lang}) ---\n`);
83
- break;
84
- case "block.code.line":
85
- if (currentBlock) {
86
- currentBlock.lines.push(m.line);
87
- if (args.verbose)
88
- process.stderr.write(m.line + "\n");
89
- }
90
- break;
91
- case "block.code.end":
92
- if (currentBlock) {
93
- codeBlocks.push(currentBlock);
94
- currentBlock = undefined;
95
- if (args.verbose)
96
- process.stderr.write("--- end code block ---\n");
97
- }
98
- break;
99
- case "block.toplevel.line":
100
- if (args.verbose)
101
- process.stderr.write(m.line + "\n");
102
- break;
103
- case "block.end":
104
- done = true;
105
- break;
67
+ const sectionOnly = chat.sectionStream.pipeThrough(new TransformStream({
68
+ transform(msg, controller) {
69
+ if (isSectionEvent(msg))
70
+ controller.enqueue(msg);
71
+ },
72
+ }));
73
+ const rResolved = await resolveSectionStream({
74
+ sectionStream: sectionOnly,
75
+ streamId: rPrompt.Ok().promptId,
76
+ onSnapshot: (snap) => {
77
+ if (args.verbose) {
78
+ process.stderr.write(`[${snap.source}] ${snap.path} (${snap.content.length} chars, ${snap.appliedSections} sections)\n`);
106
79
  }
107
- if (done)
108
- break;
109
- }
110
- }
111
- reader.releaseLock();
80
+ },
81
+ onError: (err) => {
82
+ if (args.verbose) {
83
+ for (const fail of err.failures) {
84
+ process.stderr.write(`[error] ${err.path}: ${fail.reason}${fail.search ? ` near ${fail.search.slice(0, 40)}` : ""}\n`);
85
+ }
86
+ }
87
+ },
88
+ });
112
89
  await chat.close();
113
- if (codeBlocks.length === 0) {
114
- return Result.Err("No code blocks received from AI response.");
90
+ if (rResolved.isErr()) {
91
+ return Result.Err(`Failed to resolve generated stream: ${rResolved.Err().message}`);
115
92
  }
116
- const files = codeBlocks.map((block, idx) => ({
117
- type: "code-block",
118
- lang: block.lang,
119
- content: block.lines.join("\n"),
120
- filename: idx === 0 ? "/App.jsx" : `/File-${idx}.${block.lang}`,
121
- }));
122
- const fileContents = codeBlocks.map((block, idx) => ({
123
- filename: idx === 0 ? "App.jsx" : `File-${idx}.${block.lang}`,
124
- content: block.lines.join("\n"),
93
+ const resolved = rResolved.Ok();
94
+ if (Object.keys(resolved.files).length === 0) {
95
+ const tail = resolved.errors.length > 0 ? ` (${resolved.errors.length} apply errors)` : "";
96
+ return Result.Err(`No files resolved from AI response${tail}.`);
97
+ }
98
+ if (resolved.errors.length > 0 && !args.verbose) {
99
+ await sendProgress(ctx, "warn", `Resolved with ${resolved.errors.length} apply error(s); rerun with --verbose for detail.`);
100
+ }
101
+ const files = Object.entries(resolved.files).map(([path, content]) => {
102
+ const filename = path.startsWith("/") ? path : `/${path}`;
103
+ return {
104
+ type: "code-block",
105
+ lang: extLang(filename),
106
+ content,
107
+ filename,
108
+ };
109
+ });
110
+ const fileContents = Object.entries(resolved.files).map(([path, content]) => ({
111
+ filename: path.startsWith("/") ? path.slice(1) : path,
112
+ content,
125
113
  }));
126
114
  const pushAppSlug = chat.appSlug;
127
115
  const pushUserSlug = chat.userSlug;
@@ -181,6 +169,14 @@ export const generateEvento = {
181
169
  });
182
170
  },
183
171
  };
172
+ function extLang(filename) {
173
+ const ext = filename.match(/\.([^.]+)$/)?.[1]?.toLowerCase();
174
+ if (ext === undefined)
175
+ return "jsx";
176
+ if (ext === "js")
177
+ return "jsx";
178
+ return ext;
179
+ }
184
180
  async function generateReadme(appSlug, prompt, vibeUrl) {
185
181
  const rTemplate = await loadAsset("./readme-template.md", {
186
182
  basePath: () => import.meta.url,
@@ -1 +1 @@
1
- {"version":3,"file":"generate-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/generate-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/generate-cmd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { type FsApplyErrorMsg, type FsFileSnapshotMsg } from "@vibes.diy/call-ai-v2";
3
+ import type { SectionEvent } from "@vibes.diy/api-types";
4
+ export interface ResolveSectionStreamOpts {
5
+ readonly sectionStream: ReadableStream<SectionEvent>;
6
+ readonly streamId: string;
7
+ readonly seed?: ReadonlyMap<string, string>;
8
+ readonly onSnapshot?: (snap: FsFileSnapshotMsg) => void;
9
+ readonly onError?: (err: FsApplyErrorMsg) => void;
10
+ }
11
+ export interface ResolveSectionStreamResult {
12
+ readonly files: Readonly<Record<string, string>>;
13
+ readonly errors: readonly string[];
14
+ }
15
+ export declare function resolveSectionStream(opts: ResolveSectionStreamOpts): Promise<Result<ResolveSectionStreamResult>>;
@@ -0,0 +1,47 @@
1
+ import { exception2Result } from "@adviser/cement";
2
+ import { createFileSystemStream, isFsApplyError, isFsFileSnapshot, isFsTurnEnd, summarizeFailures, } from "@vibes.diy/call-ai-v2";
3
+ import { isPromptBlockEnd } from "@vibes.diy/api-types";
4
+ export function resolveSectionStream(opts) {
5
+ const flatten = new TransformStream({
6
+ transform(event, controller) {
7
+ for (const msg of event.blocks)
8
+ controller.enqueue(msg);
9
+ },
10
+ });
11
+ const fsStream = createFileSystemStream({
12
+ streamId: opts.streamId,
13
+ createId: () => crypto.randomUUID(),
14
+ seed: opts.seed,
15
+ });
16
+ return exception2Result(async () => {
17
+ const reader = opts.sectionStream.pipeThrough(flatten).pipeThrough(fsStream).getReader();
18
+ let files = {};
19
+ const errors = [];
20
+ for (;;) {
21
+ const { value, done } = await reader.read();
22
+ if (done)
23
+ break;
24
+ if (isFsFileSnapshot(value)) {
25
+ opts.onSnapshot?.(value);
26
+ continue;
27
+ }
28
+ if (isFsApplyError(value)) {
29
+ opts.onError?.(value);
30
+ for (const line of summarizeFailures(value.failures)) {
31
+ errors.push(`${value.path}: ${line}`);
32
+ }
33
+ continue;
34
+ }
35
+ if (isFsTurnEnd(value)) {
36
+ files = value.files;
37
+ continue;
38
+ }
39
+ if (isPromptBlockEnd(value)) {
40
+ break;
41
+ }
42
+ }
43
+ reader.releaseLock();
44
+ return { files, errors };
45
+ });
46
+ }
47
+ //# sourceMappingURL=resolve-section-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-section-stream.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/resolve-section-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EACL,sBAAsB,EACtB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,iBAAiB,GAIlB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AA8BxD,MAAM,UAAU,oBAAoB,CAAC,IAA8B;IACjE,MAAM,OAAO,GAAG,IAAI,eAAe,CAA+B;QAChE,SAAS,CAAC,KAAK,EAAE,UAAU;YACzB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM;gBAAE,UAAU,CAAC,OAAO,CAAC,GAAqB,CAAC,CAAC;QAC5E,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,sBAAsB,CAAC;QACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE;QACnC,IAAI,EAAE,IAAI,CAAC,IAAI;KAChB,CAAC,CAAC;IAEH,OAAO,gBAAgB,CAAC,KAAK,IAAI,EAAE;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;QACzF,IAAI,KAAK,GAAqC,EAAE,CAAC;QACjD,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,SAAS,CAAC;YACR,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,MAAM;YAChB,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC;gBACtB,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACrD,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC;gBACxC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBAGvB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBACpB,SAAS;YACX,CAAC;YAKD,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM;YACR,CAAC;QACH,CAAC;QACD,MAAM,CAAC,WAAW,EAAE,CAAC;QACrB,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,160 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { resolveSectionStream } from "./resolve-section-stream.js";
3
+ const streamId = "stream-1";
4
+ function blockBase(fields) {
5
+ return {
6
+ blockId: fields.blockId,
7
+ streamId,
8
+ seq: fields.seq,
9
+ blockNr: fields.blockNr,
10
+ timestamp: new Date(),
11
+ };
12
+ }
13
+ function codeBlockMessages(fx) {
14
+ const lang = "jsx";
15
+ const baseSeq = fx.blockNr * 100;
16
+ const messages = [];
17
+ messages.push({
18
+ type: "block.code.begin",
19
+ sectionId: fx.sectionId,
20
+ lang,
21
+ path: fx.path,
22
+ ...blockBase({ blockId: fx.blockId, seq: baseSeq, blockNr: fx.blockNr }),
23
+ });
24
+ fx.lines.forEach((line, idx) => {
25
+ messages.push({
26
+ type: "block.code.line",
27
+ sectionId: fx.sectionId,
28
+ lang,
29
+ path: fx.path,
30
+ lineNr: idx + 1,
31
+ line,
32
+ ...blockBase({ blockId: fx.blockId, seq: baseSeq + 1 + idx, blockNr: fx.blockNr }),
33
+ });
34
+ });
35
+ const afterLines = baseSeq + 1 + fx.lines.length;
36
+ messages.push({
37
+ type: "block.code.end",
38
+ sectionId: fx.sectionId,
39
+ lang,
40
+ path: fx.path,
41
+ stats: { lines: fx.lines.length, bytes: fx.lines.join("\n").length },
42
+ ...blockBase({ blockId: fx.blockId, seq: afterLines, blockNr: fx.blockNr }),
43
+ });
44
+ messages.push({
45
+ type: "block.end",
46
+ stats: {
47
+ toplevel: { lines: 0, bytes: 0 },
48
+ code: { lines: fx.lines.length, bytes: fx.lines.join("\n").length },
49
+ image: { lines: 0, bytes: 0 },
50
+ total: { lines: fx.lines.length, bytes: fx.lines.join("\n").length },
51
+ },
52
+ usage: {
53
+ given: [],
54
+ calculated: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
55
+ },
56
+ ...blockBase({ blockId: fx.blockId, seq: afterLines + 1, blockNr: fx.blockNr }),
57
+ });
58
+ return messages;
59
+ }
60
+ function sectionEventStream(blockFixtures) {
61
+ return new ReadableStream({
62
+ start(controller) {
63
+ blockFixtures.forEach((fx, idx) => {
64
+ controller.enqueue({
65
+ type: "vibes.diy.section-event",
66
+ chatId: "chat-1",
67
+ promptId: "prompt-1",
68
+ blockSeq: idx,
69
+ timestamp: new Date(),
70
+ blocks: codeBlockMessages(fx),
71
+ });
72
+ });
73
+ controller.close();
74
+ },
75
+ });
76
+ }
77
+ describe("resolveSectionStream", () => {
78
+ it("resolves a single create block into one file", async () => {
79
+ const stream = sectionEventStream([
80
+ {
81
+ blockId: "b1",
82
+ blockNr: 1,
83
+ sectionId: "s1",
84
+ path: "App.jsx",
85
+ lines: ['import React from "react";', "", "export default function App() { return <h1>Hi</h1>; }"],
86
+ },
87
+ ]);
88
+ const r = await resolveSectionStream({ sectionStream: stream, streamId });
89
+ expect(r.isOk()).toBe(true);
90
+ const ok = r.Ok();
91
+ expect(ok.errors).toEqual([]);
92
+ expect(ok.files["App.jsx"]).toBe('import React from "react";\n\nexport default function App() { return <h1>Hi</h1>; }');
93
+ });
94
+ it("composes a SEARCH/REPLACE edit against the prior block", async () => {
95
+ const scaffoldLines = ['import React from "react";', "", "export default function App() {", " return <h1>Hello</h1>;", "}"];
96
+ const editLines = [
97
+ "<<<<<<< SEARCH",
98
+ " return <h1>Hello</h1>;",
99
+ "=======",
100
+ " return <h1>Hello, world</h1>;",
101
+ ">>>>>>> REPLACE",
102
+ ];
103
+ const stream = sectionEventStream([
104
+ { blockId: "b1", blockNr: 1, sectionId: "s1", path: "App.jsx", lines: scaffoldLines },
105
+ { blockId: "b2", blockNr: 2, sectionId: "s2", path: "App.jsx", lines: editLines },
106
+ ]);
107
+ const r = await resolveSectionStream({ sectionStream: stream, streamId });
108
+ expect(r.isOk()).toBe(true);
109
+ const ok = r.Ok();
110
+ expect(ok.errors).toEqual([]);
111
+ expect(ok.files["App.jsx"]).toContain("Hello, world");
112
+ expect(ok.files["App.jsx"]).not.toContain("<<<<<<< SEARCH");
113
+ expect(ok.files["App.jsx"]).not.toContain(">>>>>>> REPLACE");
114
+ });
115
+ it("captures apply errors when SEARCH does not match and keeps prior content", async () => {
116
+ const scaffoldLines = ['import React from "react";', "export default function App() { return <h1>Hi</h1>; }"];
117
+ const badEditLines = ["<<<<<<< SEARCH", "this string is not in the file", "=======", "replacement", ">>>>>>> REPLACE"];
118
+ const stream = sectionEventStream([
119
+ { blockId: "b1", blockNr: 1, sectionId: "s1", path: "App.jsx", lines: scaffoldLines },
120
+ { blockId: "b2", blockNr: 2, sectionId: "s2", path: "App.jsx", lines: badEditLines },
121
+ ]);
122
+ const r = await resolveSectionStream({ sectionStream: stream, streamId });
123
+ expect(r.isOk()).toBe(true);
124
+ const ok = r.Ok();
125
+ expect(ok.errors.length).toBeGreaterThan(0);
126
+ expect(ok.errors[0]).toMatch(/no-match/);
127
+ expect(ok.files["App.jsx"]).toBe(scaffoldLines.join("\n"));
128
+ });
129
+ it("tracks multiple paths independently", async () => {
130
+ const stream = sectionEventStream([
131
+ { blockId: "b1", blockNr: 1, sectionId: "s1", path: "App.jsx", lines: ["// app"] },
132
+ { blockId: "b2", blockNr: 2, sectionId: "s2", path: "Helpers.jsx", lines: ["// helpers"] },
133
+ ]);
134
+ const r = await resolveSectionStream({ sectionStream: stream, streamId });
135
+ expect(r.isOk()).toBe(true);
136
+ const ok = r.Ok();
137
+ expect(ok.files["App.jsx"]).toBe("// app");
138
+ expect(ok.files["Helpers.jsx"]).toBe("// helpers");
139
+ });
140
+ it("invokes onSnapshot per code.end and onError per apply failure", async () => {
141
+ const scaffoldLines = ["// scaffold"];
142
+ const badEditLines = ["<<<<<<< SEARCH", "missing", "=======", "x", ">>>>>>> REPLACE"];
143
+ const stream = sectionEventStream([
144
+ { blockId: "b1", blockNr: 1, sectionId: "s1", path: "App.jsx", lines: scaffoldLines },
145
+ { blockId: "b2", blockNr: 2, sectionId: "s2", path: "App.jsx", lines: badEditLines },
146
+ ]);
147
+ const snapshots = [];
148
+ const errors = [];
149
+ const r = await resolveSectionStream({
150
+ sectionStream: stream,
151
+ streamId,
152
+ onSnapshot: (s) => snapshots.push(`${s.source}:${s.path}`),
153
+ onError: (e) => errors.push(e.path),
154
+ });
155
+ expect(r.isOk()).toBe(true);
156
+ expect(snapshots).toEqual(["create:App.jsx"]);
157
+ expect(errors).toEqual(["App.jsx"]);
158
+ });
159
+ });
160
+ //# sourceMappingURL=resolve-section-stream.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-section-stream.test.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/resolve-section-stream.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vibes-diy",
3
- "version": "2.2.1",
3
+ "version": "2.2.2-dev.1",
4
4
  "type": "module",
5
5
  "main": "./index.js",
6
6
  "description": "Transform any DOM element into an AI-powered micro-app",
@@ -39,9 +39,10 @@
39
39
  "@fireproof/core-types-protocols-cloud": "~0.24.19",
40
40
  "@fireproof/core-types-protocols-dashboard": "~0.24.19",
41
41
  "@fireproof/use-fireproof": "~0.24.19",
42
- "@vibes.diy/api-impl": "^2.2.1",
43
- "@vibes.diy/api-types": "^2.2.1",
44
- "@vibes.diy/prompts": "^2.2.1",
42
+ "@vibes.diy/api-impl": "^2.2.2-dev.1",
43
+ "@vibes.diy/api-types": "^2.2.2-dev.1",
44
+ "@vibes.diy/call-ai-v2": "^2.2.2-dev.1",
45
+ "@vibes.diy/prompts": "^2.2.2-dev.1",
45
46
  "arktype": "~2.2.0",
46
47
  "cmd-ts": "~0.15.0",
47
48
  "tsx": "~4.21.0",
@@ -0,0 +1,2 @@
1
+ declare const _default: import("vite").UserConfig;
2
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import { defineConfig } from "vitest/config";
2
+ export default defineConfig({
3
+ test: {
4
+ name: "vibes-diy",
5
+ include: ["**/*.test.ts"],
6
+ exclude: ["**/node_modules/**", "**/dist/**"],
7
+ },
8
+ });
9
+ //# sourceMappingURL=vitest.config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../jsr/vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE;QACJ,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,cAAc,CAAC;QACzB,OAAO,EAAE,CAAC,oBAAoB,EAAE,YAAY,CAAC;KAC9C;CACF,CAAC,CAAC"}