arkgate 4.8.10 → 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 (50) hide show
  1. package/CHANGELOG.md +74 -2
  2. package/README.md +23 -32
  3. package/bin/ark-check-runtime.mjs +8 -0
  4. package/bin/ark-check.mjs +3 -0
  5. package/bin/lib/adapter-contract-types.mjs +137 -0
  6. package/bin/lib/adapter-contract.mjs +4 -180
  7. package/bin/lib/adapter-finding-refs.mjs +63 -0
  8. package/bin/lib/agent-projection-formatters.mjs +151 -0
  9. package/bin/lib/agent-projection-merge.mjs +148 -0
  10. package/bin/lib/agent-projection-types.mjs +42 -0
  11. package/bin/lib/agent-projection.mjs +3 -309
  12. package/bin/lib/analysis-engine.mjs +4 -4
  13. package/bin/lib/ark-order-doctor.mjs +154 -0
  14. package/bin/lib/ark-order-report.mjs +64 -0
  15. package/bin/lib/ark-order-sensors.mjs +1 -1
  16. package/bin/lib/diagnostic-catalog.mjs +2 -2
  17. package/bin/lib/doctor-advisories.mjs +91 -18
  18. package/bin/lib/doctor-human.mjs +2 -10
  19. package/bin/lib/doctor-plan.mjs +4 -3
  20. package/bin/lib/extra-merge-teeth.mjs +32 -4
  21. package/bin/lib/html-report-advisories.mjs +2 -0
  22. package/bin/lib/html-report-depth.mjs +8 -18
  23. package/bin/lib/html-report.mjs +16 -0
  24. package/bin/lib/project-root.mjs +70 -4
  25. package/bin/lib/remediation.mjs +5 -5
  26. package/bin/lib/rules-under-contract.mjs +14 -0
  27. package/bin/lib/start-preview.mjs +1 -0
  28. package/bin/lib/status-command.mjs +28 -0
  29. package/bin/lib/status-manifest.mjs +23 -0
  30. package/bin/lib/violations.mjs +10 -1
  31. package/dist/{diagnosticCatalog-biferT4R.d.ts → diagnosticCatalog-DA565Lja.d.ts} +22 -39
  32. package/dist/eslint/index.cjs +4 -4
  33. package/dist/eslint/index.js +4 -4
  34. package/dist/index.cjs +31 -31
  35. package/dist/index.d.ts +116 -12
  36. package/dist/index.js +31 -31
  37. package/dist/nestjs/index.cjs +1 -1
  38. package/dist/nestjs/index.js +1 -1
  39. package/dist/runtime/index.cjs +15 -15
  40. package/dist/runtime/index.d.ts +1 -1
  41. package/dist/runtime/index.js +15 -15
  42. package/docs/README.md +5 -4
  43. package/docs/agent-guide.md +2 -1
  44. package/docs/arkorder.md +28 -10
  45. package/docs/package-surface.md +3 -1
  46. package/docs/product-voice.md +9 -8
  47. package/docs/use.md +1 -1
  48. package/package.json +3 -2
  49. package/schemas/ark.status-manifest.schema.json +47 -0
  50. package/server.json +2 -2
package/dist/index.d.ts CHANGED
@@ -1,8 +1,27 @@
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';
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
 
6
+ /**
7
+ * Baseline-compatible target key for a violation input.
8
+ * Field order and empty-string fallbacks **must** match `baselineKey` in
9
+ * `baselineKey.ts` — parity tests guard this so finding refs never orphan freezes.
10
+ *
11
+ * Note: uses raw ruleId/file strings (including empty) the same way baseline does;
12
+ * display `ruleId` / `location.file` may still normalize to ARK_UNKNOWN / `<unknown>`.
13
+ */
14
+ declare function adapterFindingTargetKey(violation: AdapterViolationInput): string;
15
+ /**
16
+ * Occurrence-aware target keys for a violation list (parity with baselineOccurrenceKeys).
17
+ * First occurrence keeps the historical base key; duplicates get `#N`.
18
+ */
19
+ declare function adapterFindingOccurrenceTargetKeys(violations: readonly AdapterViolationInput[]): string[];
20
+ /** FNV-1a finding ref from a baseline-compatible targetKey (not a security hash). */
21
+ declare function adapterFindingRefFromTargetKey(targetKey: string): string;
22
+ /** Package-relative docs path with fragment for a public ruleId. */
23
+ declare function adapterDocsCodePath(ruleId: string): string;
24
+
6
25
  /**
7
26
  * Canonical, pure contract for ark.config.json.
8
27
  *
@@ -869,7 +888,7 @@ declare function demoteExtraPlaneTeethUnderClassificationFloor<T extends {
869
888
  severity?: string;
870
889
  }>(violations: T[], classification?: ExtraMergeTeethClassification): T[];
871
890
  /** Stamp for extra-plane honesty: never one architecture score. */
