@auvira.ai/sdk 0.4.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/README.md +105 -0
  2. package/dist/agent/Agent.d.ts.map +1 -1
  3. package/dist/agent/Agent.js +9 -0
  4. package/dist/agent/Agent.js.map +1 -1
  5. package/dist/agent/attachmentContext.d.ts +9 -0
  6. package/dist/agent/attachmentContext.d.ts.map +1 -0
  7. package/dist/agent/attachmentContext.js +72 -0
  8. package/dist/agent/attachmentContext.js.map +1 -0
  9. package/dist/agent/editCompletion.d.ts +18 -3
  10. package/dist/agent/editCompletion.d.ts.map +1 -1
  11. package/dist/agent/editCompletion.js +113 -1
  12. package/dist/agent/editCompletion.js.map +1 -1
  13. package/dist/agent/evaluateTaskCompletion.d.ts +2 -0
  14. package/dist/agent/evaluateTaskCompletion.d.ts.map +1 -1
  15. package/dist/agent/evaluateTaskCompletion.js +4 -1
  16. package/dist/agent/evaluateTaskCompletion.js.map +1 -1
  17. package/dist/agent/events.d.ts +2 -2
  18. package/dist/agent/events.d.ts.map +1 -1
  19. package/dist/agent/events.js +2 -0
  20. package/dist/agent/events.js.map +1 -1
  21. package/dist/agent/hostTools.d.ts +46 -0
  22. package/dist/agent/hostTools.d.ts.map +1 -0
  23. package/dist/agent/hostTools.js +98 -0
  24. package/dist/agent/hostTools.js.map +1 -0
  25. package/dist/agent/parseSendPayload.d.ts +3 -1
  26. package/dist/agent/parseSendPayload.d.ts.map +1 -1
  27. package/dist/agent/parseSendPayload.js +16 -0
  28. package/dist/agent/parseSendPayload.js.map +1 -1
  29. package/dist/agent/runAgentTask.d.ts +4 -1
  30. package/dist/agent/runAgentTask.d.ts.map +1 -1
  31. package/dist/agent/runAgentTask.js +16 -0
  32. package/dist/agent/runAgentTask.js.map +1 -1
  33. package/dist/agent/runValidationWithRepair.d.ts.map +1 -1
  34. package/dist/agent/runValidationWithRepair.js +6 -0
  35. package/dist/agent/runValidationWithRepair.js.map +1 -1
  36. package/dist/agent/tools/assetPathValidation.d.ts +19 -0
  37. package/dist/agent/tools/assetPathValidation.d.ts.map +1 -0
  38. package/dist/agent/tools/assetPathValidation.js +124 -0
  39. package/dist/agent/tools/assetPathValidation.js.map +1 -0
  40. package/dist/agent/tools/executeTool.d.ts +1 -1
  41. package/dist/agent/tools/executeTool.d.ts.map +1 -1
  42. package/dist/agent/tools/executeTool.js +31 -1
  43. package/dist/agent/tools/executeTool.js.map +1 -1
  44. package/dist/agent/tools/generateImage.d.ts +11 -0
  45. package/dist/agent/tools/generateImage.d.ts.map +1 -0
  46. package/dist/agent/tools/generateImage.js +98 -0
  47. package/dist/agent/tools/generateImage.js.map +1 -0
  48. package/dist/agent/tools/publishReferenceImage.d.ts +9 -0
  49. package/dist/agent/tools/publishReferenceImage.d.ts.map +1 -0
  50. package/dist/agent/tools/publishReferenceImage.js +61 -0
  51. package/dist/agent/tools/publishReferenceImage.js.map +1 -0
  52. package/dist/agent/tools/saveAsset.d.ts +11 -0
  53. package/dist/agent/tools/saveAsset.d.ts.map +1 -0
  54. package/dist/agent/tools/saveAsset.js +30 -0
  55. package/dist/agent/tools/saveAsset.js.map +1 -0
  56. package/dist/agent/tools/types.d.ts +7 -0
  57. package/dist/agent/tools/types.d.ts.map +1 -1
  58. package/dist/agent/types.d.ts +37 -0
  59. package/dist/agent/types.d.ts.map +1 -1
  60. package/dist/agent/types.js.map +1 -1
  61. package/dist/agent/validateOptions.d.ts.map +1 -1
  62. package/dist/agent/validateOptions.js +10 -1
  63. package/dist/agent/validateOptions.js.map +1 -1
  64. package/dist/index.d.ts +4 -1
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +2 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/providers/agentic/AgenticCustomProvider.d.ts.map +1 -1
  69. package/dist/providers/agentic/AgenticCustomProvider.js +26 -0
  70. package/dist/providers/agentic/AgenticCustomProvider.js.map +1 -1
  71. package/dist/providers/agentic/agentLoop.d.ts +4 -1
  72. package/dist/providers/agentic/agentLoop.d.ts.map +1 -1
  73. package/dist/providers/agentic/agentLoop.js +295 -256
  74. package/dist/providers/agentic/agentLoop.js.map +1 -1
  75. package/dist/providers/agentic/toolSchemas.d.ts +438 -0
  76. package/dist/providers/agentic/toolSchemas.d.ts.map +1 -1
  77. package/dist/providers/agentic/toolSchemas.js +62 -0
  78. package/dist/providers/agentic/toolSchemas.js.map +1 -1
  79. package/dist/providers/types.d.ts +4 -1
  80. package/dist/providers/types.d.ts.map +1 -1
  81. package/dist/providers/types.js.map +1 -1
  82. package/dist/runner/jobTypes.d.ts +3 -2
  83. package/dist/runner/jobTypes.d.ts.map +1 -1
  84. package/dist/runner/run.d.ts.map +1 -1
  85. package/dist/runner/run.js +6 -2
  86. package/dist/runner/run.js.map +1 -1
  87. package/dist/runner/validateJob.d.ts.map +1 -1
  88. package/dist/runner/validateJob.js +83 -0
  89. package/dist/runner/validateJob.js.map +1 -1
  90. package/dist/util/minimaxImageClient.d.ts +25 -0
  91. package/dist/util/minimaxImageClient.d.ts.map +1 -0
  92. package/dist/util/minimaxImageClient.js +114 -0
  93. package/dist/util/minimaxImageClient.js.map +1 -0
  94. package/dist/workspace/referenceImages.d.ts +14 -0
  95. package/dist/workspace/referenceImages.d.ts.map +1 -0
  96. package/dist/workspace/referenceImages.js +60 -0
  97. package/dist/workspace/referenceImages.js.map +1 -0
  98. package/dist/workspace/workspaceCheckpoint.d.ts.map +1 -1
  99. package/dist/workspace/workspaceCheckpoint.js +148 -16
  100. package/dist/workspace/workspaceCheckpoint.js.map +1 -1
  101. package/dist/workspace/writeScreenshot.d.ts.map +1 -1
  102. package/dist/workspace/writeScreenshot.js +15 -7
  103. package/dist/workspace/writeScreenshot.js.map +1 -1
  104. package/docs/host-integration-image-placement.md +141 -0
  105. package/docs/sandbox-runner.md +43 -1
  106. package/package.json +6 -1
