patchwork-os 0.2.0-beta.2 → 0.2.0-beta.3

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 (135) hide show
  1. package/README.bridge.md +5 -5
  2. package/README.md +156 -12
  3. package/dist/activityLog.d.ts +6 -0
  4. package/dist/activityLog.js +8 -0
  5. package/dist/activityLog.js.map +1 -1
  6. package/dist/analyticsPrefs.d.ts +35 -2
  7. package/dist/analyticsPrefs.js +120 -21
  8. package/dist/analyticsPrefs.js.map +1 -1
  9. package/dist/analyticsSend.js +5 -1
  10. package/dist/analyticsSend.js.map +1 -1
  11. package/dist/bridge.d.ts +2 -0
  12. package/dist/bridge.js +111 -7
  13. package/dist/bridge.js.map +1 -1
  14. package/dist/bridgeLockDiscovery.d.ts +27 -1
  15. package/dist/bridgeLockDiscovery.js +37 -11
  16. package/dist/bridgeLockDiscovery.js.map +1 -1
  17. package/dist/commands/patchworkInit.d.ts +5 -0
  18. package/dist/commands/patchworkInit.js +86 -7
  19. package/dist/commands/patchworkInit.js.map +1 -1
  20. package/dist/commands/recipe.d.ts +51 -0
  21. package/dist/commands/recipe.js +353 -2
  22. package/dist/commands/recipe.js.map +1 -1
  23. package/dist/commands/recipeInstall.js +6 -3
  24. package/dist/commands/recipeInstall.js.map +1 -1
  25. package/dist/commands/task.js +2 -2
  26. package/dist/commands/task.js.map +1 -1
  27. package/dist/config.d.ts +9 -2
  28. package/dist/config.js +35 -17
  29. package/dist/config.js.map +1 -1
  30. package/dist/connectors/tokenStorage.js +46 -10
  31. package/dist/connectors/tokenStorage.js.map +1 -1
  32. package/dist/featureFlags.d.ts +76 -0
  33. package/dist/featureFlags.js +166 -2
  34. package/dist/featureFlags.js.map +1 -1
  35. package/dist/index.js +765 -69
  36. package/dist/index.js.map +1 -1
  37. package/dist/lockfile.js +4 -1
  38. package/dist/lockfile.js.map +1 -1
  39. package/dist/patchworkConfig.js +5 -0
  40. package/dist/patchworkConfig.js.map +1 -1
  41. package/dist/recipeOrchestration.js +35 -1
  42. package/dist/recipeOrchestration.js.map +1 -1
  43. package/dist/recipeRoutes.d.ts +36 -0
  44. package/dist/recipeRoutes.js +231 -32
  45. package/dist/recipeRoutes.js.map +1 -1
  46. package/dist/recipes/agentExecutor.d.ts +25 -5
  47. package/dist/recipes/agentExecutor.js.map +1 -1
  48. package/dist/recipes/chainedRunner.js +16 -2
  49. package/dist/recipes/chainedRunner.js.map +1 -1
  50. package/dist/recipes/connectorPreflight.d.ts +53 -0
  51. package/dist/recipes/connectorPreflight.js +79 -0
  52. package/dist/recipes/connectorPreflight.js.map +1 -0
  53. package/dist/recipes/githubInstallSource.d.ts +62 -0
  54. package/dist/recipes/githubInstallSource.js +125 -0
  55. package/dist/recipes/githubInstallSource.js.map +1 -0
  56. package/dist/recipes/haltCategory.d.ts +80 -0
  57. package/dist/recipes/haltCategory.js +125 -0
  58. package/dist/recipes/haltCategory.js.map +1 -0
  59. package/dist/recipes/idempotencyKey.d.ts +126 -0
  60. package/dist/recipes/idempotencyKey.js +298 -0
  61. package/dist/recipes/idempotencyKey.js.map +1 -0
  62. package/dist/recipes/judgeSummary.d.ts +50 -0
  63. package/dist/recipes/judgeSummary.js +47 -0
  64. package/dist/recipes/judgeSummary.js.map +1 -0
  65. package/dist/recipes/judgeVerdict.d.ts +48 -0
  66. package/dist/recipes/judgeVerdict.js +174 -0
  67. package/dist/recipes/judgeVerdict.js.map +1 -0
  68. package/dist/recipes/migrations/index.d.ts +9 -0
  69. package/dist/recipes/migrations/index.js +133 -0
  70. package/dist/recipes/migrations/index.js.map +1 -1
  71. package/dist/recipes/runBudget.d.ts +70 -0
  72. package/dist/recipes/runBudget.js +109 -0
  73. package/dist/recipes/runBudget.js.map +1 -0
  74. package/dist/recipes/scheduler.js +1 -1
  75. package/dist/recipes/scheduler.js.map +1 -1
  76. package/dist/recipes/schema.d.ts +30 -0
  77. package/dist/recipes/toolRegistry.js +19 -0
  78. package/dist/recipes/toolRegistry.js.map +1 -1
  79. package/dist/recipes/tools/http.d.ts +10 -0
  80. package/dist/recipes/tools/http.js +176 -0
  81. package/dist/recipes/tools/http.js.map +1 -0
  82. package/dist/recipes/tools/index.d.ts +1 -0
  83. package/dist/recipes/tools/index.js +1 -0
  84. package/dist/recipes/tools/index.js.map +1 -1
  85. package/dist/recipes/validation.js +1 -1
  86. package/dist/recipes/validation.js.map +1 -1
  87. package/dist/recipes/yamlRunner.d.ts +71 -7
  88. package/dist/recipes/yamlRunner.js +156 -22
  89. package/dist/recipes/yamlRunner.js.map +1 -1
  90. package/dist/runLog.d.ts +28 -0
  91. package/dist/runLog.js +5 -0
  92. package/dist/runLog.js.map +1 -1
  93. package/dist/server.d.ts +65 -0
  94. package/dist/server.js +302 -3
  95. package/dist/server.js.map +1 -1
  96. package/dist/streamableHttp.js +17 -6
  97. package/dist/streamableHttp.js.map +1 -1
  98. package/dist/tools/bridgeDoctor.js +6 -2
  99. package/dist/tools/bridgeDoctor.js.map +1 -1
  100. package/dist/tools/ccRoutines.d.ts +221 -0
  101. package/dist/tools/ccRoutines.js +264 -0
  102. package/dist/tools/ccRoutines.js.map +1 -0
  103. package/dist/tools/getCodeCoverage.js +7 -3
  104. package/dist/tools/getCodeCoverage.js.map +1 -1
  105. package/dist/tools/index.js +6 -0
  106. package/dist/tools/index.js.map +1 -1
  107. package/dist/tools/recentTracesDigest.js +56 -11
  108. package/dist/tools/recentTracesDigest.js.map +1 -1
  109. package/dist/tools/testRunners/vitestJest.js +3 -1
  110. package/dist/tools/testRunners/vitestJest.js.map +1 -1
  111. package/dist/tools/utils.js +6 -3
  112. package/dist/tools/utils.js.map +1 -1
  113. package/package.json +17 -6
  114. package/scripts/postinstall.mjs +27 -0
  115. package/scripts/smoke/run-all.mjs +162 -0
  116. package/scripts/start-all.mjs +513 -0
  117. package/scripts/start-all.ps1 +209 -0
  118. package/scripts/start-all.sh +73 -17
  119. package/scripts/start-orchestrator.ps1 +158 -0
  120. package/scripts/start-remote.mjs +122 -0
  121. package/templates/automation-policies/recipe-authoring.json +1 -1
  122. package/templates/automation-policies/security-first.json +1 -1
  123. package/templates/automation-policies/strict-lint.json +1 -1
  124. package/templates/automation-policies/test-driven.json +1 -1
  125. package/templates/automation-policy.example.json +1 -1
  126. package/templates/co.patchwork-os.bridge.plist +1 -1
  127. package/templates/recipes/approval-queue-ui-test.yaml +1 -1
  128. package/templates/recipes/ctx-loop-test.yaml +1 -1
  129. package/templates/recipes/webhook/apple-watch-health-log.yaml +145 -0
  130. package/dist/commands/marketplace.d.ts +0 -16
  131. package/dist/commands/marketplace.js +0 -32
  132. package/dist/commands/marketplace.js.map +0 -1
  133. package/dist/recipes/legacyRecipeCompat.d.ts +0 -10
  134. package/dist/recipes/legacyRecipeCompat.js +0 -131
  135. package/dist/recipes/legacyRecipeCompat.js.map +0 -1
