arkgate 4.8.26 → 4.8.27

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 (61) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +2 -2
  3. package/bin/ark-layer-match.mjs +23 -0
  4. package/bin/ark-mcp-runtime.mjs +45 -4
  5. package/bin/ark-mcp.mjs +9 -3
  6. package/bin/ark.mjs +27 -1
  7. package/bin/lib/analysis-engine.mjs +10 -10
  8. package/bin/lib/arkrules-sensors.mjs +9 -4
  9. package/bin/lib/class-source-scan.mjs +1 -1
  10. package/bin/lib/config-contract.mjs +5 -0
  11. package/bin/lib/prepare-change.mjs +10 -6
  12. package/bin/lib/prepare-write.mjs +7 -0
  13. package/bin/lib/remediation.mjs +84 -0
  14. package/bin/lib/resolved-candidate-facts.mjs +19 -2
  15. package/bin/lib/snippet-analysis.mjs +82 -1
  16. package/dist/chunk-A5EIY3HI.cjs +3 -3
  17. package/dist/chunk-H5I3GARV.js +16 -0
  18. package/dist/chunk-QQ4SJEJ7.cjs +16 -0
  19. package/dist/chunk-SVSQVGFJ.js +3 -3
  20. package/dist/{configTypes-GPvvdleM.d.cts → configTypes-D1oxws6x.d.cts} +6 -0
  21. package/dist/{configTypes-GPvvdleM.d.ts → configTypes-D1oxws6x.d.ts} +6 -0
  22. package/dist/eslint/index.cjs +11 -12
  23. package/dist/eslint/index.d.cts +7 -1
  24. package/dist/eslint/index.d.ts +7 -1
  25. package/dist/eslint/index.js +11 -11
  26. package/dist/index.cjs +32 -32
  27. package/dist/index.d.cts +13 -2
  28. package/dist/index.d.ts +13 -2
  29. package/dist/index.js +32 -32
  30. package/dist/inspectorListen-6DQVJ4DC.js +2 -1
  31. package/dist/inspectorListen-KGMIQ2TF.cjs +2 -1
  32. package/dist/nestjs/index.cjs +1 -1
  33. package/dist/nestjs/index.d.cts +1 -1
  34. package/dist/nestjs/index.d.ts +1 -1
  35. package/dist/nestjs/index.js +1 -1
  36. package/dist/order/index.cjs +1 -1
  37. package/dist/order/index.js +1 -1
  38. package/dist/runtime/index.cjs +10 -10
  39. package/dist/runtime/index.d.cts +4 -3
  40. package/dist/runtime/index.d.ts +4 -3
  41. package/dist/runtime/index.js +10 -10
  42. package/dist/{types-CnauMQQL.d.cts → types-DBiqlOWZ.d.cts} +6 -0
  43. package/dist/{types-CnauMQQL.d.ts → types-DBiqlOWZ.d.ts} +6 -0
  44. package/docs/README.md +2 -1
  45. package/docs/agent-guide.md +3 -2
  46. package/docs/ai-gates.md +1 -1
  47. package/docs/configuration.md +11 -0
  48. package/docs/package-surface.md +2 -1
  49. package/docs/product-voice.md +1 -1
  50. package/package.json +1 -1
  51. package/schemas/ark.config.schema.json +10 -0
  52. package/server.json +2 -2
  53. package/templates/agent-skills/README.md +1 -1
  54. package/templates/agent-skills/ark-adopt/SKILL.md +6 -0
  55. package/templates/agent-skills/ark-autopilot/SKILL.md +1 -1
  56. package/templates/agent-skills/ark-place/SKILL.md +4 -0
  57. package/templates/skills/ark-adopt.md +6 -0
  58. package/templates/skills/ark-autopilot.md +1 -1
  59. package/templates/skills/ark-place.md +4 -0
  60. package/dist/chunk-G3JRBJGH.js +0 -16
  61. package/dist/chunk-R3AJ5RSZ.cjs +0 -16
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as ArkConfigRule, b as ArkConfigSchemaVersion, c as ArkConfigLoadResult, d as ArkConfigLayer, A as ArkConfig, e as ArkConfigIssue, f as ArkConfigArkRun, g as ArkConfigArkOrder } from './configTypes-GPvvdleM.cjs';
1
+ import { a as ArkConfigRule, b as ArkConfigSchemaVersion, c as ArkConfigLoadResult, d as ArkConfigLayer, A as ArkConfig, e as ArkConfigIssue, f as ArkConfigArkRun, g as ArkConfigArkOrder } from './configTypes-D1oxws6x.cjs';
2
2
 
