arkgate 4.8.9 → 4.8.10

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 (44) hide show
  1. package/CHANGELOG.md +80 -3
  2. package/README.md +4 -4
  3. package/bin/ark-check-runtime.mjs +2 -2
  4. package/bin/ark.mjs +18 -10
  5. package/bin/lib/analysis-engine.mjs +6 -6
  6. package/bin/lib/architecture-scan.mjs +91 -4
  7. package/bin/lib/ark-order-facts.mjs +11 -4
  8. package/bin/lib/arkrule-file-hints.mjs +255 -20
  9. package/bin/lib/arkrules-sensors.mjs +364 -68
  10. package/bin/lib/baseline-key.mjs +45 -1
  11. package/bin/lib/config-contract.mjs +9 -3
  12. package/bin/lib/diagnostic-catalog.mjs +1 -0
  13. package/bin/lib/doctor-human.mjs +3 -3
  14. package/bin/lib/doctor-next-actions.mjs +3 -1
  15. package/bin/lib/field-install.mjs +23 -2
  16. package/bin/lib/first-run-help.mjs +69 -5
  17. package/bin/lib/resolved-candidate-facts.mjs +82 -1
  18. package/bin/lib/rules-inventory.mjs +7 -3
  19. package/bin/lib/upstream-report.mjs +330 -0
  20. package/bin/lib/violations.mjs +51 -15
  21. package/dist/{diagnosticCatalog-BrkOiwCk.d.ts → diagnosticCatalog-biferT4R.d.ts} +9 -3
  22. package/dist/eslint/index.cjs +4 -7
  23. package/dist/eslint/index.js +4 -7
  24. package/dist/index.cjs +28 -31
  25. package/dist/index.d.ts +7 -4
  26. package/dist/index.js +28 -31
  27. package/dist/nestjs/index.cjs +1 -1
  28. package/dist/nestjs/index.js +1 -1
  29. package/dist/runtime/index.cjs +11 -11
  30. package/dist/runtime/index.d.ts +1 -1
  31. package/dist/runtime/index.js +11 -11
  32. package/docs/README.md +3 -3
  33. package/docs/agent-guide.md +25 -1
  34. package/docs/ai-gates.md +8 -0
  35. package/docs/brownfield-adoption.md +30 -0
  36. package/docs/configuration.md +14 -1
  37. package/docs/diagnostics.md +10 -0
  38. package/docs/package-surface.md +4 -3
  39. package/docs/use.md +11 -0
  40. package/package.json +1 -1
  41. package/schemas/ark.config.schema.json +3 -2
  42. package/server.json +2 -2
  43. package/templates/agent-skills/ark-explore/SKILL.md +22 -1
  44. package/templates/skills/ark-explore.md +22 -1
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as ArkRulesFile, E as EffectiveArkRules, R as ResolvedArkRunKernelCallKind, a as ResolvedArkRunDeclarationFact, b as ResolvedArkRunKernelCallFact, c as ResolvedArkRunManagedNewFact, d as ResolvedDependencyFact, e as ResolvedArkRunCompositionRootHitFact, f as ResolvedFactsReason, g as ResolvedArkOrderPlaneCallFact, h as ResolvedArkOrderGenericUpdateFact, i as ResolvedArkOrderRootHitFact, j as ResolvedArkOrderXiFieldWriteFact, k as ResolvedArkOrderIngestWriteFact } from './diagnosticCatalog-BrkOiwCk.js';
2
- export { l as ADAPTER_DIAGNOSTIC_DOCS_RELATIVE_PATH, m as AICodeGate, n as AICodeGateContext, o as AICodeGateOptions, p as AICodeGateResult, q as AICodeGateViolation, r as AIGateExtension, s as ANALYSIS_IR_SCHEMA_VERSION, t as ARK_ANALYSIS_RESULT_SCHEMA, u as ARK_ANALYSIS_RESULT_SCHEMA_VERSION, v as ARK_DESIGN_DELTA_SCHEMA_VERSION, w as ARK_ENFORCEMENT_STATE_SCHEMA_VERSION, x as AdapterCompletenessReason, y as AdapterDiagnostic, z as AdapterResult, B as AdapterSeverity, C as AdapterViolationInput, D as AnalysisCapabilityUse, F as AnalysisCompilerOptions, G as AnalysisCompleteness, H as AnalysisContract, I as AnalysisEvidence, J as AnalysisFile, K as AnalysisFileChange, L as AnalysisFileInput, M as AnalysisImportEdge, N as AnalysisIr, O as AnalysisMode, P as AnalysisResult, Q as AnalysisViolation, S as AnalyzeArchitectureConvergenceInput, T as AnalyzeChangeInput, U as AnalyzePolicyDeltaInput, V as AnalyzeProjectInput, W as AnalyzeResolvedProjectInput, X as ArchitectureActualChange, Y as ArchitectureChangeMap, Z as ArchitectureChangeMapContract, _ as ArchitectureChangeMapDependency, $ as ArchitectureChangeMapFile, a0 as ArchitectureChangeOperation, a1 as ArchitectureConvergenceClassification, a2 as ArchitectureConvergenceFinding, a3 as ArchitectureConvergenceResult, a4 as ArchitectureDependency, a5 as ArchitectureEngineEdge, a6 as ArchitectureEngineResult, a7 as ArchitectureEngineViolation, a8 as ArkDesignDeltaResult, a9 as ArkEnforcementHost, aa as ArkEnforcementState, ab as ArkRuleSensorViolation, ac as ChangePreflightResult, ad as ClassShapeFact, ae as CollectAnalysisConfigWarningsInput, af as DIAGNOSTIC_CATALOG, ag as DIAGNOSTIC_CATALOG_SCHEMA_VERSION, ah as DIAGNOSTIC_DOCS_RELATIVE_PATH, ai as DIAGNOSTIC_RULE_IDS, aj as DesignDeltaChange, ak as DesignDeltaEnforcementScope, al as DesignDeltaIdentity, am as DesignSmellEvidence, an as DesignSmellFinding, ao as DesignSmellId, ap as DiagnosticCatalogEntry, aq as DiagnosticCategory, ar as EnforcementBoundaryState, as as EnforcementEvidence, at as EnforcementEvidenceField, au as EnforcementVerification, av as EvaluateArchitectureGraphInput, aw as ForbiddenCapabilityUse, ax as InvariantCoverageEvidence, ay as POLICY_DELTA_SCHEMA_VERSION, az as PolicyDelta, aA as PolicyDeltaAcknowledgement, aB as PolicyDeltaAnalysis, aC as PolicyDeltaClassification, aD as PolicyDeltaFinding, aE as PreflightResolvedChangeInput, aF as PreparedChangeFile, aG as RESOLVED_CANDIDATE_FACTS_SCHEMA, aH as RESOLVED_CANDIDATE_FACTS_SCHEMA_VERSION, aI as ResolvedAmbientFact, aJ as ResolvedAnalysisFile, aK as ResolvedAnalysisIr, aL as ResolvedAnalysisResult, aM as ResolvedCandidateFacts, aN as ResolvedCandidateFactsInput, aO as ResolvedCapability, aP as ResolvedCapabilityFact, aQ as ResolvedChangePreflightResult, aR as ResolvedDependencyKind, aS as ResolvedDependencyState, aT as ResolvedFactsCompleteness, aU as ResolvedFileFact, aV as ResolvedIntentReferenceFact, aW as ResolvedPublishFact, aX as ResolvedSafetyFact, aY as ResolvedSafetyKind, aZ as ResolvedSafetyReport, a_ as SemanticDependency, a$ as SemanticDependencyKind, b0 as adapterDocsCodePath, b1 as adapterFindingOccurrenceTargetKeys, b2 as adapterFindingRefFromTargetKey, b3 as adapterFindingTargetKey, b4 as analyzeArchitectureConvergence, b5 as analyzeChange, b6 as analyzePolicyDelta, b7 as analyzeProject, b8 as analyzeResolvedProject, b9 as buildArkRuleFileHints, ba as canPromoteInvariant, bb as catalogFixForRuleId, bc as catalogWhyForRuleId, bd as classifyArkPolicyDelta, be as collectAnalysisConfigWarnings, bf as collectEmptyAppliesToFindings, bg as collectForbiddenCapabilityUses, bh as createAICodeGate, bi as createAdapterResult, bj as createArchitectureProfile, bk as createArchitectureProfileFromArkConfig, bl as createElevenLayerArkConfig, bm as createResolvedCandidateFacts, bn as deriveArkRuleFileHints, bo as detectArchitectureCycles, bp as deterministicHash, bq as diagnosticDocsFragment, br as diagnosticDocsPath, bs as elevenLayerProfile, bt as evaluateArchitectureGraph, bu as evaluateArkRuleSensors, bv as evaluateInvariantCoverage, bw as explainViolation, bx as extractClassShapesFromSource, by as extractSemanticDependencies, bz as getDiagnosticCatalogEntry, bA as isCataloguedOrArkRuleFamily, bB as isKnownDiagnosticCode, bC as loadContract, bD as loadResolvedCandidateFacts, bE as policyDeltaAcknowledgementMatches, bF as preflightChange, bG as preflightResolvedChange, bH as resolvedFactsEvidenceRequirementsHash, bI as serializeDiagnosticCatalog, bJ as stableSerialize, bK as toAdapterDiagnostic, bL as version } from './diagnosticCatalog-BrkOiwCk.js';
1
+ import { A as ArkRulesFile, E as EffectiveArkRules, R as ResolvedArkRunKernelCallKind, a as ResolvedArkRunDeclarationFact, b as ResolvedArkRunKernelCallFact, c as ResolvedArkRunManagedNewFact, d as ResolvedDependencyFact, e as ResolvedArkRunCompositionRootHitFact, f as ResolvedFactsReason, g as ResolvedArkOrderPlaneCallFact, h as ResolvedArkOrderGenericUpdateFact, i as ResolvedArkOrderRootHitFact, j as ResolvedArkOrderXiFieldWriteFact, k as ResolvedArkOrderIngestWriteFact } from './diagnosticCatalog-biferT4R.js';
2
+ export { l as ADAPTER_DIAGNOSTIC_DOCS_RELATIVE_PATH, m as AICodeGate, n as AICodeGateContext, o as AICodeGateOptions, p as AICodeGateResult, q as AICodeGateViolation, r as AIGateExtension, s as ANALYSIS_IR_SCHEMA_VERSION, t as ARK_ANALYSIS_RESULT_SCHEMA, u as ARK_ANALYSIS_RESULT_SCHEMA_VERSION, v as ARK_DESIGN_DELTA_SCHEMA_VERSION, w as ARK_ENFORCEMENT_STATE_SCHEMA_VERSION, x as AdapterCompletenessReason, y as AdapterDiagnostic, z as AdapterResult, B as AdapterSeverity, C as AdapterViolationInput, D as AnalysisCapabilityUse, F as AnalysisCompilerOptions, G as AnalysisCompleteness, H as AnalysisContract, I as AnalysisEvidence, J as AnalysisFile, K as AnalysisFileChange, L as AnalysisFileInput, M as AnalysisImportEdge, N as AnalysisIr, O as AnalysisMode, P as AnalysisResult, Q as AnalysisViolation, S as AnalyzeArchitectureConvergenceInput, T as AnalyzeChangeInput, U as AnalyzePolicyDeltaInput, V as AnalyzeProjectInput, W as AnalyzeResolvedProjectInput, X as ArchitectureActualChange, Y as ArchitectureChangeMap, Z as ArchitectureChangeMapContract, _ as ArchitectureChangeMapDependency, $ as ArchitectureChangeMapFile, a0 as ArchitectureChangeOperation, a1 as ArchitectureConvergenceClassification, a2 as ArchitectureConvergenceFinding, a3 as ArchitectureConvergenceResult, a4 as ArchitectureDependency, a5 as ArchitectureEngineEdge, a6 as ArchitectureEngineResult, a7 as ArchitectureEngineViolation, a8 as ArkDesignDeltaResult, a9 as ArkEnforcementHost, aa as ArkEnforcementState, ab as ArkRuleSensorViolation, ac as ChangePreflightResult, ad as ClassShapeFact, ae as CollectAnalysisConfigWarningsInput, af as DIAGNOSTIC_CATALOG, ag as DIAGNOSTIC_CATALOG_SCHEMA_VERSION, ah as DIAGNOSTIC_DOCS_RELATIVE_PATH, ai as DIAGNOSTIC_RULE_IDS, aj as DesignDeltaChange, ak as DesignDeltaEnforcementScope, al as DesignDeltaIdentity, am as DesignSmellEvidence, an as DesignSmellFinding, ao as DesignSmellId, ap as DiagnosticCatalogEntry, aq as DiagnosticCategory, ar as EnforcementBoundaryState, as as EnforcementEvidence, at as EnforcementEvidenceField, au as EnforcementVerification, av as EvaluateArchitectureGraphInput, aw as ForbiddenCapabilityUse, ax as InvariantCoverageEvidence, ay as POLICY_DELTA_SCHEMA_VERSION, az as PolicyDelta, aA as PolicyDeltaAcknowledgement, aB as PolicyDeltaAnalysis, aC as PolicyDeltaClassification, aD as PolicyDeltaFinding, aE as PreflightResolvedChangeInput, aF as PreparedChangeFile, aG as RESOLVED_CANDIDATE_FACTS_SCHEMA, aH as RESOLVED_CANDIDATE_FACTS_SCHEMA_VERSION, aI as ResolvedAmbientFact, aJ as ResolvedAnalysisFile, aK as ResolvedAnalysisIr, aL as ResolvedAnalysisResult, aM as ResolvedCandidateFacts, aN as ResolvedCandidateFactsInput, aO as ResolvedCapability, aP as ResolvedCapabilityFact, aQ as ResolvedChangePreflightResult, aR as ResolvedDependencyKind, aS as ResolvedDependencyState, aT as ResolvedFactsCompleteness, aU as ResolvedFileFact, aV as ResolvedIntentReferenceFact, aW as ResolvedPublishFact, aX as ResolvedSafetyFact, aY as ResolvedSafetyKind, aZ as ResolvedSafetyReport, a_ as SemanticDependency, a$ as SemanticDependencyKind, b0 as adapterDocsCodePath, b1 as adapterFindingOccurrenceTargetKeys, b2 as adapterFindingRefFromTargetKey, b3 as adapterFindingTargetKey, b4 as analyzeArchitectureConvergence, b5 as analyzeChange, b6 as analyzePolicyDelta, b7 as analyzeProject, b8 as analyzeResolvedProject, b9 as buildArkRuleFileHints, ba as canPromoteInvariant, bb as catalogFixForRuleId, bc as catalogWhyForRuleId, bd as classifyArkPolicyDelta, be as collectAnalysisConfigWarnings, bf as collectEmptyAppliesToFindings, bg as collectForbiddenCapabilityUses, bh as createAICodeGate, bi as createAdapterResult, bj as createArchitectureProfile, bk as createArchitectureProfileFromArkConfig, bl as createElevenLayerArkConfig, bm as createResolvedCandidateFacts, bn as deriveArkRuleFileHints, bo as detectArchitectureCycles, bp as deterministicHash, bq as diagnosticDocsFragment, br as diagnosticDocsPath, bs as elevenLayerProfile, bt as evaluateArchitectureGraph, bu as evaluateArkRuleSensors, bv as evaluateInvariantCoverage, bw as explainViolation, bx as extractClassShapesFromSource, by as extractSemanticDependencies, bz as getDiagnosticCatalogEntry, bA as isCataloguedOrArkRuleFamily, bB as isKnownDiagnosticCode, bC as loadContract, bD as loadResolvedCandidateFacts, bE as policyDeltaAcknowledgementMatches, bF as preflightChange, bG as preflightResolvedChange, bH as resolvedFactsEvidenceRequirementsHash, bI as serializeDiagnosticCatalog, bJ as stableSerialize, bK as toAdapterDiagnostic, bL as version } from './diagnosticCatalog-biferT4R.js';
3
3
  export { A as ArchitectureLayer, a as ArchitectureLayerConfig, b as ArchitectureProfile, c as ArchitectureRule, d as ArkCheckConfig, C as CreateArchitectureProfileFromArkConfigOptions, e as CreateArchitectureProfileOptions, f as CreateElevenLayerArkConfigOptions } from './types-Djbs3KjE.js';