@@ -30,8 +30,11 @@ import { captureFixture } from "../connectors/fixtureRecorder.js";
30
30
  import { loadConfig as loadPatchworkConfigSync } from "../patchworkConfig.js";
31
31
  import { findYamlRecipePath } from "../recipesHttp.js";
32
32
  import { executeAgent as _executeAgent, } from "./agentExecutor.js";
33
- import { defaultDeprecationWarn, normalizeRecipeForRuntime, } from "./legacyRecipeCompat.js";
33
+ import { assertValidManualRunId, deriveScopeKey, WriteEffectLedger, } from "./idempotencyKey.js";
34
+ import { buildJudgeArtefactBlock, JUDGE_PROMPT_SUFFIX, parseJudgeVerdict, } from "./judgeVerdict.js";
35
+ import { defaultDeprecationWarn, normalizeRecipeForRuntime, } from "./migrations/index.js";
34
36
  import { resolveRecipePath } from "./resolveRecipePath.js";
37
+ import { RunBudget } from "./runBudget.js";
35
38
  import { detectSilentFail } from "./stepObservation.js";
36
39
  // Import tool registry and trigger tool self-registration
37
40
  import { applyToolOutputContext, executeTool, getTool, hasTool, registerPluginTools, } from "./toolRegistry.js";