3
3
  /**
4
4
  * Canonical, pure contract for ark.config.json.
@@ -177,6 +177,16 @@ declare const ARK_CONFIG_SCHEMA: {
177
177
  };
178
178
  readonly uniqueItems: true;
179
179
  };
180
+ readonly entrypoints: {
181
+ readonly minItems: 1;
182
+ readonly description: "Optional public surface globs for this layer. When non-empty, cross-layer imports into this layer must target a file matching one of these globs; deep imports into internal layer files are denied.";
183
+ readonly type: "array";
184
+ readonly items: {
185
+ readonly type: "string";
186
+ readonly minLength: 1;
187
+ };
188
+ readonly uniqueItems: true;
189
+ };
180
190
  readonly intentPrefixes: {
181
191
  readonly type: "array";
182
192
  readonly items: {
@@ -1268,7 +1278,7 @@ declare function createAdapterResult(input: {
1268
1278
  }): CurrentAdapterResult;
1269
1279
 
1270
1280
  /** ArkGate library version — single source of truth. */
1271
- declare const version = "4.8.26";
1281
+ declare const version = "4.8.27";
1272
1282
 
1273
1283
  /**
1274
1284
  * Architecture layer profiles.
@@ -1580,6 +1590,7 @@ interface AICodeGateOptions<Context = AICodeGateContext> {
1580
1590
  architectureLayers?: Array<{
1581
1591
  name: string;
1582
1592
  patterns?: string[];
1593
+ entrypoints?: string[];
1583
1594
  }>;
1584
1595
  /** Explicit file-level escape hatch for reviewed non-literal import()/require() calls. */
1585
1596
  allowNonLiteralDynamicImport?: (filePath?: string) => boolean;
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { a as ArkConfigRule, b as ArkConfigSchemaVersion, c as ArkConfigLoadResult, d as ArkConfigLayer, A as ArkConfig, e as ArkConfigIssue, f as ArkConfigArkRun, g as ArkConfigArkOrder } from './configTypes-GPvvdleM.js';
1
+ import { a as ArkConfigRule, b as ArkConfigSchemaVersion, c as ArkConfigLoadResult, d as ArkConfigLayer, A as ArkConfig, e as ArkConfigIssue, f as ArkConfigArkRun, g as ArkConfigArkOrder } from './configTypes-D1oxws6x.js';
2
2
 
3
3
  /**
4
4
  * Canonical, pure contract for ark.config.json.
@@ -177,6 +177,16 @@ declare const ARK_CONFIG_SCHEMA: {
177
177
  };
178
178
  readonly uniqueItems: true;
179
179
  };
180
+ readonly entrypoints: {
181
+ readonly minItems: 1;
182
+ readonly description: "Optional public surface globs for this layer. When non-empty, cross-layer imports into this layer must target a file matching one of these globs; deep imports into internal layer files are denied.";
183
+ readonly type: "array";
184
+ readonly items: {
185
+ readonly type: "string";
186
+ readonly minLength: 1;
187
+ };
188
+ readonly uniqueItems: true;
189
+ };
180
190
  readonly intentPrefixes: {
181
191
  readonly type: "array";
182
192
  readonly items: {
@@ -1268,7 +1278,7 @@ declare function createAdapterResult(input: {
1268
1278
  }): CurrentAdapterResult;
1269
1279
 
1270
1280
  /** ArkGate library version — single source of truth. */
1271
- declare const version = "4.8.26";
1281
+ declare const version = "4.8.27";
1272
1282
 
1273
1283
  /**
1274
1284
  * Architecture layer profiles.
@@ -1580,6 +1590,7 @@ interface AICodeGateOptions<Context = AICodeGateContext> {
1580
1590
  architectureLayers?: Array<{
1581
1591
  name: string;
1582
1592
  patterns?: string[];
1593
+ entrypoints?: string[];
1583
1594
  }>;
1584
1595
  /** Explicit file-level escape hatch for reviewed non-literal import()/require() calls. */
1585
1596
  allowNonLiteralDynamicImport?: (filePath?: string) => boolean;