arkgate 4.8.11 → 4.8.13

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 (41) hide show
  1. package/CHANGELOG.md +43 -2
  2. package/README.md +22 -32
  3. package/bin/ark-check-runtime.mjs +2 -0
  4. package/bin/lib/analysis-engine.mjs +4 -4
  5. package/bin/lib/ark-order-doctor.mjs +154 -0
  6. package/bin/lib/ark-order-report.mjs +64 -0
  7. package/bin/lib/ark-order-sensors.mjs +1 -1
  8. package/bin/lib/diagnostic-catalog.mjs +2 -2
  9. package/bin/lib/doctor-advisories.mjs +91 -18
  10. package/bin/lib/doctor-human.mjs +2 -10
  11. package/bin/lib/doctor-plan.mjs +4 -3
  12. package/bin/lib/extra-merge-teeth.mjs +32 -4
  13. package/bin/lib/html-report-advisories.mjs +2 -0
  14. package/bin/lib/html-report-depth.mjs +8 -18
  15. package/bin/lib/html-report.mjs +16 -0
  16. package/bin/lib/remediation.mjs +5 -5
  17. package/bin/lib/rules-under-contract.mjs +14 -0
  18. package/bin/lib/start-preview.mjs +1 -0
  19. package/bin/lib/status-command.mjs +28 -0
  20. package/bin/lib/status-manifest.mjs +23 -0
  21. package/bin/lib/violations.mjs +10 -1
  22. package/dist/{diagnosticCatalog-DiflIock.d.ts → diagnosticCatalog-DA565Lja.d.ts} +1 -1
  23. package/dist/eslint/index.cjs +4 -4
  24. package/dist/eslint/index.js +4 -4
  25. package/dist/index.cjs +31 -31
  26. package/dist/index.d.ts +71 -3
  27. package/dist/index.js +31 -31
  28. package/dist/nestjs/index.cjs +1 -1
  29. package/dist/nestjs/index.js +1 -1
  30. package/dist/runtime/index.cjs +15 -15
  31. package/dist/runtime/index.d.ts +1 -1
  32. package/dist/runtime/index.js +15 -15
  33. package/docs/README.md +4 -3
  34. package/docs/agent-guide.md +2 -1
  35. package/docs/arkorder.md +28 -10
  36. package/docs/package-surface.md +2 -1
  37. package/docs/product-voice.md +9 -8
  38. package/docs/use.md +1 -1
  39. package/package.json +1 -1
  40. package/schemas/ark.status-manifest.schema.json +47 -0
  41. package/server.json +2 -2
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as AdapterViolationInput, a as ArkRulesFile, E as EffectiveArkRules, R as ResolvedArkRunKernelCallKind, b as ResolvedArkRunDeclarationFact, c as ResolvedArkRunKernelCallFact, d as ResolvedArkRunManagedNewFact, e as ResolvedDependencyFact, f as ResolvedArkRunCompositionRootHitFact, g as ResolvedFactsReason, h as ResolvedArkOrderPlaneCallFact, i as ResolvedArkOrderGenericUpdateFact, j as ResolvedArkOrderRootHitFact, k as ResolvedArkOrderXiFieldWriteFact, l as ResolvedArkOrderIngestWriteFact } from './diagnosticCatalog-DiflIock.js';
2
- export { m as ADAPTER_DIAGNOSTIC_DOCS_RELATIVE_PATH, n as AICodeGate, o as AICodeGateContext, p as AICodeGateOptions, q as AICodeGateResult, r as AICodeGateViolation, s as AIGateExtension, t as ANALYSIS_IR_SCHEMA_VERSION, u as ARK_ANALYSIS_RESULT_SCHEMA, v as ARK_ANALYSIS_RESULT_SCHEMA_VERSION, w as ARK_DESIGN_DELTA_SCHEMA_VERSION, x as ARK_ENFORCEMENT_STATE_SCHEMA_VERSION, y as AdapterCompletenessReason, z as AdapterDiagnostic, B as AdapterResult, C as AdapterSeverity, 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 analyzeArchitectureConvergence, b1 as analyzeChange, b2 as analyzePolicyDelta, b3 as analyzeProject, b4 as analyzeResolvedProject, b5 as buildArkRuleFileHints, b6 as canPromoteInvariant, b7 as catalogFixForRuleId, b8 as catalogWhyForRuleId, b9 as classifyArkPolicyDelta, ba as collectAnalysisConfigWarnings, bb as collectEmptyAppliesToFindings, bc as collectForbiddenCapabilityUses, bd as createAICodeGate, be as createAdapterResult, bf as createArchitectureProfile, bg as createArchitectureProfileFromArkConfig, bh as createElevenLayerArkConfig, bi as createResolvedCandidateFacts, bj as deriveArkRuleFileHints, bk as detectArchitectureCycles, bl as deterministicHash, bm as diagnosticDocsFragment, bn as diagnosticDocsPath, bo as elevenLayerProfile, bp as evaluateArchitectureGraph, bq as evaluateArkRuleSensors, br as evaluateInvariantCoverage, bs as explainViolation, bt as extractClassShapesFromSource, bu as extractSemanticDependencies, bv as getDiagnosticCatalogEntry, bw as isCataloguedOrArkRuleFamily, bx as isKnownDiagnosticCode, by as loadContract, bz as loadResolvedCandidateFacts, bA as policyDeltaAcknowledgementMatches, bB as preflightChange, bC as preflightResolvedChange, bD as resolvedFactsEvidenceRequirementsHash, bE as serializeDiagnosticCatalog, bF as stableSerialize, bG as toAdapterDiagnostic, bH as version } from './diagnosticCatalog-DiflIock.js';
1
+ import { A as AdapterViolationInput, a as ArkRulesFile, E as EffectiveArkRules, R as ResolvedArkRunKernelCallKind, b as ResolvedArkRunDeclarationFact, c as ResolvedArkRunKernelCallFact, d as ResolvedArkRunManagedNewFact, e as ResolvedDependencyFact, f as ResolvedArkRunCompositionRootHitFact, g as ResolvedFactsReason, h as ResolvedArkOrderPlaneCallFact, i as ResolvedArkOrderGenericUpdateFact, j as ResolvedArkOrderRootHitFact, k as ResolvedArkOrderXiFieldWriteFact, l as ResolvedArkOrderIngestWriteFact } from './diagnosticCatalog-DA565Lja.js';
2
+ export { m as ADAPTER_DIAGNOSTIC_DOCS_RELATIVE_PATH, n as AICodeGate, o as AICodeGateContext, p as AICodeGateOptions, q as AICodeGateResult, r as AICodeGateViolation, s as AIGateExtension, t as ANALYSIS_IR_SCHEMA_VERSION, u as ARK_ANALYSIS_RESULT_SCHEMA, v as ARK_ANALYSIS_RESULT_SCHEMA_VERSION, w as ARK_DESIGN_DELTA_SCHEMA_VERSION, x as ARK_ENFORCEMENT_STATE_SCHEMA_VERSION, y as AdapterCompletenessReason, z as AdapterDiagnostic, B as AdapterResult, C as AdapterSeverity, 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 analyzeArchitectureConvergence, b1 as analyzeChange, b2 as analyzePolicyDelta, b3 as analyzeProject, b4 as analyzeResolvedProject, b5 as buildArkRuleFileHints, b6 as canPromoteInvariant, b7 as catalogFixForRuleId, b8 as catalogWhyForRuleId, b9 as classifyArkPolicyDelta, ba as collectAnalysisConfigWarnings, bb as collectEmptyAppliesToFindings, bc as collectForbiddenCapabilityUses, bd as createAICodeGate, be as createAdapterResult, bf as createArchitectureProfile, bg as createArchitectureProfileFromArkConfig, bh as createElevenLayerArkConfig, bi as createResolvedCandidateFacts, bj as deriveArkRuleFileHints, bk as detectArchitectureCycles, bl as deterministicHash, bm as diagnosticDocsFragment, bn as diagnosticDocsPath, bo as elevenLayerProfile, bp as evaluateArchitectureGraph, bq as evaluateArkRuleSensors, br as evaluateInvariantCoverage, bs as explainViolation, bt as extractClassShapesFromSource, bu as extractSemanticDependencies, bv as getDiagnosticCatalogEntry, bw as isCataloguedOrArkRuleFamily, bx as isKnownDiagnosticCode, by as loadContract, bz as loadResolvedCandidateFacts, bA as policyDeltaAcknowledgementMatches, bB as preflightChange, bC as preflightResolvedChange, bD as resolvedFactsEvidenceRequirementsHash, bE as serializeDiagnosticCatalog, bF as stableSerialize, bG as toAdapterDiagnostic, bH as version } from './diagnosticCatalog-DA565Lja.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
 