package/README.md CHANGED
@@ -45,6 +45,8 @@ auvira-sdk-run --job <editJobId>
45
45
 
46
46
  See [docs/sandbox-runner.md](docs/sandbox-runner.md) for job schema, NDJSON protocol, host integration, and session resume.
47
47
 
48
+ For image placement (attachments, completion rules, host tools), see [docs/host-integration-image-placement.md](docs/host-integration-image-placement.md).
49
+
48
50
  ## Quick start (local repo)
49
51
 
50
52
  ```ts
@@ -202,6 +204,29 @@ model: {
202
204
 
203
205
  The SDK maps these to OpenHands CLI env vars internally (`LLM_MODEL`, `LLM_BASE_URL`, `LLM_API_KEY`) while also exposing `OPENHANDS_MODEL`, `CUSTOM_MODEL_BASE_URL`, and `CUSTOM_MODEL_API_KEY` to the provider process.
204
206
 
207
+ ## Visual assets and image generation (v0.5.0)
208
+
209
+ Reference images uploaded with a run are saved under `.auvira/` as stable names (`input-image-0.png`, `input-image-1.png`, …). The agent can:
210
+
211
+ | Tool | Purpose |
212
+ |------|---------|
213
+ | `publish_reference_image` | Copy a reference image into `public/` |
214
+ | `generate_image` | Generate via MiniMax **image-01** (`POST /v1/image_generation`) |
215
+
216
+ **Chat vs image API:** MiniMax-M3 chat (`/chat/completions`) is vision-only. Image generation uses a separate endpoint — never append `/image_generation` to OpenRouter or non-MiniMax chat hosts.
217
+
218
+ ```bash
219
+ # Image generation (default off)
220
+ AUVIRA_IMAGE_GEN_ENABLED=false
221
+ AUVIRA_IMAGE_GEN_MAX_PER_RUN=2
222
+ AUVIRA_IMAGE_BASE_URL= # optional; defaults to api.minimax.io/v1 or CN from chat host
223
+ AUVIRA_IMAGE_MODEL=image-01
224
+ ```
225
+
226
+ Tool results include `publicUrl` (site-root path like `/assets/edits/hero.png`). Wire that in TSX/CSS — not `destPath` or `/public/...`.
227
+
228
+ Hosts must allowlist `public/assets/edits/` (or similar) in `ALLOWED_WRITE_PATHS`.
229
+
205
230
  ## Mock mode
206
231
 
207
232
  Deterministic edits without OpenHands CLI:
@@ -272,6 +297,60 @@ CUSTOM_MODEL_ID=MiniMax-M3
272
297
 
273
298
  Mock mode (`AUVIRA_AGENT_MOCK`) is not used in the test suite. Real tests call **MiniMax-M3** via the `custom` provider and clone from **GitLab** when configured.
274
299
 
300
+ ### Optional visual asset / image generation e2e (opt-in, costs API credits)
301
+
302
+ These are **not** run by `npm test` or `npm run test:real` by default:
303
+
304
+ ```bash
305
+ # Publish reference + wire publicUrl in page (M3 chat only)
306
+ npm run test:runner:asset
307
+
308
+ # generate_image img2i + wiring (M3 + image-01; expensive)
309
+ npm run test:runner:image-gen
310
+
311
+ # Single image-01 HTTP smoke (no agent loop)
312
+ npm run test:real:image-api
313
+
314
+ # Multi-image drag-in: reference vs decoration, combine, animation (M3 + LLM judge)
315
+ npm run test:real:multi-image
316
+ ```
317
+
318
+ | Env flag | Required for |
319
+ |----------|----------------|
320
+ | `AUVIRA_REAL_ASSET_E2E=true` | `test:runner:asset` |
321
+ | `AUVIRA_REAL_IMAGE_GEN_E2E=true` + `AUVIRA_IMAGE_GEN_ENABLED=true` | `test:runner:image-gen` |
322
+ | `AUVIRA_REAL_IMAGE_API=true` + `AUVIRA_IMAGE_GEN_ENABLED=true` | `test:real:image-api` |
323
+ | `AUVIRA_REAL_MULTI_IMAGE_E2E=true` | `test:real:multi-image` |
324
+ | `AUVIRA_REAL_ATTACHMENT_E2E=true` | `test:real:attachment-placement` |
325
+
326
+ All still require `CUSTOM_MODEL_API_KEY` (and related `CUSTOM_MODEL_*` vars).
327
+
328
+ Vibe replication real tests use an **LLM-as-judge verifier** (vision + diff) for every vibe case — not keyword heuristics. Heuristic checks remain in flex/unit tests only (`vibe-palette.flex.test.ts`).
329
+
330
+ Optional tuning:
331
+
332
+ ```bash
333
+ AUVIRA_VIBE_VERIFY_CONFIDENCE=0.75 # default threshold
334
+ AUVIRA_VIBE_VERIFY_TIMEOUT_MS=30000
335
+ AUVIRA_VIBE_VERIFY_MODEL=MiniMax-M3 # optional override
336
+ ```
337
+
338
+ Multi-image harness e2e (`test:real:multi-image`) uses fixture pairs (Doraemon style reference + village texture decoration) with three scenarios:
339
+
340
+ Phase 3 attachment placement e2e (`test:real:attachment-placement`) verifies pre-uploaded `attachments` metadata, `get_attachment_urls`, serializable `completion.rules`, and an LLM judge — **no vision bytes**.
341
+
342
+ 1. **Reference style + decoration publish** — index:0 drives CSS palette only; index:1 published to `public/assets/edits/` and wired via `publicUrl`.
343
+ 2. **Combined styles + animation** — merge both vibes in CSS, publish index:1, add `@keyframes`/animation.
344
+ 3. **Explicit reference vs decoration** — strict role split; LLM judge verifies roles were not swapped.
345
+
346
+ Verification uses the same vision+diff LLM judge pattern with structured checks (`referenceStyleApplied`, `decorationAssetPublished`, `decorationPublicUrlWired`, etc.). Optional tuning:
347
+
348
+ ```bash
349
+ AUVIRA_MULTI_IMAGE_VERIFY_CONFIDENCE=0.75
350
+ AUVIRA_MULTI_IMAGE_VERIFY_TIMEOUT_MS=45000
351
+ AUVIRA_MULTI_IMAGE_VERIFY_MODEL=MiniMax-M3
352
+ ```
353
+
275
354
  ## Harness integration (cursor-agent-edit-website)
276
355
 
277
356
  When embedding the SDK as a drop-in Cursor SDK replacement for the website edit harness:
@@ -388,6 +467,32 @@ await agent.send(payload, {
388
467
 
389
468
  **Harness early finish (v0.2.5+):** When `harnessPrompt` is active and a model turn produces an allowlisted checkpoint diff, the loop evaluates completion before stopping.
390
469
 
470
+ ### Image placement primitives (v0.6+)
471
+
472
+ - **Attachments** — pass `attachments: AgentAttachmentMeta[]` when files are already under `public/`. Vision bytes remain optional via `images[]`.
473
+ - **Serializable rules** — `completion.rules` gates file-class changes and required paths without an `isComplete` callback (sandbox-safe).
474
+ - **Host tools** — register `hostTools` on `Agent.create` / `Agent.send`; built-in `get_attachment_urls` is added when attachments are present.
475
+
476
+ ```ts
477
+ import { Agent, type HostToolRegistration } from "@auvira.ai/sdk";
478
+
479
+ await agent.send(
480
+ {
481
+ text: harnessPrompt,
482
+ attachments: [{ index: 0, publicUrl: "/uploads/bg.jpg", role: "decoration" }],
483
+ },
484
+ {
485
+ completion: {
486
+ mode: "multi_file_required",
487
+ rules: {
488
+ requiredChanges: [{ pattern: "siteConfig", required: true }],
489
+ requireAssetPublish: false,
490
+ },
491
+ },
492
+ },
493
+ );
494
+ ```
495
+
391
496
  Stream events emit Cursor-compatible tool names: `grep`, `read`, `glob`, `list_dir`, `search_replace`, `write`.
392
497
 
393
498
  ## Current limitations
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AASzC,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,YAAY,CAAC;AAUpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAyBxD,0CAA0C;AAC1C,qBAAa,KAAK;IAQd,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM;IAR1B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IACxD,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,gBAAgB,CAAC,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAKP,gEAAgE;WACnD,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAchE,6DAA6D;WAChD,MAAM,CACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,KAAK,CAAC;IAKjB,oEAAoE;WACvD,MAAM,CACjB,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IAW1B,qEAAqE;IAC/D,IAAI,CACR,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC;IAgFpB,kEAAkE;IAClE,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C,+DAA+D;IAC/D,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI;IAIpD,kEAAkE;IAClE,mBAAmB,IAAI,eAAe,EAAE,GAAG,SAAS;IAIpD,qDAAqD;IAC/C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBtB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
1
+ {"version":3,"file":"Agent.d.ts","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AASzC,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EACV,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAEjB,MAAM,YAAY,CAAC;AAUpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAyBxD,0CAA0C;AAC1C,qBAAa,KAAK;IAQd,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM;IAR1B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IACxD,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,gBAAgB,CAAC,CAAoB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAuB;IAClD,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;IAKP,gEAAgE;WACnD,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC;IAchE,6DAA6D;WAChD,MAAM,CACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,KAAK,CAAC;IAKjB,oEAAoE;WACvD,MAAM,CACjB,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IAW1B,qEAAqE;IAC/D,IAAI,CACR,OAAO,EAAE,gBAAgB,EACzB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,QAAQ,CAAC;IA2FpB,kEAAkE;IAClE,oBAAoB,IAAI,gBAAgB,EAAE;IAI1C,+DAA+D;IAC/D,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI;IAIpD,kEAAkE;IAClE,mBAAmB,IAAI,eAAe,EAAE,GAAG,SAAS;IAIpD,qDAAqD;IAC/C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAyBtB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7C"}
@@ -84,7 +84,14 @@ export class Agent {
84
84
  const mergedSendOptions = {
85
85
  ...options,
86
86
  screenshotBase64: parsed.screenshotBase64,
87
+ attachments: parsed.attachments.length > 0
88
+ ? parsed.attachments
89
+ : options?.attachments,
87
90
  };
91
+ const mergedHostTools = [
92
+ ...(this.createOptions.hostTools ?? []),
93
+ ...(options?.hostTools ?? []),
94
+ ];
88
95
  const secrets = [
89
96
  this.createOptions.gitlab?.token,
90
97
  this.createOptions.model.apiKey,
@@ -98,6 +105,8 @@ export class Agent {
98
105
  signal,
99
106
  agentId: this.agentId,
100
107
  images,
108
+ attachments: parsed.attachments,
109
+ hostTools: mergedHostTools.length > 0 ? mergedHostTools : undefined,
101
110
  conversationHistory: this.conversation.getTurns(),
102
111
  reuseWorkspace: reuseWorkspace ? this.lastWorkspace : undefined,
103
112
  onWorkspacePrepared: (workspace) => {
@@ -1 +1 @@
1
- {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Agent.js","sourceRoot":"","sources":["../../src/agent/Agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { AgentAttachmentMeta } from "./types.js";
2
+ export declare const ATTACHMENTS_MANIFEST_RELATIVE = ".auvira/attachments.json";
3
+ /** Formats a product-agnostic UPLOADED ASSETS block for harness prompts. */
4
+ export declare function formatAttachmentsContextBlock(attachments: AgentAttachmentMeta[]): string;
5
+ /** Persists host attachment metadata to `.auvira/attachments.json`. */
6
+ export declare function writeAttachmentsManifest(workspacePath: string, attachments: AgentAttachmentMeta[]): Promise<string | undefined>;
7
+ /** Reads attachment metadata from `.auvira/attachments.json` if present. */
8
+ export declare function readAttachmentsManifest(workspacePath: string): Promise<AgentAttachmentMeta[]>;
9
+ //# sourceMappingURL=attachmentContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachmentContext.d.ts","sourceRoot":"","sources":["../../src/agent/attachmentContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,eAAO,MAAM,6BAA6B,6BAA6B,CAAC;AAExE,4EAA4E;AAC5E,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,mBAAmB,EAAE,GACjC,MAAM,CA8BR;AAeD,uEAAuE;AACvE,wBAAsB,wBAAwB,CAC5C,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,mBAAmB,EAAE,GACjC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAW7B;AAED,4EAA4E;AAC5E,wBAAsB,uBAAuB,CAC3C,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAqBhC"}
@@ -0,0 +1,72 @@
1
+ import { mkdir, readFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ export const ATTACHMENTS_MANIFEST_RELATIVE = ".auvira/attachments.json";
4
+ /** Formats a product-agnostic UPLOADED ASSETS block for harness prompts. */
5
+ export function formatAttachmentsContextBlock(attachments) {
6
+ if (attachments.length === 0) {
7
+ return "";
8
+ }
9
+ const lines = [
10
+ "UPLOADED ASSETS (order matters — index 0 is primary):",
11
+ ...attachments.map((attachment) => {
12
+ const parts = [
13
+ `index:${attachment.index}`,
14
+ `publicUrl=${attachment.publicUrl}`,
15
+ ];
16
+ if (attachment.destPath?.trim()) {
17
+ parts.push(`destPath=${attachment.destPath}`);
18
+ }
19
+ if (attachment.role?.trim()) {
20
+ parts.push(`role=${attachment.role}`);
21
+ }
22
+ if (attachment.mimeType?.trim()) {
23
+ parts.push(`mime=${attachment.mimeType}`);
24
+ }
25
+ if (attachment.label?.trim()) {
26
+ parts.push(`label=${attachment.label}`);
27
+ }
28
+ return `- ${parts.join(" ")}`;
29
+ }),
30
+ "Wire publicUrl in TSX/CSS (site-root paths). Do not use destPath or /public/... in src.",
31
+ ];
32
+ return lines.join("\n");
33
+ }
34
+ function normalizeAttachments(attachments) {
35
+ return attachments.map((attachment, index) => ({
36
+ index: attachment.index ?? index,
37
+ publicUrl: attachment.publicUrl.trim(),
38
+ ...(attachment.destPath?.trim() ? { destPath: attachment.destPath.trim() } : {}),
39
+ ...(attachment.mimeType?.trim() ? { mimeType: attachment.mimeType.trim() } : {}),
40
+ ...(attachment.role ? { role: attachment.role } : {}),
41
+ ...(attachment.label?.trim() ? { label: attachment.label.trim() } : {}),
42
+ }));
43
+ }
44
+ /** Persists host attachment metadata to `.auvira/attachments.json`. */
45
+ export async function writeAttachmentsManifest(workspacePath, attachments) {
46
+ if (attachments.length === 0) {
47
+ return undefined;
48
+ }
49
+ const normalized = normalizeAttachments(attachments);
50
+ const auviraDir = join(workspacePath, ".auvira");
51
+ await mkdir(auviraDir, { recursive: true });
52
+ const absolutePath = join(auviraDir, "attachments.json");
53
+ await writeFile(absolutePath, JSON.stringify(normalized, null, 2));
54
+ return absolutePath;
55
+ }
56
+ /** Reads attachment metadata from `.auvira/attachments.json` if present. */
57
+ export async function readAttachmentsManifest(workspacePath) {
58
+ try {
59
+ const raw = await readFile(join(workspacePath, ATTACHMENTS_MANIFEST_RELATIVE), "utf8");
60
+ const parsed = JSON.parse(raw);
61
+ if (!Array.isArray(parsed)) {
62
+ return [];
63
+ }
64
+ return normalizeAttachments(parsed.filter((item) => typeof item === "object" &&
65
+ item !== null &&
66
+ typeof item.publicUrl === "string"));
67
+ }
68
+ catch {
69
+ return [];
70
+ }
71
+ }
72
+ //# sourceMappingURL=attachmentContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachmentContext.js","sourceRoot":"","sources":["../../src/agent/attachmentContext.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AgentCompletionOptions, SelectedDomContext } from "./types.js";
1
+ import type { AgentCompletionOptions, SelectedDomContext, SerializableCompletionRules } from "./types.js";
2
2
  export declare const DEFAULT_STYLE_ASSET_PATTERNS: RegExp[];
3
3
  export declare const DEFAULT_WIRING_PATTERNS: RegExp[];
4
4
  export declare const DEFAULT_MULTI_STEP_LIMITS: {
@@ -7,7 +7,7 @@ export declare const DEFAULT_MULTI_STEP_LIMITS: {
7
7
  readonly maxExtraTurnsAfterStyleOnly: 3;
8
8
  };
9
9
  export type HarnessCompletionAction = "finish" | "continue" | "fail";
10
- export type HarnessCompletionContinueReason = "style_only_incomplete" | "completion_callback" | "min_turns_pending";
10
+ export type HarnessCompletionContinueReason = "style_only_incomplete" | "asset_publish_incomplete" | "completion_callback" | "min_turns_pending";
11
11
  export interface HarnessCompletionGateResult {
12
12
  action: HarnessCompletionAction;
13
13
  continueReason?: HarnessCompletionContinueReason;
@@ -21,6 +21,18 @@ export declare function isStyleOnlyDiff(changedFiles: string[], completion?: Age
21
21
  /** True when at least one changed file matches wiring patterns. */
22
22
  export declare function hasWiringChange(changedFiles: string[], completion?: AgentCompletionOptions): boolean;
23
23
  export declare function hasSelectedDomContext(selectedDom?: SelectedDomContext): boolean;
24
+ /** Evaluates serializable completion rules against changed files and workspace paths. */
25
+ export declare function evaluateSerializableCompletionRules(input: {
26
+ changedFiles: string[];
27
+ repoPath?: string;
28
+ rules?: SerializableCompletionRules;
29
+ completion?: AgentCompletionOptions;
30
+ hasVisionImages: boolean;
31
+ wiringComplete: boolean;
32
+ }): Promise<{
33
+ met: boolean;
34
+ nudge?: string;
35
+ }>;
24
36
  /** Evaluates whether harness early finish should proceed, continue, or fail. */
25
37
  export declare function evaluateHarnessCompletionGate(input: {
26
38
  changedFiles: string[];
@@ -30,6 +42,9 @@ export declare function evaluateHarnessCompletionGate(input: {
30
42
  selectedDom?: SelectedDomContext;
31
43
  completion?: AgentCompletionOptions;
32
44
  deferredFinishCount: number;
33
- }): HarnessCompletionGateResult;
45
+ repoPath?: string;
46
+ }): Promise<HarnessCompletionGateResult>;
34
47
  export declare function getWiringIncompleteNudge(): string;
48
+ export declare function getAssetPublishIncompleteNudge(): string;
49
+ export declare function getCompletionRulesIncompleteNudge(): string;
35
50
  //# sourceMappingURL=editCompletion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"editCompletion.d.ts","sourceRoot":"","sources":["../../src/agent/editCompletion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAEtB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,4BAA4B,UAIxC,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAInC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAKX,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAErE,MAAM,MAAM,+BAA+B,GACvC,uBAAuB,GACvB,qBAAqB,GACrB,mBAAmB,CAAC;AAExB,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,uBAAuB,CAAC;IAChC,cAAc,CAAC,EAAE,+BAA+B,CAAC;IACjD,YAAY,CAAC,EAAE,eAAe,GAAG,yBAAyB,GAAG,WAAW,CAAC;IACzE,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAiCD,+EAA+E;AAC/E,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAYT;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAGT;AAED,wBAAgB,qBAAqB,CACnC,WAAW,CAAC,EAAE,kBAAkB,GAC/B,OAAO,CAYT;AAyCD,gFAAgF;AAChF,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GAAG,2BAA2B,CAqG9B;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD"}
1
+ {"version":3,"file":"editCompletion.d.ts","sourceRoot":"","sources":["../../src/agent/editCompletion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,sBAAsB,EAGtB,kBAAkB,EAClB,2BAA2B,EAC5B,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,4BAA4B,UAIxC,CAAC;AAEF,eAAO,MAAM,uBAAuB,UAInC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAWX,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;AAErE,MAAM,MAAM,+BAA+B,GACvC,uBAAuB,GACvB,0BAA0B,GAC1B,qBAAqB,GACrB,mBAAmB,CAAC;AAExB,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,uBAAuB,CAAC;IAChC,cAAc,CAAC,EAAE,+BAA+B,CAAC;IACjD,YAAY,CAAC,EAAE,eAAe,GAAG,yBAAyB,GAAG,WAAW,CAAC;IACzE,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA8CD,+EAA+E;AAC/E,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAYT;AAED,mEAAmE;AACnE,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EAAE,EACtB,UAAU,CAAC,EAAE,sBAAsB,GAClC,OAAO,CAGT;AAED,wBAAgB,qBAAqB,CACnC,WAAW,CAAC,EAAE,kBAAkB,GAC/B,OAAO,CAYT;AAqDD,yFAAyF;AACzF,wBAAsB,mCAAmC,CAAC,KAAK,EAAE;IAC/D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,2BAA2B,CAAC;IACpC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAiD5C;AAED,gFAAgF;AAChF,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAwJvC;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAED,wBAAgB,8BAA8B,IAAI,MAAM,CAEvD;AAED,wBAAgB,iCAAiC,IAAI,MAAM,CAE1D"}
@@ -1,3 +1,5 @@
1
+ import { access } from "node:fs/promises";
2
+ import { join } from "node:path";
1
3
  export const DEFAULT_STYLE_ASSET_PATTERNS = [
2
4
  /globals\.css$/i,
3
5
  /tailwind\.config/i,
@@ -14,6 +16,8 @@ export const DEFAULT_MULTI_STEP_LIMITS = {
14
16
  maxExtraTurnsAfterStyleOnly: 3,
15
17
  };
16
18
  const WIRING_INCOMPLETE_NUDGE = "Style files changed but pinned-target wiring is incomplete. Update config or component files that apply styles to the pinned target before stopping.";
19
+ const ASSET_PUBLISH_INCOMPLETE_NUDGE = 'Component wiring references an image but no file exists under public/assets/. Call publish_reference_image with the correct source ("primary" or "index:N") before stopping.';
20
+ const COMPLETION_RULES_INCOMPLETE_NUDGE = "Completion rules are not satisfied yet. Update the required config/component files before stopping.";
17
21
  function compilePatterns(patterns) {
18
22
  return patterns.map((pattern) => new RegExp(pattern, "i"));
19
23
  }
@@ -36,6 +40,13 @@ function matchesAnyPattern(file, patterns) {
36
40
  const normalized = normalizePath(file);
37
41
  return patterns.some((pattern) => pattern.test(normalized));
38
42
  }
43
+ /** True when style patterns include public/assets (decoration publish expected). */
44
+ function requiresPublicAssetPublish(completion) {
45
+ return resolveStylePatterns(completion).some((pattern) => pattern.test("public/assets/edits/placeholder.png"));
46
+ }
47
+ function hasPublicAssetChange(changedFiles) {
48
+ return changedFiles.some((file) => normalizePath(file).startsWith("public/assets/"));
49
+ }
39
50
  /** True when every changed file is a style asset and none are wiring paths. */
40
51
  export function isStyleOnlyDiff(changedFiles, completion) {
41
52
  if (changedFiles.length === 0) {
@@ -79,6 +90,9 @@ function isCompletionContractActive(input) {
79
90
  if (completion.isComplete) {
80
91
  return true;
81
92
  }
93
+ if (completion.rules) {
94
+ return true;
95
+ }
82
96
  if (completion.requireWiringAfterStyle &&
83
97
  input.hasVisionImages &&
84
98
  hasSelectedDomContext(input.selectedDom)) {
@@ -86,8 +100,56 @@ function isCompletionContractActive(input) {
86
100
  }
87
101
  return completion.mode === "multi_file_required";
88
102
  }
103
+ function matchesRequirement(changedFiles, requirement) {
104
+ const pattern = new RegExp(requirement.pattern, "i");
105
+ return changedFiles.some((file) => pattern.test(normalizePath(file)));
106
+ }
107
+ /** Evaluates serializable completion rules against changed files and workspace paths. */
108
+ export async function evaluateSerializableCompletionRules(input) {
109
+ const rules = input.rules;
110
+ if (!rules) {
111
+ return { met: true };
112
+ }
113
+ for (const requirement of rules.requiredChanges ?? []) {
114
+ if (requirement.required === false) {
115
+ continue;
116
+ }
117
+ if (!matchesRequirement(input.changedFiles, requirement)) {
118
+ return {
119
+ met: false,
120
+ nudge: `${COMPLETION_RULES_INCOMPLETE_NUDGE} Missing required change matching /${requirement.pattern}/.`,
121
+ };
122
+ }
123
+ }
124
+ if (input.repoPath) {
125
+ for (const relPath of rules.requiredPaths ?? []) {
126
+ try {
127
+ await access(join(input.repoPath, relPath));
128
+ }
129
+ catch {
130
+ return {
131
+ met: false,
132
+ nudge: `${COMPLETION_RULES_INCOMPLETE_NUDGE} Required path missing: ${relPath}`,
133
+ };
134
+ }
135
+ }
136
+ }
137
+ const requireAssetPublish = rules.requireAssetPublish === true ||
138
+ (rules.requireAssetPublish !== false &&
139
+ requiresPublicAssetPublish(input.completion));
140
+ if (requireAssetPublish &&
141
+ input.hasVisionImages &&
142
+ input.wiringComplete &&
143
+ !hasPublicAssetChange(input.changedFiles)) {
144
+ return {
145
+ met: false,
146
+ nudge: getAssetPublishIncompleteNudge(),
147
+ };
148
+ }
149
+ return { met: true };
150
+ }
89
151
  /** Evaluates whether harness early finish should proceed, continue, or fail. */
90
- export function evaluateHarnessCompletionGate(input) {
152
+ export async function evaluateHarnessCompletionGate(input) {
91
153
  const styleOnly = isStyleOnlyDiff(input.changedFiles, input.completion);
92
154
  const wiringComplete = hasWiringChange(input.changedFiles, input.completion);
93
155
  const limits = resolveMultiStepLimits(input.completion);
@@ -165,6 +227,50 @@ export function evaluateHarnessCompletionGate(input) {
165
227
  wiringComplete,
166
228
  };
167
229
  }
230
+ if (requiresPublicAssetPublish(input.completion) &&
231
+ input.completion?.rules?.requireAssetPublish !== false &&
232
+ input.hasVisionImages &&
233
+ wiringComplete &&
234
+ !hasPublicAssetChange(input.changedFiles)) {
235
+ if (input.deferredFinishCount >= limits.maxExtraTurnsAfterStyleOnly) {
236
+ return {
237
+ action: "fail",
238
+ styleOnly,
239
+ wiringComplete,
240
+ failMessage: "Multi-step asset edit incomplete: wiring changed without a published public/assets file",
241
+ };
242
+ }
243
+ return {
244
+ action: "continue",
245
+ continueReason: "asset_publish_incomplete",
246
+ styleOnly,
247
+ wiringComplete,
248
+ };
249
+ }
250
+ const rulesResult = await evaluateSerializableCompletionRules({
251
+ changedFiles: input.changedFiles,
252
+ repoPath: input.repoPath,
253
+ rules: input.completion?.rules,
254
+ completion: input.completion,
255
+ hasVisionImages: input.hasVisionImages,
256
+ wiringComplete,
257
+ });
258
+ if (!rulesResult.met) {
259
+ if (input.deferredFinishCount >= limits.maxExtraTurnsAfterStyleOnly) {
260
+ return {
261
+ action: "fail",
262
+ styleOnly,
263
+ wiringComplete,
264
+ failMessage: rulesResult.nudge ?? "Completion rules not satisfied",
265
+ };
266
+ }
267
+ return {
268
+ action: "continue",
269
+ continueReason: "completion_callback",
270
+ styleOnly,
271
+ wiringComplete,
272
+ };
273
+ }
168
274
  }
169
275
  return {
170
276
  action: "finish",
@@ -176,4 +282,10 @@ export function evaluateHarnessCompletionGate(input) {
176
282
  export function getWiringIncompleteNudge() {
177
283
  return WIRING_INCOMPLETE_NUDGE;
178
284
  }
285
+ export function getAssetPublishIncompleteNudge() {
286
+ return ASSET_PUBLISH_INCOMPLETE_NUDGE;
287
+ }
288
+ export function getCompletionRulesIncompleteNudge() {
289
+ return COMPLETION_RULES_INCOMPLETE_NUDGE;
290
+ }
179
291
  //# sourceMappingURL=editCompletion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editCompletion.js","sourceRoot":"","sources":["../../src/agent/editCompletion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editCompletion.js","sourceRoot":"","sources":["../../src/agent/editCompletion.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@ export interface RecentToolResult {
12
12
  ok: boolean;
13
13
  output: string;
14
14
  path?: string;
15
+ publicUrl?: string;
16
+ meta?: Record<string, unknown>;
15
17
  }
16
18
  export interface EvaluateTaskCompletionInput {
17
19
  ownerRequest: string;
@@ -1 +1 @@
1
- {"version":3,"file":"evaluateTaskCompletion.d.ts","sourceRoot":"","sources":["../../src/agent/evaluateTaskCompletion.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIvE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,0EAA0E;IAC1E,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AA2CD,MAAM,WAAW,4BAA4B;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,uEAAuE;AACvE,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,4BAA4B,GAClC,MAAM,CAWR;AAqBD,yEAAyE;AACzE,wBAAgB,oCAAoC,CAClD,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAKR;AAED,0DAA0D;AAC1D,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AA8HD,2FAA2F;AAC3F,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAuFxC;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,sBAAsB,GAC/B,MAAM,CAYR"}
1
+ {"version":3,"file":"evaluateTaskCompletion.d.ts","sourceRoot":"","sources":["../../src/agent/evaluateTaskCompletion.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIvE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB,0EAA0E;IAC1E,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AA6CD,MAAM,WAAW,4BAA4B;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,uEAAuE;AACvE,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,4BAA4B,GAClC,MAAM,CAWR;AAqBD,yEAAyE;AACzE,wBAAgB,oCAAoC,CAClD,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAKR;AAED,0DAA0D;AAC1D,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AA+HD,2FAA2F;AAC3F,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,2BAA2B,GACjC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAuFxC;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,sBAAsB,GAC/B,MAAM,CAYR"}
@@ -30,6 +30,8 @@ Return JSON only:
30
30
  Rules:
31
31
  - isComplete=true only if the diff appears sufficient to satisfy the requested visible/functional change.
32
32
  - isComplete=false if the diff only changes assets/styles/config but the requested target likely still needs component wiring, prop changes, route updates, content mapping, or validation.
33
+ - For embed/generate image requests: require the asset file at destPath in changed files, file exists on disk, and component/CSS references publicUrl from tool results (site-root path like /assets/edits/hero.png — never /public/...).
34
+ - For animation requests: look for @keyframes, animate-, or motion CSS in the diff when motion was requested.
33
35
  - If uncertain, use confidence below 0.75.
34
36
  - missingWork should be short and actionable.
35
37
  - nextActionHint should suggest the smallest next action, not broad exploration.`;