@@ -222,7 +225,10 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
222
225
  ...envCtx,
223
226
  ...seedContext,
224
227
  };
225
- const stepDeps = resolveStepDeps(deps);
228
+ const stepDeps = resolveStepDeps(deps, { recipeName: recipe.name });
229
+ // PR2b: one per-run budget shared across all agent steps. Absent
230
+ // `recipe.budget` → no enforcement, no overhead.
231
+ const runBudget = new RunBudget(recipe.budget);
226
232
  // Open a `running`-state run-log entry so the dashboard sees the recipe
227
233
  // as in flight. Only when a long-lived `runLog` is provided (bridge path);
228
234
  // CLI runs fall back to `appendDirect` at end via the existing logDir
@@ -241,6 +247,9 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
241
247
  trigger: yamlTriggerKind,
242
248
  createdAt: recipeStartedAt,
243
249
  startedAt: recipeStartedAt,
250
+ ...(deps.manualRunId !== undefined && {
251
+ manualRunId: deps.manualRunId,
252
+ }),
244
253
  });
245
254
  }
246
255
  catch {
@@ -251,6 +260,22 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
251
260
  const stepResults = [];
252
261
  let stepsRun = 0;
253
262
  let runError;
263
+ // Push live step results into the run-log ring so the dashboard's
264
+ // `/runs/[seq]` page surfaces verdicts + haltReasons mid-flight,
265
+ // instead of waiting for the whole recipe to finish via
266
+ // `completeRun`. The runLog ignores non-running entries; cron/webhook
267
+ // runs through the orchestrator path (where `runSeq` is undefined)
268
+ // skip this entirely.
269
+ const persistLiveStepResults = () => {
270
+ if (!deps.runLog || runSeq === undefined || stepDeps.testMode)
271
+ return;
272
+ try {
273
+ deps.runLog.updateRunSteps(runSeq, stepResults);
274
+ }
275
+ catch {
276
+ /* live-tail is best-effort; never break a recipe run for it */
277
+ }
278
+ };
254
279
  for (const step of recipe.steps) {
255
280
  // Evaluate `when` guard before running anything. Mirrors
256
281
  // chainedRunner.ts:248-266 — render the template, then truthy-check the
@@ -274,19 +299,52 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
274
299
  durationMs: 0,
275
300
  });