@@ -888,7 +888,7 @@ declare function demoteExtraPlaneTeethUnderClassificationFloor<T extends {
888
888
  severity?: string;
889
889
  }>(violations: T[], classification?: ExtraMergeTeethClassification): T[];
890
890
  /** Stamp for extra-plane honesty: never one architecture score. */
891
- declare const MERGE_PLANES_DUAL_STAMP = "Structure = heuristics; invariants = catalog+coverage evidence (not business runtime); ArkRun = kernel usage + declarations (not a score); ArkOrder = pattern slaving (not a score). Extra planes never merge into one architecture score. Advisory ArkRules \u2260 merge teeth. Advisory ArkRun \u2260 merge teeth. Advisory ArkOrder \u2260 merge teeth.";
891
+ declare const MERGE_PLANES_DUAL_STAMP = "Structure = heuristics; invariants = catalog+coverage evidence (not business runtime); ArkRun = kernel usage + declarations (not a score); ArkOrder = the few big product choices (not a score). Extra planes never merge into one architecture score. Advisory ArkRules \u2260 merge teeth. Advisory ArkRun \u2260 merge teeth. Advisory ArkOrder \u2260 merge teeth.";
892
892
  type MergePlanesArkRulesInput = {
893
893
  active: boolean;
894
894
  structureEnforced?: number;
@@ -905,6 +905,11 @@ type MergePlanesArkRunInput = {
905
905
  mode?: 'advisory' | 'enforced' | null;
906
906
  residualCount?: number;
907
907
  };
908
+ type MergePlanesArkOrderInput = {
909
+ present: boolean;
910
+ mode?: 'advisory' | 'enforced' | null;
911
+ residualCount?: number;
912
+ };
908
913
  type MergePlanesHonesty = {
909
914
  layers: {
910
915
  role: 'inter-layer-edges';
@@ -935,6 +940,14 @@ type MergePlanesHonesty = {
935
940
  extraMergeTeeth: boolean;
936
941
  note: string;
937
942
  };
943
+ arkOrder: {
944
+ role: 'pattern-slaving';
945
+ present: boolean;
946
+ mode: 'advisory' | 'enforced' | null;
947
+ residualCount: number;
948
+ extraMergeTeeth: boolean;
949
+ note: string;
950
+ };
938
951
  extraMergeTeeth: boolean;
939
952
  dualPlaneStamp: string;
940
953
  failMergeWhen: string;
@@ -952,6 +965,7 @@ declare function composeMergePlanesHonesty(input?: {
952
965
  classification?: ExtraMergeTeethClassificationInput | null;
953
966
  arkRules?: MergePlanesArkRulesInput | null;
954
967
  arkRun?: MergePlanesArkRunInput | null;
968
+ arkOrder?: MergePlanesArkOrderInput | null;
955
969
  }): MergePlanesHonesty;
956
970
 
957
971
  /**
@@ -1207,6 +1221,21 @@ declare function inventoryToExtractionCard(candidate: RulesInventoryCandidate):
1207
1221
  next: string;
1208
1222
  };
1209
1223
 
1224
+ /**
1225
+ * Doctor / status / report ArkOrder section. Always notAScore.
1226
+ * Residual is a unique ARKORDER finding-id count — never a score or LLM verdict.
1227
+ * Absence is an honest silent row. Does not invent residual when the extra is off.
1228
+ */
1229
+
1230
+ type ArkOrderDoctorMode = 'advisory' | 'enforced';
1231
+ type ArkOrderStatusSlice = {
1232
+ notAScore: true;
1233
+ present: boolean;
1234
+ mode: ArkOrderDoctorMode | null;
1235
+ extraMergeTeeth: boolean;
1236
+ residual: number | null;
1237
+ };
1238
+
1210
1239
  /**
1211
1240
  * Public status manifest (ACS03 + DF02 honesty).
1212
1241
  *
@@ -1320,6 +1349,11 @@ type StatusManifest = {
1320
1349
  * residual is a finding-id count (null = unknown, not green).
1321
1350
  */
1322
1351
  arkRun?: ArkRunStatusSlice;
1352
+ /**
1353
+ * ArkOrder extra residual. Always notAScore; never a gate input.
1354
+ * residual is a finding-id count (null = unknown, not green).
1355
+ */
1356
+ arkOrder?: ArkOrderStatusSlice;
1323
1357
  };
1324
1358
  type StatusVsBaseSlice = {
1325
1359
  baseRef: string;
@@ -1389,6 +1423,8 @@ type StatusManifestFacts = {
1389
1423
  vsBase?: StatusVsBaseSlice | null;
1390
1424
  /** Thin ArkRun extra facts (notAScore). residual null = unknown, not green. */
1391
1425
  arkRun?: ArkRunStatusSlice | null;
1426
+ /** Thin ArkOrder extra facts (notAScore). residual null = unknown, not green. */
1427
+ arkOrder?: ArkOrderStatusSlice | null;
1392
1428
  };
1393
1429
  /**
1394
1430
  * Evaluate project binding for status without filesystem.
@@ -1731,6 +1767,38 @@ declare const ARK_STATUS_MANIFEST_SCHEMA: {
1731
1767
  };
1732
1768
  };
1733
1769
  };
1770
+ readonly arkOrder: {
1771
+ readonly type: "object";
1772
+ readonly description: "ArkOrder extra residual (notAScore). present/mode from config; residual is a finding-id count (null = unknown, not green). extraMergeTeeth is honesty, never a score.";
1773
+ readonly additionalProperties: false;
1774
+ readonly required: readonly ["notAScore", "present", "mode", "extraMergeTeeth", "residual"];
1775
+ readonly properties: {
1776
+ readonly notAScore: {
1777
+ readonly const: true;
1778
+ };
1779
+ readonly present: {
1780
+ readonly type: "boolean";
1781
+ };
1782
+ readonly mode: {
1783
+ readonly anyOf: readonly [{
1784
+ readonly enum: readonly ["advisory", "enforced"];
1785
+ }, {
1786
+ readonly type: "null";
1787
+ }];
1788
+ };
1789
+ readonly extraMergeTeeth: {
1790
+ readonly type: "boolean";
1791
+ };
1792
+ readonly residual: {
1793
+ readonly anyOf: readonly [{
1794
+ readonly type: "integer";
1795
+ readonly minimum: 0;
1796
+ }, {
1797
+ readonly type: "null";
1798
+ }];
1799
+ };
1800
+ };
1801
+ };
1734
1802
  };
1735
1803
  };
1736
1804