@libar-dev/architect 1.0.0-pre.3 → 1.0.0-pre.4

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 (758) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +5 -5
  3. package/dist/api/arch-queries.d.ts.map +1 -1
  4. package/dist/api/context-assembler.d.ts.map +1 -1
  5. package/dist/api/handoff-generator.d.ts.map +1 -1
  6. package/dist/api/index.d.ts +8 -8
  7. package/dist/api/index.d.ts.map +1 -1
  8. package/dist/api/index.js +7 -7
  9. package/dist/api/index.js.map +1 -1
  10. package/dist/api/{process-state.d.ts → pattern-graph-api.d.ts} +15 -15
  11. package/dist/api/pattern-graph-api.d.ts.map +1 -0
  12. package/dist/api/{process-state.js → pattern-graph-api.js} +13 -13
  13. package/dist/api/pattern-graph-api.js.map +1 -0
  14. package/dist/api/rules-query.d.ts +6 -6
  15. package/dist/api/rules-query.d.ts.map +1 -1
  16. package/dist/api/rules-query.js +4 -4
  17. package/dist/api/rules-query.js.map +1 -1
  18. package/dist/api/scope-validator.d.ts.map +1 -1
  19. package/dist/api/types.d.ts +8 -8
  20. package/dist/api/types.d.ts.map +1 -1
  21. package/dist/api/types.js +5 -5
  22. package/dist/cli/cli-schema.d.ts +3 -3
  23. package/dist/cli/cli-schema.js +13 -13
  24. package/dist/cli/cli-schema.js.map +1 -1
  25. package/dist/cli/output-pipeline.d.ts.map +1 -1
  26. package/dist/cli/pattern-graph-cli.d.ts.map +1 -0
  27. package/dist/cli/validate-patterns.d.ts.map +1 -1
  28. package/dist/generators/built-in/cli-recipe-generator.d.ts +3 -3
  29. package/dist/generators/built-in/cli-recipe-generator.js +6 -6
  30. package/dist/generators/built-in/cli-recipe-generator.js.map +1 -1
  31. package/dist/generators/built-in/cli-reference-generator.d.ts +18 -0
  32. package/dist/generators/built-in/cli-reference-generator.d.ts.map +1 -0
  33. package/dist/generators/built-in/{process-api-reference-generator.js → cli-reference-generator.js} +13 -13
  34. package/dist/generators/built-in/cli-reference-generator.js.map +1 -0
  35. package/dist/generators/built-in/codec-generators.js +12 -12
  36. package/dist/generators/built-in/codec-generators.js.map +1 -1
  37. package/dist/generators/built-in/design-review-generator.d.ts.map +1 -1
  38. package/dist/generators/built-in/reference-generators.d.ts.map +1 -1
  39. package/dist/generators/codec-based.d.ts.map +1 -1
  40. package/dist/generators/index.d.ts.map +1 -1
  41. package/dist/generators/orchestrator.d.ts.map +1 -1
  42. package/dist/generators/pipeline/build-pipeline.d.ts +17 -14
  43. package/dist/generators/pipeline/build-pipeline.d.ts.map +1 -1
  44. package/dist/generators/pipeline/build-pipeline.js +27 -21
  45. package/dist/generators/pipeline/build-pipeline.js.map +1 -1
  46. package/dist/generators/pipeline/index.d.ts.map +1 -1
  47. package/dist/generators/types.d.ts.map +1 -1
  48. package/dist/mcp/pipeline-session.d.ts.map +1 -1
  49. package/dist/renderable/codecs/index-codec.d.ts.map +1 -1
  50. package/dist/renderable/codecs/index-codec.js +54 -28
  51. package/dist/renderable/codecs/index-codec.js.map +1 -1
  52. package/docs/ANNOTATION-GUIDE.md +5 -5
  53. package/docs/ARCHITECTURE.md +79 -79
  54. package/docs/{PROCESS-API.md → CLI.md} +6 -6
  55. package/docs/CONFIGURATION.md +2 -2
  56. package/docs/DOCS-GAP-ANALYSIS.md +65 -65
  57. package/docs/INDEX.md +34 -34
  58. package/docs/MCP-SETUP.md +3 -3
  59. package/docs/METHODOLOGY.md +1 -1
  60. package/docs/SESSION-GUIDES.md +3 -3
  61. package/docs/VALIDATION.md +4 -4
  62. package/docs-live/ARCHITECTURE.md +48 -42
  63. package/docs-live/BUSINESS-RULES.md +3 -3
  64. package/docs-live/CHANGELOG-GENERATED.md +109 -103
  65. package/docs-live/INDEX.md +21 -21
  66. package/docs-live/PRODUCT-AREAS.md +7 -7
  67. package/docs-live/TAXONOMY.md +3 -5
  68. package/docs-live/_claude-md/annotation/annotation-overview.md +1 -1
  69. package/docs-live/_claude-md/annotation/annotation-reference.md +5 -5
  70. package/docs-live/_claude-md/architecture/architecture-types.md +4 -4
  71. package/docs-live/_claude-md/architecture/reference-sample.md +2 -2
  72. package/docs-live/_claude-md/data-api/data-api-overview.md +2 -2
  73. package/docs-live/_claude-md/generation/generation-overview.md +15 -15
  74. package/docs-live/_claude-md/process/process-overview.md +1 -1
  75. package/docs-live/_claude-md/validation/validation-overview.md +1 -1
  76. package/docs-live/business-rules/annotation.md +1 -2
  77. package/docs-live/business-rules/configuration.md +1 -1
  78. package/docs-live/business-rules/data-api.md +149 -136
  79. package/docs-live/business-rules/generation.md +172 -20
  80. package/docs-live/decisions/adr-003-source-first-pattern-architecture.md +1 -1
  81. package/docs-live/decisions/adr-005-codec-based-markdown-rendering.md +5 -5
  82. package/docs-live/decisions/adr-006-single-read-model-architecture.md +24 -24
  83. package/docs-live/product-areas/ANNOTATION.md +19 -9
  84. package/docs-live/product-areas/CONFIGURATION.md +39 -19
  85. package/docs-live/product-areas/DATA-API.md +155 -151
  86. package/docs-live/product-areas/GENERATION.md +159 -144
  87. package/docs-live/product-areas/PROCESS.md +4 -4
  88. package/docs-live/product-areas/VALIDATION.md +35 -20
  89. package/docs-live/reference/ANNOTATION-REFERENCE.md +5 -5
  90. package/docs-live/reference/ARCHITECTURE-CODECS.md +11 -11
  91. package/docs-live/reference/ARCHITECTURE-TYPES.md +28 -25
  92. package/docs-live/reference/{PROCESS-API-RECIPES.md → CLI-RECIPES.md} +11 -11
  93. package/docs-live/reference/{PROCESS-API-REFERENCE.md → CLI-REFERENCE.md} +2 -2
  94. package/docs-live/reference/REFERENCE-SAMPLE.md +56 -56
  95. package/docs-live/reference/SESSION-WORKFLOW-GUIDE.md +3 -3
  96. package/docs-live/taxonomy/format-types.md +2 -2
  97. package/docs-live/taxonomy/metadata-tags.md +1 -23
  98. package/package.json +7 -7
  99. package/dist/api/arch-queries.d.ts +0 -95
  100. package/dist/api/arch-queries.js +0 -310
  101. package/dist/api/arch-queries.js.map +0 -1
  102. package/dist/api/context-assembler.d.ts +0 -124
  103. package/dist/api/context-assembler.js +0 -472
  104. package/dist/api/context-assembler.js.map +0 -1
  105. package/dist/api/context-formatter.d.ts +0 -26
  106. package/dist/api/context-formatter.js +0 -183
  107. package/dist/api/context-formatter.js.map +0 -1
  108. package/dist/api/coverage-analyzer.d.ts +0 -38
  109. package/dist/api/coverage-analyzer.d.ts.map +0 -1
  110. package/dist/api/coverage-analyzer.js +0 -117
  111. package/dist/api/coverage-analyzer.js.map +0 -1
  112. package/dist/api/fuzzy-match.d.ts +0 -75
  113. package/dist/api/fuzzy-match.d.ts.map +0 -1
  114. package/dist/api/fuzzy-match.js +0 -150
  115. package/dist/api/fuzzy-match.js.map +0 -1
  116. package/dist/api/handoff-generator.d.ts +0 -45
  117. package/dist/api/handoff-generator.js +0 -139
  118. package/dist/api/handoff-generator.js.map +0 -1
  119. package/dist/api/pattern-helpers.d.ts +0 -51
  120. package/dist/api/pattern-helpers.d.ts.map +0 -1
  121. package/dist/api/pattern-helpers.js +0 -84
  122. package/dist/api/pattern-helpers.js.map +0 -1
  123. package/dist/api/process-state.d.ts.map +0 -1
  124. package/dist/api/process-state.js.map +0 -1
  125. package/dist/api/scope-validator.d.ts +0 -56
  126. package/dist/api/scope-validator.js +0 -293
  127. package/dist/api/scope-validator.js.map +0 -1
  128. package/dist/api/stub-resolver.d.ts +0 -117
  129. package/dist/api/stub-resolver.d.ts.map +0 -1
  130. package/dist/api/stub-resolver.js +0 -154
  131. package/dist/api/stub-resolver.js.map +0 -1
  132. package/dist/api/summarize.d.ts +0 -75
  133. package/dist/api/summarize.d.ts.map +0 -1
  134. package/dist/api/summarize.js +0 -97
  135. package/dist/api/summarize.js.map +0 -1
  136. package/dist/cache/file-cache.d.ts +0 -72
  137. package/dist/cache/file-cache.d.ts.map +0 -1
  138. package/dist/cache/file-cache.js +0 -80
  139. package/dist/cache/file-cache.js.map +0 -1
  140. package/dist/cache/index.d.ts +0 -5
  141. package/dist/cache/index.d.ts.map +0 -1
  142. package/dist/cache/index.js +0 -5
  143. package/dist/cache/index.js.map +0 -1
  144. package/dist/cli/dataset-cache.d.ts +0 -66
  145. package/dist/cli/dataset-cache.js +0 -179
  146. package/dist/cli/dataset-cache.js.map +0 -1
  147. package/dist/cli/error-handler.d.ts +0 -84
  148. package/dist/cli/error-handler.d.ts.map +0 -1
  149. package/dist/cli/error-handler.js +0 -197
  150. package/dist/cli/error-handler.js.map +0 -1
  151. package/dist/cli/generate-docs.d.ts +0 -30
  152. package/dist/cli/generate-docs.js +0 -370
  153. package/dist/cli/generate-docs.js.map +0 -1
  154. package/dist/cli/lint-patterns.d.ts +0 -57
  155. package/dist/cli/lint-patterns.d.ts.map +0 -1
  156. package/dist/cli/lint-patterns.js +0 -257
  157. package/dist/cli/lint-patterns.js.map +0 -1
  158. package/dist/cli/lint-process.d.ts +0 -54
  159. package/dist/cli/lint-process.d.ts.map +0 -1
  160. package/dist/cli/lint-process.js +0 -319
  161. package/dist/cli/lint-process.js.map +0 -1
  162. package/dist/cli/lint-steps.d.ts +0 -32
  163. package/dist/cli/lint-steps.d.ts.map +0 -1
  164. package/dist/cli/lint-steps.js +0 -172
  165. package/dist/cli/lint-steps.js.map +0 -1
  166. package/dist/cli/mcp-server.d.ts +0 -22
  167. package/dist/cli/mcp-server.js +0 -57
  168. package/dist/cli/mcp-server.js.map +0 -1
  169. package/dist/cli/output-pipeline.d.ts +0 -130
  170. package/dist/cli/output-pipeline.js +0 -234
  171. package/dist/cli/output-pipeline.js.map +0 -1
  172. package/dist/cli/process-api.d.ts +0 -37
  173. package/dist/cli/process-api.d.ts.map +0 -1
  174. package/dist/cli/process-api.js +0 -1550
  175. package/dist/cli/process-api.js.map +0 -1
  176. package/dist/cli/repl.d.ts +0 -38
  177. package/dist/cli/repl.js +0 -239
  178. package/dist/cli/repl.js.map +0 -1
  179. package/dist/cli/validate-patterns.d.ts +0 -115
  180. package/dist/cli/validate-patterns.js +0 -707
  181. package/dist/cli/validate-patterns.js.map +0 -1
  182. package/dist/cli/version.d.ts +0 -35
  183. package/dist/cli/version.d.ts.map +0 -1
  184. package/dist/cli/version.js +0 -64
  185. package/dist/cli/version.js.map +0 -1
  186. package/dist/config/config-loader.d.ts +0 -167
  187. package/dist/config/config-loader.d.ts.map +0 -1
  188. package/dist/config/config-loader.js +0 -294
  189. package/dist/config/config-loader.js.map +0 -1
  190. package/dist/config/defaults.d.ts +0 -92
  191. package/dist/config/defaults.d.ts.map +0 -1
  192. package/dist/config/defaults.js +0 -103
  193. package/dist/config/defaults.js.map +0 -1
  194. package/dist/config/define-config.d.ts +0 -37
  195. package/dist/config/define-config.d.ts.map +0 -1
  196. package/dist/config/define-config.js +0 -38
  197. package/dist/config/define-config.js.map +0 -1
  198. package/dist/config/factory.d.ts +0 -79
  199. package/dist/config/factory.d.ts.map +0 -1
  200. package/dist/config/factory.js +0 -116
  201. package/dist/config/factory.js.map +0 -1
  202. package/dist/config/index.d.ts +0 -45
  203. package/dist/config/index.d.ts.map +0 -1
  204. package/dist/config/index.js +0 -48
  205. package/dist/config/index.js.map +0 -1
  206. package/dist/config/merge-sources.d.ts +0 -47
  207. package/dist/config/merge-sources.d.ts.map +0 -1
  208. package/dist/config/merge-sources.js +0 -61
  209. package/dist/config/merge-sources.js.map +0 -1
  210. package/dist/config/presets.d.ts +0 -115
  211. package/dist/config/presets.d.ts.map +0 -1
  212. package/dist/config/presets.js +0 -119
  213. package/dist/config/presets.js.map +0 -1
  214. package/dist/config/project-config-schema.d.ts +0 -192
  215. package/dist/config/project-config-schema.d.ts.map +0 -1
  216. package/dist/config/project-config-schema.js +0 -231
  217. package/dist/config/project-config-schema.js.map +0 -1
  218. package/dist/config/project-config.d.ts +0 -229
  219. package/dist/config/project-config.d.ts.map +0 -1
  220. package/dist/config/project-config.js +0 -37
  221. package/dist/config/project-config.js.map +0 -1
  222. package/dist/config/regex-builders.d.ts +0 -49
  223. package/dist/config/regex-builders.d.ts.map +0 -1
  224. package/dist/config/regex-builders.js +0 -85
  225. package/dist/config/regex-builders.js.map +0 -1
  226. package/dist/config/resolve-config.d.ts +0 -65
  227. package/dist/config/resolve-config.d.ts.map +0 -1
  228. package/dist/config/resolve-config.js +0 -150
  229. package/dist/config/resolve-config.js.map +0 -1
  230. package/dist/config/types.d.ts +0 -81
  231. package/dist/config/types.d.ts.map +0 -1
  232. package/dist/config/types.js +0 -22
  233. package/dist/config/types.js.map +0 -1
  234. package/dist/config/workflow-loader.d.ts +0 -90
  235. package/dist/config/workflow-loader.d.ts.map +0 -1
  236. package/dist/config/workflow-loader.js +0 -167
  237. package/dist/config/workflow-loader.js.map +0 -1
  238. package/dist/extractor/doc-extractor.d.ts +0 -233
  239. package/dist/extractor/doc-extractor.d.ts.map +0 -1
  240. package/dist/extractor/doc-extractor.js +0 -481
  241. package/dist/extractor/doc-extractor.js.map +0 -1
  242. package/dist/extractor/dual-source-extractor.d.ts +0 -161
  243. package/dist/extractor/dual-source-extractor.d.ts.map +0 -1
  244. package/dist/extractor/dual-source-extractor.js +0 -407
  245. package/dist/extractor/dual-source-extractor.js.map +0 -1
  246. package/dist/extractor/gherkin-extractor.d.ts +0 -170
  247. package/dist/extractor/gherkin-extractor.d.ts.map +0 -1
  248. package/dist/extractor/gherkin-extractor.js +0 -543
  249. package/dist/extractor/gherkin-extractor.js.map +0 -1
  250. package/dist/extractor/index.d.ts +0 -7
  251. package/dist/extractor/index.d.ts.map +0 -1
  252. package/dist/extractor/index.js +0 -11
  253. package/dist/extractor/index.js.map +0 -1
  254. package/dist/extractor/layer-inference.d.ts +0 -66
  255. package/dist/extractor/layer-inference.d.ts.map +0 -1
  256. package/dist/extractor/layer-inference.js +0 -93
  257. package/dist/extractor/layer-inference.js.map +0 -1
  258. package/dist/extractor/shape-extractor.d.ts +0 -79
  259. package/dist/extractor/shape-extractor.d.ts.map +0 -1
  260. package/dist/extractor/shape-extractor.js +0 -966
  261. package/dist/extractor/shape-extractor.js.map +0 -1
  262. package/dist/generators/built-in/codec-generators.d.ts +0 -29
  263. package/dist/generators/built-in/decision-doc-generator.d.ts +0 -204
  264. package/dist/generators/built-in/decision-doc-generator.js +0 -654
  265. package/dist/generators/built-in/decision-doc-generator.js.map +0 -1
  266. package/dist/generators/built-in/design-review-generator.d.ts +0 -26
  267. package/dist/generators/built-in/design-review-generator.js +0 -94
  268. package/dist/generators/built-in/design-review-generator.js.map +0 -1
  269. package/dist/generators/built-in/index.d.ts +0 -22
  270. package/dist/generators/built-in/index.js +0 -23
  271. package/dist/generators/built-in/index.js.map +0 -1
  272. package/dist/generators/built-in/process-api-reference-generator.d.ts +0 -18
  273. package/dist/generators/built-in/process-api-reference-generator.d.ts.map +0 -1
  274. package/dist/generators/built-in/process-api-reference-generator.js.map +0 -1
  275. package/dist/generators/built-in/reference-generators.d.ts +0 -51
  276. package/dist/generators/built-in/reference-generators.js +0 -320
  277. package/dist/generators/built-in/reference-generators.js.map +0 -1
  278. package/dist/generators/codec-based.d.ts +0 -63
  279. package/dist/generators/codec-based.js +0 -88
  280. package/dist/generators/codec-based.js.map +0 -1
  281. package/dist/generators/content-deduplicator.d.ts +0 -114
  282. package/dist/generators/content-deduplicator.d.ts.map +0 -1
  283. package/dist/generators/content-deduplicator.js +0 -356
  284. package/dist/generators/content-deduplicator.js.map +0 -1
  285. package/dist/generators/index.d.ts +0 -50
  286. package/dist/generators/index.js +0 -54
  287. package/dist/generators/index.js.map +0 -1
  288. package/dist/generators/orchestrator.d.ts +0 -265
  289. package/dist/generators/orchestrator.js +0 -570
  290. package/dist/generators/orchestrator.js.map +0 -1
  291. package/dist/generators/pipeline/context-inference.d.ts +0 -55
  292. package/dist/generators/pipeline/context-inference.d.ts.map +0 -1
  293. package/dist/generators/pipeline/context-inference.js +0 -76
  294. package/dist/generators/pipeline/context-inference.js.map +0 -1
  295. package/dist/generators/pipeline/index.d.ts +0 -27
  296. package/dist/generators/pipeline/index.js +0 -34
  297. package/dist/generators/pipeline/index.js.map +0 -1
  298. package/dist/generators/pipeline/merge-patterns.d.ts +0 -33
  299. package/dist/generators/pipeline/merge-patterns.d.ts.map +0 -1
  300. package/dist/generators/pipeline/merge-patterns.js +0 -50
  301. package/dist/generators/pipeline/merge-patterns.js.map +0 -1
  302. package/dist/generators/pipeline/relationship-resolver.d.ts +0 -47
  303. package/dist/generators/pipeline/relationship-resolver.d.ts.map +0 -1
  304. package/dist/generators/pipeline/relationship-resolver.js +0 -132
  305. package/dist/generators/pipeline/relationship-resolver.js.map +0 -1
  306. package/dist/generators/pipeline/sequence-utils.d.ts +0 -49
  307. package/dist/generators/pipeline/sequence-utils.d.ts.map +0 -1
  308. package/dist/generators/pipeline/sequence-utils.js +0 -235
  309. package/dist/generators/pipeline/sequence-utils.js.map +0 -1
  310. package/dist/generators/pipeline/transform-dataset.d.ts +0 -82
  311. package/dist/generators/pipeline/transform-dataset.d.ts.map +0 -1
  312. package/dist/generators/pipeline/transform-dataset.js +0 -355
  313. package/dist/generators/pipeline/transform-dataset.js.map +0 -1
  314. package/dist/generators/pipeline/transform-types.d.ts +0 -96
  315. package/dist/generators/pipeline/transform-types.d.ts.map +0 -1
  316. package/dist/generators/pipeline/transform-types.js +0 -18
  317. package/dist/generators/pipeline/transform-types.js.map +0 -1
  318. package/dist/generators/registry.d.ts +0 -64
  319. package/dist/generators/registry.js +0 -77
  320. package/dist/generators/registry.js.map +0 -1
  321. package/dist/generators/source-mapper.d.ts +0 -143
  322. package/dist/generators/source-mapper.d.ts.map +0 -1
  323. package/dist/generators/source-mapper.js +0 -602
  324. package/dist/generators/source-mapper.js.map +0 -1
  325. package/dist/generators/source-mapping-validator.d.ts +0 -118
  326. package/dist/generators/source-mapping-validator.d.ts.map +0 -1
  327. package/dist/generators/source-mapping-validator.js +0 -334
  328. package/dist/generators/source-mapping-validator.js.map +0 -1
  329. package/dist/generators/types.d.ts +0 -104
  330. package/dist/generators/types.js +0 -5
  331. package/dist/generators/types.js.map +0 -1
  332. package/dist/generators/warning-collector.d.ts +0 -144
  333. package/dist/generators/warning-collector.d.ts.map +0 -1
  334. package/dist/generators/warning-collector.js +0 -166
  335. package/dist/generators/warning-collector.js.map +0 -1
  336. package/dist/git/branch-diff.d.ts +0 -44
  337. package/dist/git/branch-diff.d.ts.map +0 -1
  338. package/dist/git/branch-diff.js +0 -57
  339. package/dist/git/branch-diff.js.map +0 -1
  340. package/dist/git/helpers.d.ts +0 -46
  341. package/dist/git/helpers.d.ts.map +0 -1
  342. package/dist/git/helpers.js +0 -67
  343. package/dist/git/helpers.js.map +0 -1
  344. package/dist/git/index.d.ts +0 -18
  345. package/dist/git/index.d.ts.map +0 -1
  346. package/dist/git/index.js +0 -18
  347. package/dist/git/index.js.map +0 -1
  348. package/dist/git/name-status.d.ts +0 -32
  349. package/dist/git/name-status.d.ts.map +0 -1
  350. package/dist/git/name-status.js +0 -66
  351. package/dist/git/name-status.js.map +0 -1
  352. package/dist/index.d.ts +0 -107
  353. package/dist/index.js +0 -122
  354. package/dist/index.js.map +0 -1
  355. package/dist/lint/engine.d.ts +0 -113
  356. package/dist/lint/engine.d.ts.map +0 -1
  357. package/dist/lint/engine.js +0 -228
  358. package/dist/lint/engine.js.map +0 -1
  359. package/dist/lint/index.d.ts +0 -26
  360. package/dist/lint/index.d.ts.map +0 -1
  361. package/dist/lint/index.js +0 -24
  362. package/dist/lint/index.js.map +0 -1
  363. package/dist/lint/process-guard/decider.d.ts +0 -166
  364. package/dist/lint/process-guard/decider.d.ts.map +0 -1
  365. package/dist/lint/process-guard/decider.js +0 -412
  366. package/dist/lint/process-guard/decider.js.map +0 -1
  367. package/dist/lint/process-guard/derive-state.d.ts +0 -96
  368. package/dist/lint/process-guard/derive-state.d.ts.map +0 -1
  369. package/dist/lint/process-guard/derive-state.js +0 -368
  370. package/dist/lint/process-guard/derive-state.js.map +0 -1
  371. package/dist/lint/process-guard/detect-changes.d.ts +0 -109
  372. package/dist/lint/process-guard/detect-changes.d.ts.map +0 -1
  373. package/dist/lint/process-guard/detect-changes.js +0 -487
  374. package/dist/lint/process-guard/detect-changes.js.map +0 -1
  375. package/dist/lint/process-guard/index.d.ts +0 -35
  376. package/dist/lint/process-guard/index.d.ts.map +0 -1
  377. package/dist/lint/process-guard/index.js +0 -39
  378. package/dist/lint/process-guard/index.js.map +0 -1
  379. package/dist/lint/process-guard/types.d.ts +0 -255
  380. package/dist/lint/process-guard/types.d.ts.map +0 -1
  381. package/dist/lint/process-guard/types.js +0 -31
  382. package/dist/lint/process-guard/types.js.map +0 -1
  383. package/dist/lint/rules.d.ts +0 -147
  384. package/dist/lint/rules.d.ts.map +0 -1
  385. package/dist/lint/rules.js +0 -289
  386. package/dist/lint/rules.js.map +0 -1
  387. package/dist/lint/steps/cross-checks.d.ts +0 -66
  388. package/dist/lint/steps/cross-checks.d.ts.map +0 -1
  389. package/dist/lint/steps/cross-checks.js +0 -290
  390. package/dist/lint/steps/cross-checks.js.map +0 -1
  391. package/dist/lint/steps/feature-checks.d.ts +0 -78
  392. package/dist/lint/steps/feature-checks.d.ts.map +0 -1
  393. package/dist/lint/steps/feature-checks.js +0 -279
  394. package/dist/lint/steps/feature-checks.js.map +0 -1
  395. package/dist/lint/steps/index.d.ts +0 -22
  396. package/dist/lint/steps/index.d.ts.map +0 -1
  397. package/dist/lint/steps/index.js +0 -26
  398. package/dist/lint/steps/index.js.map +0 -1
  399. package/dist/lint/steps/pair-resolver.d.ts +0 -29
  400. package/dist/lint/steps/pair-resolver.d.ts.map +0 -1
  401. package/dist/lint/steps/pair-resolver.js +0 -76
  402. package/dist/lint/steps/pair-resolver.js.map +0 -1
  403. package/dist/lint/steps/runner.d.ts +0 -28
  404. package/dist/lint/steps/runner.d.ts.map +0 -1
  405. package/dist/lint/steps/runner.js +0 -143
  406. package/dist/lint/steps/runner.js.map +0 -1
  407. package/dist/lint/steps/step-checks.d.ts +0 -41
  408. package/dist/lint/steps/step-checks.d.ts.map +0 -1
  409. package/dist/lint/steps/step-checks.js +0 -164
  410. package/dist/lint/steps/step-checks.js.map +0 -1
  411. package/dist/lint/steps/types.d.ts +0 -95
  412. package/dist/lint/steps/types.d.ts.map +0 -1
  413. package/dist/lint/steps/types.js +0 -79
  414. package/dist/lint/steps/types.js.map +0 -1
  415. package/dist/lint/steps/utils.d.ts +0 -22
  416. package/dist/lint/steps/utils.d.ts.map +0 -1
  417. package/dist/lint/steps/utils.js +0 -57
  418. package/dist/lint/steps/utils.js.map +0 -1
  419. package/dist/mcp/file-watcher.d.ts +0 -24
  420. package/dist/mcp/file-watcher.js +0 -75
  421. package/dist/mcp/file-watcher.js.map +0 -1
  422. package/dist/mcp/index.d.ts +0 -19
  423. package/dist/mcp/index.js +0 -21
  424. package/dist/mcp/index.js.map +0 -1
  425. package/dist/mcp/pipeline-session.d.ts +0 -33
  426. package/dist/mcp/pipeline-session.js +0 -149
  427. package/dist/mcp/pipeline-session.js.map +0 -1
  428. package/dist/mcp/server.d.ts +0 -28
  429. package/dist/mcp/server.js +0 -197
  430. package/dist/mcp/server.js.map +0 -1
  431. package/dist/mcp/tool-registry.d.ts +0 -4
  432. package/dist/mcp/tool-registry.js +0 -525
  433. package/dist/mcp/tool-registry.js.map +0 -1
  434. package/dist/renderable/codecs/adr.d.ts +0 -4730
  435. package/dist/renderable/codecs/adr.d.ts.map +0 -1
  436. package/dist/renderable/codecs/adr.js +0 -590
  437. package/dist/renderable/codecs/adr.js.map +0 -1
  438. package/dist/renderable/codecs/architecture.d.ts +0 -4760
  439. package/dist/renderable/codecs/architecture.d.ts.map +0 -1
  440. package/dist/renderable/codecs/architecture.js +0 -524
  441. package/dist/renderable/codecs/architecture.js.map +0 -1
  442. package/dist/renderable/codecs/business-rules.d.ts +0 -4777
  443. package/dist/renderable/codecs/business-rules.d.ts.map +0 -1
  444. package/dist/renderable/codecs/business-rules.js +0 -648
  445. package/dist/renderable/codecs/business-rules.js.map +0 -1
  446. package/dist/renderable/codecs/claude-module.d.ts +0 -4710
  447. package/dist/renderable/codecs/claude-module.d.ts.map +0 -1
  448. package/dist/renderable/codecs/claude-module.js +0 -214
  449. package/dist/renderable/codecs/claude-module.js.map +0 -1
  450. package/dist/renderable/codecs/composite.d.ts +0 -84
  451. package/dist/renderable/codecs/composite.d.ts.map +0 -1
  452. package/dist/renderable/codecs/composite.js +0 -124
  453. package/dist/renderable/codecs/composite.js.map +0 -1
  454. package/dist/renderable/codecs/convention-extractor.d.ts +0 -105
  455. package/dist/renderable/codecs/convention-extractor.d.ts.map +0 -1
  456. package/dist/renderable/codecs/convention-extractor.js +0 -353
  457. package/dist/renderable/codecs/convention-extractor.js.map +0 -1
  458. package/dist/renderable/codecs/decision-doc.d.ts +0 -308
  459. package/dist/renderable/codecs/decision-doc.d.ts.map +0 -1
  460. package/dist/renderable/codecs/decision-doc.js +0 -485
  461. package/dist/renderable/codecs/decision-doc.js.map +0 -1
  462. package/dist/renderable/codecs/design-review.d.ts +0 -55
  463. package/dist/renderable/codecs/design-review.d.ts.map +0 -1
  464. package/dist/renderable/codecs/design-review.js +0 -532
  465. package/dist/renderable/codecs/design-review.js.map +0 -1
  466. package/dist/renderable/codecs/diagram-utils.d.ts +0 -62
  467. package/dist/renderable/codecs/diagram-utils.d.ts.map +0 -1
  468. package/dist/renderable/codecs/diagram-utils.js +0 -70
  469. package/dist/renderable/codecs/diagram-utils.js.map +0 -1
  470. package/dist/renderable/codecs/helpers.d.ts +0 -553
  471. package/dist/renderable/codecs/helpers.d.ts.map +0 -1
  472. package/dist/renderable/codecs/helpers.js +0 -913
  473. package/dist/renderable/codecs/helpers.js.map +0 -1
  474. package/dist/renderable/codecs/index-codec.d.ts +0 -4714
  475. package/dist/renderable/codecs/index.d.ts +0 -46
  476. package/dist/renderable/codecs/index.d.ts.map +0 -1
  477. package/dist/renderable/codecs/index.js +0 -70
  478. package/dist/renderable/codecs/index.js.map +0 -1
  479. package/dist/renderable/codecs/patterns.d.ts +0 -4757
  480. package/dist/renderable/codecs/patterns.d.ts.map +0 -1
  481. package/dist/renderable/codecs/patterns.js +0 -462
  482. package/dist/renderable/codecs/patterns.js.map +0 -1
  483. package/dist/renderable/codecs/planning.d.ts +0 -14055
  484. package/dist/renderable/codecs/planning.d.ts.map +0 -1
  485. package/dist/renderable/codecs/planning.js +0 -449
  486. package/dist/renderable/codecs/planning.js.map +0 -1
  487. package/dist/renderable/codecs/pr-changes.d.ts +0 -4742
  488. package/dist/renderable/codecs/pr-changes.d.ts.map +0 -1
  489. package/dist/renderable/codecs/pr-changes.js +0 -425
  490. package/dist/renderable/codecs/pr-changes.js.map +0 -1
  491. package/dist/renderable/codecs/reference.d.ts +0 -215
  492. package/dist/renderable/codecs/reference.d.ts.map +0 -1
  493. package/dist/renderable/codecs/reference.js +0 -1578
  494. package/dist/renderable/codecs/reference.js.map +0 -1
  495. package/dist/renderable/codecs/reporting.d.ts +0 -14026
  496. package/dist/renderable/codecs/reporting.d.ts.map +0 -1
  497. package/dist/renderable/codecs/reporting.js +0 -365
  498. package/dist/renderable/codecs/reporting.js.map +0 -1
  499. package/dist/renderable/codecs/requirements.d.ts +0 -4743
  500. package/dist/renderable/codecs/requirements.d.ts.map +0 -1
  501. package/dist/renderable/codecs/requirements.js +0 -428
  502. package/dist/renderable/codecs/requirements.js.map +0 -1
  503. package/dist/renderable/codecs/session.d.ts +0 -9410
  504. package/dist/renderable/codecs/session.d.ts.map +0 -1
  505. package/dist/renderable/codecs/session.js +0 -848
  506. package/dist/renderable/codecs/session.js.map +0 -1
  507. package/dist/renderable/codecs/shape-matcher.d.ts +0 -54
  508. package/dist/renderable/codecs/shape-matcher.d.ts.map +0 -1
  509. package/dist/renderable/codecs/shape-matcher.js +0 -106
  510. package/dist/renderable/codecs/shape-matcher.js.map +0 -1
  511. package/dist/renderable/codecs/shared-schema.d.ts +0 -44
  512. package/dist/renderable/codecs/shared-schema.d.ts.map +0 -1
  513. package/dist/renderable/codecs/shared-schema.js +0 -43
  514. package/dist/renderable/codecs/shared-schema.js.map +0 -1
  515. package/dist/renderable/codecs/taxonomy.d.ts +0 -4733
  516. package/dist/renderable/codecs/taxonomy.d.ts.map +0 -1
  517. package/dist/renderable/codecs/taxonomy.js +0 -570
  518. package/dist/renderable/codecs/taxonomy.js.map +0 -1
  519. package/dist/renderable/codecs/timeline.d.ts +0 -14094
  520. package/dist/renderable/codecs/timeline.d.ts.map +0 -1
  521. package/dist/renderable/codecs/timeline.js +0 -906
  522. package/dist/renderable/codecs/timeline.js.map +0 -1
  523. package/dist/renderable/codecs/types/base.d.ts +0 -81
  524. package/dist/renderable/codecs/types/base.d.ts.map +0 -1
  525. package/dist/renderable/codecs/types/base.js +0 -56
  526. package/dist/renderable/codecs/types/base.js.map +0 -1
  527. package/dist/renderable/codecs/types/index.d.ts +0 -5
  528. package/dist/renderable/codecs/types/index.d.ts.map +0 -1
  529. package/dist/renderable/codecs/types/index.js +0 -5
  530. package/dist/renderable/codecs/types/index.js.map +0 -1
  531. package/dist/renderable/codecs/validation-rules.d.ts +0 -4773
  532. package/dist/renderable/codecs/validation-rules.d.ts.map +0 -1
  533. package/dist/renderable/codecs/validation-rules.js +0 -537
  534. package/dist/renderable/codecs/validation-rules.js.map +0 -1
  535. package/dist/renderable/generate.d.ts +0 -338
  536. package/dist/renderable/generate.d.ts.map +0 -1
  537. package/dist/renderable/generate.js +0 -437
  538. package/dist/renderable/generate.js.map +0 -1
  539. package/dist/renderable/index.d.ts +0 -36
  540. package/dist/renderable/index.d.ts.map +0 -1
  541. package/dist/renderable/index.js +0 -58
  542. package/dist/renderable/index.js.map +0 -1
  543. package/dist/renderable/load-preamble.d.ts +0 -56
  544. package/dist/renderable/load-preamble.d.ts.map +0 -1
  545. package/dist/renderable/load-preamble.js +0 -298
  546. package/dist/renderable/load-preamble.js.map +0 -1
  547. package/dist/renderable/render.d.ts +0 -61
  548. package/dist/renderable/render.d.ts.map +0 -1
  549. package/dist/renderable/render.js +0 -346
  550. package/dist/renderable/render.js.map +0 -1
  551. package/dist/renderable/schema.d.ts +0 -194
  552. package/dist/renderable/schema.d.ts.map +0 -1
  553. package/dist/renderable/schema.js +0 -197
  554. package/dist/renderable/schema.js.map +0 -1
  555. package/dist/renderable/utils.d.ts +0 -146
  556. package/dist/renderable/utils.d.ts.map +0 -1
  557. package/dist/renderable/utils.js +0 -362
  558. package/dist/renderable/utils.js.map +0 -1
  559. package/dist/scanner/ast-parser.d.ts +0 -75
  560. package/dist/scanner/ast-parser.d.ts.map +0 -1
  561. package/dist/scanner/ast-parser.js +0 -835
  562. package/dist/scanner/ast-parser.js.map +0 -1
  563. package/dist/scanner/gherkin-ast-parser.d.ts +0 -166
  564. package/dist/scanner/gherkin-ast-parser.d.ts.map +0 -1
  565. package/dist/scanner/gherkin-ast-parser.js +0 -507
  566. package/dist/scanner/gherkin-ast-parser.js.map +0 -1
  567. package/dist/scanner/gherkin-scanner.d.ts +0 -106
  568. package/dist/scanner/gherkin-scanner.d.ts.map +0 -1
  569. package/dist/scanner/gherkin-scanner.js +0 -149
  570. package/dist/scanner/gherkin-scanner.js.map +0 -1
  571. package/dist/scanner/index.d.ts +0 -85
  572. package/dist/scanner/index.d.ts.map +0 -1
  573. package/dist/scanner/index.js +0 -102
  574. package/dist/scanner/index.js.map +0 -1
  575. package/dist/scanner/pattern-scanner.d.ts +0 -83
  576. package/dist/scanner/pattern-scanner.d.ts.map +0 -1
  577. package/dist/scanner/pattern-scanner.js +0 -110
  578. package/dist/scanner/pattern-scanner.js.map +0 -1
  579. package/dist/taxonomy/categories.d.ts +0 -47
  580. package/dist/taxonomy/categories.d.ts.map +0 -1
  581. package/dist/taxonomy/categories.js +0 -175
  582. package/dist/taxonomy/categories.js.map +0 -1
  583. package/dist/taxonomy/claude-section-values.d.ts +0 -12
  584. package/dist/taxonomy/claude-section-values.d.ts.map +0 -1
  585. package/dist/taxonomy/claude-section-values.js +0 -17
  586. package/dist/taxonomy/claude-section-values.js.map +0 -1
  587. package/dist/taxonomy/conventions.d.ts +0 -13
  588. package/dist/taxonomy/conventions.d.ts.map +0 -1
  589. package/dist/taxonomy/conventions.js +0 -27
  590. package/dist/taxonomy/conventions.js.map +0 -1
  591. package/dist/taxonomy/deliverable-status.d.ts +0 -99
  592. package/dist/taxonomy/deliverable-status.d.ts.map +0 -1
  593. package/dist/taxonomy/deliverable-status.js +0 -131
  594. package/dist/taxonomy/deliverable-status.js.map +0 -1
  595. package/dist/taxonomy/format-types.d.ts +0 -17
  596. package/dist/taxonomy/format-types.d.ts.map +0 -1
  597. package/dist/taxonomy/format-types.js +0 -23
  598. package/dist/taxonomy/format-types.js.map +0 -1
  599. package/dist/taxonomy/generator-options.d.ts +0 -67
  600. package/dist/taxonomy/generator-options.d.ts.map +0 -1
  601. package/dist/taxonomy/generator-options.js +0 -75
  602. package/dist/taxonomy/generator-options.js.map +0 -1
  603. package/dist/taxonomy/hierarchy-levels.d.ts +0 -23
  604. package/dist/taxonomy/hierarchy-levels.d.ts.map +0 -1
  605. package/dist/taxonomy/hierarchy-levels.js +0 -22
  606. package/dist/taxonomy/hierarchy-levels.js.map +0 -1
  607. package/dist/taxonomy/index.d.ts +0 -35
  608. package/dist/taxonomy/index.d.ts.map +0 -1
  609. package/dist/taxonomy/index.js +0 -56
  610. package/dist/taxonomy/index.js.map +0 -1
  611. package/dist/taxonomy/layer-types.d.ts +0 -22
  612. package/dist/taxonomy/layer-types.d.ts.map +0 -1
  613. package/dist/taxonomy/layer-types.js +0 -28
  614. package/dist/taxonomy/layer-types.js.map +0 -1
  615. package/dist/taxonomy/normalized-status.d.ts +0 -99
  616. package/dist/taxonomy/normalized-status.d.ts.map +0 -1
  617. package/dist/taxonomy/normalized-status.js +0 -113
  618. package/dist/taxonomy/normalized-status.js.map +0 -1
  619. package/dist/taxonomy/registry-builder.d.ts +0 -104
  620. package/dist/taxonomy/registry-builder.d.ts.map +0 -1
  621. package/dist/taxonomy/registry-builder.js +0 -561
  622. package/dist/taxonomy/registry-builder.js.map +0 -1
  623. package/dist/taxonomy/risk-levels.d.ts +0 -16
  624. package/dist/taxonomy/risk-levels.d.ts.map +0 -1
  625. package/dist/taxonomy/risk-levels.js +0 -15
  626. package/dist/taxonomy/risk-levels.js.map +0 -1
  627. package/dist/taxonomy/severity-types.d.ts +0 -6
  628. package/dist/taxonomy/severity-types.d.ts.map +0 -1
  629. package/dist/taxonomy/severity-types.js +0 -5
  630. package/dist/taxonomy/severity-types.js.map +0 -1
  631. package/dist/taxonomy/status-values.d.ts +0 -39
  632. package/dist/taxonomy/status-values.d.ts.map +0 -1
  633. package/dist/taxonomy/status-values.js +0 -42
  634. package/dist/taxonomy/status-values.js.map +0 -1
  635. package/dist/types/branded.d.ts +0 -89
  636. package/dist/types/branded.d.ts.map +0 -1
  637. package/dist/types/branded.js +0 -57
  638. package/dist/types/branded.js.map +0 -1
  639. package/dist/types/errors.d.ts +0 -342
  640. package/dist/types/errors.d.ts.map +0 -1
  641. package/dist/types/errors.js +0 -251
  642. package/dist/types/errors.js.map +0 -1
  643. package/dist/types/index.d.ts +0 -41
  644. package/dist/types/index.d.ts.map +0 -1
  645. package/dist/types/index.js +0 -5
  646. package/dist/types/index.js.map +0 -1
  647. package/dist/types/result.d.ts +0 -78
  648. package/dist/types/result.d.ts.map +0 -1
  649. package/dist/types/result.js +0 -78
  650. package/dist/types/result.js.map +0 -1
  651. package/dist/utils/collection-utils.d.ts +0 -49
  652. package/dist/utils/collection-utils.d.ts.map +0 -1
  653. package/dist/utils/collection-utils.js +0 -58
  654. package/dist/utils/collection-utils.js.map +0 -1
  655. package/dist/utils/id-utils.d.ts +0 -46
  656. package/dist/utils/id-utils.d.ts.map +0 -1
  657. package/dist/utils/id-utils.js +0 -51
  658. package/dist/utils/id-utils.js.map +0 -1
  659. package/dist/utils/index.d.ts +0 -21
  660. package/dist/utils/index.d.ts.map +0 -1
  661. package/dist/utils/index.js +0 -21
  662. package/dist/utils/index.js.map +0 -1
  663. package/dist/utils/string-utils.d.ts +0 -150
  664. package/dist/utils/string-utils.d.ts.map +0 -1
  665. package/dist/utils/string-utils.js +0 -281
  666. package/dist/utils/string-utils.js.map +0 -1
  667. package/dist/validation/anti-patterns.d.ts +0 -134
  668. package/dist/validation/anti-patterns.d.ts.map +0 -1
  669. package/dist/validation/anti-patterns.js +0 -307
  670. package/dist/validation/anti-patterns.js.map +0 -1
  671. package/dist/validation/dod-validator.d.ts +0 -94
  672. package/dist/validation/dod-validator.d.ts.map +0 -1
  673. package/dist/validation/dod-validator.js +0 -198
  674. package/dist/validation/dod-validator.js.map +0 -1
  675. package/dist/validation/fsm/index.d.ts +0 -59
  676. package/dist/validation/fsm/index.d.ts.map +0 -1
  677. package/dist/validation/fsm/index.js +0 -64
  678. package/dist/validation/fsm/index.js.map +0 -1
  679. package/dist/validation/fsm/states.d.ts +0 -93
  680. package/dist/validation/fsm/states.d.ts.map +0 -1
  681. package/dist/validation/fsm/states.js +0 -98
  682. package/dist/validation/fsm/states.js.map +0 -1
  683. package/dist/validation/fsm/transitions.d.ts +0 -100
  684. package/dist/validation/fsm/transitions.d.ts.map +0 -1
  685. package/dist/validation/fsm/transitions.js +0 -122
  686. package/dist/validation/fsm/transitions.js.map +0 -1
  687. package/dist/validation/fsm/validator.d.ts +0 -163
  688. package/dist/validation/fsm/validator.d.ts.map +0 -1
  689. package/dist/validation/fsm/validator.js +0 -205
  690. package/dist/validation/fsm/validator.js.map +0 -1
  691. package/dist/validation/index.d.ts +0 -23
  692. package/dist/validation/index.d.ts.map +0 -1
  693. package/dist/validation/index.js +0 -25
  694. package/dist/validation/index.js.map +0 -1
  695. package/dist/validation/types.d.ts +0 -136
  696. package/dist/validation/types.d.ts.map +0 -1
  697. package/dist/validation/types.js +0 -56
  698. package/dist/validation/types.js.map +0 -1
  699. package/dist/validation-schemas/codec-utils.d.ts +0 -188
  700. package/dist/validation-schemas/codec-utils.d.ts.map +0 -1
  701. package/dist/validation-schemas/codec-utils.js +0 -258
  702. package/dist/validation-schemas/codec-utils.js.map +0 -1
  703. package/dist/validation-schemas/config.d.ts +0 -99
  704. package/dist/validation-schemas/config.d.ts.map +0 -1
  705. package/dist/validation-schemas/config.js +0 -178
  706. package/dist/validation-schemas/config.js.map +0 -1
  707. package/dist/validation-schemas/doc-directive.d.ts +0 -195
  708. package/dist/validation-schemas/doc-directive.d.ts.map +0 -1
  709. package/dist/validation-schemas/doc-directive.js +0 -239
  710. package/dist/validation-schemas/doc-directive.js.map +0 -1
  711. package/dist/validation-schemas/dual-source.d.ts +0 -167
  712. package/dist/validation-schemas/dual-source.d.ts.map +0 -1
  713. package/dist/validation-schemas/dual-source.js +0 -168
  714. package/dist/validation-schemas/dual-source.js.map +0 -1
  715. package/dist/validation-schemas/export-info.d.ts +0 -53
  716. package/dist/validation-schemas/export-info.d.ts.map +0 -1
  717. package/dist/validation-schemas/export-info.js +0 -101
  718. package/dist/validation-schemas/export-info.js.map +0 -1
  719. package/dist/validation-schemas/extracted-pattern.d.ts +0 -351
  720. package/dist/validation-schemas/extracted-pattern.d.ts.map +0 -1
  721. package/dist/validation-schemas/extracted-pattern.js +0 -459
  722. package/dist/validation-schemas/extracted-pattern.js.map +0 -1
  723. package/dist/validation-schemas/extracted-shape.d.ts +0 -200
  724. package/dist/validation-schemas/extracted-shape.d.ts.map +0 -1
  725. package/dist/validation-schemas/extracted-shape.js +0 -182
  726. package/dist/validation-schemas/extracted-shape.js.map +0 -1
  727. package/dist/validation-schemas/feature.d.ts +0 -554
  728. package/dist/validation-schemas/feature.d.ts.map +0 -1
  729. package/dist/validation-schemas/feature.js +0 -262
  730. package/dist/validation-schemas/feature.js.map +0 -1
  731. package/dist/validation-schemas/index.d.ts +0 -15
  732. package/dist/validation-schemas/index.d.ts.map +0 -1
  733. package/dist/validation-schemas/index.js +0 -32
  734. package/dist/validation-schemas/index.js.map +0 -1
  735. package/dist/validation-schemas/lint.d.ts +0 -46
  736. package/dist/validation-schemas/lint.d.ts.map +0 -1
  737. package/dist/validation-schemas/lint.js +0 -45
  738. package/dist/validation-schemas/lint.js.map +0 -1
  739. package/dist/validation-schemas/master-dataset.d.ts +0 -8299
  740. package/dist/validation-schemas/master-dataset.d.ts.map +0 -1
  741. package/dist/validation-schemas/master-dataset.js +0 -275
  742. package/dist/validation-schemas/master-dataset.js.map +0 -1
  743. package/dist/validation-schemas/output-schemas.d.ts +0 -183
  744. package/dist/validation-schemas/output-schemas.d.ts.map +0 -1
  745. package/dist/validation-schemas/output-schemas.js +0 -149
  746. package/dist/validation-schemas/output-schemas.js.map +0 -1
  747. package/dist/validation-schemas/scenario-ref.d.ts +0 -80
  748. package/dist/validation-schemas/scenario-ref.d.ts.map +0 -1
  749. package/dist/validation-schemas/scenario-ref.js +0 -73
  750. package/dist/validation-schemas/scenario-ref.js.map +0 -1
  751. package/dist/validation-schemas/tag-registry.d.ts +0 -210
  752. package/dist/validation-schemas/tag-registry.d.ts.map +0 -1
  753. package/dist/validation-schemas/tag-registry.js +0 -248
  754. package/dist/validation-schemas/tag-registry.js.map +0 -1
  755. package/dist/validation-schemas/workflow-config.d.ts +0 -125
  756. package/dist/validation-schemas/workflow-config.d.ts.map +0 -1
  757. package/dist/validation-schemas/workflow-config.js +0 -138
  758. package/dist/validation-schemas/workflow-config.js.map +0 -1