276
301
  stepsRun++;
302
+ persistLiveStepResults();
277
303
  continue;
278
304
  }
279
305
  }
280
306
  // Handle agent steps separately
281
307
  if (step.agent) {
282
308
  const agentCfg = step.agent;
283
- const renderedPrompt = render(agentCfg.prompt, ctx);
309
+ const isJudge = agentCfg.kind === "judge";
310
+ // PR3a: judge prompt convention. Append the structured-verdict
311
+ // suffix and, when `reviews: <stepId>` is set, inject the
312
+ // upstream step's output as an <artefact> block.
313
+ let renderedPrompt = render(agentCfg.prompt, ctx);
314
+ if (isJudge) {
315
+ if (agentCfg.reviews) {
316
+ renderedPrompt += buildJudgeArtefactBlock(ctx[agentCfg.reviews]);
317
+ }
318
+ renderedPrompt += JUDGE_PROMPT_SUFFIX;
319
+ }
284
320
  const intoKey = agentCfg.into ?? "agent_output";
285
321
  const stepId = intoKey;
286
322
  const stepStart = Date.now();
287
323
  let agentResult;
324
+ // PR2b: per-recipe token budget. Admission check before dispatch;
325
+ // reconcile actual consumption after. Subscription drivers
326
+ // (Claude CLI, provider subprocess) report `usage === undefined`
327
+ // — `RunBudget.reconcile` records a fail-open warning per driver
328
+ // per run and continues.
329
+ const admission = runBudget.admit();
330
+ if (!admission.admitted) {
331
+ const reason = admission.reason ??
332
+ "Run exceeded its token budget — budget_exceeded.";
333
+ runError = runError ?? reason;
334
+ stepResults.push({
335
+ id: stepId,
336
+ tool: "agent",
337
+ status: "error",
338
+ error: reason,
339
+ haltReason: reason,
340
+ durationMs: 0,
341
+ });
342
+ stepsRun++;
343
+ persistLiveStepResults();
344
+ continue;
345
+ }
288
346
  try {
289
- agentResult = await _executeAgent({
347
+ const agentReturn = await _executeAgent({
290
348
  prompt: renderedPrompt,
291
349
  driver: agentCfg.driver === "api" ? "anthropic" : agentCfg.driver,
292
350
  model: agentCfg.model,
@@ -294,6 +352,8 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
294
352
  mcpAccess: agentCfg.mcpAccess,
295
353
  }),
296
354
  }, buildAgentExecutorDeps(stepDeps, deps));
355
+ agentResult = agentReturn.text;
356
+ runBudget.reconcile(agentCfg.driver === "api" ? "anthropic" : (agentCfg.driver ?? "auto"), agentReturn.usage);
297
357
  // Catch both `[agent step failed: ...]` (existing) and the
298
358
  // silent-fail patterns `[agent step skipped: ...]` etc. via the
299
359
  // shared detector. Per-step opt-out via `silentFailDetection: false`.
@@ -310,6 +370,9 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
310
370
  tool: "agent",
311
371
  status: "error",
312
372
  error: reason,
373
+ haltReason: agentSilentFail
374
+ ? `Agent step "${stepId}" returned no usable output (silent-fail: ${agentSilentFail.reason}).`
375
+ : `Agent step "${stepId}" reported failure.`,
313
376
  durationMs: Date.now() - stepStart,
314
377
  });
315
378
  }
@@ -323,6 +386,7 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
323
386
  tool: "agent",
324
387
  status: "error",
325
388
  error: errMsg,
389
+ haltReason: `Agent step "${stepId}" returned only narration or whitespace — no content.`,
326
390
  durationMs: Date.now() - stepStart,
