@contractspec/module.workspace 1.57.0 → 1.59.0

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 (248) hide show
  1. package/dist/ai/code-generation.d.ts +25 -0
  2. package/dist/ai/code-generation.d.ts.map +1 -0
  3. package/dist/ai/index.d.ts +5 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/prompts/code-generation.d.ts +5 -8
  6. package/dist/ai/prompts/code-generation.d.ts.map +1 -1
  7. package/dist/ai/prompts/index.d.ts +3 -0
  8. package/dist/ai/prompts/index.d.ts.map +1 -0
  9. package/dist/ai/prompts/spec-creation.d.ts +7 -11
  10. package/dist/ai/prompts/spec-creation.d.ts.map +1 -1
  11. package/dist/ai/spec-creation.d.ts +27 -0
  12. package/dist/ai/spec-creation.d.ts.map +1 -0
  13. package/dist/analysis/deps/graph.d.ts +14 -13
  14. package/dist/analysis/deps/graph.d.ts.map +1 -1
  15. package/dist/analysis/deps/index.d.ts +6 -0
  16. package/dist/analysis/deps/index.d.ts.map +1 -0
  17. package/dist/analysis/deps/parse-imports.d.ts +1 -4
  18. package/dist/analysis/deps/parse-imports.d.ts.map +1 -1
  19. package/dist/analysis/diff/deep-diff.d.ts +17 -15
  20. package/dist/analysis/diff/deep-diff.d.ts.map +1 -1
  21. package/dist/analysis/diff/deep-diff.test.d.ts +5 -0
  22. package/dist/analysis/diff/deep-diff.test.d.ts.map +1 -0
  23. package/dist/analysis/diff/index.d.ts +6 -0
  24. package/dist/analysis/diff/index.d.ts.map +1 -0
  25. package/dist/analysis/diff/semantic.d.ts +6 -6
  26. package/dist/analysis/diff/semantic.d.ts.map +1 -1
  27. package/dist/analysis/example-scan.d.ts +3 -7
  28. package/dist/analysis/example-scan.d.ts.map +1 -1
  29. package/dist/analysis/example-scan.test.d.ts +7 -0
  30. package/dist/analysis/example-scan.test.d.ts.map +1 -0
  31. package/dist/analysis/feature-extractor.d.ts +25 -0
  32. package/dist/analysis/feature-extractor.d.ts.map +1 -0
  33. package/dist/analysis/feature-scan.d.ts +3 -7
  34. package/dist/analysis/feature-scan.d.ts.map +1 -1
  35. package/dist/analysis/feature-scan.test.d.ts +2 -0
  36. package/dist/analysis/feature-scan.test.d.ts.map +1 -0
  37. package/dist/analysis/grouping.d.ts +41 -35
  38. package/dist/analysis/grouping.d.ts.map +1 -1
  39. package/dist/analysis/impact/classifier.d.ts +9 -8
  40. package/dist/analysis/impact/classifier.d.ts.map +1 -1
  41. package/dist/analysis/impact/classifier.test.d.ts +5 -0
  42. package/dist/analysis/impact/classifier.test.d.ts.map +1 -0
  43. package/dist/analysis/impact/index.d.ts +9 -0
  44. package/dist/analysis/impact/index.d.ts.map +1 -0
  45. package/dist/analysis/impact/rules.d.ts +15 -14
  46. package/dist/analysis/impact/rules.d.ts.map +1 -1
  47. package/dist/analysis/impact/types.d.ts +73 -76
  48. package/dist/analysis/impact/types.d.ts.map +1 -1
  49. package/dist/analysis/index.d.ts +14 -0
  50. package/dist/analysis/index.d.ts.map +1 -0
  51. package/dist/analysis/snapshot/index.d.ts +9 -0
  52. package/dist/analysis/snapshot/index.d.ts.map +1 -0
  53. package/dist/analysis/snapshot/normalizer.d.ts +7 -10
  54. package/dist/analysis/snapshot/normalizer.d.ts.map +1 -1
  55. package/dist/analysis/snapshot/snapshot.d.ts +10 -8
  56. package/dist/analysis/snapshot/snapshot.d.ts.map +1 -1
  57. package/dist/analysis/snapshot/snapshot.test.d.ts +5 -0
  58. package/dist/analysis/snapshot/snapshot.test.d.ts.map +1 -0
  59. package/dist/analysis/snapshot/types.d.ts +58 -56
  60. package/dist/analysis/snapshot/types.d.ts.map +1 -1
  61. package/dist/analysis/spec-parser.d.ts +8 -6
  62. package/dist/analysis/spec-parser.d.ts.map +1 -1
  63. package/dist/analysis/spec-parsing-utils.d.ts +20 -10
  64. package/dist/analysis/spec-parsing-utils.d.ts.map +1 -1
  65. package/dist/analysis/spec-scan.d.ts +13 -12
  66. package/dist/analysis/spec-scan.d.ts.map +1 -1
  67. package/dist/analysis/spec-scan.test.d.ts +2 -0
  68. package/dist/analysis/spec-scan.test.d.ts.map +1 -0
  69. package/dist/analysis/utils/matchers.d.ts +39 -0
  70. package/dist/analysis/utils/matchers.d.ts.map +1 -0
  71. package/dist/analysis/utils/variables.d.ts +15 -0
  72. package/dist/analysis/utils/variables.d.ts.map +1 -0
  73. package/dist/analysis/validate/index.d.ts +5 -0
  74. package/dist/analysis/validate/index.d.ts.map +1 -0
  75. package/dist/analysis/validate/spec-structure.d.ts +15 -14
  76. package/dist/analysis/validate/spec-structure.d.ts.map +1 -1
  77. package/dist/analysis/validate/spec-structure.test.d.ts +2 -0
  78. package/dist/analysis/validate/spec-structure.test.d.ts.map +1 -0
  79. package/dist/formatter.d.ts +28 -27
  80. package/dist/formatter.d.ts.map +1 -1
  81. package/dist/formatters/index.d.ts +8 -0
  82. package/dist/formatters/index.d.ts.map +1 -0
  83. package/dist/formatters/spec-markdown.d.ts +13 -11
  84. package/dist/formatters/spec-markdown.d.ts.map +1 -1
  85. package/dist/formatters/spec-markdown.test.d.ts +5 -0
  86. package/dist/formatters/spec-markdown.test.d.ts.map +1 -0
  87. package/dist/formatters/spec-to-docblock.d.ts +4 -8
  88. package/dist/formatters/spec-to-docblock.d.ts.map +1 -1
  89. package/dist/index.d.ts +13 -42
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +4302 -38
  92. package/dist/node/index.js +4301 -0
  93. package/dist/templates/app-config.d.ts +2 -6
  94. package/dist/templates/app-config.d.ts.map +1 -1
  95. package/dist/templates/app-config.test.d.ts +2 -0
  96. package/dist/templates/app-config.test.d.ts.map +1 -0
  97. package/dist/templates/data-view.d.ts +2 -6
  98. package/dist/templates/data-view.d.ts.map +1 -1
  99. package/dist/templates/data-view.test.d.ts +2 -0
  100. package/dist/templates/data-view.test.d.ts.map +1 -0
  101. package/dist/templates/event.d.ts +6 -6
  102. package/dist/templates/event.d.ts.map +1 -1
  103. package/dist/templates/event.test.d.ts +2 -0
  104. package/dist/templates/event.test.d.ts.map +1 -0
  105. package/dist/templates/experiment.d.ts +2 -6
  106. package/dist/templates/experiment.d.ts.map +1 -1
  107. package/dist/templates/experiment.test.d.ts +2 -0
  108. package/dist/templates/experiment.test.d.ts.map +1 -0
  109. package/dist/templates/handler.d.ts +3 -6
  110. package/dist/templates/handler.d.ts.map +1 -1
  111. package/dist/templates/handler.test.d.ts +2 -0
  112. package/dist/templates/handler.test.d.ts.map +1 -0
  113. package/dist/templates/index.d.ts +18 -0
  114. package/dist/templates/index.d.ts.map +1 -0
  115. package/dist/templates/integration-utils.d.ts +13 -0
  116. package/dist/templates/integration-utils.d.ts.map +1 -0
  117. package/dist/templates/integration-utils.test.d.ts +2 -0
  118. package/dist/templates/integration-utils.test.d.ts.map +1 -0
  119. package/dist/templates/integration.d.ts +2 -6
  120. package/dist/templates/integration.d.ts.map +1 -1
  121. package/dist/templates/integration.test.d.ts +2 -0
  122. package/dist/templates/integration.test.d.ts.map +1 -0
  123. package/dist/templates/knowledge.d.ts +2 -6
  124. package/dist/templates/knowledge.d.ts.map +1 -1
  125. package/dist/templates/knowledge.test.d.ts +2 -0
  126. package/dist/templates/knowledge.test.d.ts.map +1 -0
  127. package/dist/templates/migration.d.ts +2 -6
  128. package/dist/templates/migration.d.ts.map +1 -1
  129. package/dist/templates/migration.test.d.ts +2 -0
  130. package/dist/templates/migration.test.d.ts.map +1 -0
  131. package/dist/templates/operation.d.ts +6 -6
  132. package/dist/templates/operation.d.ts.map +1 -1
  133. package/dist/templates/operation.test.d.ts +2 -0
  134. package/dist/templates/operation.test.d.ts.map +1 -0
  135. package/dist/templates/presentation.d.ts +6 -6
  136. package/dist/templates/presentation.d.ts.map +1 -1
  137. package/dist/templates/presentation.test.d.ts +2 -0
  138. package/dist/templates/presentation.test.d.ts.map +1 -0
  139. package/dist/templates/telemetry.d.ts +2 -6
  140. package/dist/templates/telemetry.d.ts.map +1 -1
  141. package/dist/templates/telemetry.test.d.ts +2 -0
  142. package/dist/templates/telemetry.test.d.ts.map +1 -0
  143. package/dist/templates/utils.d.ts +5 -8
  144. package/dist/templates/utils.d.ts.map +1 -1
  145. package/dist/templates/utils.test.d.ts +2 -0
  146. package/dist/templates/utils.test.d.ts.map +1 -0
  147. package/dist/templates/workflow-runner.d.ts +6 -13
  148. package/dist/templates/workflow-runner.d.ts.map +1 -1
  149. package/dist/templates/workflow-runner.test.d.ts +2 -0
  150. package/dist/templates/workflow-runner.test.d.ts.map +1 -0
  151. package/dist/templates/workflow.d.ts +6 -6
  152. package/dist/templates/workflow.d.ts.map +1 -1
  153. package/dist/templates/workflow.test.d.ts +2 -0
  154. package/dist/templates/workflow.test.d.ts.map +1 -0
  155. package/dist/types/analysis-types.d.ts +135 -136
  156. package/dist/types/analysis-types.d.ts.map +1 -1
  157. package/dist/types/generation-types.d.ts +36 -37
  158. package/dist/types/generation-types.d.ts.map +1 -1
  159. package/dist/types/index.d.ts +9 -0
  160. package/dist/types/index.d.ts.map +1 -0
  161. package/dist/types/llm-types.d.ts +97 -96
  162. package/dist/types/llm-types.d.ts.map +1 -1
  163. package/dist/types/rulesync-types.d.ts +17 -18
  164. package/dist/types/rulesync-types.d.ts.map +1 -1
  165. package/dist/types/spec-types.d.ts +329 -329
  166. package/dist/types/spec-types.d.ts.map +1 -1
  167. package/package.json +20 -16
  168. package/dist/ai/prompts/code-generation.js +0 -134
  169. package/dist/ai/prompts/code-generation.js.map +0 -1
  170. package/dist/ai/prompts/spec-creation.js +0 -102
  171. package/dist/ai/prompts/spec-creation.js.map +0 -1
  172. package/dist/analysis/deps/graph.js +0 -85
  173. package/dist/analysis/deps/graph.js.map +0 -1
  174. package/dist/analysis/deps/parse-imports.js +0 -31
  175. package/dist/analysis/deps/parse-imports.js.map +0 -1
  176. package/dist/analysis/diff/deep-diff.js +0 -114
  177. package/dist/analysis/diff/deep-diff.js.map +0 -1
  178. package/dist/analysis/diff/semantic.js +0 -97
  179. package/dist/analysis/diff/semantic.js.map +0 -1
  180. package/dist/analysis/example-scan.js +0 -116
  181. package/dist/analysis/example-scan.js.map +0 -1
  182. package/dist/analysis/feature-extractor.js +0 -203
  183. package/dist/analysis/feature-extractor.js.map +0 -1
  184. package/dist/analysis/feature-scan.js +0 -56
  185. package/dist/analysis/feature-scan.js.map +0 -1
  186. package/dist/analysis/grouping.js +0 -115
  187. package/dist/analysis/grouping.js.map +0 -1
  188. package/dist/analysis/impact/classifier.js +0 -135
  189. package/dist/analysis/impact/classifier.js.map +0 -1
  190. package/dist/analysis/impact/index.js +0 -2
  191. package/dist/analysis/impact/rules.js +0 -154
  192. package/dist/analysis/impact/rules.js.map +0 -1
  193. package/dist/analysis/index.js +0 -18
  194. package/dist/analysis/snapshot/index.js +0 -2
  195. package/dist/analysis/snapshot/normalizer.js +0 -67
  196. package/dist/analysis/snapshot/normalizer.js.map +0 -1
  197. package/dist/analysis/snapshot/snapshot.js +0 -163
  198. package/dist/analysis/snapshot/snapshot.js.map +0 -1
  199. package/dist/analysis/spec-parser.js +0 -89
  200. package/dist/analysis/spec-parser.js.map +0 -1
  201. package/dist/analysis/spec-parsing-utils.js +0 -98
  202. package/dist/analysis/spec-parsing-utils.js.map +0 -1
  203. package/dist/analysis/spec-scan.js +0 -157
  204. package/dist/analysis/spec-scan.js.map +0 -1
  205. package/dist/analysis/utils/matchers.js +0 -77
  206. package/dist/analysis/utils/matchers.js.map +0 -1
  207. package/dist/analysis/utils/variables.js +0 -45
  208. package/dist/analysis/utils/variables.js.map +0 -1
  209. package/dist/analysis/validate/index.js +0 -1
  210. package/dist/analysis/validate/spec-structure.js +0 -475
  211. package/dist/analysis/validate/spec-structure.js.map +0 -1
  212. package/dist/formatter.js +0 -163
  213. package/dist/formatter.js.map +0 -1
  214. package/dist/formatters/index.js +0 -2
  215. package/dist/formatters/spec-markdown.js +0 -263
  216. package/dist/formatters/spec-markdown.js.map +0 -1
  217. package/dist/formatters/spec-to-docblock.js +0 -48
  218. package/dist/formatters/spec-to-docblock.js.map +0 -1
  219. package/dist/templates/app-config.js +0 -107
  220. package/dist/templates/app-config.js.map +0 -1
  221. package/dist/templates/data-view.js +0 -69
  222. package/dist/templates/data-view.js.map +0 -1
  223. package/dist/templates/event.js +0 -41
  224. package/dist/templates/event.js.map +0 -1
  225. package/dist/templates/experiment.js +0 -88
  226. package/dist/templates/experiment.js.map +0 -1
  227. package/dist/templates/handler.js +0 -96
  228. package/dist/templates/handler.js.map +0 -1
  229. package/dist/templates/integration-utils.js +0 -102
  230. package/dist/templates/integration-utils.js.map +0 -1
  231. package/dist/templates/integration.js +0 -62
  232. package/dist/templates/integration.js.map +0 -1
  233. package/dist/templates/knowledge.js +0 -68
  234. package/dist/templates/knowledge.js.map +0 -1
  235. package/dist/templates/migration.js +0 -60
  236. package/dist/templates/migration.js.map +0 -1
  237. package/dist/templates/operation.js +0 -101
  238. package/dist/templates/operation.js.map +0 -1
  239. package/dist/templates/presentation.js +0 -79
  240. package/dist/templates/presentation.js.map +0 -1
  241. package/dist/templates/telemetry.js +0 -90
  242. package/dist/templates/telemetry.js.map +0 -1
  243. package/dist/templates/utils.js +0 -39
  244. package/dist/templates/utils.js.map +0 -1
  245. package/dist/templates/workflow-runner.js +0 -49
  246. package/dist/templates/workflow-runner.js.map +0 -1
  247. package/dist/templates/workflow.js +0 -68
  248. package/dist/templates/workflow.js.map +0 -1
