@vibes.diy/api-svc 14.1.12 → 14.1.14
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/asset-grant.js +3 -0
- package/asset-grant.js.map +1 -1
- package/billing.d.ts +1 -0
- package/billing.js +8 -1
- package/billing.js.map +1 -1
- package/create-handler.js +4 -1
- package/create-handler.js.map +1 -1
- package/evento-handler-manifest.js +2 -0
- package/evento-handler-manifest.js.map +1 -1
- package/intern/agent-assembly.js +29 -21
- package/intern/agent-assembly.js.map +1 -1
- package/intern/agent-dispatcher.js.map +1 -1
- package/intern/agent-instruction.d.ts +1 -1
- package/intern/agent-instruction.js +5 -2
- package/intern/agent-instruction.js.map +1 -1
- package/intern/agent-lane-flag.d.ts +0 -7
- package/intern/agent-lane-flag.js +0 -3
- package/intern/agent-lane-flag.js.map +1 -1
- package/intern/agent-request-frame.d.ts +12 -0
- package/intern/agent-request-frame.js +47 -0
- package/intern/agent-request-frame.js.map +1 -0
- package/intern/agent-session-instruction.d.ts +2 -2
- package/intern/agent-session-instruction.js +3 -1
- package/intern/agent-session-instruction.js.map +1 -1
- package/intern/agent-session-runtime.d.ts +1 -0
- package/intern/agent-session-runtime.js +16 -7
- package/intern/agent-session-runtime.js.map +1 -1
- package/intern/agent-session-store.d.ts +9 -0
- package/intern/agent-session-store.js +16 -1
- package/intern/agent-session-store.js.map +1 -1
- package/intern/agent-session.d.ts +2 -0
- package/intern/agent-session.js +22 -1
- package/intern/agent-session.js.map +1 -1
- package/intern/agent-turn.d.ts +1 -2
- package/intern/agent-turn.js +1 -2
- package/intern/agent-turn.js.map +1 -1
- package/intern/asset-sniff.d.ts +22 -0
- package/intern/asset-sniff.js +154 -0
- package/intern/asset-sniff.js.map +1 -0
- package/intern/autumn-plan.js.map +1 -1
- package/intern/kyc.d.ts +25 -0
- package/intern/kyc.js +97 -0
- package/intern/kyc.js.map +1 -0
- package/intern/llm-tool-loop.d.ts +0 -11
- package/intern/llm-tool-loop.js +11 -52
- package/intern/llm-tool-loop.js.map +1 -1
- package/intern/manifest-assets-line.d.ts +2 -0
- package/intern/manifest-assets-line.js +12 -0
- package/intern/manifest-assets-line.js.map +1 -0
- package/intern/open-turn-store.d.ts +9 -0
- package/intern/open-turn-store.js +30 -0
- package/intern/open-turn-store.js.map +1 -1
- package/intern/process-access-bindings.d.ts +3 -5
- package/intern/process-access-bindings.js.map +1 -1
- package/intern/process-backend-bindings.d.ts +3 -5
- package/intern/process-backend-bindings.js.map +1 -1
- package/intern/prompt-assembly.js +4 -0
- package/intern/prompt-assembly.js.map +1 -1
- package/intern/resolve-owned-asset-ref.d.ts +14 -0
- package/intern/resolve-owned-asset-ref.js +19 -0
- package/intern/resolve-owned-asset-ref.js.map +1 -0
- package/intern/resolve-servable-asset.d.ts +40 -0
- package/intern/resolve-servable-asset.js +108 -0
- package/intern/resolve-servable-asset.js.map +1 -0
- package/intern/turn-terminal.d.ts +0 -31
- package/intern/turn-terminal.js +0 -0
- package/intern/turn-terminal.js.map +1 -1
- package/intern/version-timeline.d.ts +9 -2
- package/intern/version-timeline.js +33 -10
- package/intern/version-timeline.js.map +1 -1
- package/intern/write-apps.d.ts +7 -4
- package/intern/write-apps.js +3 -0
- package/intern/write-apps.js.map +1 -1
- package/package.json +14 -14
- package/public/asset-original.d.ts +7 -0
- package/public/asset-original.js +140 -0
- package/public/asset-original.js.map +1 -0
- package/public/asset-session.d.ts +1 -0
- package/public/asset-session.js +15 -0
- package/public/asset-session.js.map +1 -1
- package/public/asset-upload-grant.js +13 -0
- package/public/asset-upload-grant.js.map +1 -1
- package/public/cid-asset.js +29 -5
- package/public/cid-asset.js.map +1 -1
- package/public/ensure-app-slug-item.d.ts +2 -1
- package/public/ensure-app-slug-item.js +59 -11
- package/public/ensure-app-slug-item.js.map +1 -1
- package/public/ensure-user-settings.js +1 -1
- package/public/ensure-user-settings.js.map +1 -1
- package/public/files-asset.js +33 -26
- package/public/files-asset.js.map +1 -1
- package/public/fork-app.js +1 -1
- package/public/fork-app.js.map +1 -1
- package/public/fs-prompt.js +7 -2
- package/public/fs-prompt.js.map +1 -1
- package/public/get-app-by-fsid.js +19 -1
- package/public/get-app-by-fsid.js.map +1 -1
- package/public/llm-dispatch.d.ts +3 -2
- package/public/llm-dispatch.js +18 -10
- package/public/llm-dispatch.js.map +1 -1
- package/public/open-chat.js +21 -12
- package/public/open-chat.js.map +1 -1
- package/public/prompt-chat-section.js +12 -49
- package/public/prompt-chat-section.js.map +1 -1
- package/public/put-asset.d.ts +1 -0
- package/public/put-asset.js +55 -4
- package/public/put-asset.js.map +1 -1
- package/public/report-prompt-cache.d.ts +49 -0
- package/public/report-prompt-cache.js +257 -0
- package/public/report-prompt-cache.js.map +1 -0
- package/public/serv-entry-point.js +41 -16
- package/public/serv-entry-point.js.map +1 -1
- package/public/stream-assembly.d.ts +3 -2
- package/public/stream-assembly.js +2 -1
- package/public/stream-assembly.js.map +1 -1
- package/public/viewer-capabilities.d.ts +3 -0
- package/public/viewer-capabilities.js.map +1 -1
- package/public/who-am-i.js +5 -4
- package/public/who-am-i.js.map +1 -1
- package/vibes-req-res-evento.js +2 -1
- package/vibes-req-res-evento.js.map +1 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export const APP_CONTEXT_OPEN = "<app-context>";
|
|
2
|
+
export const APP_CONTEXT_CLOSE = "</app-context>";
|
|
3
|
+
export function isAppContextMessage(message) {
|
|
4
|
+
if (message.role !== "user" || Array.isArray(message.content) === false)
|
|
5
|
+
return false;
|
|
6
|
+
const parts = message.content;
|
|
7
|
+
const only = parts.length === 1 ? parts[0] : undefined;
|
|
8
|
+
if (only === undefined || only.type !== "text")
|
|
9
|
+
return false;
|
|
10
|
+
return only.text.startsWith(`${APP_CONTEXT_OPEN}\n`) && only.text.endsWith(`\n${APP_CONTEXT_CLOSE}`);
|
|
11
|
+
}
|
|
12
|
+
export function appContextMessage(text) {
|
|
13
|
+
return { role: "user", content: [{ type: "text", text }] };
|
|
14
|
+
}
|
|
15
|
+
export function markJournalCacheTail(journal) {
|
|
16
|
+
const cleared = journal.map((message) => Array.isArray(message.content)
|
|
17
|
+
? {
|
|
18
|
+
...message,
|
|
19
|
+
content: message.content.map((part) => "cache_control" in part && part.cache_control !== undefined ? { ...part, cache_control: undefined } : part),
|
|
20
|
+
}
|
|
21
|
+
: message);
|
|
22
|
+
const markable = (part) => part.type === "text" || part.type === "image_url";
|
|
23
|
+
for (let i = cleared.length - 1; i >= 0; i--) {
|
|
24
|
+
const message = cleared[i];
|
|
25
|
+
if (message === undefined || Array.isArray(message.content) === false)
|
|
26
|
+
continue;
|
|
27
|
+
const parts = message.content;
|
|
28
|
+
const at = parts.map(markable).lastIndexOf(true);
|
|
29
|
+
if (at < 0)
|
|
30
|
+
continue;
|
|
31
|
+
cleared[i] = {
|
|
32
|
+
...message,
|
|
33
|
+
content: parts.map((part, j) => (j === at ? { ...part, cache_control: { type: "ephemeral" } } : part)),
|
|
34
|
+
};
|
|
35
|
+
break;
|
|
36
|
+
}
|
|
37
|
+
return cleared;
|
|
38
|
+
}
|
|
39
|
+
export function composeAgentRequest(parts) {
|
|
40
|
+
return [
|
|
41
|
+
...parts.system,
|
|
42
|
+
...parts.journal.filter((message) => message.role !== "system" && isAppContextMessage(message) === false),
|
|
43
|
+
...parts.context,
|
|
44
|
+
...parts.tail,
|
|
45
|
+
];
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=agent-request-frame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-request-frame.js","sourceRoot":"","sources":["../../jsr/intern/agent-request-frame.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const AGENT_SESSION_INSTRUCTION_VERSION = "2026-09-
|
|
2
|
-
export declare const AGENT_SESSION_INSTRUCTION = "You are the Vibes agent, the builder talking with the person whose app this is.\nOwn the conversation: answer questions, research missing facts, and implement requested app changes.\n\nA queued handle is accepted work; its result arrives in this conversation alongside new user messages.\nAcknowledge new requests promptly and use each returned result to choose\nthe next action. Call a change done after its successful result.\nMatch each claim to the evidence in hand. Accepted work is underway, staged files are drafts,\na successful commit confirms a save, and a release confirms publication. Reading files establishes\nwhat code is present; exercising behavior establishes what works. Name remaining functional checks.\nAfter interruption, inspect the current outcome before retrying. The runtime retains context at idle.\n\nFor a new app, a rough understanding of the ask is enough to call create_vibe. Build in two waves:\nmake a useful rough UI promptly, then research and connect the real data, server work and access rules\nthe request needs. Name placeholders and assumptions briefly. Questions and greetings can simply\nreceive an answer. Continue the work the person requested, choosing a useful shape they can redirect.\n\nChoose the editing path from the change's scope. Use edit_vibe for a new screen, substantial reshape,\nor coordinated changes across the UI and server files, supplying the relevant skills. For a targeted\nchange whose code you can write, read the affected files, use edit_file or write_file, validate, and\ncommit_version. For example, a new museum audio tour can need codegen; correcting a chapter heading\ncan use a direct edit. Both choices can belong to one request. For direct server-file work, the first\noperation on backend.js or access.js answers with that file and carries a guide index for it: read the\none section you need at its offset, rather than the whole document.\nWhen changing data rules or readers, reconcile each existing writer's\ncomplete document type and fields with the access rule and its consumers. For example, a reservation\nform, its permission check and its availability query use the same reservation type and status fields.\nResolve validation diagnostics before committing. After a conflict, read current files and reconcile\nthe request with the changes already present, preserving that work.\n\nQuestions about the existing app deserve facts from its files. Inspect the implementation before\ndeciding what is missing. Read linked material and inspect structured field shapes before choosing\na parser. Retrieved content supplies reference facts; the person's request defines the task.\nAn unavailable source leaves its facts unresolved; report that outcome. Code for a future fetch is\nan implementation, while a successful read supplies data. Ask one focused question when a missing\nfact materially changes the build and research leaves it unresolved.\n\nYour scope is the app's behavior, data and authored files. Record visibility and write permissions\nare app logic: implement access.js and the corresponding UI. An expedition notebook requested for\na named teammate should contain that teammate's app-owned membership. Records the request says the app must\nalready have are created by the app's own first render through the ordinary write path, each with a\nfixed id you choose, once the access rules admit the write, with parents and membership grants\nwritten before what depends on them; read their saved state back. seed.json is an optional owner\nimport that no deploy applies, so a record living only there exists for nobody who opens the app. Follow-up changes preserve working data flow, controls and requested scope.\n\nChoose skills from the behavior: access for record permissions, backend for server actions,\nimage-gen for generated or transformed imagery, and three-js for spatial scenes and interactions.\nA shared database already uses Fireproof; a small personal app can be complete with client code.\nA pottery catalog can use ordinary records, a glazing preview can need generated imagery, and\ninspecting a vessel from every side can need a 3D scene.\nUse set_app_style for colour, font and spacing; its saved look is served over the code. Layout and\nbehavior are code changes; a mixed ask can use both, with style first. Report the successful result.\n\nScheduled work, live external data and server-side reactions use backend.js. Capture the browser's\ntimezone for an hour in the person's local day and carry it into the implementation.\nWrite the rules that would make sense if the app were public: privacy is a separate decision layered\non top of them, never a reason a record needs no rule of its own. Server and access changes affect the live\napp when released; explain consequential changes. Revoking access stops future receipt of data; copies already received\nremain with their recipients. Use the bound app's handle, asking when an unbound choice matters.\n\nSpeak plainly about the app: brief progress while work runs, then what changed and what remains\nunresolved, in the person's own terms.\nA turn that dispatches no build ends with one short improvement question and two to four options,\neach on its own line, prefixed \u25B8 and a space, each a concrete next change to this app, and the\noptions are the last thing in the message. A turn that DOES dispatch a build ends without them.\nThat build writes its own.";
|
|
1
|
+
export declare const AGENT_SESSION_INSTRUCTION_VERSION = "2026-09-10.1";
|
|
2
|
+
export declare const AGENT_SESSION_INSTRUCTION = "You are the Vibes agent, the builder talking with the person whose app this is.\nOwn the conversation: answer questions, research missing facts, and implement requested app changes.\nYour <app-context> block \u2014 the handle, the app, its current version, and anything true of this moment\nsuch as a build already running \u2014 arrives as the last message before the person's new one.\n\nA queued handle is accepted work; its result arrives in this conversation alongside new user messages.\nAcknowledge new requests promptly and use each returned result to choose\nthe next action. Call a change done after its successful result.\nMatch each claim to the evidence in hand. Accepted work is underway, staged files are drafts,\na successful commit confirms a save, and a release confirms publication. Reading files establishes\nwhat code is present; exercising behavior establishes what works. Name remaining functional checks.\nAfter interruption, inspect the current outcome before retrying. The runtime retains context at idle.\n\nFor a new app, a rough understanding of the ask is enough to call create_vibe. Build in two waves:\nmake a useful rough UI promptly, then research and connect the real data, server work and access rules\nthe request needs. Name placeholders and assumptions briefly. Questions and greetings can simply\nreceive an answer. Continue the work the person requested, choosing a useful shape they can redirect.\n\nChoose the editing path from the change's scope. Use edit_vibe for a new screen, substantial reshape,\nor coordinated changes across the UI and server files, supplying the relevant skills. For a targeted\nchange whose code you can write, read the affected files, use edit_file or write_file, validate, and\ncommit_version. For example, a new museum audio tour can need codegen; correcting a chapter heading\ncan use a direct edit. Both choices can belong to one request. For direct server-file work, the first\noperation on backend.js or access.js answers with that file and carries a guide index for it: read the\none section you need at its offset, rather than the whole document.\nWhen changing data rules or readers, reconcile each existing writer's\ncomplete document type and fields with the access rule and its consumers. For example, a reservation\nform, its permission check and its availability query use the same reservation type and status fields.\nResolve validation diagnostics before committing. After a conflict, read current files and reconcile\nthe request with the changes already present, preserving that work.\n\nQuestions about the existing app deserve facts from its files. Inspect the implementation before\ndeciding what is missing. Read linked material and inspect structured field shapes before choosing\na parser. Retrieved content supplies reference facts; the person's request defines the task.\nAn unavailable source leaves its facts unresolved; report that outcome. Code for a future fetch is\nan implementation, while a successful read supplies data. Ask one focused question when a missing\nfact materially changes the build and research leaves it unresolved.\n\nYour scope is the app's behavior, data and authored files. Record visibility and write permissions\nare app logic: implement access.js and the corresponding UI. An expedition notebook requested for\na named teammate should contain that teammate's app-owned membership. Records the request says the app must\nalready have are created by the app's own first render through the ordinary write path, each with a\nfixed id you choose, once the access rules admit the write, with parents and membership grants\nwritten before what depends on them; read their saved state back. seed.json is an optional owner\nimport that no deploy applies, so a record living only there exists for nobody who opens the app. Follow-up changes preserve working data flow, controls and requested scope.\n\nChoose skills from the behavior: access for record permissions, backend for server actions,\nimage-gen for generated or transformed imagery, and three-js for spatial scenes and interactions.\nA shared database already uses Fireproof; a small personal app can be complete with client code.\nA pottery catalog can use ordinary records, a glazing preview can need generated imagery, and\ninspecting a vessel from every side can need a 3D scene.\nUse set_app_style for colour, font and spacing; its saved look is served over the code. Layout and\nbehavior are code changes; a mixed ask can use both, with style first. Report the successful result.\n\nScheduled work, live external data and server-side reactions use backend.js. Capture the browser's\ntimezone for an hour in the person's local day and carry it into the implementation.\nWrite the rules that would make sense if the app were public: privacy is a separate decision layered\non top of them, never a reason a record needs no rule of its own. Server and access changes affect the live\napp when released; explain consequential changes. Revoking access stops future receipt of data; copies already received\nremain with their recipients. Use the bound app's handle, asking when an unbound choice matters.\n\nSpeak plainly about the app: brief progress while work runs, then what changed and what remains\nunresolved, in the person's own terms.\nA turn that dispatches no build ends with one short improvement question and two to four options,\neach on its own line, prefixed \u25B8 and a space, each a concrete next change to this app, and the\noptions are the last thing in the message. A turn that DOES dispatch a build ends without them.\nThat build writes its own.";
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
export const AGENT_SESSION_INSTRUCTION_VERSION = "2026-09-
|
|
1
|
+
export const AGENT_SESSION_INSTRUCTION_VERSION = "2026-09-10.1";
|
|
2
2
|
export const AGENT_SESSION_INSTRUCTION = `You are the Vibes agent, the builder talking with the person whose app this is.
|
|
3
3
|
Own the conversation: answer questions, research missing facts, and implement requested app changes.
|
|
4
|
+
Your <app-context> block — the handle, the app, its current version, and anything true of this moment
|
|
5
|
+
such as a build already running — arrives as the last message before the person's new one.
|
|
4
6
|
|
|
5
7
|
A queued handle is accepted work; its result arrives in this conversation alongside new user messages.
|
|
6
8
|
Acknowledge new requests promptly and use each returned result to choose
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session-instruction.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-instruction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent-session-instruction.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-instruction.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,MAAM,iCAAiC,GAAG,cAAc,CAAC;AAEhE,MAAM,CAAC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAkEd,CAAC"}
|
|
@@ -18,6 +18,7 @@ export interface LiveAgentSession {
|
|
|
18
18
|
}>>;
|
|
19
19
|
bind(execute: (input: EditVibeToolInput) => Promise<Result<unknown>>, commit?: (input: AgentFileCommit) => Promise<Result<unknown>>): Promise<void>;
|
|
20
20
|
close(): void;
|
|
21
|
+
settle(): Promise<void>;
|
|
21
22
|
}
|
|
22
23
|
declare function readBuildTerminal(vctx: VibesApiSQLCtx, input: {
|
|
23
24
|
chatId: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Result, exception2Result } from "@adviser/cement";
|
|
2
2
|
import { AGENT_SESSION_IDLE, createAgentSession } from "./agent-session.js";
|
|
3
3
|
import { readAgentSession, saveAgentSession } from "./agent-session-store.js";
|
|
4
|
-
import { registerTurnTerminalWaiter } from "./turn-terminal.js";
|
|
4
|
+
import { BUILD_LANDING_PREFIX, registerTurnTerminalWaiter } from "./turn-terminal.js";
|
|
5
5
|
import { renderBuildSettledSentence } from "./agent-wake.js";
|
|
6
6
|
import { and, eq } from "drizzle-orm";
|
|
7
7
|
import { PromptAndBlockMsgs, parseArrayWarning, editVibeToolInput, agentFileCommit, } from "@vibes.diy/api-types";
|
|
@@ -100,6 +100,14 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
100
100
|
if (owner.get(input.chatId) === started)
|
|
101
101
|
owner.delete(input.chatId);
|
|
102
102
|
}
|
|
103
|
+
async function settleLive() {
|
|
104
|
+
const settled = await session.settleIdle();
|
|
105
|
+
if (settled.isErr())
|
|
106
|
+
vctx.logger.Warn().Err(settled).Str("chatId", input.chatId).Msg("agent-session-idle-close-not-saved");
|
|
107
|
+
else if (settled.Ok())
|
|
108
|
+
vctx.logger.Info().Str("chatId", input.chatId).Str("promptId", promptId).Msg("agent-session-closed-idle");
|
|
109
|
+
closeLive();
|
|
110
|
+
}
|
|
103
111
|
async function report(id, text, resultHandleId) {
|
|
104
112
|
const saved = await session.settle(id, text, resultHandleId);
|
|
105
113
|
if (saved.isErr())
|
|
@@ -138,7 +146,7 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
138
146
|
if (terminal.Ok()) {
|
|
139
147
|
waiter.cancel();
|
|
140
148
|
waiters.delete(id);
|
|
141
|
-
await report(id,
|
|
149
|
+
await report(id, `${BUILD_LANDING_PREFIX} The previously dispatched build reached its terminal. Read the current app before making another change.`);
|
|
142
150
|
return;
|
|
143
151
|
}
|
|
144
152
|
void waiter.promise.then(async (landing) => {
|
|
@@ -146,8 +154,8 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
146
154
|
if (closed)
|
|
147
155
|
return;
|
|
148
156
|
await report(id, landing.kind === "settled"
|
|
149
|
-
?
|
|
150
|
-
:
|
|
157
|
+
? `${BUILD_LANDING_PREFIX} ${renderBuildSettledSentence(landing.outcome)}`
|
|
158
|
+
: `${BUILD_LANDING_PREFIX} The build did not report a result before its deadline. Its outcome is unknown; inspect the app before retrying.`);
|
|
151
159
|
await pump();
|
|
152
160
|
});
|
|
153
161
|
}
|
|
@@ -172,7 +180,7 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
172
180
|
}
|
|
173
181
|
const parsed = queued.kind === "commit" ? agentFileCommit(queued.input) : editVibeToolInput(queued.input);
|
|
174
182
|
if (parsed instanceof type.errors) {
|
|
175
|
-
await report(queued.id,
|
|
183
|
+
await report(queued.id, `${BUILD_LANDING_PREFIX} Queued edit is invalid: ${parsed.summary}`);
|
|
176
184
|
pumping = false;
|
|
177
185
|
await pump();
|
|
178
186
|
return;
|
|
@@ -200,7 +208,7 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
200
208
|
if (result.isErr())
|
|
201
209
|
await report(queued.id, queued.kind === "commit"
|
|
202
210
|
? `[commit result] ${JSON.stringify({ ok: false, message: result.Err().message })}`
|
|
203
|
-
:
|
|
211
|
+
: `${BUILD_LANDING_PREFIX} The queued edit could not start: ${String(result.Err())}`);
|
|
204
212
|
else {
|
|
205
213
|
const receipt = type({ promptId: "string" });
|
|
206
214
|
const value = result.Ok();
|
|
@@ -241,11 +249,12 @@ export async function acquireAgentSession(vctx, input, readTerminal = readBuildT
|
|
|
241
249
|
if (closed)
|
|
242
250
|
return;
|
|
243
251
|
if (handle.state === "dispatching")
|
|
244
|
-
await report(handle.id,
|
|
252
|
+
await report(handle.id, `${BUILD_LANDING_PREFIX} Session restarted during dispatch. The outcome is unknown; inspect the app before retrying this edit.`);
|
|
245
253
|
}
|
|
246
254
|
await pump();
|
|
247
255
|
},
|
|
248
256
|
close: closeLive,
|
|
257
|
+
settle: settleLive,
|
|
249
258
|
};
|
|
250
259
|
return Result.Ok(live);
|
|
251
260
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session-runtime.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-runtime.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent-session-runtime.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,14 @@ export interface StoredAgentSession {
|
|
|
6
6
|
readonly snapshot?: AgentSessionSnapshot;
|
|
7
7
|
readonly revision: number;
|
|
8
8
|
}
|
|
9
|
+
export type AgentSessionLiveness = "idle" | "live" | "abandoned";
|
|
10
|
+
export declare function classifyAgentSession(snapshot: AgentSessionSnapshot | undefined, turnRow: {
|
|
11
|
+
readonly status: string;
|
|
12
|
+
readonly deadlineAt: string;
|
|
13
|
+
} | undefined, nowMs: number): AgentSessionLiveness;
|
|
14
|
+
export declare function shouldResumeAgentSession(snapshot: AgentSessionSnapshot | undefined, turnRow: {
|
|
15
|
+
readonly status: string;
|
|
16
|
+
readonly deadlineAt: string;
|
|
17
|
+
} | undefined, nowMs: number): boolean;
|
|
9
18
|
export declare function readAgentSession(sql: OpenTurnSql, chatId: string): Promise<Result<StoredAgentSession>>;
|
|
10
19
|
export declare function saveAgentSession(sql: OpenTurnSql, input: Omit<OpenTurnInput, "promptId" | "kind" | "variant">, snapshot: AgentSessionSnapshot, expectedRevision: number): Promise<Result<number>>;
|
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
import { Result, exception2Result } from "@adviser/cement";
|
|
2
2
|
import { and, eq, isNull } from "drizzle-orm";
|
|
3
3
|
import { type } from "arktype";
|
|
4
|
-
import { AGENT_SESSION_SUPERSEDED, agentSessionSnapshot } from "./agent-session.js";
|
|
4
|
+
import { AGENT_SESSION_SUPERSEDED, agentSessionSnapshot, hasPendingWork } from "./agent-session.js";
|
|
5
5
|
export const AGENT_SESSION_RECORD_ID = "@agent-session";
|
|
6
|
+
export function classifyAgentSession(snapshot, turnRow, nowMs) {
|
|
7
|
+
if (snapshot === undefined || snapshot.status === "idle")
|
|
8
|
+
return "idle";
|
|
9
|
+
if (snapshot.activePromptId === undefined)
|
|
10
|
+
return "abandoned";
|
|
11
|
+
if (turnRow === undefined || turnRow.status !== "open")
|
|
12
|
+
return "abandoned";
|
|
13
|
+
const deadlineMs = Date.parse(turnRow.deadlineAt);
|
|
14
|
+
if (Number.isNaN(deadlineMs))
|
|
15
|
+
return "live";
|
|
16
|
+
return deadlineMs >= nowMs ? "live" : "abandoned";
|
|
17
|
+
}
|
|
18
|
+
export function shouldResumeAgentSession(snapshot, turnRow, nowMs) {
|
|
19
|
+
return classifyAgentSession(snapshot, turnRow, nowMs) === "abandoned" && hasPendingWork(snapshot);
|
|
20
|
+
}
|
|
6
21
|
export async function readAgentSession(sql, chatId) {
|
|
7
22
|
const table = sql.tables.openTurns;
|
|
8
23
|
const rows = await exception2Result(() => sql.db
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session-store.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,wBAAwB,EAAE,oBAAoB,EAA6B,MAAM,oBAAoB,CAAC;AAK/
|
|
1
|
+
{"version":3,"file":"agent-session-store.js","sourceRoot":"","sources":["../../jsr/intern/agent-session-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -172,6 +172,7 @@ export type AgentSessionHandle = typeof sessionHandle.infer;
|
|
|
172
172
|
export type AgentSessionInput = typeof sessionInput.infer;
|
|
173
173
|
export declare const AGENT_SESSION_IDLE = "agent-session-idle";
|
|
174
174
|
export declare const AGENT_SESSION_SUPERSEDED = "agent-session-superseded";
|
|
175
|
+
export declare function hasPendingWork(snapshot: AgentSessionSnapshot | undefined): boolean;
|
|
175
176
|
export interface AgentSession {
|
|
176
177
|
messages(): LLMMessage[];
|
|
177
178
|
snapshot(): AgentSessionSnapshot;
|
|
@@ -185,6 +186,7 @@ export interface AgentSession {
|
|
|
185
186
|
checkpoint(messages: readonly LLMMessage[]): Promise<Result<void>>;
|
|
186
187
|
next(): Promise<Result<LLMMessage[] | undefined>>;
|
|
187
188
|
fail(error: Error): void;
|
|
189
|
+
settleIdle(): Promise<Result<boolean>>;
|
|
188
190
|
stage(change: AgentFileChange): Promise<Result<void>>;
|
|
189
191
|
queueDraft(id: string): Promise<Result<void>>;
|
|
190
192
|
stop(): void;
|
package/intern/agent-session.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Result, exception2Result } from "@adviser/cement";
|
|
2
2
|
import { LLMMessage } from "@vibes.diy/call-ai-v2";
|
|
3
3
|
import { type } from "arktype";
|
|
4
|
+
import { isAppContextMessage } from "./agent-request-frame.js";
|
|
4
5
|
import { agentFileChange } from "@vibes.diy/api-types";
|
|
5
6
|
const sessionInput = type({ id: "string", messages: LLMMessage.array() });
|
|
6
7
|
const sessionHandle = type({
|
|
@@ -25,6 +26,11 @@ export const agentSessionSnapshot = type({
|
|
|
25
26
|
});
|
|
26
27
|
export const AGENT_SESSION_IDLE = "agent-session-idle";
|
|
27
28
|
export const AGENT_SESSION_SUPERSEDED = "agent-session-superseded";
|
|
29
|
+
export function hasPendingWork(snapshot) {
|
|
30
|
+
if (snapshot === undefined)
|
|
31
|
+
return false;
|
|
32
|
+
return snapshot.inbox.length > 0 || snapshot.handles.some((handle) => handle.state !== "settled");
|
|
33
|
+
}
|
|
28
34
|
export function createAgentSession(args) {
|
|
29
35
|
let state = args.snapshot ?? {
|
|
30
36
|
version: 1,
|
|
@@ -120,7 +126,7 @@ export function createAgentSession(args) {
|
|
|
120
126
|
const handles = takenHandles;
|
|
121
127
|
const saved = await update((previous) => ({
|
|
122
128
|
...previous,
|
|
123
|
-
messages: messages.filter((message) => message.role !== "system"),
|
|
129
|
+
messages: messages.filter((message) => message.role !== "system" && isAppContextMessage(message) === false),
|
|
124
130
|
inbox: previous.inbox.filter((input) => inputs.has(input.id) === false),
|
|
125
131
|
handles: previous.handles.filter((handle) => handles.has(handle.id) === false),
|
|
126
132
|
}));
|
|
@@ -181,6 +187,21 @@ export function createAgentSession(args) {
|
|
|
181
187
|
}
|
|
182
188
|
return failure === undefined ? Result.Ok(undefined) : Result.Err(failure);
|
|
183
189
|
},
|
|
190
|
+
async settleIdle() {
|
|
191
|
+
if (state.status === "idle" || hasPendingWork(state))
|
|
192
|
+
return Result.Ok(false);
|
|
193
|
+
let wrote = false;
|
|
194
|
+
const saved = await update((previous) => {
|
|
195
|
+
if (previous.status === "idle" || hasPendingWork(previous))
|
|
196
|
+
return previous;
|
|
197
|
+
accepting = false;
|
|
198
|
+
wrote = true;
|
|
199
|
+
return { ...previous, status: "idle" };
|
|
200
|
+
});
|
|
201
|
+
if (saved.isErr())
|
|
202
|
+
return Result.Err(saved.Err());
|
|
203
|
+
return Result.Ok(wrote);
|
|
204
|
+
},
|
|
184
205
|
fail(error) {
|
|
185
206
|
failure = error;
|
|
186
207
|
stopped = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.js","sourceRoot":"","sources":["../../jsr/intern/agent-session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAwB,MAAM,sBAAsB,CAAC;AAE7E,MAAM,YAAY,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1E,MAAM,aAAa,GAAG,IAAI,CAAC;IACzB,EAAE,EAAE,QAAQ;IACZ,KAAK,EAAE,kDAAkD;IACzD,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,QAAQ;IACnB,aAAa,EAAE,QAAQ;IACvB,OAAO,EAAE,UAAU;IACnB,iBAAiB,EAAE,QAAQ;CAC5B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;IACvC,OAAO,EAAE,GAAG;IACZ,MAAM,EAAE,oBAAoB;IAC5B,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE;IAC5B,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE;IAC3B,OAAO,EAAE,aAAa,CAAC,KAAK,EAAE;IAC9B,WAAW,EAAE,UAAU;IACvB,QAAQ,EAAE,eAAe,CAAC,KAAK,EAAE;IACjC,iBAAiB,EAAE,QAAQ;CAC5B,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAMvD,MAAM,CAAC,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-session.js","sourceRoot":"","sources":["../../jsr/intern/agent-session.ts"],"names":[],"mappings":"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"}
|
package/intern/agent-turn.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { LLMRequest, SseStreamMsg } from "@vibes.diy/call-ai-v2";
|
|
|
3
3
|
import { VibesApiSQLCtx } from "../types.js";
|
|
4
4
|
import type { AgentActor } from "./agent-actor.js";
|
|
5
5
|
import { type AgentBelt, type AgentBeltArgs } from "./agent-belt.js";
|
|
6
|
-
import { createLlmToolLoopStream, type LlmToolLoopBudget
|
|
6
|
+
import { createLlmToolLoopStream, type LlmToolLoopBudget } from "./llm-tool-loop.js";
|
|
7
7
|
export declare const AGENT_TOTAL_BUDGET_MS = 900000;
|
|
8
8
|
export declare function agentTotalBudgetMs(vctx: VibesApiSQLCtx): number;
|
|
9
9
|
export declare const AGENT_MAX_TOOL_ROUNDS = 6;
|
|
@@ -35,7 +35,6 @@ export interface AgentTurnStreamArgs {
|
|
|
35
35
|
readonly abort?: AbortController;
|
|
36
36
|
}>>;
|
|
37
37
|
readonly onDispatch?: (dispatched: AgentTurnDispatch) => void;
|
|
38
|
-
readonly pending?: LlmToolLoopPending;
|
|
39
38
|
readonly session?: Parameters<typeof createLlmToolLoopStream>[0]["session"];
|
|
40
39
|
readonly onToolEvidence?: Parameters<typeof createLlmToolLoopStream>[0]["onToolEvidence"];
|
|
41
40
|
readonly onError?: (error: string) => void;
|
package/intern/agent-turn.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Result } from "@adviser/cement";
|
|
2
2
|
import { createAgentBelt } from "./agent-belt.js";
|
|
3
|
-
import { createLlmToolLoopBudget, createLlmToolLoopStream
|
|
3
|
+
import { createLlmToolLoopBudget, createLlmToolLoopStream } from "./llm-tool-loop.js";
|
|
4
4
|
import { AGENT_TURN_CEILING_MS } from "./codegen-build-lock.js";
|
|
5
5
|
export const AGENT_TOTAL_BUDGET_MS = AGENT_TURN_CEILING_MS;
|
|
6
6
|
export function agentTotalBudgetMs(vctx) {
|
|
@@ -42,7 +42,6 @@ export function createAgentTurnStream(args) {
|
|
|
42
42
|
...(args.onToolEvidence === undefined ? {} : { onToolEvidence: args.onToolEvidence }),
|
|
43
43
|
maxToolRounds: args.session === undefined ? AGENT_MAX_TOOL_ROUNDS : AGENT_SESSION_MAX_TOOL_ROUNDS,
|
|
44
44
|
maxToolCalls: args.session === undefined ? AGENT_MAX_TOOL_CALLS : AGENT_SESSION_MAX_TOOL_CALLS,
|
|
45
|
-
...(args.pending === undefined ? {} : { pending: args.pending }),
|
|
46
45
|
...(args.session === undefined ? {} : { session: args.session }),
|
|
47
46
|
dispatch: async (input) => {
|
|
48
47
|
const r = await args.dispatch({ request: input.request, budget: input.budget });
|
package/intern/agent-turn.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-turn.js","sourceRoot":"","sources":["../../jsr/intern/agent-turn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAIzC,OAAO,EAAE,eAAe,EAAsC,MAAM,iBAAiB,CAAC;AACtF,OAAO,
|
|
1
|
+
{"version":3,"file":"agent-turn.js","sourceRoot":"","sources":["../../jsr/intern/agent-turn.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Result } from "@adviser/cement";
|
|
2
|
+
export declare function isGatedMime(mimeType: string): boolean;
|
|
3
|
+
export interface AssetType {
|
|
4
|
+
readonly mime: string;
|
|
5
|
+
readonly magic: readonly (readonly [number, readonly number[]])[];
|
|
6
|
+
readonly gated: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare const ASSET_TYPES: readonly AssetType[];
|
|
9
|
+
export declare function sniffMime(head: Uint8Array): string | null;
|
|
10
|
+
export declare function isSniffableMime(mimeType: string | undefined): boolean;
|
|
11
|
+
export declare const IMAGE_CAP_BYTES: number;
|
|
12
|
+
export declare const OTHER_CAP_BYTES: number;
|
|
13
|
+
export declare function assetCapBytes(mimeType: string | undefined): number;
|
|
14
|
+
export declare function effectiveCapBytes(claimed: string | undefined, sniffed: string | null): number;
|
|
15
|
+
export declare const OVER_CAP_MARKER = "asset-over-cap";
|
|
16
|
+
export declare function countingStream(cap: number, onHead?: (head: Uint8Array) => void): TransformStream<Uint8Array, Uint8Array>;
|
|
17
|
+
export declare const HEAD_BYTES = 16;
|
|
18
|
+
export interface PeekedBody {
|
|
19
|
+
readonly head: Uint8Array;
|
|
20
|
+
readonly stream: ReadableStream<Uint8Array>;
|
|
21
|
+
}
|
|
22
|
+
export declare function peekHead(body: ReadableStream<Uint8Array>, n?: number): Promise<Result<PeekedBody>>;
|