327
391
  });
328
392
  }
@@ -337,10 +401,18 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
337
401
  ctx[intoKey] = stripped;
338
402
  }
339
403
  outputs.push(intoKey);
404
+ // PR3a: parse + stash the judge verdict on the step result.
405
+ // Augment-only: a `request_changes` verdict still yields
406
+ // `status: "ok"`. The verdict surfaces via the runlog +
407
+ // future PR3b dashboard panel, but never gates the run.
408
+ const judgeVerdict = isJudge
409
+ ? parseJudgeVerdict(stripped)
410
+ : undefined;
340
411
  stepResults.push({
341
412
  id: stepId,
342
413
  tool: "agent",
343
414
  status: "ok",
415
+ ...(judgeVerdict !== undefined && { judgeVerdict }),
344
416
  durationMs: Date.now() - stepStart,
345
417
  });
346
418
  }
@@ -354,10 +426,12 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
354
426
  tool: "agent",
355
427
  status: "error",
356
428
  error: msg,
429
+ haltReason: `Agent step "${stepId}" threw before completing: ${msg}`,
357
430
  durationMs: Date.now() - stepStart,
358
431
  });
359
432
  }
360
433
  stepsRun++;
434
+ persistLiveStepResults();
361
435
  continue;
362
436
  }
363
437
  const stepStart = Date.now();
@@ -424,12 +498,14 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
424
498
  const fallbackFailOpen = fallback === "log_only" || fallback === "deliver_original";
425
499
  const failOpen = step.optional === true || fallbackFailOpen;
426
500
  if (thrownError) {
501
+ const retryNote = retryCount > 0 ? ` after ${retryCount + 1} attempts` : "";
427
502
  stepResults.push({
428
503
  id: stepId,
429
504
  tool: step.tool,
430
505
  status: "error",
431
506
  error: thrownError,
432
507
  ...(thrownErrorCode ? { errorCode: thrownErrorCode } : {}),
508
+ haltReason: `Tool "${step.tool ?? "?"}" in step "${stepId}" threw${retryNote}: ${thrownError}`,
433
509
  durationMs: Date.now() - stepStart,
434
510
  });
435
511
  if (!failOpen) {
@@ -440,11 +516,18 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
440
516
  }
441
517
  }
442
518
  else {
519
+ const finalStatus = result === null ? "skipped" : stepError ? "error" : "ok";
520
+ const retryNote = retryCount > 0 ? ` after ${retryCount + 1} attempts` : "";
443
521
  stepResults.push({
444
522
  id: stepId,
445
523
  tool: step.tool,
446
- status: result === null ? "skipped" : stepError ? "error" : "ok",
524
+ status: finalStatus,
447
525
  error: stepError,
526
+ ...(finalStatus === "error" && stepError
527
+ ? {
528
+ haltReason: `Tool "${step.tool ?? "?"}" in step "${stepId}" reported an error${retryNote}: ${stepError}`,
529
+ }
530
+ : {}),
448
531
  durationMs: Date.now() - stepStart,
449
532
  });
450
533
  if (stepError) {
@@ -486,6 +569,7 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
486
569
  }));
487
570
  }
488
571
  }
572
+ persistLiveStepResults();
489
573
  }
490
574
  // Evaluate expect block before persisting so failures are stored in the run log
491
575
  const assertionFailures = recipe.expect
@@ -506,6 +590,8 @@ export async function runYamlRecipe(recipe, deps = {}, seedContext = {}) {
506
590
  tool: s.tool,
507
591
  status: s.status,
508
592
  error: s.error,
593
+ ...(s.haltReason ? { haltReason: s.haltReason } : {}),
594
+ ...(s.judgeVerdict ? { judgeVerdict: s.judgeVerdict } : {}),
509
595
  durationMs: s.durationMs,
510
596
  }));
511
597
  if (deps.runLog && runSeq !== undefined) {
@@ -777,7 +863,7 @@ export function defaultGitStaleBranches(days, workdir) {
777
863
  }
778
864
  }