@@ -1,23 +1,24 @@
1
- import { AnalyzedOperationKind, AnalyzedSpecType, SpecScanResult } from "../types/analysis-types.js";
2
- import { extractTestCoverage, extractTestTarget } from "./spec-parsing-utils.js";
3
-
4
- //#region src/analysis/spec-scan.d.ts
1
+ /**
2
+ * Spec scanning utilities.
3
+ *
4
+ * Scans source code to extract spec definitions and metadata without execution.
5
+ */
6
+ import type { AnalyzedOperationKind, AnalyzedSpecType, SpecScanResult } from '../types/analysis-types';
7
+ export { extractTestTarget, extractTestCoverage } from './spec-parsing-utils';
5
8
  /**
6
9
  * Scan all specs from a single source file.
7
10
  */
8
- declare function scanAllSpecsFromSource(code: string, filePath: string): SpecScanResult[];
9
- declare function inferSpecTypeFromCodeBlock(fileSourceCode: string): {
10
- specType: AnalyzedSpecType;
11
- kind: AnalyzedOperationKind;
11
+ export declare function scanAllSpecsFromSource(code: string, filePath: string): SpecScanResult[];
12
+ export declare function inferSpecTypeFromCodeBlock(fileSourceCode: string): {
13
+ specType: AnalyzedSpecType;
14
+ kind: AnalyzedOperationKind;
12
15
  };
13
16
  /**
14
17
  * Scan a single spec source string.
15
18
  */
16
- declare function scanSpecSource(code: string, filePath: string): SpecScanResult;
19
+ export declare function scanSpecSource(code: string, filePath: string): SpecScanResult;
17
20
  /**
18
21
  * Infer spec type from file path convention.
19
22
  */
20
- declare function inferSpecTypeFromFilePath(filePath: string): SpecScanResult['specType'] | 'feature' | 'unknown';
21
- //#endregion
22
- export { inferSpecTypeFromCodeBlock, inferSpecTypeFromFilePath, scanAllSpecsFromSource, scanSpecSource };
23
+ export declare function inferSpecTypeFromFilePath(filePath: string): SpecScanResult['specType'] | 'feature' | 'unknown';
23
24
  //# sourceMappingURL=spec-scan.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-scan.d.ts","names":[],"sources":["../../src/analysis/spec-scan.ts"],"mappings":";;;;;;;iBAqCgB,sBAAA,CACd,IAAA,UACA,QAAA,WACC,cAAA;AAAA,iBAmDa,0BAAA,CAA2B,cAAA;EACzC,QAAA,EAAU,gBAAA;EACV,IAAA,EAAM,qBAAA;AAAA;;;;iBAwFQ,cAAA,CAAe,IAAA,UAAc,QAAA,WAAmB,cAAA;;;;iBA+DhD,yBAAA,CACd,QAAA,WACC,cAAA"}
1
+ {"version":3,"file":"spec-scan.d.ts","sourceRoot":"","sources":["../../src/analysis/spec-scan.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,qBAAqB,EACrB,gBAAgB,EAChB,cAAc,EACf,MAAM,yBAAyB,CAAC;AAsBjC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE9E;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,GACf,cAAc,EAAE,CAiDlB;AAED,wBAAgB,0BAA0B,CAAC,cAAc,EAAE,MAAM,GAAG;IAClE,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,EAAE,qBAAqB,CAAC;CAC7B,CAkFA;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,CA0D7E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,GACf,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,SAAS,CAsCpD"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=spec-scan.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec-scan.test.d.ts","sourceRoot":"","sources":["../../src/analysis/spec-scan.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Shared regex matchers and parsing utilities for spec scanning.
3
+ */
4
+ import type { Stability } from '../../types/spec-types';
5
+ /**
6
+ * Escape regex special characters.
7
+ */
8
+ export declare function escapeRegex(value: string): string;
9
+ /**
10
+ * Match a string field in source code.
11
+ */
12
+ export declare function matchStringField(code: string, field: string): string | null;
13
+ /**
14
+ * Match a string field within a limited scope.
15
+ */
16
+ export declare function matchStringFieldIn(code: string, field: string): string | null;
17
+ /**
18
+ * Match a version field which can be a string or number.
19
+ */
20
+ export declare function matchVersionField(code: string, field: string): string | undefined;
21
+ /**
22
+ * Match a string array field in source code.
23
+ */
24
+ export declare function matchStringArrayField(code: string, field: string): string[] | undefined;
25
+ /**
26
+ * Check if a value is a valid stability.
27
+ */
28
+ export declare function isStability(value: string | null): value is Stability;
29
+ /**
30
+ * Find matching closing delimiter for an opening delimiter.
31
+ * Returns the index of the closing delimiter or -1 if not found.
32
+ */
33
+ export declare function findMatchingDelimiter(code: string, startIndex: number, openChar: string, closeChar: string): number;
34
+ /**
35
+ * Find matching closing brace for an opening brace.
36
+ * Returns the index of the closing brace or -1 if not found.
37
+ */
38
+ export declare function findMatchingBrace(code: string, startIndex: number): number;
39
+ //# sourceMappingURL=matchers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matchers.d.ts","sourceRoot":"","sources":["../../../src/analysis/utils/matchers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI3E;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE7E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,MAAM,GAAG,SAAS,CAQpB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,MAAM,EAAE,GAAG,SAAS,CAatB;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,IAAI,SAAS,CAOpE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,MAAM,CAiCR;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE1E"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Variable resolution utilities.
3
+ * Handles simple static variable extraction and substitution in source blocks.
4
+ */
5
+ /**
6
+ * Extract top-level array constants from source code.
7
+ * Example: const OWNERS = ['alice', 'bob'] as const;
8
+ */
9
+ export declare function extractArrayConstants(code: string): Map<string, string>;
10
+ /**
11
+ * Substitute spread variables in a source block with their resolved values.
12
+ * Example: owners: [...OWNERS] -> owners: ['alice', 'bob']
13
+ */
14
+ export declare function resolveVariablesInBlock(block: string, variables: Map<string, string>): string;
15
+ //# sourceMappingURL=variables.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"variables.d.ts","sourceRoot":"","sources":["../../../src/analysis/utils/variables.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAuBvE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC7B,MAAM,CAoBR"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Spec validation utilities.
3
+ */
4
+ export * from './spec-structure';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/analysis/validate/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,kBAAkB,CAAC"}
@@ -1,28 +1,29 @@
1
- import { SpecScanResult, ValidationResult } from "../../types/analysis-types.js";
2
-
3
- //#region src/analysis/validate/spec-structure.d.ts
1
+ /**
2
+ * Spec structure validation utilities.
3
+ * Extracted from cli-contractspec/src/commands/validate/spec-checker.ts
4
+ */
5
+ import type { SpecScanResult, ValidationResult } from '../../types/analysis-types';
6
+ export type { ValidationResult };
4
7
  /**
5
8
  * Rule severity level for lint rules.
6
9
  */
7
- type RuleSeverity = 'off' | 'warn' | 'error';
10
+ export type RuleSeverity = 'off' | 'warn' | 'error';
8
11
  /**
9
12
  * Spec kind for rule overrides mapping.
10
13
  */
11
- type SpecKind = 'operation' | 'event' | 'presentation' | 'feature' | 'workflow' | 'data-view' | 'migration' | 'telemetry' | 'experiment' | 'app-config';
14
+ export type SpecKind = 'operation' | 'event' | 'presentation' | 'feature' | 'workflow' | 'data-view' | 'migration' | 'telemetry' | 'experiment' | 'app-config';
12
15
  /**
13
16
  * Interface for resolving rule severity.
14
17
  */
15
- interface RulesConfig {
16
- /**
17
- * Get the severity for a rule, considering spec kind overrides.
18
- * Returns 'warn' by default if not configured.
19
- */
20
- getRule(ruleName: string, specKind: SpecKind): RuleSeverity;
18
+ export interface RulesConfig {
19
+ /**
20
+ * Get the severity for a rule, considering spec kind overrides.
21
+ * Returns 'warn' by default if not configured.
22
+ */
23
+ getRule(ruleName: string, specKind: SpecKind): RuleSeverity;
21
24
  }
22
25
  /**
23
26
  * Validate spec structure based on source code and filename.
24
27
  */
25
- declare function validateSpecStructure(specFile: Pick<SpecScanResult, 'filePath' | 'sourceBlock' | 'specType'>, rulesConfig?: RulesConfig): ValidationResult;
26
- //#endregion
27
- export { RuleSeverity, RulesConfig, SpecKind, validateSpecStructure };
28
+ export declare function validateSpecStructure(specFile: Pick<SpecScanResult, 'filePath' | 'sourceBlock' | 'specType'>, rulesConfig?: RulesConfig): ValidationResult;
28
29
  //# sourceMappingURL=spec-structure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-structure.d.ts","names":[],"sources":["../../../src/analysis/validate/spec-structure.ts"],"mappings":";;;;;AA6BA;KALY,YAAA;;;;KAKA,QAAA;;;;UAeK,WAAA;EAKP;;;;EAAR,OAAA,CAAQ,QAAA,UAAkB,QAAA,EAAU,QAAA,GAAW,YAAA;AAAA;AAajD;;;AAAA,iBAAgB,qBAAA,CACd,QAAA,EAAU,IAAA,CAAK,cAAA,4CACf,WAAA,GAAa,WAAA,GACZ,gBAAA"}
1
+ {"version":3,"file":"spec-structure.d.ts","sourceRoot":"","sources":["../../../src/analysis/validate/spec-structure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AAEpC,YAAY,EAAE,gBAAgB,EAAE,CAAC;AAEjC;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;AAEpD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,WAAW,GACX,OAAO,GACP,cAAc,GACd,SAAS,GACT,UAAU,GACV,WAAW,GACX,WAAW,GACX,WAAW,GACX,YAAY,GACZ,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,YAAY,CAAC;CAC7D;AASD;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC,EACvE,WAAW,GAAE,WAAkC,GAC9C,gBAAgB,CAkElB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=spec-structure.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec-structure.test.d.ts","sourceRoot":"","sources":["../../../src/analysis/validate/spec-structure.test.ts"],"names":[],"mappings":""}
@@ -1,41 +1,42 @@
1
- import { FormatterConfig, FormatterType } from "@contractspec/lib.contracts";
2
-
3
- //#region src/formatter.d.ts
4
- interface FormatterOptions {
5
- /** Override formatter type from config */
6
- type?: FormatterType;
7
- /** Skip formatting entirely */
8
- skip?: boolean;
9
- /** Working directory for formatter */
10
- cwd?: string;
11
- /** Silent mode - don't log output */
12
- silent?: boolean;
1
+ /**
2
+ * Formatter utility for ContractSpec CLI.
3
+ *
4
+ * Detects and runs code formatters on generated files.
5
+ */
6
+ import type { FormatterConfig, FormatterType } from '@contractspec/lib.contracts';
7
+ export interface FormatterOptions {
8
+ /** Override formatter type from config */
9
+ type?: FormatterType;
10
+ /** Skip formatting entirely */
11
+ skip?: boolean;
12
+ /** Working directory for formatter */
13
+ cwd?: string;
14
+ /** Silent mode - don't log output */
15
+ silent?: boolean;
13
16
  }
14
- interface FormatResult {
15
- success: boolean;
16
- formatted: boolean;
17
- error?: string;
18
- duration?: number;
19
- formatterUsed?: FormatterType;
17
+ export interface FormatResult {
18
+ success: boolean;
19
+ formatted: boolean;
20
+ error?: string;
21
+ duration?: number;
22
+ formatterUsed?: FormatterType;
20
23
  }
21
24
  /**
22
25
  * Auto-detect available formatters in the workspace.
23
26
  * Returns the first detected formatter in priority order.
24
27
  */
25
- declare function detectFormatter(cwd?: string): Promise<FormatterType | null>;
26
- interface FormatLogger {
27
- log: (message: string) => void;
28
- warn: (message: string) => void;
29
- success: (message: string) => void;
28
+ export declare function detectFormatter(cwd?: string): Promise<FormatterType | null>;
29
+ export interface FormatLogger {
30
+ log: (message: string) => void;
31
+ warn: (message: string) => void;
32
+ success: (message: string) => void;
30
33
  }
31
34
  /**
32
35
  * Format a single file or array of files.
33
36
  */
34
- declare function formatFiles(files: string | string[], config?: FormatterConfig, options?: FormatterOptions, logger?: FormatLogger): Promise<FormatResult>;
37
+ export declare function formatFiles(files: string | string[], config?: FormatterConfig, options?: FormatterOptions, logger?: FormatLogger): Promise<FormatResult>;
35
38
  /**
36
39
  * Format files in batch, grouping by directory for efficiency.
37
40
  */
38
- declare function formatFilesBatch(files: string[], config?: FormatterConfig, options?: FormatterOptions, logger?: FormatLogger): Promise<FormatResult>;
39
- //#endregion
40
- export { FormatLogger, FormatResult, FormatterOptions, detectFormatter, formatFiles, formatFilesBatch };
41
+ export declare function formatFilesBatch(files: string[], config?: FormatterConfig, options?: FormatterOptions, logger?: FormatLogger): Promise<FormatResult>;
41
42
  //# sourceMappingURL=formatter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","names":[],"sources":["../src/formatter.ts"],"mappings":";;;UAkBiB,gBAAA;EAEf;EAAA,IAAA,GAAO,aAAA;EAEP;EAAA,IAAA;EAIA;EAFA,GAAA;EAEM;EAAN,MAAA;AAAA;AAAA,UAGe,YAAA;EACf,OAAA;EACA,SAAA;EACA,KAAA;EACA,QAAA;EACA,aAAA,GAAgB,aAAA;AAAA;;;;AAkDlB;iBAAsB,eAAA,CACpB,GAAA,YACC,OAAA,CAAQ,aAAA;AAAA,UA8FM,YAAA;EACf,GAAA,GAAM,OAAA;EACN,IAAA,GAAO,OAAA;EACP,OAAA,GAAU,OAAA;AAAA;;;AAHZ;iBASsB,WAAA,CACpB,KAAA,qBACA,MAAA,GAAS,eAAA,EACT,OAAA,GAAU,gBAAA,EACV,MAAA,GAAS,YAAA,GACR,OAAA,CAAQ,YAAA;;;;iBA8EW,gBAAA,CACpB,KAAA,YACA,MAAA,GAAS,eAAA,EACT,OAAA,GAAU,gBAAA,EACV,MAAA,GAAS,YAAA,GACR,OAAA,CAAQ,YAAA"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../src/formatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACd,MAAM,6BAA6B,CAAC;AAIrC,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,IAAI,CAAC,EAAE,aAAa,CAAC;IACrB,+BAA+B;IAC/B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,sCAAsC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AA6CD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,GAAG,GAAE,MAAsB,GAC1B,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAW/B;AAmFD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,OAAO,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EACxB,MAAM,CAAC,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,YAAY,CAAC,CAyEvB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,CAAC,EAAE,eAAe,EACxB,OAAO,CAAC,EAAE,gBAAgB,EAC1B,MAAM,CAAC,EAAE,YAAY,GACpB,OAAO,CAAC,YAAY,CAAC,CAIvB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Formatters module index.
3
+ *
4
+ * Exports all formatter functions for spec conversion.
5
+ */
6
+ export * from './spec-markdown';
7
+ export * from './spec-to-docblock';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/formatters/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC"}
@@ -1,6 +1,10 @@
1
- import { LLMExportFormat, ParsedSpec, SpecToMarkdownOptions } from "../types/llm-types.js";
2
-
3
- //#region src/formatters/spec-markdown.d.ts
1
+ /**
2
+ * Spec to Markdown Formatter
3
+ *
4
+ * Pure functions for converting parsed specs to LLM-friendly markdown formats.
5
+ * Extracted from vscode-contractspec/src/commands/llm.ts for reuse.
6
+ */
7
+ import type { LLMExportFormat, ParsedSpec, SpecToMarkdownOptions } from '../types/llm-types';
4
8
  /**
5
9
  * Generate markdown from a parsed spec.
6
10
  *
@@ -9,22 +13,20 @@ import { LLMExportFormat, ParsedSpec, SpecToMarkdownOptions } from "../types/llm
9
13
  * - **prompt**: Concise with implementation instructions (actionable for LLM)
10
14
  * - **context**: Brief summary with counts and key fields (lightweight overview)
11
15
  */
12
- declare function specToMarkdown(spec: ParsedSpec, format: LLMExportFormat, optionsOrDepth?: number | {
13
- depth?: number;
14
- rootPath?: string;
16
+ export declare function specToMarkdown(spec: ParsedSpec, format: LLMExportFormat, optionsOrDepth?: number | {
17
+ depth?: number;
18
+ rootPath?: string;
15
19
  }): string;
16
20
  /**
17
21
  * Convert spec to markdown with custom options.
18
22
  */
19
- declare function specToMarkdownWithOptions(spec: ParsedSpec, options: SpecToMarkdownOptions): string;
23
+ export declare function specToMarkdownWithOptions(spec: ParsedSpec, options: SpecToMarkdownOptions): string;
20
24
  /**
21
25
  * Generate a summary header for multiple specs.
22
26
  */
23
- declare function generateSpecsSummaryHeader(specs: ParsedSpec[], format: LLMExportFormat): string;
27
+ export declare function generateSpecsSummaryHeader(specs: ParsedSpec[], format: LLMExportFormat): string;
24
28
  /**
25
29
  * Combine multiple spec markdowns into a single document.
26
30
  */
27
- declare function combineSpecMarkdowns(specs: ParsedSpec[], format: LLMExportFormat): string;
28
- //#endregion
29
- export { combineSpecMarkdowns, generateSpecsSummaryHeader, specToMarkdown, specToMarkdownWithOptions };
31
+ export declare function combineSpecMarkdowns(specs: ParsedSpec[], format: LLMExportFormat): string;
30
32
  //# sourceMappingURL=spec-markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-markdown.d.ts","names":[],"sources":["../../src/formatters/spec-markdown.ts"],"mappings":";;;;;;;;;;;iBAuBgB,cAAA,CACd,IAAA,EAAM,UAAA,EACN,MAAA,EAAQ,eAAA,EACR,cAAA;EAA2B,KAAA;EAAgB,QAAA;AAAA;;;;iBA2W7B,yBAAA,CACd,IAAA,EAAM,UAAA,EACN,OAAA,EAAS,qBAAA;;;;iBAQK,0BAAA,CACd,KAAA,EAAO,UAAA,IACP,MAAA,EAAQ,eAAA;;;;iBAiCM,oBAAA,CACd,KAAA,EAAO,UAAA,IACP,MAAA,EAAQ,eAAA"}
1
+ {"version":3,"file":"spec-markdown.d.ts","sourceRoot":"","sources":["../../src/formatters/spec-markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EAEV,qBAAqB,EACtB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,eAAe,EACvB,cAAc,GAAE,MAAM,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAM,GACjE,MAAM,CAmCR;AAoUD;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,qBAAqB,GAC7B,MAAM,CAER;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,UAAU,EAAE,EACnB,MAAM,EAAE,eAAe,GACtB,MAAM,CA2BR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,UAAU,EAAE,EACnB,MAAM,EAAE,eAAe,GACtB,MAAM,CAKR"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Unit tests for spec-markdown formatter.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=spec-markdown.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spec-markdown.test.d.ts","sourceRoot":"","sources":["../../src/formatters/spec-markdown.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,13 +1,9 @@
1
- import { ParsedSpec } from "../types/llm-types.js";
2
- import { DocBlock } from "@contractspec/lib.contracts/docs";
3
-
4
- //#region src/formatters/spec-to-docblock.d.ts
1
+ import type { ParsedSpec } from '../types/llm-types';
2
+ import type { DocBlock } from '@contractspec/lib.contracts/docs';
5
3
  /**
6
4
  * Convert a parsed spec to a DocBlock for documentation generation.
7
5
  */
8
- declare function convertSpecToDocBlock(spec: ParsedSpec, options?: {
9
- rootPath?: string;
6
+ export declare function convertSpecToDocBlock(spec: ParsedSpec, options?: {
7
+ rootPath?: string;
10
8
  }): DocBlock;
11
- //#endregion
12
- export { convertSpecToDocBlock };
13
9
  //# sourceMappingURL=spec-to-docblock.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spec-to-docblock.d.ts","names":[],"sources":["../../src/formatters/spec-to-docblock.ts"],"mappings":";;;;;;AAOA;iBAAgB,qBAAA,CACd,IAAA,EAAM,UAAA,EACN,OAAA;EAAY,QAAA;AAAA,IACX,QAAA"}
1
+ {"version":3,"file":"spec-to-docblock.d.ts","sourceRoot":"","sources":["../../src/formatters/spec-to-docblock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAW,MAAM,kCAAkC,CAAC;AAG1E;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,QAAQ,CAmBV"}
package/dist/index.d.ts CHANGED
@@ -1,42 +1,13 @@
1
- import { AppBlueprintSpecData, AppConfigFeatureFlagData, AppConfigMappingData, AppRouteConfigData, BaseSpecData, DataViewFieldData, DataViewKind, DataViewSpecData, EventSpecData, ExperimentAllocationData, ExperimentMetricData, ExperimentSpecData, ExperimentVariantData, ExperimentVariantOverrideData, FeatureSpecData, FormSpecData, IntegrationCapabilityRefData, IntegrationCapabilityRequirementData, IntegrationCategoryData, IntegrationConfigFieldData, IntegrationConfigFieldType, IntegrationHealthCheckMethod, IntegrationOwnershipModeData, IntegrationSecretFieldData, IntegrationSpecData, KnowledgeCategoryData, KnowledgeRetentionData, KnowledgeSpaceSpecData, KnowledgeTrustLevel, MigrationSpecData, MigrationStepData, MigrationStepKind, OperationSpecData, PresentationKind, PresentationSpecData, RandomAllocationData, SpecType, Stability, StepType, StickyAllocationData, TargetedAllocationData, TargetingRuleData, TelemetryAnomalyRuleData, TelemetryEventData, TelemetryPrivacy, TelemetryPropertyData, TelemetryProviderData, TelemetrySpecData, WorkflowSpecData, WorkflowStepData, WorkflowTransitionData } from "./types/spec-types.js";
2
- import { AnalyzedOperationKind, AnalyzedSpecType, ContractGraph, ContractNode, ExampleScanResult, ExtractedRef, ExtractedTestTarget, FeatureScanResult, RefInfo, RefType, SemanticDiffItem, SemanticDiffOptions, SemanticDiffType, SpecScanResult, ValidationResult } from "./types/analysis-types.js";
3
- import { RuleSyncConfig } from "./types/rulesync-types.js";
4
- import { SpecGenerationContext, TestTarget, WorkspaceConfig } from "./types/generation-types.js";
5
- import { AgentType, LLMExportFormat, LLMExportResult, ParsedSpec, ParsedSpecMeta, SpecRef, SpecToMarkdownOptions, VerificationIssue, VerificationResult, VerificationTier } from "./types/llm-types.js";
6
- import { extractTestCoverage, extractTestTarget } from "./analysis/spec-parsing-utils.js";
7
- import { inferSpecTypeFromCodeBlock, inferSpecTypeFromFilePath, scanAllSpecsFromSource, scanSpecSource } from "./analysis/spec-scan.js";
8
- import { isFeatureFile, scanFeatureSource } from "./analysis/feature-scan.js";
9
- import { isExampleFile, scanExampleSource } from "./analysis/example-scan.js";
10
- import { GroupKeyFn, GroupedItems, SpecFilter, SpecGroupingStrategies, filterFeatures, filterSpecs, getUniqueSpecDomains, getUniqueSpecOwners, getUniqueSpecTags, groupSpecs, groupSpecsToArray } from "./analysis/grouping.js";
11
- import { computeSemanticDiff } from "./analysis/diff/semantic.js";
12
- import { ContractSnapshot, EventSnapshot, FieldSnapshot, FieldType, HttpBindingSnapshot, IoSnapshot, OperationSnapshot, SnapshotOptions, SpecSnapshot } from "./analysis/snapshot/types.js";
13
- import { DeepDiffOptions, computeFieldDiff, computeFieldsDiff, computeIoDiff, isBreakingChange } from "./analysis/diff/deep-diff.js";
14
- import { addContractNode, buildReverseEdges, createContractGraph, detectCycles, findMissingDependencies, toDot } from "./analysis/deps/graph.js";
15
- import { parseImportedSpecNames } from "./analysis/deps/parse-imports.js";
16
- import { RuleSeverity, RulesConfig, SpecKind, validateSpecStructure } from "./analysis/validate/spec-structure.js";
17
- import { computeHash, normalizeValue, sortFields, sortSpecs, toCanonicalJson } from "./analysis/snapshot/normalizer.js";
18
- import { generateSnapshot } from "./analysis/snapshot/snapshot.js";
19
- import { ClassifyOptions, ImpactDelta, ImpactResult, ImpactRule, ImpactSeverity, ImpactStatus, ImpactSummary } from "./analysis/impact/types.js";
20
- import { BREAKING_RULES, DEFAULT_RULES, INFO_RULES, NON_BREAKING_RULES, findMatchingRule, getRulesBySeverity } from "./analysis/impact/rules.js";
21
- import { classifyImpact } from "./analysis/impact/classifier.js";
22
- import { loadSpecFromSource } from "./analysis/spec-parser.js";
23
- import { generateOperationSpec } from "./templates/operation.js";
24
- import { generateEventSpec } from "./templates/event.js";
25
- import { generatePresentationSpec } from "./templates/presentation.js";
26
- import { generateWorkflowSpec } from "./templates/workflow.js";
27
- import { generateWorkflowRunnerTemplate } from "./templates/workflow-runner.js";
28
- import { generateDataViewSpec } from "./templates/data-view.js";
29
- import { generateTelemetrySpec } from "./templates/telemetry.js";
30
- import { generateExperimentSpec } from "./templates/experiment.js";
31
- import { generateAppBlueprintSpec } from "./templates/app-config.js";
32
- import { generateMigrationSpec } from "./templates/migration.js";
33
- import { generateIntegrationSpec } from "./templates/integration.js";
34
- import { generateKnowledgeSpaceSpec } from "./templates/knowledge.js";
35
- import { generateComponentTemplate, generateHandlerTemplate, generateTestTemplate } from "./templates/handler.js";
36
- import { capitalize, escapeString, toCamelCase, toKebabCase, toPascalCase } from "./templates/utils.js";
37
- import { addExampleContext, buildEventSpecPrompt, buildOperationSpecPrompt, buildPresentationSpecPrompt, getSystemPrompt } from "./ai/prompts/spec-creation.js";
38
- import { buildComponentPrompt, buildFormPrompt, buildHandlerPrompt, buildTestPrompt, getCodeGenSystemPrompt } from "./ai/prompts/code-generation.js";
39
- import { FormatLogger, FormatResult, FormatterOptions, detectFormatter, formatFiles, formatFilesBatch } from "./formatter.js";
40
- import { combineSpecMarkdowns, generateSpecsSummaryHeader, specToMarkdown, specToMarkdownWithOptions } from "./formatters/spec-markdown.js";
41
- import { convertSpecToDocBlock } from "./formatters/spec-to-docblock.js";
42
- export { AgentType, AnalyzedOperationKind, AnalyzedSpecType, AppBlueprintSpecData, AppConfigFeatureFlagData, AppConfigMappingData, AppRouteConfigData, BREAKING_RULES, BaseSpecData, ClassifyOptions, ContractGraph, ContractNode, ContractSnapshot, DEFAULT_RULES, DataViewFieldData, DataViewKind, DataViewSpecData, DeepDiffOptions, EventSnapshot, EventSpecData, ExampleScanResult, ExperimentAllocationData, ExperimentMetricData, ExperimentSpecData, ExperimentVariantData, ExperimentVariantOverrideData, ExtractedRef, ExtractedTestTarget, FeatureScanResult, FeatureSpecData, FieldSnapshot, FieldType, FormSpecData, FormatLogger, FormatResult, FormatterOptions, GroupKeyFn, GroupedItems, HttpBindingSnapshot, INFO_RULES, ImpactDelta, ImpactResult, ImpactRule, ImpactSeverity, ImpactStatus, ImpactSummary, IntegrationCapabilityRefData, IntegrationCapabilityRequirementData, IntegrationCategoryData, IntegrationConfigFieldData, IntegrationConfigFieldType, IntegrationHealthCheckMethod, IntegrationOwnershipModeData, IntegrationSecretFieldData, IntegrationSpecData, IoSnapshot, KnowledgeCategoryData, KnowledgeRetentionData, KnowledgeSpaceSpecData, KnowledgeTrustLevel, LLMExportFormat, LLMExportResult, MigrationSpecData, MigrationStepData, MigrationStepKind, NON_BREAKING_RULES, OperationSnapshot, OperationSpecData, ParsedSpec, ParsedSpecMeta, PresentationKind, PresentationSpecData, RandomAllocationData, RefInfo, RefType, RuleSeverity, RuleSyncConfig, RulesConfig, SemanticDiffItem, SemanticDiffOptions, SemanticDiffType, SnapshotOptions, SpecFilter, SpecGenerationContext, SpecGroupingStrategies, SpecKind, SpecRef, SpecScanResult, SpecSnapshot, SpecToMarkdownOptions, SpecType, Stability, StepType, StickyAllocationData, TargetedAllocationData, TargetingRuleData, TelemetryAnomalyRuleData, TelemetryEventData, TelemetryPrivacy, TelemetryPropertyData, TelemetryProviderData, TelemetrySpecData, TestTarget, ValidationResult, VerificationIssue, VerificationResult, VerificationTier, WorkflowSpecData, WorkflowStepData, WorkflowTransitionData, WorkspaceConfig, addContractNode, addExampleContext, buildComponentPrompt, buildEventSpecPrompt, buildFormPrompt, buildHandlerPrompt, buildOperationSpecPrompt, buildPresentationSpecPrompt, buildReverseEdges, buildTestPrompt, capitalize, classifyImpact, combineSpecMarkdowns, computeFieldDiff, computeFieldsDiff, computeHash, computeIoDiff, computeSemanticDiff, convertSpecToDocBlock, createContractGraph, detectCycles, detectFormatter, escapeString, extractTestCoverage, extractTestTarget, filterFeatures, filterSpecs, findMatchingRule, findMissingDependencies, formatFiles, formatFilesBatch, generateAppBlueprintSpec, generateComponentTemplate, generateDataViewSpec, generateEventSpec, generateExperimentSpec, generateHandlerTemplate, generateIntegrationSpec, generateKnowledgeSpaceSpec, generateMigrationSpec, generateOperationSpec, generatePresentationSpec, generateSnapshot, generateSpecsSummaryHeader, generateTelemetrySpec, generateTestTemplate, generateWorkflowRunnerTemplate, generateWorkflowSpec, getCodeGenSystemPrompt, getRulesBySeverity, getSystemPrompt, getUniqueSpecDomains, getUniqueSpecOwners, getUniqueSpecTags, groupSpecs, groupSpecsToArray, inferSpecTypeFromCodeBlock, inferSpecTypeFromFilePath, isBreakingChange, isExampleFile, isFeatureFile, loadSpecFromSource, normalizeValue, parseImportedSpecNames, scanAllSpecsFromSource, scanExampleSource, scanFeatureSource, scanSpecSource, sortFields, sortSpecs, specToMarkdown, specToMarkdownWithOptions, toCamelCase, toCanonicalJson, toDot, toKebabCase, toPascalCase, validateSpecStructure };
1
+ /**
2
+ * @contractspec/module.workspace
3
+ *
4
+ * Pure, deterministic domain logic and static analysis utilities
5
+ * for ContractSpec workspace operations.
6
+ */
7
+ export * from './types/index';
8
+ export * from './analysis/index';
9
+ export * from './templates/index';
10
+ export * from './ai/index';
11
+ export * from './formatter';
12
+ export * from './formatters/index';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,eAAe,CAAC;AAG9B,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,cAAc,oBAAoB,CAAC"}