@kody-ade/kody-engine 0.4.543 → 0.4.546

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/dist/bin/kody.js CHANGED
@@ -15,7 +15,7 @@ var init_package = __esm({
15
15
  "package.json"() {
16
16
  package_default = {
17
17
  name: "@kody-ade/kody-engine",
18
- version: "0.4.543",
18
+ version: "0.4.546",
19
19
  description: "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative implementation profiles.",
20
20
  license: "MIT",
21
21
  type: "module",
@@ -17430,6 +17430,13 @@ var init_postIssueComment = __esm({
17430
17430
  if (!commitResult?.committed && !hasCommits) {
17431
17431
  const specific = computeFailureReason2(ctx);
17432
17432
  if (specific.length === 0) {
17433
+ if ((ctx.output.exitCode ?? 0) !== 0) {
17434
+ const reason3 = ctx.output.reason || "delivery failed before producing a commit";
17435
+ postWith(targetType, targetNumber, `\u26A0\uFE0F kody FAILED: ${truncate2(reason3, 1500)}`, ctx.cwd);
17436
+ markRunFailed(ctx);
17437
+ ctx.output.reason = reason3;
17438
+ return;
17439
+ }
17433
17440
  const reason2 = "work already satisfied; no PR needed";
17434
17441
  setDeliveryNotRequired(ctx.data, reason2);
17435
17442
  postWith(targetType, targetNumber, `\u2139\uFE0F kody made no changes \u2014 ${reason2}`, ctx.cwd);
@@ -17887,7 +17894,7 @@ var init_prepareCapabilityDelivery = __esm({
17887
17894
  await runFlow(ctx, profile);
17888
17895
  return;
17889
17896
  }
17890
- checkoutPrBranch(target.number, ctx.cwd);
17897
+ ctx.data.branch = checkoutPrBranch(target.number, ctx.cwd);
17891
17898
  ctx.data.commentTargetType = "pr";
17892
17899
  ctx.data.commentTargetNumber = target.number;
17893
17900
  };
@@ -18456,6 +18463,45 @@ var init_requirePlanDeviations = __esm({
18456
18463
  }
18457
18464
  });
18458
18465
 
18466
+ // src/scripts/retryMissingDeliveryChange.ts
18467
+ function claimsChange(output) {
18468
+ if (!output || typeof output !== "object" || Array.isArray(output)) return false;
18469
+ const status = output.status;
18470
+ return status === "fixed" || status === "changed";
18471
+ }
18472
+ var retryMissingDeliveryChange;
18473
+ var init_retryMissingDeliveryChange = __esm({
18474
+ "src/scripts/retryMissingDeliveryChange.ts"() {
18475
+ "use strict";
18476
+ init_commit();
18477
+ init_parseAgentResult();
18478
+ init_parseSimpleCapabilityOutput();
18479
+ retryMissingDeliveryChange = async (ctx, profile) => {
18480
+ if (ctx.data.jobDelivery !== "pull-request") return;
18481
+ if (!claimsChange(ctx.data.capabilityOutput)) return;
18482
+ if (listChangedFiles(ctx.cwd).some((file) => !isForbiddenPath(file))) return;
18483
+ const invoker = ctx.data.__invokeAgent;
18484
+ const prompt = ctx.data.prompt;
18485
+ if (!invoker || !prompt) return;
18486
+ process.stderr.write("[kody] capability claimed a pull-request fix without a file change; retrying once\n");
18487
+ const retry = await invoker(
18488
+ [
18489
+ prompt,
18490
+ "",
18491
+ "# Missing delivery change (retry)",
18492
+ "",
18493
+ "Your previous result claimed the pull request was fixed, but no repository file changed.",
18494
+ "Inspect the supplied input and failure evidence, make the actual repair, and verify it.",
18495
+ "If no safe change is possible, return a blocked result instead of claiming fixed.",
18496
+ "This is the only retry."
18497
+ ].join("\n")
18498
+ );
18499
+ await parseAgentResult2(ctx, profile, retry);
18500
+ await parseSimpleCapabilityOutput(ctx, profile, retry);
18501
+ };
18502
+ }
18503
+ });
18504
+
18459
18505
  // src/scripts/resolveArtifacts.ts
18460
18506
  var resolveArtifacts;
18461
18507
  var init_resolveArtifacts = __esm({
@@ -21081,6 +21127,7 @@ var init_scripts = __esm({
21081
21127
  init_requireDeliveryArtifacts();
21082
21128
  init_requireFeedbackActions();
21083
21129
  init_requirePlanDeviations();
21130
+ init_retryMissingDeliveryChange();
21084
21131
  init_resolveArtifacts();
21085
21132
  init_resolveFlow();
21086
21133
  init_resolvePreviewUrl();
@@ -21179,6 +21226,7 @@ var init_scripts = __esm({
21179
21226
  requireFeedbackActions,
21180
21227
  requireDeliveryArtifacts,
21181
21228
  requirePlanDeviations,
21229
+ retryMissingDeliveryChange,
21182
21230
  verify,
21183
21231
  verifyWithRetry,
21184
21232
  verifyReproFails,
@@ -81,7 +81,8 @@
81
81
  }
82
82
  ],
83
83
  "postflight": [
84
- { "script": "parseSimpleCapabilityOutput" }
84
+ { "script": "parseSimpleCapabilityOutput" },
85
+ { "script": "retryMissingDeliveryChange" }
85
86
  ]
86
87
  },
87
88
  "inputArtifacts": [],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kody-ade/kody-engine",
3
- "version": "0.4.543",
3
+ "version": "0.4.546",
4
4
  "description": "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative implementation profiles.",
5
5
  "license": "MIT",
6
6
  "type": "module",