779
865
  /** Resolve all RunnerDeps to concrete StepDeps with production defaults filled in. */
780
- function resolveStepDeps(deps) {
866
+ function resolveStepDeps(deps, scope) {
781
867
  const workdir = deps.workdir ?? process.cwd();
782
868
  // Defense-in-depth: even if a file.* tool somehow forgets to call
783
869
  // resolveRecipePath in its execute(), the default StepDeps file ops will
@@ -835,15 +921,37 @@ function resolveStepDeps(deps) {
835
921
  }),
836
922
  logDir: deps.logDir,
837
923
  testMode: deps.testMode ?? false,
924
+ // PR5a/b: per-attempt idempotency ledger. Disk-backed when
925
+ // `ledgerDir` + `manualRunId` + recipe name are all available so a
926
+ // retry of the same logical attempt re-uses prior records (resume
927
+ // semantics). Falls back to pure in-memory dedup otherwise.
928
+ writeEffectLedger: deps.ledgerDir && deps.manualRunId && scope?.recipeName
929
+ ? new WriteEffectLedger({
930
+ dir: deps.ledgerDir,
931
+ // Hash both fields together — `${recipeName}:${manualRunId}`
932
+ // is ambiguous when recipe names contain colons (which
933
+ // RecipeRunLog.parseTrigger explicitly allows).
934
+ scopeKey: deriveScopeKey(scope.recipeName, assertValidManualRunId(deps.manualRunId)),
935
+ })
936
+ : new WriteEffectLedger(),
838
937
  };
839
938
  }
