@vibes.diy/api-svc 14.3.79 → 14.3.81
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.
- package/cf-serve.js.map +1 -1
- package/create-handler.d.ts +0 -1
- package/create-handler.js +0 -2
- package/create-handler.js.map +1 -1
- package/evento-handler-manifest.js +6 -2
- package/evento-handler-manifest.js.map +1 -1
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/index.js.map +1 -1
- package/intern/account-vibe-activity.d.ts +36 -0
- package/intern/account-vibe-activity.js +284 -0
- package/intern/account-vibe-activity.js.map +1 -0
- package/intern/agent-account-tools.d.ts +21 -1
- package/intern/agent-account-tools.js +221 -35
- package/intern/agent-account-tools.js.map +1 -1
- package/intern/agent-assembly.d.ts +3 -0
- package/intern/agent-assembly.js +28 -2
- package/intern/agent-assembly.js.map +1 -1
- package/intern/agent-belt.js +3 -1
- package/intern/agent-belt.js.map +1 -1
- package/intern/agent-discussions.d.ts +22 -0
- package/intern/agent-discussions.js +131 -0
- package/intern/agent-discussions.js.map +1 -0
- package/intern/agent-dispatcher.d.ts +1 -0
- package/intern/agent-dispatcher.js +3 -0
- package/intern/agent-dispatcher.js.map +1 -1
- package/intern/agent-file-tools.d.ts +12 -2
- package/intern/agent-file-tools.js.map +1 -1
- package/intern/agent-options-tool.d.ts +5 -1
- package/intern/agent-options-tool.js +49 -14
- package/intern/agent-options-tool.js.map +1 -1
- package/intern/agent-read-tools.d.ts +1 -0
- package/intern/agent-read-tools.js +1 -1
- package/intern/agent-read-tools.js.map +1 -1
- package/intern/agent-request-frame.d.ts +24 -2
- package/intern/agent-request-frame.js +78 -16
- package/intern/agent-request-frame.js.map +1 -1
- package/intern/agent-session-instruction.d.ts +2 -2
- package/intern/agent-session-instruction.js +7 -14
- package/intern/agent-session-instruction.js.map +1 -1
- package/intern/agent-session.d.ts +5 -0
- package/intern/agent-session.js +10 -2
- package/intern/agent-session.js.map +1 -1
- package/intern/agent-settled-history.d.ts +22 -0
- package/intern/agent-settled-history.js +293 -0
- package/intern/agent-settled-history.js.map +1 -0
- package/intern/agent-top-level-instruction.d.ts +2 -2
- package/intern/agent-top-level-instruction.js +7 -4
- package/intern/agent-top-level-instruction.js.map +1 -1
- package/intern/agent-wake.d.ts +3 -0
- package/intern/agent-wake.js +3 -1
- package/intern/agent-wake.js.map +1 -1
- package/intern/agent-with-vibe.d.ts +24 -1
- package/intern/agent-with-vibe.js +97 -30
- package/intern/agent-with-vibe.js.map +1 -1
- package/intern/builder-model.d.ts +2 -0
- package/intern/builder-model.js +1 -0
- package/intern/builder-model.js.map +1 -1
- package/intern/builder-settled-history.d.ts +12 -0
- package/intern/builder-settled-history.js +71 -0
- package/intern/builder-settled-history.js.map +1 -0
- package/intern/byok-model-scope.d.ts +7 -0
- package/intern/byok-model-scope.js +11 -0
- package/intern/byok-model-scope.js.map +1 -0
- package/intern/caller-model.d.ts +19 -0
- package/intern/caller-model.js +30 -0
- package/intern/caller-model.js.map +1 -0
- package/intern/design-repair.d.ts +3 -0
- package/intern/design-repair.js +41 -1
- package/intern/design-repair.js.map +1 -1
- package/intern/ensure-chat-id.js +40 -2
- package/intern/ensure-chat-id.js.map +1 -1
- package/intern/first-build-no-app.d.ts +15 -0
- package/intern/first-build-no-app.js +124 -0
- package/intern/first-build-no-app.js.map +1 -0
- package/intern/get-vibe-route-hints.d.ts +2 -2
- package/intern/get-vibe-route-hints.js +9 -5
- package/intern/get-vibe-route-hints.js.map +1 -1
- package/intern/import-synth.js +1 -0
- package/intern/import-synth.js.map +1 -1
- package/intern/llm-tool-loop.d.ts +5 -1
- package/intern/llm-tool-loop.js +11 -6
- package/intern/llm-tool-loop.js.map +1 -1
- package/intern/local-day.d.ts +3 -0
- package/intern/local-day.js +17 -0
- package/intern/local-day.js.map +1 -0
- package/intern/look-lint-engine.js +25 -1
- package/intern/look-lint-engine.js.map +1 -1
- package/intern/mint-fire-core.d.ts +1 -0
- package/intern/mint-fire-core.js +8 -0
- package/intern/mint-fire-core.js.map +1 -1
- package/intern/opens-check.js +3 -0
- package/intern/opens-check.js.map +1 -1
- package/intern/prompt-assembly.d.ts +9 -0
- package/intern/prompt-assembly.js +77 -14
- package/intern/prompt-assembly.js.map +1 -1
- package/package.json +14 -13
- package/public/access-function.js.map +1 -1
- package/public/agent-turn-action.js +115 -66
- package/public/agent-turn-action.js.map +1 -1
- package/public/agent-turn-assembly.d.ts +5 -0
- package/public/agent-turn-assembly.js +22 -6
- package/public/agent-turn-assembly.js.map +1 -1
- package/public/app-documents-write-eventos.js +12 -2
- package/public/app-documents-write-eventos.js.map +1 -1
- package/public/codegen-turn-route.d.ts +2 -0
- package/public/codegen-turn-route.js +3 -1
- package/public/codegen-turn-route.js.map +1 -1
- package/public/fork-app.js +4 -1
- package/public/fork-app.js.map +1 -1
- package/public/fs-prompt.d.ts +2 -1
- package/public/fs-prompt.js +4 -2
- package/public/fs-prompt.js.map +1 -1
- package/public/handler-llm-request.d.ts +3 -1
- package/public/handler-llm-request.js +14 -2
- package/public/handler-llm-request.js.map +1 -1
- package/public/home-feed-common.js +1 -1
- package/public/home-feed-common.js.map +1 -1
- package/public/list-agent-discussions.d.ts +3 -0
- package/public/list-agent-discussions.js +45 -0
- package/public/list-agent-discussions.js.map +1 -0
- package/public/list-app-models.d.ts +20 -0
- package/public/list-app-models.js +159 -0
- package/public/list-app-models.js.map +1 -0
- package/public/list-vibe-activity.d.ts +3 -0
- package/public/list-vibe-activity.js +58 -0
- package/public/list-vibe-activity.js.map +1 -0
- package/public/llm-dispatch-fallback.d.ts +1 -0
- package/public/llm-dispatch-fallback.js +4 -0
- package/public/llm-dispatch-fallback.js.map +1 -1
- package/public/open-chat.js +2 -1
- package/public/open-chat.js.map +1 -1
- package/public/prompt-chat-section.js +22 -1
- package/public/prompt-chat-section.js.map +1 -1
- package/public/prompt-section-actions.d.ts +2 -0
- package/public/prompt-section-actions.js +5 -2
- package/public/prompt-section-actions.js.map +1 -1
- package/public/prompt-turn-envelope.d.ts +1 -0
- package/public/prompt-turn-envelope.js +3 -0
- package/public/prompt-turn-envelope.js.map +1 -1
- package/public/prompt-turn-settled.js +2 -0
- package/public/prompt-turn-settled.js.map +1 -1
- package/public/prompt-turn-types.d.ts +1 -0
- package/public/related-vibes.js +3 -3
- package/public/related-vibes.js.map +1 -1
- package/public/request-flow.js +7 -1
- package/public/request-flow.js.map +1 -1
- package/public/resolve-active-handle.d.ts +1 -0
- package/public/resolve-active-handle.js +36 -1
- package/public/resolve-active-handle.js.map +1 -1
- package/public/stream-assembly.js +2 -0
- package/public/stream-assembly.js.map +1 -1
- package/shard-gate.js +15 -2
- package/shard-gate.js.map +1 -1
- package/types.d.ts +0 -1
- package/types.js.map +1 -1
- package/usage-report/first-build-no-app-alarm-util.d.ts +24 -0
- package/usage-report/first-build-no-app-alarm-util.js +70 -0
- package/usage-report/first-build-no-app-alarm-util.js.map +1 -0
- package/usage-report/first-build-no-app-alarm.d.ts +2 -0
- package/usage-report/first-build-no-app-alarm.js +180 -0
- package/usage-report/first-build-no-app-alarm.js.map +1 -0
- package/usage-report/warm-vibe-cache.js +1 -1
- package/usage-report/warm-vibe-cache.js.map +1 -1
- package/public/similar-vibes.d.ts +0 -11
- package/public/similar-vibes.js +0 -86
- package/public/similar-vibes.js.map +0 -1
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import { Result } from "@adviser/cement";
|
|
2
|
+
import type { AgentFileCommit } from "@vibes.diy/api-types";
|
|
1
3
|
import type { ToolDefinition } from "@vibes.diy/call-ai-v2";
|
|
2
4
|
import { type LlmToolExecutor, type LlmToolImage } from "./llm-tool-loop.js";
|
|
5
|
+
import type { AgentFileSession } from "./agent-file-tools.js";
|
|
3
6
|
export declare const WITH_VIBE_TOOL_NAME = "with_vibe";
|
|
4
7
|
export declare const WITH_VIBE_MAX_CALLS = 8;
|
|
5
8
|
export declare const WITH_VIBE_RESULT_MAX_CHARS = 8192;
|
|
6
|
-
export declare const
|
|
9
|
+
export declare const WITH_VIBE_EDIT_TOOL_NAMES: readonly ["edit_file", "write_file", "validate", "commit_version"];
|
|
10
|
+
export declare const WITH_VIBE_COMMIT_TOOL_NAME = "commit_version";
|
|
11
|
+
export declare const WITH_VIBE_INNER_TOOLS: readonly ["list_files", "read_file", "read_files", "read_app_settings", "list_versions", "read_screenshot", "read_app_logs", "read_release_state", "list_databases", "query_docs", "get_doc", "edit_file", "write_file", "validate", "commit_version"];
|
|
7
12
|
export type WithVibeInnerTool = (typeof WITH_VIBE_INNER_TOOLS)[number];
|
|
8
13
|
export declare const WITH_VIBE_FILE_TOOLS: ReadonlySet<string>;
|
|
9
14
|
export declare const WITH_VIBE_INNER_INPUTS: {
|
|
@@ -39,7 +44,19 @@ export declare const WITH_VIBE_INNER_INPUTS: {
|
|
|
39
44
|
dbName: string;
|
|
40
45
|
docId: string;
|
|
41
46
|
}, {}>;
|
|
47
|
+
edit_file: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
48
|
+
path: string;
|
|
49
|
+
old_string: string;
|
|
50
|
+
new_string: string;
|
|
51
|
+
}, {}>;
|
|
52
|
+
write_file: import("arktype/internal/variants/object.ts").ObjectType<{
|
|
53
|
+
path: string;
|
|
54
|
+
contents: string;
|
|
55
|
+
}, {}>;
|
|
56
|
+
validate: import("arktype/internal/variants/object.ts").ObjectType<object, {}>;
|
|
57
|
+
commit_version: import("arktype/internal/variants/object.ts").ObjectType<object, {}>;
|
|
42
58
|
};
|
|
59
|
+
export declare function isWithVibeEditTool(name: string): boolean;
|
|
43
60
|
export declare function withVibeToolDefinition(): ToolDefinition;
|
|
44
61
|
export type WithVibeEntry = {
|
|
45
62
|
readonly tool: string;
|
|
@@ -59,8 +76,12 @@ export interface RunWithVibeCallsArgs {
|
|
|
59
76
|
readonly signal: AbortSignal;
|
|
60
77
|
readonly attachImage?: (image: LlmToolImage) => void;
|
|
61
78
|
readonly callId: string;
|
|
79
|
+
readonly stopOnFailure?: boolean;
|
|
80
|
+
readonly onThrown?: (tool: string, callId: string, error: Error) => void;
|
|
62
81
|
}
|
|
63
82
|
export declare function runWithVibeCalls(args: RunWithVibeCallsArgs): Promise<WithVibeEntry[]>;
|
|
83
|
+
export declare function withVibeEntrySaved(entry: WithVibeEntry): boolean;
|
|
84
|
+
export declare function createWithVibeFileSession(commit: (commit: AgentFileCommit) => Promise<Result<Readonly<Record<string, unknown>>>>): AgentFileSession;
|
|
64
85
|
export interface WithVibeTruncatedEntry {
|
|
65
86
|
readonly tool: string;
|
|
66
87
|
readonly truncated: true;
|
|
@@ -69,4 +90,6 @@ export interface WithVibeTruncatedEntry {
|
|
|
69
90
|
readonly partial: string;
|
|
70
91
|
}
|
|
71
92
|
export declare function fitWithVibeAnswer(envelope: Readonly<Record<string, unknown>>, entries: readonly WithVibeEntry[], maxChars?: number): string;
|
|
93
|
+
export declare const WITH_VIBE_COMMIT_NOTE_PREFIX = "Edited from /agent:";
|
|
94
|
+
export declare 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.";
|
|
72
95
|
export declare const WITH_VIBE_BUILD_NOTE = "A build is running on this vibe; its files may change when it lands.";
|
|
@@ -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: "
|
|
74
|
-
`${WITH_VIBE_MAX_CALLS}
|
|
75
|
-
"
|
|
76
|
-
"
|
|
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
|
|
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 (
|
|
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
|
-
|
|
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":"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"}
|
|
1
|
+
{"version":3,"file":"agent-with-vibe.js","sourceRoot":"","sources":["../../jsr/intern/agent-with-vibe.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export interface DispatchCarry {
|
|
|
15
15
|
readonly subagentModel?: string;
|
|
16
16
|
readonly instructionVariant?: InstructionVariant;
|
|
17
17
|
readonly agentModel?: string;
|
|
18
|
+
readonly timeZone?: string;
|
|
18
19
|
}
|
|
19
20
|
export declare function dispatchCarryFor(o: {
|
|
20
21
|
readonly apiKey?: unknown;
|
|
@@ -23,4 +24,5 @@ export declare function dispatchCarryFor(o: {
|
|
|
23
24
|
readonly subagentModel?: string;
|
|
24
25
|
readonly focusPath?: unknown;
|
|
25
26
|
readonly instructionVariant?: InstructionVariant;
|
|
27
|
+
readonly timeZone?: string;
|
|
26
28
|
}): DispatchCarry;
|
package/intern/builder-model.js
CHANGED
|
@@ -39,6 +39,7 @@ export function dispatchCarryFor(o) {
|
|
|
39
39
|
...(o.subagentModel === undefined ? {} : { subagentModel: o.subagentModel }),
|
|
40
40
|
...(o.instructionVariant === undefined ? {} : { instructionVariant: o.instructionVariant }),
|
|
41
41
|
...(typeof o.model === "string" ? { agentModel: o.model } : {}),
|
|
42
|
+
...(o.timeZone === undefined ? {} : { timeZone: o.timeZone }),
|
|
42
43
|
};
|
|
43
44
|
}
|
|
44
45
|
//# sourceMappingURL=builder-model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-model.js","sourceRoot":"","sources":["../../jsr/intern/builder-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAc,MAAM,sBAAsB,CAAC;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAc/B,MAAM,UAAU,qBAAqB,CAAC,MAAwB,EAAE,EAAU;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;AAChE,CAAC;AAiBD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,IAAoB,EAAE,SAAkB;IAC9E,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACzD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IACnH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,OAAO,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,SAAS,6BAA6B,CAAC,CAAC;IAC/F,OAAO,mBAAmB,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC7D,CAAC;AAGD,MAAM,UAAU,mBAAmB,CAAC,MAAwB,EAAE,SAAiB;IAC7E,IAAI,qBAAqB,CAAC,MAAM,EAAE,SAAS,CAAC;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1E,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,SAAS,wCAAwC,CAAC,CAAC;IACjI,IAAI,mBAAmB,CAAC,SAAS,CAAC,KAAK,KAAK;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,gBAAgB,SAAS,gCAAgC,CAAC,CAAC;IAC3H,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAC9B,CAAC;
|
|
1
|
+
{"version":3,"file":"builder-model.js","sourceRoot":"","sources":["../../jsr/intern/builder-model.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;
|
package/intern/design-repair.js
CHANGED
|
@@ -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
|
|
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) {
|