@kody-ade/kody-engine 0.4.583 → 0.4.584

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 +15 -3
  2. package/package.json +1 -1
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.583",
18
+ version: "0.4.584",
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",
@@ -8754,6 +8754,16 @@ function listChangedFiles(cwd) {
8754
8754
  const entries = raw.split("\0").filter((e) => e.length > 0);
8755
8755
  return entries.map((e) => e.slice(3)).filter(Boolean);
8756
8756
  }
8757
+ function listAllowlistedIgnoredFiles(deliveryPathAllowlist, cwd) {
8758
+ if (deliveryPathAllowlist.length === 0) return [];
8759
+ const raw = execFileSync6("git", ["ls-files", "--others", "--ignored", "--exclude-standard", "-z"], {
8760
+ encoding: "utf-8",
8761
+ cwd,
8762
+ env: { ...process.env, HUSKY: "0", SKIP_HOOKS: "1" },
8763
+ stdio: ["pipe", "pipe", "pipe"]
8764
+ });
8765
+ return raw.split("\0").filter(Boolean).filter((filePath) => isExplicitlyAllowed(filePath, deliveryPathAllowlist));
8766
+ }
8757
8767
  function listFilesInCommit(ref = "HEAD", cwd) {
8758
8768
  try {
8759
8769
  const raw = execFileSync6("git", ["show", "--name-only", "--pretty=format:", "-z", ref], {
@@ -8777,7 +8787,9 @@ function normalizeCommitMessage(raw) {
8777
8787
  return `chore: ${trimmed}`;
8778
8788
  }
8779
8789
  function commitAndPush(branch, agentMessage, cwd, deliveryPathAllowlist = []) {
8780
- const allChanged = listChangedFiles(cwd);
8790
+ const ignoredAllowedFiles = listAllowlistedIgnoredFiles(deliveryPathAllowlist, cwd);
8791
+ const ignoredAllowedSet = new Set(ignoredAllowedFiles);
8792
+ const allChanged = [.../* @__PURE__ */ new Set([...listChangedFiles(cwd), ...ignoredAllowedFiles])];
8781
8793
  const allowedFiles = allChanged.filter(
8782
8794
  (f) => !isForbiddenPath(f, deliveryPathAllowlist) || isTrustedConfigActivationChange(f, deliveryPathAllowlist, cwd)
8783
8795
  );
@@ -8796,7 +8808,7 @@ function commitAndPush(branch, agentMessage, cwd, deliveryPathAllowlist = []) {
8796
8808
  }
8797
8809
  for (const f of allowedFiles) {
8798
8810
  try {
8799
- git(["add", "--", f], cwd);
8811
+ git(["add", ...ignoredAllowedSet.has(f) ? ["--force"] : [], "--", f], cwd);
8800
8812
  } catch {
8801
8813
  }
8802
8814
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kody-ade/kody-engine",
3
- "version": "0.4.583",
3
+ "version": "0.4.584",
4
4
  "description": "kody — autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative implementation profiles.",
5
5
  "license": "MIT",
6
6
  "type": "module",