939
+ /**
940
+ * Normalise the union return of a RunnerDeps caller into an `AgentResult`.
941
+ * Test mocks / CLI overrides typically return a plain string; bridge
942
+ * wrappers + real adapter paths return `{text, usage}` so PR2b's token
943
+ * budget enforcer can read usage. Both shapes converge here.
944
+ */
945
+ function toAgentResult(v) {
946
+ return typeof v === "string" ? { text: v } : v;
947
+ }
840
948
  function buildAgentExecutorDeps(stepDeps, runnerDeps, claudeCodeFnOverride) {
841
949
  const claudeCliFn = claudeCodeFnOverride ?? stepDeps.claudeCodeFn;
842
950
  return {
843
- anthropicFn: (prompt, model) => stepDeps.claudeFn(prompt, model),
844
- providerDriverFn: (driver, prompt, model) => stepDeps.providerDriverFn(driver, prompt, model),
845
- claudeCliFn: (prompt, opts) => claudeCliFn(prompt, opts),
846
- localFn: (prompt, model) => stepDeps.localFn(prompt, model),
951
+ anthropicFn: async (prompt, model) => toAgentResult(await stepDeps.claudeFn(prompt, model)),
952
+ providerDriverFn: async (driver, prompt, model) => toAgentResult(await stepDeps.providerDriverFn(driver, prompt, model)),
953
+ claudeCliFn: async (prompt, opts) => toAgentResult(await claudeCliFn(prompt, opts)),
954
+ localFn: async (prompt, model) => toAgentResult(await stepDeps.localFn(prompt, model)),
847
955
  probeClaudeCli: () => {
848
956
  if (runnerDeps.claudeFn !== undefined)
849
957
  return false;
@@ -971,7 +1079,7 @@ function makeProviderDriverFn() {
971
1079
  async function defaultClaudeFn(prompt, model) {
972
1080
  const apiKey = process.env.ANTHROPIC_API_KEY;
973
1081
  if (!apiKey)
974
- return "[agent step skipped: ANTHROPIC_API_KEY not set]";
1082
+ return { text: "[agent step skipped: ANTHROPIC_API_KEY not set]" };
975
1083
  try {
976
1084
  const res = await fetch("https://api.anthropic.com/v1/messages", {
977
1085
  method: "POST",
@@ -993,13 +1101,25 @@ async function defaultClaudeFn(prompt, model) {
993
1101
  });
994
1102
  if (!res.ok) {
995
1103
  const text = await res.text().catch(() => res.statusText);
996
- return `[agent step failed: ${text}]`;
1104
+ return { text: `[agent step failed: ${text}]` };
997
1105
  }
1106
+ // PR2a: forward Anthropic API token counts so PR2b's RunBudget can
1107
+ // reconcile actual consumption. Optional both upstream (older API
1108
+ // versions) and downstream (subscription/CLI driver returns
1109
+ // undefined here).
998
1110
  const data = (await res.json());
999
- return data.content?.[0]?.text ?? "[agent step failed: empty response]";
1111
+ const text = data.content?.[0]?.text ?? "[agent step failed: empty response]";
1112
+ const inputTokens = data.usage?.input_tokens;
1113
+ const outputTokens = data.usage?.output_tokens;
1114
+ if (typeof inputTokens === "number" && typeof outputTokens === "number") {
1115
+ return { text, usage: { inputTokens, outputTokens } };
1116
+ }
1117
+ return { text };
1000
1118
  }
1001
1119
  catch (err) {
1002
- return `[agent step failed: ${err instanceof Error ? err.message : String(err)}]`;
1120
+ return {
1121
+ text: `[agent step failed: ${err instanceof Error ? err.message : String(err)}]`,
1122
+ };
1003
1123
  }
1004
1124
  }
1005
1125
  async function defaultLocalFn(prompt, model) {
@@ -1015,10 +1135,18 @@ async function defaultLocalFn(prompt, model) {
1015
1135
  systemPrompt: "",
1016
1136
  messages: [{ role: "user", content: prompt }],
1017
1137
  });
1018
- return result.text ?? "[agent step failed: empty response from local LLM]";
1138
+ const text = result.text ?? "[agent step failed: empty response from local LLM]";
1139
+ // PR2a: local adapters carry usage when the backing API (Ollama / LM
1140
+ // Studio) surfaces it; otherwise undefined.
1141
+ if (result.usage) {
1142
+ return { text, usage: result.usage };
1143
+ }
1144
+ return { text };
1019
1145
  }
1020
1146
  catch (err) {
1021
- return `[agent step failed: ${err instanceof Error ? err.message : String(err)}]`;
1147
+ return {
1148
+ text: `[agent step failed: ${err instanceof Error ? err.message : String(err)}]`,
1149
+ };
1022
1150
  }
1023
1151
  }
1024
1152
  /**
@@ -1074,12 +1202,18 @@ export function buildChainedDeps(runnerDeps, claudeCodeFnOverride) {
1074
1202
  const result = await executeStep(step, {}, stepDeps);
1075
1203
  return result ?? "";
1076
1204
  };
1077
- const executeAgent = async (prompt, model, driver, mcpAccess) => _executeAgent({
1078
- prompt,
1079
- model,
1080
- driver,
1081
- ...(mcpAccess !== undefined && { mcpAccess }),
1082
- }, buildAgentExecutorDeps(stepDeps, runnerDeps, claudeCodeFnOverride));
1205
+ const executeAgent = async (prompt, model, driver, mcpAccess) => {
1206
+ // chainedRunner's AgentExecutor contract still returns a plain string —
1207
+ // PR2b's token-budget consumer will plug in here as well, but for now
1208
+ // we discard `.usage`.
1209
+ const result = await _executeAgent({
1210
+ prompt,
1211
+ model,
1212
+ driver,
1213
+ ...(mcpAccess !== undefined && { mcpAccess }),
1214
+ }, buildAgentExecutorDeps(stepDeps, runnerDeps, claudeCodeFnOverride));
1215
+ return result.text;
1216
+ };
1083
1217
  // ---------------------------------------------------------------------
1084
1218
  // BEGIN A-PR2 EDIT BLOCK — `loadNestedRecipe` jail (dogfood F-04).
1085
1219
  //
@@ -1 +1 @@
1
- {"version":3,"file":"yamlRunner.js","sourceRoot":"","sources":["../../src/recipes/yamlRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yamlRunner.js","sourceRoot":"","sources":["../../src/recipes/yamlRunner.ts"],"names":[],"mappings":"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"}
package/dist/runLog.d.ts CHANGED
@@ -19,6 +19,19 @@ export interface RunStepResult {
19
19
  tool?: string;
20
20
  status: "ok" | "skipped" | "error";
21
21
  error?: string;
22
+ /**
23
+ * One-sentence human-actionable halt reason. Populated only for error
24
+ * rows; present for runs produced by yamlRunner from this version
25
+ * onward. Older runs.jsonl rows round-trip unchanged. See StepResult in
26
+ * src/recipes/yamlRunner.ts for the construction sites.
27
+ */
28
+ haltReason?: string;
29
+ /**
30
+ * PR3a — judge-step verdict. Present only when the step was a
31
+ * `kind: "judge"` agent step. Augment-only: `request_changes` does
32
+ * NOT make `status: "error"`. Surfaced separately in dashboards.
33
+ */
34
+ judgeVerdict?: import("./recipes/judgeVerdict.js").JudgeVerdict;
22
35
  durationMs: number;
23
36
  /** Step-input params after `{{template}}` substitution. */
24
37
  resolvedParams?: unknown;
@@ -66,6 +79,18 @@ export interface RecipeRun {
66
79
  actual: unknown;
67
80
  message: string;
68
81
  }>;
82
+ /**
83
+ * Stable id for one *logical* user-initiated execution attempt (PR5b
84
+ * prereq). Distinct from `seq` (which is per *physical* run row): a
85
+ * retry-after-failure of the same logical attempt re-uses the same
86
+ * `manualRunId` so the disk-backed WriteEffectLedger can scope dedup
87
+ * by `(recipeName, manualRunId)` and avoid replaying side effects.
88
+ *
89
+ * Optional — cron / webhook / nested-recipe trigger runs leave it
90
+ * unset. Caller-supplied (the CLI / dashboard mints it); the run log
91
+ * just round-trips the value.
92
+ */
93
+ manualRunId?: string;
69
94
  }
70
95
  export interface RunLogOptions {
71
96
  /** Directory holding runs.jsonl. Created if missing. */
@@ -83,6 +108,8 @@ export interface RunQuery {
83
108
  recipe?: string;
84
109
  /** Runs with seq > after. */
85
110
  after?: number;
111
+ /** PR5c — exact-match on manualRunId. Yields all retries of one attempt. */
112
+ manualRunId?: string;
86
113
  }
87
114
  export declare class RecipeRunLog {
88
115
  private readonly opts;
@@ -152,6 +179,7 @@ export declare class RecipeRunLog {
152
179
  startedAt?: number;
153
180
  model?: string;
154
181
  parentSeq?: number;
182
+ manualRunId?: string;
155
183
  }): number;
156
184
  /**
157
185
  * Replace the in-memory step list for a running entry. Called as steps
package/dist/runLog.js CHANGED
@@ -110,6 +110,10 @@ export class RecipeRunLog {
110
110
  out = out.filter((r) => r.status === q.status);
111
111
  if (q.recipe)
112
112
  out = out.filter((r) => r.recipeName === q.recipe);
113
+ if (q.manualRunId) {
114
+ const id = q.manualRunId;
115
+ out = out.filter((r) => r.manualRunId === id);
116
+ }
113
117
  if (q.after !== undefined) {
114
118
  const after = q.after;
115
119
  out = out.filter((r) => r.seq > after);
@@ -207,6 +211,7 @@ export class RecipeRunLog {
207
211
  durationMs: 0,
208
212
  stepResults: [],
209
213
  ...(opts.parentSeq !== undefined && { parentSeq: opts.parentSeq }),
214
+ ...(opts.manualRunId !== undefined && { manualRunId: opts.manualRunId }),
210
215
  };
211
216
  this.runs.push(run);
212
217
  if (this.runs.length > this.memoryCap)