@kody-ade/kody-engine 0.4.62 → 0.4.63

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
@@ -315,7 +315,7 @@ var init_verifyMcp = __esm({
315
315
  // package.json
316
316
  var package_default = {
317
317
  name: "@kody-ade/kody-engine",
318
- version: "0.4.62",
318
+ version: "0.4.63",
319
319
  description: "kody \u2014 autonomous development engine. Single-session Claude Code agent behind a generic executor + declarative executable profiles.",
320
320
  license: "MIT",
321
321
  type: "module",
@@ -6644,6 +6644,7 @@ Nothing to do. All files already present. (Use --force to overwrite.)
6644
6644
 
6645
6645
  // src/scripts/loadConventions.ts
6646
6646
  var loadConventions = async (ctx) => {
6647
+ if (Array.isArray(ctx.data.conventions)) return;
6647
6648
  const conventions = loadProjectConventions(ctx.cwd);
6648
6649
  ctx.data.conventions = conventions;
6649
6650
  if (conventions.length > 0) {
@@ -6654,6 +6655,7 @@ var loadConventions = async (ctx) => {
6654
6655
 
6655
6656
  // src/scripts/loadCoverageRules.ts
6656
6657
  var loadCoverageRules = async (ctx) => {
6658
+ if (Array.isArray(ctx.data.coverageRules)) return;
6657
6659
  ctx.data.coverageRules = ctx.config.testRequirements ?? [];
6658
6660
  };
6659
6661
 
@@ -6779,6 +6781,12 @@ var loadIssueContext = async (ctx) => {
6779
6781
  if (typeof issueNumber !== "number" || issueNumber <= 0) {
6780
6782
  throw new Error("loadIssueContext: ctx.args.issue (positive integer) is required");
6781
6783
  }
6784
+ const preloaded = ctx.data.issue;
6785
+ if (preloaded && typeof preloaded === "object" && preloaded.number === issueNumber) {
6786
+ if (!ctx.data.commentTargetType) ctx.data.commentTargetType = "issue";
6787
+ if (!ctx.data.commentTargetNumber) ctx.data.commentTargetNumber = issueNumber;
6788
+ return;
6789
+ }
6782
6790
  const issue = getIssue(issueNumber, ctx.cwd);
6783
6791
  const cfgCtx = ctx.config.issueContext ?? {};
6784
6792
  const limit = cfgCtx.commentLimit ?? DEFAULT_COMMENT_LIMIT;
@@ -6874,6 +6882,7 @@ var PER_PAGE_MAX_BYTES = 4e3;
6874
6882
  var TOTAL_MAX_BYTES = 24e3;
6875
6883
  var TRUNCATED_SUFFIX = "\n\n\u2026 (truncated)";
6876
6884
  var loadMemoryContext = async (ctx) => {
6885
+ if (typeof ctx.data.memoryContext === "string") return;
6877
6886
  const memoryAbs = path26.join(ctx.cwd, MEMORY_DIR_RELATIVE);
6878
6887
  if (!fs27.existsSync(memoryAbs)) {
6879
6888
  ctx.data.memoryContext = "";
@@ -7009,6 +7018,7 @@ var PER_PR_DIFF_MAX_BYTES = 8e3;
7009
7018
  var TOTAL_MAX_BYTES2 = 3e4;
7010
7019
  var TRUNCATED_SUFFIX2 = "\n\n\u2026 (truncated)";
7011
7020
  var loadPriorArt = async (ctx, _profile, args) => {
7021
+ if (typeof ctx.data.priorArt === "string") return;
7012
7022
  const artifactName = typeof args?.artifactName === "string" ? args.artifactName : "priorArt";
7013
7023
  const state = ctx.data.taskState;
7014
7024
  const artifact = state?.artifacts?.[artifactName];
@@ -9573,7 +9583,11 @@ async function runExecutable(profileName, input) {
9573
9583
  config,
9574
9584
  verbose: input.verbose,
9575
9585
  quiet: input.quiet,
9576
- data: {},
9586
+ // Phase 5 foundation: seed ctx.data with any preloaded values handed
9587
+ // in by a parent (typically a container loop). Loaders that see
9588
+ // their field already populated take the fast path and skip the
9589
+ // re-fetch. Always-on; preloadedData defaults to {} when unset.
9590
+ data: { ...input.preloadedData ?? {} },
9577
9591
  output: { exitCode: 0 }
9578
9592
  };
9579
9593
  const ndjsonDir = path29.join(input.cwd, ".kody");
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kody-ade/kody-engine",
3
- "version": "0.4.62",
3
+ "version": "0.4.63",
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",
@@ -12,18 +12,6 @@
12
12
  "templates",
13
13
  "kody.config.schema.json"
14
14
  ],
15
- "scripts": {
16
- "kody": "tsx bin/kody.ts",
17
- "build": "tsup && node scripts/copy-assets.cjs",
18
- "test": "vitest run tests/unit tests/int --no-coverage",
19
- "test:e2e": "vitest run tests/e2e --no-coverage",
20
- "test:all": "vitest run tests --no-coverage",
21
- "typecheck": "tsc --noEmit",
22
- "lint": "biome check",
23
- "lint:fix": "biome check --write",
24
- "format": "biome format --write",
25
- "prepublishOnly": "pnpm build"
26
- },
27
15
  "dependencies": {
28
16
  "@actions/cache": "^6.0.0",
29
17
  "@anthropic-ai/claude-agent-sdk": "0.2.119",
@@ -45,5 +33,16 @@
45
33
  "url": "git+https://github.com/aharonyaircohen/kody-engine.git"
46
34
  },
47
35
  "homepage": "https://github.com/aharonyaircohen/kody-engine",
48
- "bugs": "https://github.com/aharonyaircohen/kody-engine/issues"
49
- }
36
+ "bugs": "https://github.com/aharonyaircohen/kody-engine/issues",
37
+ "scripts": {
38
+ "kody": "tsx bin/kody.ts",
39
+ "build": "tsup && node scripts/copy-assets.cjs",
40
+ "test": "vitest run tests/unit tests/int --no-coverage",
41
+ "test:e2e": "vitest run tests/e2e --no-coverage",
42
+ "test:all": "vitest run tests --no-coverage",
43
+ "typecheck": "tsc --noEmit",
44
+ "lint": "biome check",
45
+ "lint:fix": "biome check --write",
46
+ "format": "biome format --write"
47
+ }
48
+ }