872
- 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.";
873
892
  type MergePlanesArkRulesInput = {
874
893
  active: boolean;
875
894
  structureEnforced?: number;
@@ -886,6 +905,11 @@ type MergePlanesArkRunInput = {
886
905
  mode?: 'advisory' | 'enforced' | null;
887
906
  residualCount?: number;
888
907
  };
908
+ type MergePlanesArkOrderInput = {
909
+ present: boolean;
910
+ mode?: 'advisory' | 'enforced' | null;
911
+ residualCount?: number;
912
+ };
889
913
  type MergePlanesHonesty = {
890
914
  layers: {
891
915
  role: 'inter-layer-edges';
@@ -916,6 +940,14 @@ type MergePlanesHonesty = {
916
940
  extraMergeTeeth: boolean;
917
941
  note: string;
918
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
+ };
919
951
  extraMergeTeeth: boolean;
920
952
  dualPlaneStamp: string;
921
953
  failMergeWhen: string;
@@ -933,6 +965,7 @@ declare function composeMergePlanesHonesty(input?: {
933
965
  classification?: ExtraMergeTeethClassificationInput | null;
934
966
  arkRules?: MergePlanesArkRulesInput | null;
935
967
  arkRun?: MergePlanesArkRunInput | null;
968
+ arkOrder?: MergePlanesArkOrderInput | null;
936
969
  }): MergePlanesHonesty;
937
970
 
938
971
  /**
@@ -1188,6 +1221,21 @@ declare function inventoryToExtractionCard(candidate: RulesInventoryCandidate):
1188
1221
  next: string;
1189
1222
  };
1190
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
+
1191
1239
  /**
1192
1240
  * Public status manifest (ACS03 + DF02 honesty).
1193
1241
  *
@@ -1301,6 +1349,11 @@ type StatusManifest = {
1301
1349
  * residual is a finding-id count (null = unknown, not green).
1302
1350
  */
1303
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;
1304
1357
  };
1305
1358
  type StatusVsBaseSlice = {
1306
1359
  baseRef: string;
@@ -1370,6 +1423,8 @@ type StatusManifestFacts = {
1370
1423
  vsBase?: StatusVsBaseSlice | null;
1371
1424
  /** Thin ArkRun extra facts (notAScore). residual null = unknown, not green. */
1372
1425
  arkRun?: ArkRunStatusSlice | null;
1426
+ /** Thin ArkOrder extra facts (notAScore). residual null = unknown, not green. */
1427
+ arkOrder?: ArkOrderStatusSlice | null;
1373
1428
  };
1374
1429
  /**
1375
1430
  * Evaluate project binding for status without filesystem.
@@ -1712,6 +1767,38 @@ declare const ARK_STATUS_MANIFEST_SCHEMA: {
1712
1767
  };
1713
1768
  };
1714
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
+ };
1715
1802
  };
1716
1803
  };
1717
1804
 
@@ -1848,16 +1935,12 @@ declare function primaryImprovementCompassNextAction(compass: ImprovementCompass
1848
1935
  declare function formatImprovementCompassDoctorLines(compass: ImprovementCompass): string[];
1849
1936
 
1850
1937
  /**
1851
- * Version-matched agent contract projection (ACS04).
1938
+ * Version-matched agent contract projection types and markers (ACS04).
1852
1939
  *
1853
- * Compact agent-facing markdown (plus meta) derived from the installed package
1854
- * version and an effective project contract summary. Explicitly **non-authoritative**:
1855
- * enforcement is ark-check / hooks / CI — never this projection, AGENTS.md, or skills.
1940
+ * Split from agentProjection.ts: constants, markers, and fact/meta types.
1941
+ * Tooling gathers filesystem facts; this module only names the contract.
1856
1942
  *
1857
- * **Canonical** for `ark agents-md`, install/upgrade AGENTS embedding, and drift tests.
1858
- * Tooling gathers filesystem facts; this module only formats pure inputs.
1859
- *
1860
- * Zero Node I/O. Optional CLI surface: generated `bin/lib/agent-projection.mjs`.
1943
+ * Zero Node I/O. Optional CLI surface: generated `bin/lib/agent-projection-types.mjs`.
1861
1944
  *
1862
1945
  * @see docs/plans/agent-contract-surface-4.3/README.md
1863
1946
  */
@@ -1930,6 +2013,17 @@ type AgentProjectionMergeResult = {
1930
2013
  /** True when customized text outside the managed block was preserved. */
1931
2014
  preservedOutsideBlock: boolean;
1932
2015
  };
2016
+
2017
+ /**
2018
+ * Version-matched agent contract projection formatters (ACS04).
2019
+ *
2020
+ * Split from agentProjection.ts: content identity, layer/catalog markdown,
2021
+ * projection body/block, and machine meta. Merge/stamp lives in
2022
+ * `agentProjectionMerge.ts`.
2023
+ *
2024
+ * Zero Node I/O. Optional CLI surface: generated `bin/lib/agent-projection-formatters.mjs`.
2025
+ */
2026
+
1933
2027
  /** FNV-1a identity — portable, no Node crypto (same family as stableHash). */
1934
2028
  declare function agentProjectionContentIdentity(body: string): string;
1935
2029
  /**
@@ -1959,6 +2053,16 @@ declare function buildAgentProjectionBlock(facts: AgentProjectionFacts): string;
1959
2053
  * Machine meta for CLI `--json` / tests (never a gate input).
1960
2054
  */
1961
2055
  declare function buildAgentProjectionMeta(facts: AgentProjectionFacts): AgentProjectionMeta;
2056
+
2057
+ /**
2058
+ * Version-matched agent contract projection merge/stamp (ACS04).
2059
+ *
2060
+ * Split from agentProjection.ts: extract managed block, parse stamps,
2061
+ * version match, non-enforcement label, and document merge.
2062
+ *
2063
+ * Zero Node I/O. Optional CLI surface: generated `bin/lib/agent-projection-merge.mjs`.
2064
+ */
2065
+
1962
2066
  /**
1963
2067
  * Extract the managed projection block from a document (AGENTS.md or equivalent).
1964
2068
  */
@@ -2140,4 +2244,4 @@ declare function agentSkillPackageFileRelativePath(skillName: string): string;
2140
2244
  */
2141
2245
  declare function flatSkillTemplateFileRelativePath(skillName: string): string;
2142
2246
 
2143
- export { AGENT_PROJECTION_BEGIN_MARKER, AGENT_PROJECTION_END_MARKER, AGENT_PROJECTION_ENFORCEMENT_SURFACES, AGENT_PROJECTION_NON_ENFORCEMENT_LABEL, AGENT_SKILLS_PACKAGE_RELATIVE_ROOT, AGENT_SKILL_ENTRY_FILENAME, ARKORDER_RULE_IDS, ARKORDER_TIER1_SENSOR_IDS, ARKRUN_INTERACTION_NAME_INCOMPLETE, ARKRUN_KERNEL_FACTORY_CALLEES, ARKRUN_KERNEL_INTERACTION_CALLEES, ARKRUN_RULE_IDS, ARKRUN_TIER1_SENSOR_IDS, ARKRUN_TRANSPORT_BYPASS_SPECIFIERS, ARK_AGENT_PROJECTION_SCHEMA_VERSION, ARK_AGENT_SKILLS_PACKAGE_SCHEMA_VERSION, ARK_CONFIG_SCHEMA, ARK_CONFIG_SCHEMA_VERSION, ARK_IMPROVEMENT_COMPASS_SCHEMA_VERSION, ARK_PROJECT_IDENTITY_SCHEMA, ARK_PROJECT_IDENTITY_SCHEMA_URL, ARK_PROJECT_IDENTITY_SCHEMA_VERSION, ARK_RULES_SCHEMA, ARK_RULES_SCHEMA_VERSION, ARK_RULE_SENSORS, ARK_RUN_DOCTOR_SCHEMA_VERSION, ARK_SKILL_DESCRIPTION_VERSION_PATTERN, ARK_SKILL_NAMES, ARK_SKILL_NAME_COUNT, ARK_STATUS_MANIFEST_SCHEMA, ARK_STATUS_MANIFEST_SCHEMA_URL, ARK_STATUS_MANIFEST_SCHEMA_VERSION, type AgentProjectionCatalogEntry, type AgentProjectionFacts, type AgentProjectionLayerSummary, type AgentProjectionMergeAction, type AgentProjectionMergeResult, type AgentProjectionMeta, type AgentProjectionProfile, type AgentSkillPackageEntry, type AgentSkillValidationIssue, ArkConfig, ArkConfigLoadResult, type ArkOrderRuleId, type ArkOrderSensorFinding, ArkRulesFile, type ArkRunDoctorSection, type ArkRunRuleId, type ArkRunSensorFinding, type ArkRunStatusSlice, type ArkRunTier1SensorId, type ArkSkillName, DEFAULT_AGENT_PROJECTION_RULE_IDS, EXTRA_MERGE_TEETH_GOVERNED_FLOOR, EffectiveArkRules, type EffectiveContract, EffectiveContractError, type EffectiveContractWarning, type EvaluateArkRunSensorsInput, type EvaluateArkRunSensorsResult, type ExtraMergeTeethClassification, FLAT_SKILL_TEMPLATES_RELATIVE_ROOT, IMPROVEMENT_COMPASS_OUT_OF_SCOPE_LENSES, IMPROVEMENT_COMPASS_TOP_RESIDUAL_CAP, IMPROVEMENT_LENS_IDS, type ImprovementCompass, type ImprovementCompassEvidence, type ImprovementCompassFacts, type ImprovementCompassNextAction, type ImprovementCompassSmellFact, type ImprovementCompassViolationFact, type ImprovementLens, type ImprovementLensId, type ImprovementLensStatus, MERGE_PLANES_DUAL_STAMP, type MergePlanesHonesty, PROJECT_BINDING_SCHEMA, PROJECT_EXPECTATION_SCHEMA, type ParseSkillDocumentResult, type ParsedSkillFrontmatter, type ProjectBinding, type ProjectExpectation, type ProjectIdentity, ResolvedArkRunCompositionRootHitFact, ResolvedArkRunDeclarationFact, ResolvedArkRunKernelCallFact, ResolvedArkRunKernelCallKind, ResolvedArkRunManagedNewFact, ResolvedDependencyFact, ResolvedFactsReason, type RulesInventoryCandidate, type RulesInventoryResult, STATUS_COMPASS_FACTS_SOURCES, STATUS_COMPASS_MODES, STATUS_COMPASS_REASON_CODES, type StatusActivationSlice, type StatusCheckVerdict, type StatusCompassFactsSource, type StatusCompassMode, type StatusCompassReasonCode, type StatusImprovementCompassSlice, type StatusLastCheckSlice, type StatusManifest, type StatusManifestFacts, type StatusNextAction, type StatusProjectIdentitySlice, type StatusRulesSlice, type StatusWritePathClass, type ValidateAgentSkillDocumentInput, type ValidateAgentSkillsPackageResult, agentProjectionContentIdentity, agentSkillEntryRelativePath, agentSkillPackageFileRelativePath, arkRunKernelCallKind, buildAgentProjectionBeginMarker, buildAgentProjectionBlock, buildAgentProjectionBody, buildAgentProjectionMeta, buildEffectiveArkRules, buildImprovementCompass, buildRulesInventory, buildStatusManifest, classifyResolvedLayerCoverage, classifyStatusWritePath, composeMergePlanesHonesty, createProjectId, createProjectIdentity, defaultHonestLabel, demoteExtraPlaneTeethUnderClassificationFloor, effectiveContractPolicyPayload, emptyEffectiveArkRules, evaluateArkOrderSensors, evaluateArkRunEditorSensors, evaluateArkRunEditorSensorsFromSource, evaluateArkRunSensors, evaluateStatusBinding, extraMergeTeethAllowed, extractAgentProjectionBlock, extractArkRunDeclarationsFromSource, extractArkRunImportedConstructorNamesFromSource, extractArkRunKernelCallsFromSource, extractArkRunManagedNewsFromSource, extractArkRunValueImportDependenciesFromSource, flatSkillTemplateFileRelativePath, formatAgentProjectionCatalogShortList, formatAgentProjectionLayers, formatArkRunDoctorLines, formatImprovementCompassDoctorLines, formatImprovementCompassResidualLabels, inventoryToExtractionCard, isArkOrderRuleId, isArkRunKernelModuleSpecifier, isArkRunRuleId, isArkRunTransportBypassSpecifier, isArkSkillName, isExtraPlaneFinding, isValidAgentSkillName, loadArkConfigContract, loadArkRulesContract, mergeAgentProjectionDocument, normalizeExtraMergeTeethClassification, normalizeSkillContent, normalizeStatusImprovementCompass, parseAgentProjectionStamp, parseArkConfigJson, parseArkRulesJson, parseSkillDescriptionVersion, parseSkillDocument, primaryImprovementCompassNextAction, projectStatusArkRun, projectStatusImprovementCompass, projectionHasNonEnforcementLabel, projectionMatchesPackageVersion, resolveEffectiveContract, resolveStatusNextAction, skillDescriptionVersionPrefix, stampSkillDescription, statusCompassResidualIsSubsetOfDoctor, stripSkillDescriptionVersion, summarizeArkRunSection, unavailableStatusImprovementCompass, validateAgentSkillDocument, validateAgentSkillsPackage };
2247
+ export { AGENT_PROJECTION_BEGIN_MARKER, AGENT_PROJECTION_END_MARKER, AGENT_PROJECTION_ENFORCEMENT_SURFACES, AGENT_PROJECTION_NON_ENFORCEMENT_LABEL, AGENT_SKILLS_PACKAGE_RELATIVE_ROOT, AGENT_SKILL_ENTRY_FILENAME, ARKORDER_RULE_IDS, ARKORDER_TIER1_SENSOR_IDS, ARKRUN_INTERACTION_NAME_INCOMPLETE, ARKRUN_KERNEL_FACTORY_CALLEES, ARKRUN_KERNEL_INTERACTION_CALLEES, ARKRUN_RULE_IDS, ARKRUN_TIER1_SENSOR_IDS, ARKRUN_TRANSPORT_BYPASS_SPECIFIERS, ARK_AGENT_PROJECTION_SCHEMA_VERSION, ARK_AGENT_SKILLS_PACKAGE_SCHEMA_VERSION, ARK_CONFIG_SCHEMA, ARK_CONFIG_SCHEMA_VERSION, ARK_IMPROVEMENT_COMPASS_SCHEMA_VERSION, ARK_PROJECT_IDENTITY_SCHEMA, ARK_PROJECT_IDENTITY_SCHEMA_URL, ARK_PROJECT_IDENTITY_SCHEMA_VERSION, ARK_RULES_SCHEMA, ARK_RULES_SCHEMA_VERSION, ARK_RULE_SENSORS, ARK_RUN_DOCTOR_SCHEMA_VERSION, ARK_SKILL_DESCRIPTION_VERSION_PATTERN, ARK_SKILL_NAMES, ARK_SKILL_NAME_COUNT, ARK_STATUS_MANIFEST_SCHEMA, ARK_STATUS_MANIFEST_SCHEMA_URL, ARK_STATUS_MANIFEST_SCHEMA_VERSION, AdapterViolationInput, type AgentProjectionCatalogEntry, type AgentProjectionFacts, type AgentProjectionLayerSummary, type AgentProjectionMergeAction, type AgentProjectionMergeResult, type AgentProjectionMeta, type AgentProjectionProfile, type AgentSkillPackageEntry, type AgentSkillValidationIssue, ArkConfig, ArkConfigLoadResult, type ArkOrderRuleId, type ArkOrderSensorFinding, ArkRulesFile, type ArkRunDoctorSection, type ArkRunRuleId, type ArkRunSensorFinding, type ArkRunStatusSlice, type ArkRunTier1SensorId, type ArkSkillName, DEFAULT_AGENT_PROJECTION_RULE_IDS, EXTRA_MERGE_TEETH_GOVERNED_FLOOR, EffectiveArkRules, type EffectiveContract, EffectiveContractError, type EffectiveContractWarning, type EvaluateArkRunSensorsInput, type EvaluateArkRunSensorsResult, type ExtraMergeTeethClassification, FLAT_SKILL_TEMPLATES_RELATIVE_ROOT, IMPROVEMENT_COMPASS_OUT_OF_SCOPE_LENSES, IMPROVEMENT_COMPASS_TOP_RESIDUAL_CAP, IMPROVEMENT_LENS_IDS, type ImprovementCompass, type ImprovementCompassEvidence, type ImprovementCompassFacts, type ImprovementCompassNextAction, type ImprovementCompassSmellFact, type ImprovementCompassViolationFact, type ImprovementLens, type ImprovementLensId, type ImprovementLensStatus, MERGE_PLANES_DUAL_STAMP, type MergePlanesHonesty, PROJECT_BINDING_SCHEMA, PROJECT_EXPECTATION_SCHEMA, type ParseSkillDocumentResult, type ParsedSkillFrontmatter, type ProjectBinding, type ProjectExpectation, type ProjectIdentity, ResolvedArkRunCompositionRootHitFact, ResolvedArkRunDeclarationFact, ResolvedArkRunKernelCallFact, ResolvedArkRunKernelCallKind, ResolvedArkRunManagedNewFact, ResolvedDependencyFact, ResolvedFactsReason, type RulesInventoryCandidate, type RulesInventoryResult, STATUS_COMPASS_FACTS_SOURCES, STATUS_COMPASS_MODES, STATUS_COMPASS_REASON_CODES, type StatusActivationSlice, type StatusCheckVerdict, type StatusCompassFactsSource, type StatusCompassMode, type StatusCompassReasonCode, type StatusImprovementCompassSlice, type StatusLastCheckSlice, type StatusManifest, type StatusManifestFacts, type StatusNextAction, type StatusProjectIdentitySlice, type StatusRulesSlice, type StatusWritePathClass, type ValidateAgentSkillDocumentInput, type ValidateAgentSkillsPackageResult, adapterDocsCodePath, adapterFindingOccurrenceTargetKeys, adapterFindingRefFromTargetKey, adapterFindingTargetKey, agentProjectionContentIdentity, agentSkillEntryRelativePath, agentSkillPackageFileRelativePath, arkRunKernelCallKind, buildAgentProjectionBeginMarker, buildAgentProjectionBlock, buildAgentProjectionBody, buildAgentProjectionMeta, buildEffectiveArkRules, buildImprovementCompass, buildRulesInventory, buildStatusManifest, classifyResolvedLayerCoverage, classifyStatusWritePath, composeMergePlanesHonesty, createProjectId, createProjectIdentity, defaultHonestLabel, demoteExtraPlaneTeethUnderClassificationFloor, effectiveContractPolicyPayload, emptyEffectiveArkRules, evaluateArkOrderSensors, evaluateArkRunEditorSensors, evaluateArkRunEditorSensorsFromSource, evaluateArkRunSensors, evaluateStatusBinding, extraMergeTeethAllowed, extractAgentProjectionBlock, extractArkRunDeclarationsFromSource, extractArkRunImportedConstructorNamesFromSource, extractArkRunKernelCallsFromSource, extractArkRunManagedNewsFromSource, extractArkRunValueImportDependenciesFromSource, flatSkillTemplateFileRelativePath, formatAgentProjectionCatalogShortList, formatAgentProjectionLayers, formatArkRunDoctorLines, formatImprovementCompassDoctorLines, formatImprovementCompassResidualLabels, inventoryToExtractionCard, isArkOrderRuleId, isArkRunKernelModuleSpecifier, isArkRunRuleId, isArkRunTransportBypassSpecifier, isArkSkillName, isExtraPlaneFinding, isValidAgentSkillName, loadArkConfigContract, loadArkRulesContract, mergeAgentProjectionDocument, normalizeExtraMergeTeethClassification, normalizeSkillContent, normalizeStatusImprovementCompass, parseAgentProjectionStamp, parseArkConfigJson, parseArkRulesJson, parseSkillDescriptionVersion, parseSkillDocument, primaryImprovementCompassNextAction, projectStatusArkRun, projectStatusImprovementCompass, projectionHasNonEnforcementLabel, projectionMatchesPackageVersion, resolveEffectiveContract, resolveStatusNextAction, skillDescriptionVersionPrefix, stampSkillDescription, statusCompassResidualIsSubsetOfDoctor, stripSkillDescriptionVersion, summarizeArkRunSection, unavailableStatusImprovementCompass, validateAgentSkillDocument, validateAgentSkillsPackage };