@kody-ade/kody-engine 0.4.185 → 0.4.186

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 (2) hide show
  1. package/dist/bin/kody.js +14 -2
  2. package/package.json +1 -1
package/dist/bin/kody.js CHANGED
@@ -1309,7 +1309,7 @@ var init_loadPriorArt = __esm({
1309
1309
  // package.json
1310
1310
  var package_default = {
1311
1311
  name: "@kody-ade/kody-engine",
1312
- version: "0.4.185",
1312
+ version: "0.4.186",
1313
1313
  description: "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative executable profiles.",
1314
1314
  license: "MIT",
1315
1315
  type: "module",
@@ -1972,6 +1972,7 @@ async function runAgent(opts) {
1972
1972
  let ndjsonWriteError;
1973
1973
  let sawMutatingTool = false;
1974
1974
  let sawTerminalSuccess = false;
1975
+ let noWorkSuccess = false;
1975
1976
  try {
1976
1977
  const queryOptions = {
1977
1978
  model: opts.model.model,
@@ -2214,7 +2215,13 @@ async function runAgent(opts) {
2214
2215
  );
2215
2216
  }
2216
2217
  finalText = resultTexts.join("\n\n---\n\n");
2217
- const shouldRetry = outcome === "failed" && attempt < MAX_CONNECTION_RETRIES && !sawMutatingTool && isTransientConnectionError(errorMessage);
2218
+ if (outcome === "completed" && !sawMutatingTool && tokens.output === 0 && finalText === "") {
2219
+ outcome = "failed";
2220
+ outcomeKind = "model_error";
2221
+ noWorkSuccess = true;
2222
+ errorMessage = errorMessage ?? "session reported success but produced no model output (0 output tokens) \u2014 backend likely unreachable";
2223
+ }
2224
+ const shouldRetry = outcome === "failed" && attempt < MAX_CONNECTION_RETRIES && !sawMutatingTool && (isTransientConnectionError(errorMessage) || noWorkSuccess);
2218
2225
  if (!shouldRetry) break;
2219
2226
  const delayMs = CONNECTION_RETRY_BASE_MS * 2 ** attempt;
2220
2227
  process.stderr.write(
@@ -4536,6 +4543,11 @@ var FORBIDDEN_PATH_PREFIXES = [
4536
4543
  ".kody/",
4537
4544
  ".kody-lean/",
4538
4545
  // back-compat: stale runtime dir from kody-lean v0.5.x
4546
+ ".codegraph/",
4547
+ // codegraph repo-map tool's runtime scratch (daemon.pid, sock,
4548
+ // db, its own .gitignore) — machine-local, must never be committed. Without
4549
+ // this, a run that does no real work still commits codegraph's startup litter
4550
+ // and opens an empty PR.
4539
4551
  "node_modules/",
4540
4552
  "dist/",
4541
4553
  "build/"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kody-ade/kody-engine",
3
- "version": "0.4.185",
3
+ "version": "0.4.186",
4
4
  "description": "kody — autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative executable profiles.",
5
5
  "license": "MIT",
6
6
  "type": "module",