4
4
  import { a as ArkConfigRule, b as ArkConfigSchemaVersion, c as ArkConfigLoadResult, A as ArkConfig, d as ArkConfigIssue, e as ArkConfigArkRun, f as ArkConfigLayer, g as ArkConfigArkOrder } from './configTypes-j7so8B4O.js';
5
5
 
@@ -101,7 +101,9 @@ declare const ARK_CONFIG_SCHEMA: {
101
101
  readonly allowDisabledPeerIsolation: false;
102
102
  };
103
103
  };
104
- /** Invariant-coverage scan controls (test globs + file budget). Absence keeps defaults. */
104
+ /** Invariant-coverage scan controls (test globs + file budget). Absence keeps defaults.
105
+ * maxFiles also bounds structural-hint preload (orchestration-only / thin-adapter /
106
+ * writes-via-aggregate). There is no arkrules.hintBudget. */
105
107
  readonly coverage: {
106
108
  readonly $ref: "#/$defs/coverage";
107
109
  };
@@ -300,7 +302,7 @@ declare const ARK_CONFIG_SCHEMA: {
300
302
  readonly coverage: {
301
303
  readonly type: "object";
302
304
  readonly additionalProperties: false;
303
- readonly description: "Invariant coverage scan controls. testGlobs replaces the built-in test-name heuristic; maxFiles raises or lowers the evidence file budget; coverageRoots declares where the project runs its tests, so a covering test found outside them is reported instead of silently certifying an invariant.";
305
+ readonly description: "Invariant coverage scan controls. testGlobs replaces the built-in test-name heuristic; maxFiles raises or lowers the evidence file budget and also bounds structural-hint preload for orchestration-only, thin-adapter, and writes-via-aggregate (default 400; there is no arkrules.hintBudget); coverageRoots declares where the project runs its tests, so a covering test found outside them is reported instead of silently certifying an invariant.";
304
306
  readonly properties: {
305
307
  readonly testGlobs: {
306
308
  readonly minItems: 1;
@@ -314,6 +316,7 @@ declare const ARK_CONFIG_SCHEMA: {
314
316
  readonly maxFiles: {
315
317
  readonly type: "integer";
316
318
  readonly minimum: 1;
319
+ readonly description: "Evidence file budget (default 400) and structural-hint preload cap for orchestration-only, thin-adapter, and writes-via-aggregate. Raise this when hinted/governed counts show truncated sensors. There is no separate arkrules.hintBudget.";
317
320
  };
318
321
  readonly coverageRoots: {
319
322
  readonly minItems: 1;