@@ -1,407 +0,0 @@
1
- /**
2
- * @architect
3
- * @architect-extractor
4
- * @architect-pattern DualSourceExtractor
5
- * @architect-status completed
6
- * @architect-uses DocExtractor, GherkinExtractor, GherkinScanner
7
- * @architect-used-by Orchestrator
8
- * @architect-arch-role service
9
- * @architect-arch-context extractor
10
- * @architect-arch-layer application
11
- *
12
- * ## DualSourceExtractor - Compose Pattern Data from Code + Features
13
- *
14
- * Extracts pattern metadata from both TypeScript code stubs (@architect-*)
15
- * and Gherkin feature files (@architect-*), validates consistency,
16
- * and composes unified pattern data for documentation generation.
17
- *
18
- * ### When to Use
19
- *
20
- * - When implementing USDP Pattern 2 (Standard) or higher
21
- * - When you have both code stubs AND timeline features
22
- * - When generating artifacts that need both timeless and temporal data
23
- * - When validating cross-source consistency (pattern name, phase alignment)
24
- *
25
- * ### Key Concepts
26
- *
27
- * - **Code Source**: @architect-* tags define timeless pattern graph
28
- * - **Feature Source**: @architect-* tags add temporal process metadata
29
- * - **Cross-Validation**: Pattern name + phase must match across sources
30
- * - **Deliverables**: Parsed from Gherkin Background tables in features
31
- */
32
- import { getPatternName } from '../api/pattern-helpers.js';
33
- // Import Zod schemas and inferred types (schema-first pattern)
34
- import { ProcessMetadataSchema, DeliverableSchema, } from '../validation-schemas/index.js';
35
- import { DEFAULT_STATUS } from '../taxonomy/status-values.js';
36
- /**
37
- * Extract process metadata from Gherkin feature tags
38
- *
39
- * Uses schema validation instead of type assertions to ensure data integrity.
40
- * Returns null if required tags are missing OR if validation fails.
41
- *
42
- * @param feature - Scanned Gherkin feature
43
- * @returns Process metadata or null if missing required tags or validation fails
44
- */
45
- export function extractProcessMetadata(feature) {
46
- const tags = feature.feature.tags;
47
- // Extract normalized tags (scanner strips @ and configured prefix like @architect-)
48
- const patternTag = tags.find((t) => t.startsWith('pattern:'));
49
- const phaseTag = tags.find((t) => t.startsWith('phase:'));
50
- const statusTag = tags.find((t) => t.startsWith('status:'));
51
- if (!patternTag || !phaseTag) {
52
- // Missing required tags
53
- return null;
54
- }
55
- const pattern = patternTag.replace('pattern:', '');
56
- const phaseStr = phaseTag.replace('phase:', '');
57
- const phase = parseInt(phaseStr, 10);
58
- const status = statusTag?.replace('status:', '') ?? DEFAULT_STATUS;
59
- // Extract optional tags
60
- const quarterTag = tags.find((t) => t.startsWith('quarter:'));
61
- const effortTag = tags.find((t) => t.startsWith('effort:'));
62
- const teamTag = tags.find((t) => t.startsWith('team:'));
63
- const workflowTag = tags.find((t) => t.startsWith('workflow:'));
64
- const completedTag = tags.find((t) => t.startsWith('completed:'));
65
- const effortActualTag = tags.find((t) => t.startsWith('effort-actual:'));
66
- const riskTag = tags.find((t) => t.startsWith('risk:'));
67
- const briefTag = tags.find((t) => t.startsWith('brief:'));
68
- const productAreaTag = tags.find((t) => t.startsWith('product-area:'));
69
- const userRoleTag = tags.find((t) => t.startsWith('user-role:'));
70
- const businessValueTag = tags.find((t) => t.startsWith('business-value:'));
71
- const quarter = quarterTag?.replace('quarter:', '');
72
- const effort = effortTag?.replace('effort:', '');
73
- const team = teamTag?.replace('team:', '');
74
- const workflow = workflowTag?.replace('workflow:', '');
75
- const completed = completedTag?.replace('completed:', '');
76
- const effortActual = effortActualTag?.replace('effort-actual:', '');
77
- const risk = riskTag?.replace('risk:', '');
78
- const brief = briefTag?.replace('brief:', '');
79
- const productArea = productAreaTag?.replace('product-area:', '');
80
- const userRole = userRoleTag?.replace('user-role:', '');
81
- // Business value may have surrounding quotes - strip them
82
- const businessValueRaw = businessValueTag?.replace('business-value:', '');
83
- const businessValue = businessValueRaw?.replace(/^["']|["']$/g, '');
84
- // Build raw metadata object (no type assertions)
85
- const rawMetadata = {
86
- pattern,
87
- phase,
88
- status,
89
- ...(quarter && { quarter }),
90
- ...(effort && { effort }),
91
- ...(team && { team }),
92
- ...(workflow && { workflow }),
93
- ...(completed && { completed }),
94
- ...(effortActual && { effortActual }),
95
- ...(risk && { risk }),
96
- ...(brief && { brief }),
97
- ...(productArea && { productArea }),
98
- ...(userRole && { userRole }),
99
- ...(businessValue && { businessValue }),
100
- };
101
- // Validate against schema (schema-first enforcement)
102
- const validation = ProcessMetadataSchema.safeParse(rawMetadata);
103
- if (!validation.success) {
104
- // Log validation failure for debugging (but don't fail silently)
105
- console.warn(`Process metadata validation failed in ${feature.filePath}: ` +
106
- validation.error.issues.map((i) => `${i.path.join('.')}: ${i.message}`).join(', '));
107
- return null;
108
- }
109
- return validation.data;
110
- }
111
- /**
112
- * Parse a Tests cell value to a number
113
- *
114
- * Handles various formats:
115
- * - "Yes" / "No" → 1 / 0
116
- * - Numbers as strings → parsed int
117
- * - Empty → 0
118
- *
119
- * @param value - Tests cell value
120
- * @returns Number of tests
121
- */
122
- function parseTestsValue(value) {
123
- const trimmed = value.trim().toLowerCase();
124
- // Handle Yes/No/True/False
125
- if (trimmed === 'yes' || trimmed === 'true' || trimmed === '✓' || trimmed === '✅') {
126
- return 1;
127
- }
128
- if (trimmed === 'no' ||
129
- trimmed === 'false' ||
130
- trimmed === '✗' ||
131
- trimmed === '' ||
132
- trimmed === '-') {
133
- return 0;
134
- }
135
- // Try to parse as number
136
- const parsed = parseInt(trimmed, 10);
137
- return isNaN(parsed) ? 0 : parsed;
138
- }
139
- /**
140
- * Extract deliverables from Gherkin Background table
141
- *
142
- * Parses Background section looking for DataTables with a "Deliverable" column.
143
- * Expected table format:
144
- * | Deliverable | Status | Tests | Location |
145
- *
146
- * Optional columns for extended tracking:
147
- * | Deliverable | Status | Tests | Location | Finding | Release |
148
- *
149
- * - **Finding**: Review traceability ID (e.g., "CODE-001")
150
- * - **Release**: Semver version for changelog grouping (e.g., "v0.2.0")
151
- *
152
- * @param feature - Scanned Gherkin feature with optional background
153
- * @returns Array of deliverables or empty array if no table found
154
- *
155
- * @example
156
- * ```gherkin
157
- * Background: Deliverables
158
- * Given the following deliverables:
159
- * | Deliverable | Status | Tests | Location | Finding | Release |
160
- * | Fix parseArgs() call | Done | Yes | src/cli/generate-docs.ts | CODE-001 | v0.2.0 |
161
- * | Update README.md | Done | No | README.md | DOC-001 | v0.2.0 |
162
- * ```
163
- */
164
- export function extractDeliverables(feature) {
165
- // Check if feature has a background section
166
- if (!feature.background) {
167
- return [];
168
- }
169
- const deliverables = [];
170
- // Search for DataTables in background steps
171
- for (const step of feature.background.steps) {
172
- if (!step.dataTable) {
173
- continue;
174
- }
175
- const { headers, rows } = step.dataTable;
176
- // Check if this table has a "Deliverable" column (case-insensitive)
177
- const deliverableIdx = headers.findIndex((h) => h.toLowerCase() === 'deliverable');
178
- if (deliverableIdx === -1) {
179
- continue;
180
- }
181
- // Find other columns (case-insensitive)
182
- const statusIdx = headers.findIndex((h) => h.toLowerCase() === 'status');
183
- const testsIdx = headers.findIndex((h) => h.toLowerCase() === 'tests');
184
- const locationIdx = headers.findIndex((h) => h.toLowerCase() === 'location');
185
- const findingIdx = headers.findIndex((h) => h.toLowerCase() === 'finding');
186
- const releaseIdx = headers.findIndex((h) => h.toLowerCase() === 'release');
187
- // Store header names for reliable lookup (avoid empty-string key match)
188
- const deliverableHeader = headers[deliverableIdx];
189
- const statusHeader = statusIdx >= 0 ? headers[statusIdx] : undefined;
190
- const testsHeader = testsIdx >= 0 ? headers[testsIdx] : undefined;
191
- const locationHeader = locationIdx >= 0 ? headers[locationIdx] : undefined;
192
- const findingHeader = findingIdx >= 0 ? headers[findingIdx] : undefined;
193
- const releaseHeader = releaseIdx >= 0 ? headers[releaseIdx] : undefined;
194
- if (!deliverableHeader)
195
- continue;
196
- // Parse each row with schema validation
197
- for (const row of rows) {
198
- const name = row[deliverableHeader]?.trim() ?? '';
199
- const rawStatus = statusHeader ? (row[statusHeader]?.trim() ?? '') : '';
200
- const status = rawStatus.toLowerCase();
201
- const testsValue = testsHeader ? (row[testsHeader]?.trim() ?? '0') : '0';
202
- const location = locationHeader ? (row[locationHeader]?.trim() ?? '') : '';
203
- const findingRaw = findingHeader ? row[findingHeader]?.trim() : undefined;
204
- const finding = findingRaw !== '' ? findingRaw : undefined;
205
- const releaseRaw = releaseHeader ? row[releaseHeader]?.trim() : undefined;
206
- const release = releaseRaw !== '' ? releaseRaw : undefined;
207
- // Build raw deliverable object (no type assertions)
208
- const rawDeliverable = {
209
- name,
210
- status,
211
- tests: parseTestsValue(testsValue),
212
- location,
213
- ...(finding && { finding }),
214
- ...(release && { release }),
215
- };
216
- // Validate against schema (schema-first enforcement)
217
- const validation = DeliverableSchema.safeParse(rawDeliverable);
218
- if (!validation.success) {
219
- // Skip invalid deliverables with warning (name might be empty or tests negative)
220
- console.warn(`Deliverable validation failed in ${feature.filePath}: ` +
221
- validation.error.issues.map((i) => `${i.path.join('.')}: ${i.message}`).join(', '));
222
- continue;
223
- }
224
- deliverables.push(validation.data);
225
- }
226
- }
227
- return deliverables;
228
- }
229
- /**
230
- * Combine patterns from code and features into dual-source patterns
231
- *
232
- * Validates that pattern names and phases match across sources.
233
- * Creates unified pattern objects with both code and process metadata.
234
- *
235
- * **Pattern Name Collisions:**
236
- * When multiple code files use the same `@architect-pattern` name (e.g.,
237
- * ServiceIndependence with ECST and Reservation sub-patterns), they are
238
- * automatically merged:
239
- * - Categories, dependencies, and enables are unioned across all sources
240
- * - Primary pattern (first in array) provides base metadata
241
- * - All source patterns are preserved in the `sources` array
242
- * - Console warning is emitted for visibility
243
- *
244
- * @param codePatterns - Patterns extracted from TypeScript code
245
- * @param featureFiles - Scanned Gherkin feature files
246
- * @returns Dual-source extraction results
247
- *
248
- * @example
249
- * ```typescript
250
- * // Extract from both sources
251
- * const codeScan = await scanPatterns({ patterns: 'packages/**\/*.ts' });
252
- * const featureScan = await scanGherkinFiles({ patterns: 'tests/features/**\/*.feature' });
253
- *
254
- * if (codeScan.ok && featureScan.ok) {
255
- * const codeExtraction = extractPatterns(codeScan.value.files, '/project');
256
- * const dualSource = combineSources(codeExtraction.patterns, featureScan.value.files);
257
- *
258
- * console.log(`Combined: ${dualSource.patterns.length}`);
259
- * console.log(`Code-only: ${dualSource.codeOnly.length}`);
260
- * console.log(`Feature-only: ${dualSource.featureOnly.length}`);
261
- * console.log(`Validation errors: ${dualSource.validationErrors.length}`);
262
- *
263
- * // Check for collisions
264
- * for (const pattern of dualSource.patterns) {
265
- * if (pattern.sources) {
266
- * console.log(`${pattern.patternName} has ${pattern.sources.length} implementations`);
267
- * }
268
- * }
269
- * }
270
- * ```
271
- */
272
- export function combineSources(codePatterns, featureFiles) {
273
- const combined = [];
274
- const codeOnly = [];
275
- const featureOnly = [];
276
- const validationErrors = [];
277
- const warnings = [];
278
- // Build index of code patterns by patternName (supports collisions)
279
- // When multiple code files use same pattern name, they're stored as an array
280
- const codeIndex = new Map();
281
- for (const pattern of codePatterns) {
282
- if (pattern.patternName) {
283
- const existing = codeIndex.get(pattern.patternName) ?? [];
284
- codeIndex.set(pattern.patternName, [...existing, pattern]);
285
- }
286
- }
287
- // Build index of features by pattern name
288
- const featureIndex = new Map();
289
- for (const feature of featureFiles) {
290
- const metadata = extractProcessMetadata(feature);
291
- if (metadata) {
292
- featureIndex.set(metadata.pattern, { metadata, file: feature });
293
- }
294
- }
295
- // Combine matching patterns
296
- for (const [patternName, codePatternArray] of codeIndex.entries()) {
297
- const featureData = featureIndex.get(patternName);
298
- if (!featureData) {
299
- // Code-only patterns (no matching feature)
300
- codeOnly.push(...codePatternArray);
301
- continue;
302
- }
303
- const { metadata: processMetadata, file: featureFile } = featureData;
304
- // Handle pattern collision (multiple code sources for same pattern name)
305
- const hasCollision = codePatternArray.length > 1;
306
- const primaryPattern = codePatternArray[0];
307
- if (!primaryPattern) {
308
- // Should never happen but TypeScript needs the check
309
- console.warn(`Pattern "${patternName}" has no code patterns in array`);
310
- continue;
311
- }
312
- // Cross-validate: Phase must match (if both present)
313
- if (primaryPattern.phase !== undefined && processMetadata.phase !== primaryPattern.phase) {
314
- validationErrors.push({
315
- codeName: patternName,
316
- featureName: processMetadata.pattern,
317
- codePhase: primaryPattern.phase,
318
- featurePhase: processMetadata.phase,
319
- sources: {
320
- code: primaryPattern.source.file,
321
- feature: featureFile.filePath,
322
- },
323
- message: `Phase mismatch: code has ${primaryPattern.phase}, feature has ${processMetadata.phase}`,
324
- });
325
- // Still combine but note the error
326
- }
327
- // Extract deliverables from feature
328
- const deliverables = extractDeliverables(featureFile);
329
- // Note: ExtractedPattern has 'category' (singular), not 'categories' (plural)
330
- // For collision handling, we use the primary pattern's category
331
- // Future enhancement: could merge categories if schema changes
332
- // Merge dependencies (union)
333
- const mergedDependsOn = hasCollision
334
- ? Array.from(new Set(codePatternArray.flatMap((p) => p.dependsOn ?? [])))
335
- : primaryPattern.dependsOn;
336
- // Merge enables (union)
337
- const mergedEnables = hasCollision
338
- ? Array.from(new Set(codePatternArray.flatMap((p) => p.enables ?? [])))
339
- : primaryPattern.enables;
340
- // Combine into dual-source pattern
341
- // Destructure to exclude existing deliverables (exactOptionalPropertyTypes requires this)
342
- const { deliverables: _existingDeliverables, ...patternWithoutDeliverables } = primaryPattern;
343
- const dualSourcePattern = {
344
- ...patternWithoutDeliverables,
345
- ...(mergedDependsOn && mergedDependsOn.length > 0 && { dependsOn: mergedDependsOn }),
346
- ...(mergedEnables && mergedEnables.length > 0 && { enables: mergedEnables }),
347
- process: processMetadata,
348
- ...(deliverables.length > 0 && { deliverables }),
349
- ...(hasCollision && { sources: codePatternArray }),
350
- };
351
- combined.push(dualSourcePattern);
352
- // Collect warning about collision (structured, not console.warn)
353
- if (hasCollision) {
354
- warnings.push(`Pattern name collision: "${patternName}" defined in ${codePatternArray.length} files: ` +
355
- codePatternArray.map((p) => p.source.file).join(', '));
356
- }
357
- // Remove from feature index (mark as matched)
358
- featureIndex.delete(patternName);
359
- }
360
- // Remaining features are feature-only (no matching code)
361
- for (const [_, { metadata }] of featureIndex.entries()) {
362
- featureOnly.push(metadata);
363
- }
364
- return {
365
- patterns: combined,
366
- codeOnly,
367
- featureOnly,
368
- validationErrors,
369
- warnings,
370
- };
371
- }
372
- /**
373
- * Validate dual-source consistency
374
- *
375
- * Checks that patterns are properly aligned across sources.
376
- * Reports code stubs without features and features without code.
377
- *
378
- * @param results - Dual-source extraction results
379
- * @returns Validation summary
380
- */
381
- export function validateDualSource(results) {
382
- const errors = [];
383
- const warnings = [];
384
- // Errors: Cross-validation failures
385
- for (const error of results.validationErrors) {
386
- errors.push(`${error.codeName}: ${error.message}`);
387
- }
388
- // Warnings: Orphaned stubs (code without feature)
389
- for (const pattern of results.codeOnly) {
390
- if (pattern.status === DEFAULT_STATUS) {
391
- const name = getPatternName(pattern);
392
- warnings.push(`Roadmap pattern "${name}" has code stub but no feature file`);
393
- }
394
- }
395
- // Warnings: Features without code stubs
396
- for (const metadata of results.featureOnly) {
397
- if (metadata.status === DEFAULT_STATUS) {
398
- warnings.push(`Feature "${metadata.pattern}" (phase ${metadata.phase}) has no code stub`);
399
- }
400
- }
401
- return {
402
- isValid: errors.length === 0,
403
- errors,
404
- warnings,
405
- };
406
- }
407
- //# sourceMappingURL=dual-source-extractor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dual-source-extractor.js","sourceRoot":"","sources":["../../src/extractor/dual-source-extractor.ts"],"names":[],"mappings":"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"}
@@ -1,170 +0,0 @@
1
- /**
2
- * @architect
3
- * @architect-extractor
4
- * @architect-pattern GherkinExtractor
5
- * @architect-status completed
6
- * @architect-implements GherkinRulesSupport
7
- * @architect-uses GherkinTypes, GherkinASTParser
8
- * @architect-used-by DualSourceExtractor, Orchestrator
9
- * @architect-arch-role service
10
- * @architect-arch-context extractor
11
- * @architect-arch-layer application
12
- *
13
- * ## GherkinExtractor - Convert Feature Files to Pattern Documentation
14
- *
15
- * Transforms scanned Gherkin feature files into ExtractedPattern objects
16
- * for inclusion in generated documentation. Maps feature tags, descriptions,
17
- * and scenarios to pattern metadata.
18
- *
19
- * ### When to Use
20
- *
21
- * - When building multi-source documentation (TypeScript + Gherkin)
22
- * - When converting acceptance criteria to pattern documentation
23
- * - When defining roadmap patterns in .feature files before implementation
24
- *
25
- * ### Key Concepts
26
- *
27
- * - **Feature → Pattern**: Feature name becomes pattern name
28
- * - **Tags → Metadata**: @pattern:Name, @phase:N map to pattern fields
29
- * - **Scenarios → Use Cases**: Acceptance criteria become "When to Use" examples
30
- */
31
- import type { ScannedGherkinFile } from '../validation-schemas/feature.js';
32
- import { type ExtractedPattern } from '../validation-schemas/extracted-pattern.js';
33
- import type { TagRegistry } from '../validation-schemas/tag-registry.js';
34
- import { type GherkinPatternValidationError } from '../types/errors.js';
35
- /**
36
- * Semantic tags for scenario categorization.
37
- *
38
- * These tags identify the nature of a scenario (e.g., happy-path, validation)
39
- * and are extracted from scenario tags during pattern extraction.
40
- */
41
- export declare const SEMANTIC_SCENARIO_TAGS: readonly ["happy-path", "validation", "business-failure", "business-rule", "compensation", "idempotency", "expiration", "workflow-state"];
42
- /**
43
- * Configuration for Gherkin extractor
44
- */
45
- export interface GherkinExtractorConfig {
46
- /** Base directory for computing relative paths */
47
- readonly baseDir: string;
48
- /** Tag registry for category inference */
49
- readonly tagRegistry?: TagRegistry;
50
- /** Convert scenarios to "When to Use" examples (default: true) */
51
- readonly scenariosAsUseCases?: boolean;
52
- }
53
- /**
54
- * Result of Gherkin pattern extraction
55
- *
56
- * Contains both successfully extracted patterns and any validation errors
57
- * encountered during extraction. This enables partial success scenarios
58
- * where some patterns extract successfully while others fail validation.
59
- */
60
- export interface GherkinExtractionResult {
61
- /** Successfully extracted patterns */
62
- readonly patterns: readonly ExtractedPattern[];
63
- /** Validation errors for patterns that failed extraction */
64
- readonly errors: readonly GherkinPatternValidationError[];
65
- }
66
- /**
67
- * Extract patterns from scanned Gherkin feature files
68
- *
69
- * Converts feature file metadata into ExtractedPattern objects that can be
70
- * merged with TypeScript-sourced patterns for unified documentation generation.
71
- *
72
- * Returns both successfully extracted patterns and validation errors for
73
- * patterns that failed extraction. This enables partial success scenarios.
74
- *
75
- * @param scannedFiles - Array of scanned Gherkin files
76
- * @param config - Extractor configuration (requires baseDir for relative paths)
77
- * @returns Object containing extracted patterns and any validation errors
78
- *
79
- * @example
80
- * ```typescript
81
- * const scanResult = await scanGherkinFiles({
82
- * patterns: 'tests/features/roadmap/**\/*.feature'
83
- * });
84
- *
85
- * if (scanResult.ok) {
86
- * const { patterns, errors } = extractPatternsFromGherkin(scanResult.value.files, {
87
- * baseDir: process.cwd()
88
- * });
89
- * console.log(`${patterns.length} patterns extracted, ${errors.length} errors`);
90
- * }
91
- * ```
92
- */
93
- export declare function extractPatternsFromGherkin(scannedFiles: readonly ScannedGherkinFile[], config: GherkinExtractorConfig): GherkinExtractionResult;
94
- /**
95
- * Infer behavior file path from timeline feature file path using convention
96
- *
97
- * Convention: `timeline/phase-N[suffix]-name.feature` → `behavior/name.feature`
98
- *
99
- * Handles edge cases:
100
- * - `phase-37-remaining-work-enhancement.feature` → `remaining-work-enhancement.feature`
101
- * - `phase-02b-enhanced-dogfooding.feature` → `enhanced-dogfooding.feature`
102
- * - `phase-03-watch-mode.feature` → `watch-mode.feature`
103
- *
104
- * @param timelineFilePath - Relative path to timeline feature file
105
- * @returns Inferred behavior file path, or undefined if not a timeline file
106
- */
107
- export declare function inferBehaviorFilePath(timelineFilePath: string): string | undefined;
108
- /**
109
- * Extract patterns from scanned Gherkin feature files (async variant)
110
- *
111
- * This is the async version of `extractPatternsFromGherkin` that performs
112
- * file existence checks asynchronously in parallel, avoiding event loop blocking.
113
- *
114
- * Use this variant when processing many feature files or when running on
115
- * systems with slow disk I/O.
116
- *
117
- * @param scannedFiles - Array of scanned Gherkin files
118
- * @param config - Extractor configuration (requires baseDir for relative paths)
119
- * @returns Promise resolving to extracted patterns and validation errors
120
- *
121
- * @example
122
- * ```typescript
123
- * const scanResult = await scanGherkinFiles({
124
- * patterns: 'tests/features/roadmap/**\/*.feature'
125
- * });
126
- *
127
- * if (scanResult.ok) {
128
- * const { patterns, errors } = await extractPatternsFromGherkinAsync(
129
- * scanResult.value.files,
130
- * { baseDir: process.cwd() }
131
- * );
132
- * }
133
- * ```
134
- */
135
- export declare function extractPatternsFromGherkinAsync(scannedFiles: readonly ScannedGherkinFile[], config: GherkinExtractorConfig): Promise<GherkinExtractionResult>;
136
- /**
137
- * Compute children arrays from parent references
138
- *
139
- * Post-processing step that populates the `children` field on each pattern
140
- * by finding all patterns that reference it via their `parent` field.
141
- *
142
- * This enables bidirectional hierarchy navigation:
143
- * - Child → Parent: via `parent` field (explicit in feature file)
144
- * - Parent → Children: via `children` field (computed here)
145
- *
146
- * **Performance Note:** This function does NOT re-validate patterns through
147
- * the schema because:
148
- * 1. Input patterns have already been validated by extractPatternsFromGherkin()
149
- * 2. We're only adding a `children: string[]` field which matches the schema
150
- * 3. Re-validation of the complex ExtractedPatternSchema is expensive (~320 lines)
151
- *
152
- * This invariant is safe because:
153
- * - The children array is derived from validated pattern names
154
- * - ExtractedPatternSchema.children is defined as `z.array(z.string()).readonly().optional()`
155
- *
156
- * @param patterns - Array of validated ExtractedPattern objects
157
- * @returns New array with `children` populated (does not mutate input)
158
- *
159
- * @example
160
- * ```typescript
161
- * const rawPatterns = extractPatternsFromGherkin(files, config);
162
- * const patternsWithHierarchy = computeHierarchyChildren(rawPatterns);
163
- *
164
- * // Now epic patterns have children arrays
165
- * const epic = patternsWithHierarchy.find(p => p.level === 'epic');
166
- * console.log(epic.children); // ["PhaseA", "PhaseB"]
167
- * ```
168
- */
169
- export declare function computeHierarchyChildren(patterns: readonly ExtractedPattern[]): ExtractedPattern[];
170
- //# sourceMappingURL=gherkin-extractor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gherkin-extractor.d.ts","sourceRoot":"","sources":["../../src/extractor/gherkin-extractor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAOH,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AAMzE,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,oBAAoB,CAAC;AAQ5B;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,2IASzB,CAAC;AA2LX;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IACnC,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACxC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,sCAAsC;IACtC,QAAQ,CAAC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,CAAC;IAC/C,4DAA4D;IAC5D,QAAQ,CAAC,MAAM,EAAE,SAAS,6BAA6B,EAAE,CAAC;CAC3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,SAAS,kBAAkB,EAAE,EAC3C,MAAM,EAAE,sBAAsB,GAC7B,uBAAuB,CAgHzB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOlF;AA+BD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,+BAA+B,CACnD,YAAY,EAAE,SAAS,kBAAkB,EAAE,EAC3C,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,uBAAuB,CAAC,CA4GlC;AAQD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,SAAS,gBAAgB,EAAE,GACpC,gBAAgB,EAAE,CA4BpB"}