@@ -122,7 +124,8 @@ function formatRecentTools(results) {
122
124
  return results
123
125
  .map((result) => {
124
126
  const path = result.path ? ` path=${result.path}` : "";
125
- return `- ${result.name} ok=${result.ok}${path}\n ${result.output.slice(0, 400)}`;
127
+ const publicUrl = result.publicUrl ? ` publicUrl=${result.publicUrl}` : "";
128
+ return `- ${result.name} ok=${result.ok}${path}${publicUrl}\n ${result.output.slice(0, 400)}`;
126
129
  })
127
130
  .join("\n");
128
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"evaluateTaskCompletion.js","sourceRoot":"","sources":["../../src/agent/evaluateTaskCompletion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAyC9D,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iFA+BiD,CAAC;AAYlF,uEAAuE;AACvE,MAAM,UAAU,8BAA8B,CAC5C,KAAmC;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;QACtC,YAAY,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE;QAC5C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,sBAAsB,EAAE,KAAK,CAAC,sBAAsB;KACrD,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,kBAAkB,CACzB,GAAuB,EACvB,QAAgB;IAEhB,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnD,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAuB,EAAE,QAAgB;IACjE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AACnD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,oCAAoC,CAClD,QAAiB;IAEjB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC;AACjF,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,yBAAyB;IACvC,OAAO,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAiB;IAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,MAAM,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAuB;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAClE,OAAO,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoC,CAAC;QAClE,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACjF,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;YAC5B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC5C,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;gBAC/E,CAAC,CAAC,SAAS;YACb,cAAc,EACZ,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ;gBACvC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE;gBAC9B,CAAC,CAAC,SAAS;SAChB,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,WAAgC;IACzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,iBAAiB,CAAC,OAA2B;IACpD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,KAAK,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,GAAG,IAAI,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;IACrF,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAkC;IACnE,OAAO;QACL,gBAAgB;QAChB,KAAK,CAAC,YAAY;QAClB,EAAE;QACF,eAAe;QACf,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC;QACpC,EAAE;QACF,sBAAsB;QACtB,KAAK,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM;QACxE,EAAE;QACF,gBAAgB;QAChB,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM;QAClE,EAAE;QACF,kCAAkC;QAClC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,SAAS;QAC7C,EAAE;QACF,sBAAsB;QACtB,iBAAiB,CAAC,KAAK,CAAC,iBAAiB,CAAC;KAC3C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAcD,SAAS,sBAAsB,CAAC,KAAkC;IAChE,MAAM,IAAI,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,sBAAsB,KAAK,KAAK,CAAC;IAC7D,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAEnF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE;YACpD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;SAChC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE;QACpD;YACE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;gBACtB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACtB,IAAI,EAAE,WAAoB;oBAC1B,SAAS,EAAE,EAAE,GAAG,EAAE;iBACnB,CAAC,CAAC;aACJ;SACF;KACF,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAkC;IAElC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC;IAE1C,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAG,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IACzD,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAErD,MAAM,WAAW,GAA4B;QAC3C,KAAK,EAAE,OAAO;QACd,QAAQ,EAAE,sBAAsB,CAAC,KAAK,CAAC;QACvC,WAAW,EAAE,CAAC;QACd,eAAe,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;QACxC,qBAAqB,EAAE,GAAG;KAC3B,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC,CAAC,WAAW,EAAE,EAAE,CACtE,iBAAiB,CACf;YACE,GAAG,EAAE,GAAG,OAAO,mBAAmB;YAClC,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,MAAM,EAAE;gBACjC,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,WAAW;YACjB,SAAS;YACT,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,EACD,WAAW,CACZ,CACF,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAE3C,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/B,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;gBACd,IAAI,EAAE,sBAAsB;gBAC5B,MAAM,EAAE,OAAO;gBACf,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,WAAW;gBACX,MAAM,EAAE,MAAM,CAAC,YAAY,IAAI,8BAA8B;aAC9D,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACzE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAE3C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;gBACd,IAAI,EAAE,sBAAsB;gBAC5B,MAAM,EAAE,OAAO;gBACf,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,WAAW;gBACX,MAAM,EAAE,yCAAyC;aAClD,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;YACd,IAAI,EAAE,sBAAsB;YAC5B,MAAM,EAAE,KAAK;YACb,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,cAAc,EAAE,QAAQ,CAAC,cAAc;YACvC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC;YACd,IAAI,EAAE,sBAAsB;YAC5B,MAAM,EAAE,OAAO;YACf,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YACnC,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB;SACpE,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC9C,QAAgC;IAEhC,MAAM,OAAO,GACX,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC;IAEtE,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAEtD,OAAO,CACL,yCAAyC;QACzC,iBAAiB,OAAO,IAAI;QAC5B,oEAAoE,QAAQ,EAAE,CAC/E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"evaluateTaskCompletion.js","sourceRoot":"","sources":["../../src/agent/evaluateTaskCompletion.ts"],"names":[],"mappings":"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"}
@@ -135,7 +135,7 @@ export interface CompletionEvaluatedEvent extends AgentRunEventBase {
135
135
  }
136
136
  export interface RunContinueEvent extends AgentRunEventBase {
137
137
  type: "run.continue";
138
- reason: "style_only_incomplete" | "completion_callback" | "min_turns_pending";
138
+ reason: "style_only_incomplete" | "asset_publish_incomplete" | "completion_callback" | "min_turns_pending";
139
139
  changedFiles: string[];
140
140
  toolCallCount?: number;
141
141
  deferredFinishCount: number;
@@ -192,7 +192,7 @@ export type AgentRunEventInput<T extends AgentRunEventType = AgentRunEventType>
192
192
  type: T;
193
193
  }>, keyof AgentRunEventBase>;
194
194
  /** Synthetic tool names emitted in the run timeline. */
195
- export declare const AGENT_TOOL_NAMES: readonly ["prepare_workspace", "write_screenshot", "select_context_files", "model_completion", "parse_edit_plan", "apply_file_edit", "git_diff", "run_validation", "openhands_cli", "grep", "read", "glob", "list_dir", "search_replace", "write"];
195
+ export declare const AGENT_TOOL_NAMES: readonly ["prepare_workspace", "write_screenshot", "select_context_files", "model_completion", "parse_edit_plan", "apply_file_edit", "git_diff", "run_validation", "openhands_cli", "grep", "read", "glob", "list_dir", "search_replace", "write", "publish_reference_image", "generate_image"];
196
196
  export type AgentToolName = (typeof AGENT_TOOL_NAMES)[number];
197
197
  export declare function isToolEvent(event: AgentRunEvent): event is ToolStartEvent | ToolEndEvent;
198
198
  export declare function isAssistantEvent(event: AgentRunEvent): event is AssistantEvent;