@libar-dev/architect 1.0.0-pre.3

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 (800) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/LICENSE +25 -0
  3. package/LICENSE-MCP +62 -0
  4. package/README.md +147 -0
  5. package/dist/api/arch-queries.d.ts +95 -0
  6. package/dist/api/arch-queries.d.ts.map +1 -0
  7. package/dist/api/arch-queries.js +310 -0
  8. package/dist/api/arch-queries.js.map +1 -0
  9. package/dist/api/context-assembler.d.ts +124 -0
  10. package/dist/api/context-assembler.d.ts.map +1 -0
  11. package/dist/api/context-assembler.js +472 -0
  12. package/dist/api/context-assembler.js.map +1 -0
  13. package/dist/api/context-formatter.d.ts +26 -0
  14. package/dist/api/context-formatter.d.ts.map +1 -0
  15. package/dist/api/context-formatter.js +183 -0
  16. package/dist/api/context-formatter.js.map +1 -0
  17. package/dist/api/coverage-analyzer.d.ts +38 -0
  18. package/dist/api/coverage-analyzer.d.ts.map +1 -0
  19. package/dist/api/coverage-analyzer.js +117 -0
  20. package/dist/api/coverage-analyzer.js.map +1 -0
  21. package/dist/api/fuzzy-match.d.ts +75 -0
  22. package/dist/api/fuzzy-match.d.ts.map +1 -0
  23. package/dist/api/fuzzy-match.js +150 -0
  24. package/dist/api/fuzzy-match.js.map +1 -0
  25. package/dist/api/handoff-generator.d.ts +45 -0
  26. package/dist/api/handoff-generator.d.ts.map +1 -0
  27. package/dist/api/handoff-generator.js +139 -0
  28. package/dist/api/handoff-generator.js.map +1 -0
  29. package/dist/api/index.d.ts +61 -0
  30. package/dist/api/index.d.ts.map +1 -0
  31. package/dist/api/index.js +54 -0
  32. package/dist/api/index.js.map +1 -0
  33. package/dist/api/pattern-helpers.d.ts +51 -0
  34. package/dist/api/pattern-helpers.d.ts.map +1 -0
  35. package/dist/api/pattern-helpers.js +84 -0
  36. package/dist/api/pattern-helpers.js.map +1 -0
  37. package/dist/api/process-state.d.ts +224 -0
  38. package/dist/api/process-state.d.ts.map +1 -0
  39. package/dist/api/process-state.js +308 -0
  40. package/dist/api/process-state.js.map +1 -0
  41. package/dist/api/rules-query.d.ts +60 -0
  42. package/dist/api/rules-query.d.ts.map +1 -0
  43. package/dist/api/rules-query.js +154 -0
  44. package/dist/api/rules-query.js.map +1 -0
  45. package/dist/api/scope-validator.d.ts +56 -0
  46. package/dist/api/scope-validator.d.ts.map +1 -0
  47. package/dist/api/scope-validator.js +293 -0
  48. package/dist/api/scope-validator.js.map +1 -0
  49. package/dist/api/stub-resolver.d.ts +117 -0
  50. package/dist/api/stub-resolver.d.ts.map +1 -0
  51. package/dist/api/stub-resolver.js +154 -0
  52. package/dist/api/stub-resolver.js.map +1 -0
  53. package/dist/api/summarize.d.ts +75 -0
  54. package/dist/api/summarize.d.ts.map +1 -0
  55. package/dist/api/summarize.js +97 -0
  56. package/dist/api/summarize.js.map +1 -0
  57. package/dist/api/types.d.ts +221 -0
  58. package/dist/api/types.d.ts.map +1 -0
  59. package/dist/api/types.js +57 -0
  60. package/dist/api/types.js.map +1 -0
  61. package/dist/cache/file-cache.d.ts +72 -0
  62. package/dist/cache/file-cache.d.ts.map +1 -0
  63. package/dist/cache/file-cache.js +80 -0
  64. package/dist/cache/file-cache.js.map +1 -0
  65. package/dist/cache/index.d.ts +5 -0
  66. package/dist/cache/index.d.ts.map +1 -0
  67. package/dist/cache/index.js +5 -0
  68. package/dist/cache/index.js.map +1 -0
  69. package/dist/cli/cli-schema.d.ts +83 -0
  70. package/dist/cli/cli-schema.d.ts.map +1 -0
  71. package/dist/cli/cli-schema.js +505 -0
  72. package/dist/cli/cli-schema.js.map +1 -0
  73. package/dist/cli/dataset-cache.d.ts +66 -0
  74. package/dist/cli/dataset-cache.d.ts.map +1 -0
  75. package/dist/cli/dataset-cache.js +179 -0
  76. package/dist/cli/dataset-cache.js.map +1 -0
  77. package/dist/cli/error-handler.d.ts +84 -0
  78. package/dist/cli/error-handler.d.ts.map +1 -0
  79. package/dist/cli/error-handler.js +197 -0
  80. package/dist/cli/error-handler.js.map +1 -0
  81. package/dist/cli/generate-docs.d.ts +30 -0
  82. package/dist/cli/generate-docs.d.ts.map +1 -0
  83. package/dist/cli/generate-docs.js +370 -0
  84. package/dist/cli/generate-docs.js.map +1 -0
  85. package/dist/cli/lint-patterns.d.ts +57 -0
  86. package/dist/cli/lint-patterns.d.ts.map +1 -0
  87. package/dist/cli/lint-patterns.js +257 -0
  88. package/dist/cli/lint-patterns.js.map +1 -0
  89. package/dist/cli/lint-process.d.ts +54 -0
  90. package/dist/cli/lint-process.d.ts.map +1 -0
  91. package/dist/cli/lint-process.js +319 -0
  92. package/dist/cli/lint-process.js.map +1 -0
  93. package/dist/cli/lint-steps.d.ts +32 -0
  94. package/dist/cli/lint-steps.d.ts.map +1 -0
  95. package/dist/cli/lint-steps.js +172 -0
  96. package/dist/cli/lint-steps.js.map +1 -0
  97. package/dist/cli/mcp-server.d.ts +22 -0
  98. package/dist/cli/mcp-server.d.ts.map +1 -0
  99. package/dist/cli/mcp-server.js +57 -0
  100. package/dist/cli/mcp-server.js.map +1 -0
  101. package/dist/cli/output-pipeline.d.ts +130 -0
  102. package/dist/cli/output-pipeline.d.ts.map +1 -0
  103. package/dist/cli/output-pipeline.js +234 -0
  104. package/dist/cli/output-pipeline.js.map +1 -0
  105. package/dist/cli/process-api.d.ts +37 -0
  106. package/dist/cli/process-api.d.ts.map +1 -0
  107. package/dist/cli/process-api.js +1550 -0
  108. package/dist/cli/process-api.js.map +1 -0
  109. package/dist/cli/repl.d.ts +38 -0
  110. package/dist/cli/repl.d.ts.map +1 -0
  111. package/dist/cli/repl.js +239 -0
  112. package/dist/cli/repl.js.map +1 -0
  113. package/dist/cli/validate-patterns.d.ts +115 -0
  114. package/dist/cli/validate-patterns.d.ts.map +1 -0
  115. package/dist/cli/validate-patterns.js +707 -0
  116. package/dist/cli/validate-patterns.js.map +1 -0
  117. package/dist/cli/version.d.ts +35 -0
  118. package/dist/cli/version.d.ts.map +1 -0
  119. package/dist/cli/version.js +64 -0
  120. package/dist/cli/version.js.map +1 -0
  121. package/dist/config/config-loader.d.ts +167 -0
  122. package/dist/config/config-loader.d.ts.map +1 -0
  123. package/dist/config/config-loader.js +294 -0
  124. package/dist/config/config-loader.js.map +1 -0
  125. package/dist/config/defaults.d.ts +92 -0
  126. package/dist/config/defaults.d.ts.map +1 -0
  127. package/dist/config/defaults.js +103 -0
  128. package/dist/config/defaults.js.map +1 -0
  129. package/dist/config/define-config.d.ts +37 -0
  130. package/dist/config/define-config.d.ts.map +1 -0
  131. package/dist/config/define-config.js +38 -0
  132. package/dist/config/define-config.js.map +1 -0
  133. package/dist/config/factory.d.ts +79 -0
  134. package/dist/config/factory.d.ts.map +1 -0
  135. package/dist/config/factory.js +116 -0
  136. package/dist/config/factory.js.map +1 -0
  137. package/dist/config/index.d.ts +45 -0
  138. package/dist/config/index.d.ts.map +1 -0
  139. package/dist/config/index.js +48 -0
  140. package/dist/config/index.js.map +1 -0
  141. package/dist/config/merge-sources.d.ts +47 -0
  142. package/dist/config/merge-sources.d.ts.map +1 -0
  143. package/dist/config/merge-sources.js +61 -0
  144. package/dist/config/merge-sources.js.map +1 -0
  145. package/dist/config/presets.d.ts +115 -0
  146. package/dist/config/presets.d.ts.map +1 -0
  147. package/dist/config/presets.js +119 -0
  148. package/dist/config/presets.js.map +1 -0
  149. package/dist/config/project-config-schema.d.ts +192 -0
  150. package/dist/config/project-config-schema.d.ts.map +1 -0
  151. package/dist/config/project-config-schema.js +231 -0
  152. package/dist/config/project-config-schema.js.map +1 -0
  153. package/dist/config/project-config.d.ts +229 -0
  154. package/dist/config/project-config.d.ts.map +1 -0
  155. package/dist/config/project-config.js +37 -0
  156. package/dist/config/project-config.js.map +1 -0
  157. package/dist/config/regex-builders.d.ts +49 -0
  158. package/dist/config/regex-builders.d.ts.map +1 -0
  159. package/dist/config/regex-builders.js +85 -0
  160. package/dist/config/regex-builders.js.map +1 -0
  161. package/dist/config/resolve-config.d.ts +65 -0
  162. package/dist/config/resolve-config.d.ts.map +1 -0
  163. package/dist/config/resolve-config.js +150 -0
  164. package/dist/config/resolve-config.js.map +1 -0
  165. package/dist/config/types.d.ts +81 -0
  166. package/dist/config/types.d.ts.map +1 -0
  167. package/dist/config/types.js +22 -0
  168. package/dist/config/types.js.map +1 -0
  169. package/dist/config/workflow-loader.d.ts +90 -0
  170. package/dist/config/workflow-loader.d.ts.map +1 -0
  171. package/dist/config/workflow-loader.js +167 -0
  172. package/dist/config/workflow-loader.js.map +1 -0
  173. package/dist/extractor/doc-extractor.d.ts +233 -0
  174. package/dist/extractor/doc-extractor.d.ts.map +1 -0
  175. package/dist/extractor/doc-extractor.js +481 -0
  176. package/dist/extractor/doc-extractor.js.map +1 -0
  177. package/dist/extractor/dual-source-extractor.d.ts +161 -0
  178. package/dist/extractor/dual-source-extractor.d.ts.map +1 -0
  179. package/dist/extractor/dual-source-extractor.js +407 -0
  180. package/dist/extractor/dual-source-extractor.js.map +1 -0
  181. package/dist/extractor/gherkin-extractor.d.ts +170 -0
  182. package/dist/extractor/gherkin-extractor.d.ts.map +1 -0
  183. package/dist/extractor/gherkin-extractor.js +543 -0
  184. package/dist/extractor/gherkin-extractor.js.map +1 -0
  185. package/dist/extractor/index.d.ts +7 -0
  186. package/dist/extractor/index.d.ts.map +1 -0
  187. package/dist/extractor/index.js +11 -0
  188. package/dist/extractor/index.js.map +1 -0
  189. package/dist/extractor/layer-inference.d.ts +66 -0
  190. package/dist/extractor/layer-inference.d.ts.map +1 -0
  191. package/dist/extractor/layer-inference.js +93 -0
  192. package/dist/extractor/layer-inference.js.map +1 -0
  193. package/dist/extractor/shape-extractor.d.ts +79 -0
  194. package/dist/extractor/shape-extractor.d.ts.map +1 -0
  195. package/dist/extractor/shape-extractor.js +966 -0
  196. package/dist/extractor/shape-extractor.js.map +1 -0
  197. package/dist/generators/built-in/cli-recipe-generator.d.ts +30 -0
  198. package/dist/generators/built-in/cli-recipe-generator.d.ts.map +1 -0
  199. package/dist/generators/built-in/cli-recipe-generator.js +155 -0
  200. package/dist/generators/built-in/cli-recipe-generator.js.map +1 -0
  201. package/dist/generators/built-in/codec-generators.d.ts +29 -0
  202. package/dist/generators/built-in/codec-generators.d.ts.map +1 -0
  203. package/dist/generators/built-in/codec-generators.js +195 -0
  204. package/dist/generators/built-in/codec-generators.js.map +1 -0
  205. package/dist/generators/built-in/decision-doc-generator.d.ts +204 -0
  206. package/dist/generators/built-in/decision-doc-generator.d.ts.map +1 -0
  207. package/dist/generators/built-in/decision-doc-generator.js +654 -0
  208. package/dist/generators/built-in/decision-doc-generator.js.map +1 -0
  209. package/dist/generators/built-in/design-review-generator.d.ts +26 -0
  210. package/dist/generators/built-in/design-review-generator.d.ts.map +1 -0
  211. package/dist/generators/built-in/design-review-generator.js +94 -0
  212. package/dist/generators/built-in/design-review-generator.js.map +1 -0
  213. package/dist/generators/built-in/index.d.ts +22 -0
  214. package/dist/generators/built-in/index.d.ts.map +1 -0
  215. package/dist/generators/built-in/index.js +23 -0
  216. package/dist/generators/built-in/index.js.map +1 -0
  217. package/dist/generators/built-in/process-api-reference-generator.d.ts +18 -0
  218. package/dist/generators/built-in/process-api-reference-generator.d.ts.map +1 -0
  219. package/dist/generators/built-in/process-api-reference-generator.js +85 -0
  220. package/dist/generators/built-in/process-api-reference-generator.js.map +1 -0
  221. package/dist/generators/built-in/reference-generators.d.ts +51 -0
  222. package/dist/generators/built-in/reference-generators.d.ts.map +1 -0
  223. package/dist/generators/built-in/reference-generators.js +320 -0
  224. package/dist/generators/built-in/reference-generators.js.map +1 -0
  225. package/dist/generators/codec-based.d.ts +63 -0
  226. package/dist/generators/codec-based.d.ts.map +1 -0
  227. package/dist/generators/codec-based.js +88 -0
  228. package/dist/generators/codec-based.js.map +1 -0
  229. package/dist/generators/content-deduplicator.d.ts +114 -0
  230. package/dist/generators/content-deduplicator.d.ts.map +1 -0
  231. package/dist/generators/content-deduplicator.js +356 -0
  232. package/dist/generators/content-deduplicator.js.map +1 -0
  233. package/dist/generators/index.d.ts +50 -0
  234. package/dist/generators/index.d.ts.map +1 -0
  235. package/dist/generators/index.js +54 -0
  236. package/dist/generators/index.js.map +1 -0
  237. package/dist/generators/orchestrator.d.ts +265 -0
  238. package/dist/generators/orchestrator.d.ts.map +1 -0
  239. package/dist/generators/orchestrator.js +570 -0
  240. package/dist/generators/orchestrator.js.map +1 -0
  241. package/dist/generators/pipeline/build-pipeline.d.ts +131 -0
  242. package/dist/generators/pipeline/build-pipeline.d.ts.map +1 -0
  243. package/dist/generators/pipeline/build-pipeline.js +248 -0
  244. package/dist/generators/pipeline/build-pipeline.js.map +1 -0
  245. package/dist/generators/pipeline/context-inference.d.ts +55 -0
  246. package/dist/generators/pipeline/context-inference.d.ts.map +1 -0
  247. package/dist/generators/pipeline/context-inference.js +76 -0
  248. package/dist/generators/pipeline/context-inference.js.map +1 -0
  249. package/dist/generators/pipeline/index.d.ts +27 -0
  250. package/dist/generators/pipeline/index.d.ts.map +1 -0
  251. package/dist/generators/pipeline/index.js +34 -0
  252. package/dist/generators/pipeline/index.js.map +1 -0
  253. package/dist/generators/pipeline/merge-patterns.d.ts +33 -0
  254. package/dist/generators/pipeline/merge-patterns.d.ts.map +1 -0
  255. package/dist/generators/pipeline/merge-patterns.js +50 -0
  256. package/dist/generators/pipeline/merge-patterns.js.map +1 -0
  257. package/dist/generators/pipeline/relationship-resolver.d.ts +47 -0
  258. package/dist/generators/pipeline/relationship-resolver.d.ts.map +1 -0
  259. package/dist/generators/pipeline/relationship-resolver.js +132 -0
  260. package/dist/generators/pipeline/relationship-resolver.js.map +1 -0
  261. package/dist/generators/pipeline/sequence-utils.d.ts +49 -0
  262. package/dist/generators/pipeline/sequence-utils.d.ts.map +1 -0
  263. package/dist/generators/pipeline/sequence-utils.js +235 -0
  264. package/dist/generators/pipeline/sequence-utils.js.map +1 -0
  265. package/dist/generators/pipeline/transform-dataset.d.ts +82 -0
  266. package/dist/generators/pipeline/transform-dataset.d.ts.map +1 -0
  267. package/dist/generators/pipeline/transform-dataset.js +355 -0
  268. package/dist/generators/pipeline/transform-dataset.js.map +1 -0
  269. package/dist/generators/pipeline/transform-types.d.ts +96 -0
  270. package/dist/generators/pipeline/transform-types.d.ts.map +1 -0
  271. package/dist/generators/pipeline/transform-types.js +18 -0
  272. package/dist/generators/pipeline/transform-types.js.map +1 -0
  273. package/dist/generators/registry.d.ts +64 -0
  274. package/dist/generators/registry.d.ts.map +1 -0
  275. package/dist/generators/registry.js +77 -0
  276. package/dist/generators/registry.js.map +1 -0
  277. package/dist/generators/source-mapper.d.ts +143 -0
  278. package/dist/generators/source-mapper.d.ts.map +1 -0
  279. package/dist/generators/source-mapper.js +602 -0
  280. package/dist/generators/source-mapper.js.map +1 -0
  281. package/dist/generators/source-mapping-validator.d.ts +118 -0
  282. package/dist/generators/source-mapping-validator.d.ts.map +1 -0
  283. package/dist/generators/source-mapping-validator.js +334 -0
  284. package/dist/generators/source-mapping-validator.js.map +1 -0
  285. package/dist/generators/types.d.ts +104 -0
  286. package/dist/generators/types.d.ts.map +1 -0
  287. package/dist/generators/types.js +5 -0
  288. package/dist/generators/types.js.map +1 -0
  289. package/dist/generators/warning-collector.d.ts +144 -0
  290. package/dist/generators/warning-collector.d.ts.map +1 -0
  291. package/dist/generators/warning-collector.js +166 -0
  292. package/dist/generators/warning-collector.js.map +1 -0
  293. package/dist/git/branch-diff.d.ts +44 -0
  294. package/dist/git/branch-diff.d.ts.map +1 -0
  295. package/dist/git/branch-diff.js +57 -0
  296. package/dist/git/branch-diff.js.map +1 -0
  297. package/dist/git/helpers.d.ts +46 -0
  298. package/dist/git/helpers.d.ts.map +1 -0
  299. package/dist/git/helpers.js +67 -0
  300. package/dist/git/helpers.js.map +1 -0
  301. package/dist/git/index.d.ts +18 -0
  302. package/dist/git/index.d.ts.map +1 -0
  303. package/dist/git/index.js +18 -0
  304. package/dist/git/index.js.map +1 -0
  305. package/dist/git/name-status.d.ts +32 -0
  306. package/dist/git/name-status.d.ts.map +1 -0
  307. package/dist/git/name-status.js +66 -0
  308. package/dist/git/name-status.js.map +1 -0
  309. package/dist/index.d.ts +107 -0
  310. package/dist/index.d.ts.map +1 -0
  311. package/dist/index.js +122 -0
  312. package/dist/index.js.map +1 -0
  313. package/dist/lint/engine.d.ts +113 -0
  314. package/dist/lint/engine.d.ts.map +1 -0
  315. package/dist/lint/engine.js +228 -0
  316. package/dist/lint/engine.js.map +1 -0
  317. package/dist/lint/index.d.ts +26 -0
  318. package/dist/lint/index.d.ts.map +1 -0
  319. package/dist/lint/index.js +24 -0
  320. package/dist/lint/index.js.map +1 -0
  321. package/dist/lint/process-guard/decider.d.ts +166 -0
  322. package/dist/lint/process-guard/decider.d.ts.map +1 -0
  323. package/dist/lint/process-guard/decider.js +412 -0
  324. package/dist/lint/process-guard/decider.js.map +1 -0
  325. package/dist/lint/process-guard/derive-state.d.ts +96 -0
  326. package/dist/lint/process-guard/derive-state.d.ts.map +1 -0
  327. package/dist/lint/process-guard/derive-state.js +368 -0
  328. package/dist/lint/process-guard/derive-state.js.map +1 -0
  329. package/dist/lint/process-guard/detect-changes.d.ts +109 -0
  330. package/dist/lint/process-guard/detect-changes.d.ts.map +1 -0
  331. package/dist/lint/process-guard/detect-changes.js +487 -0
  332. package/dist/lint/process-guard/detect-changes.js.map +1 -0
  333. package/dist/lint/process-guard/index.d.ts +35 -0
  334. package/dist/lint/process-guard/index.d.ts.map +1 -0
  335. package/dist/lint/process-guard/index.js +39 -0
  336. package/dist/lint/process-guard/index.js.map +1 -0
  337. package/dist/lint/process-guard/types.d.ts +255 -0
  338. package/dist/lint/process-guard/types.d.ts.map +1 -0
  339. package/dist/lint/process-guard/types.js +31 -0
  340. package/dist/lint/process-guard/types.js.map +1 -0
  341. package/dist/lint/rules.d.ts +147 -0
  342. package/dist/lint/rules.d.ts.map +1 -0
  343. package/dist/lint/rules.js +289 -0
  344. package/dist/lint/rules.js.map +1 -0
  345. package/dist/lint/steps/cross-checks.d.ts +66 -0
  346. package/dist/lint/steps/cross-checks.d.ts.map +1 -0
  347. package/dist/lint/steps/cross-checks.js +290 -0
  348. package/dist/lint/steps/cross-checks.js.map +1 -0
  349. package/dist/lint/steps/feature-checks.d.ts +78 -0
  350. package/dist/lint/steps/feature-checks.d.ts.map +1 -0
  351. package/dist/lint/steps/feature-checks.js +279 -0
  352. package/dist/lint/steps/feature-checks.js.map +1 -0
  353. package/dist/lint/steps/index.d.ts +22 -0
  354. package/dist/lint/steps/index.d.ts.map +1 -0
  355. package/dist/lint/steps/index.js +26 -0
  356. package/dist/lint/steps/index.js.map +1 -0
  357. package/dist/lint/steps/pair-resolver.d.ts +29 -0
  358. package/dist/lint/steps/pair-resolver.d.ts.map +1 -0
  359. package/dist/lint/steps/pair-resolver.js +76 -0
  360. package/dist/lint/steps/pair-resolver.js.map +1 -0
  361. package/dist/lint/steps/runner.d.ts +28 -0
  362. package/dist/lint/steps/runner.d.ts.map +1 -0
  363. package/dist/lint/steps/runner.js +143 -0
  364. package/dist/lint/steps/runner.js.map +1 -0
  365. package/dist/lint/steps/step-checks.d.ts +41 -0
  366. package/dist/lint/steps/step-checks.d.ts.map +1 -0
  367. package/dist/lint/steps/step-checks.js +164 -0
  368. package/dist/lint/steps/step-checks.js.map +1 -0
  369. package/dist/lint/steps/types.d.ts +95 -0
  370. package/dist/lint/steps/types.d.ts.map +1 -0
  371. package/dist/lint/steps/types.js +79 -0
  372. package/dist/lint/steps/types.js.map +1 -0
  373. package/dist/lint/steps/utils.d.ts +22 -0
  374. package/dist/lint/steps/utils.d.ts.map +1 -0
  375. package/dist/lint/steps/utils.js +57 -0
  376. package/dist/lint/steps/utils.js.map +1 -0
  377. package/dist/mcp/file-watcher.d.ts +24 -0
  378. package/dist/mcp/file-watcher.d.ts.map +1 -0
  379. package/dist/mcp/file-watcher.js +75 -0
  380. package/dist/mcp/file-watcher.js.map +1 -0
  381. package/dist/mcp/index.d.ts +19 -0
  382. package/dist/mcp/index.d.ts.map +1 -0
  383. package/dist/mcp/index.js +21 -0
  384. package/dist/mcp/index.js.map +1 -0
  385. package/dist/mcp/pipeline-session.d.ts +33 -0
  386. package/dist/mcp/pipeline-session.d.ts.map +1 -0
  387. package/dist/mcp/pipeline-session.js +149 -0
  388. package/dist/mcp/pipeline-session.js.map +1 -0
  389. package/dist/mcp/server.d.ts +28 -0
  390. package/dist/mcp/server.d.ts.map +1 -0
  391. package/dist/mcp/server.js +197 -0
  392. package/dist/mcp/server.js.map +1 -0
  393. package/dist/mcp/tool-registry.d.ts +4 -0
  394. package/dist/mcp/tool-registry.d.ts.map +1 -0
  395. package/dist/mcp/tool-registry.js +525 -0
  396. package/dist/mcp/tool-registry.js.map +1 -0
  397. package/dist/renderable/codecs/adr.d.ts +4730 -0
  398. package/dist/renderable/codecs/adr.d.ts.map +1 -0
  399. package/dist/renderable/codecs/adr.js +590 -0
  400. package/dist/renderable/codecs/adr.js.map +1 -0
  401. package/dist/renderable/codecs/architecture.d.ts +4760 -0
  402. package/dist/renderable/codecs/architecture.d.ts.map +1 -0
  403. package/dist/renderable/codecs/architecture.js +524 -0
  404. package/dist/renderable/codecs/architecture.js.map +1 -0
  405. package/dist/renderable/codecs/business-rules.d.ts +4777 -0
  406. package/dist/renderable/codecs/business-rules.d.ts.map +1 -0
  407. package/dist/renderable/codecs/business-rules.js +648 -0
  408. package/dist/renderable/codecs/business-rules.js.map +1 -0
  409. package/dist/renderable/codecs/claude-module.d.ts +4710 -0
  410. package/dist/renderable/codecs/claude-module.d.ts.map +1 -0
  411. package/dist/renderable/codecs/claude-module.js +214 -0
  412. package/dist/renderable/codecs/claude-module.js.map +1 -0
  413. package/dist/renderable/codecs/composite.d.ts +84 -0
  414. package/dist/renderable/codecs/composite.d.ts.map +1 -0
  415. package/dist/renderable/codecs/composite.js +124 -0
  416. package/dist/renderable/codecs/composite.js.map +1 -0
  417. package/dist/renderable/codecs/convention-extractor.d.ts +105 -0
  418. package/dist/renderable/codecs/convention-extractor.d.ts.map +1 -0
  419. package/dist/renderable/codecs/convention-extractor.js +353 -0
  420. package/dist/renderable/codecs/convention-extractor.js.map +1 -0
  421. package/dist/renderable/codecs/decision-doc.d.ts +308 -0
  422. package/dist/renderable/codecs/decision-doc.d.ts.map +1 -0
  423. package/dist/renderable/codecs/decision-doc.js +485 -0
  424. package/dist/renderable/codecs/decision-doc.js.map +1 -0
  425. package/dist/renderable/codecs/design-review.d.ts +55 -0
  426. package/dist/renderable/codecs/design-review.d.ts.map +1 -0
  427. package/dist/renderable/codecs/design-review.js +532 -0
  428. package/dist/renderable/codecs/design-review.js.map +1 -0
  429. package/dist/renderable/codecs/diagram-utils.d.ts +62 -0
  430. package/dist/renderable/codecs/diagram-utils.d.ts.map +1 -0
  431. package/dist/renderable/codecs/diagram-utils.js +70 -0
  432. package/dist/renderable/codecs/diagram-utils.js.map +1 -0
  433. package/dist/renderable/codecs/helpers.d.ts +553 -0
  434. package/dist/renderable/codecs/helpers.d.ts.map +1 -0
  435. package/dist/renderable/codecs/helpers.js +913 -0
  436. package/dist/renderable/codecs/helpers.js.map +1 -0
  437. package/dist/renderable/codecs/index-codec.d.ts +4714 -0
  438. package/dist/renderable/codecs/index-codec.d.ts.map +1 -0
  439. package/dist/renderable/codecs/index-codec.js +250 -0
  440. package/dist/renderable/codecs/index-codec.js.map +1 -0
  441. package/dist/renderable/codecs/index.d.ts +46 -0
  442. package/dist/renderable/codecs/index.d.ts.map +1 -0
  443. package/dist/renderable/codecs/index.js +70 -0
  444. package/dist/renderable/codecs/index.js.map +1 -0
  445. package/dist/renderable/codecs/patterns.d.ts +4757 -0
  446. package/dist/renderable/codecs/patterns.d.ts.map +1 -0
  447. package/dist/renderable/codecs/patterns.js +462 -0
  448. package/dist/renderable/codecs/patterns.js.map +1 -0
  449. package/dist/renderable/codecs/planning.d.ts +14055 -0
  450. package/dist/renderable/codecs/planning.d.ts.map +1 -0
  451. package/dist/renderable/codecs/planning.js +449 -0
  452. package/dist/renderable/codecs/planning.js.map +1 -0
  453. package/dist/renderable/codecs/pr-changes.d.ts +4742 -0
  454. package/dist/renderable/codecs/pr-changes.d.ts.map +1 -0
  455. package/dist/renderable/codecs/pr-changes.js +425 -0
  456. package/dist/renderable/codecs/pr-changes.js.map +1 -0
  457. package/dist/renderable/codecs/reference.d.ts +215 -0
  458. package/dist/renderable/codecs/reference.d.ts.map +1 -0
  459. package/dist/renderable/codecs/reference.js +1578 -0
  460. package/dist/renderable/codecs/reference.js.map +1 -0
  461. package/dist/renderable/codecs/reporting.d.ts +14026 -0
  462. package/dist/renderable/codecs/reporting.d.ts.map +1 -0
  463. package/dist/renderable/codecs/reporting.js +365 -0
  464. package/dist/renderable/codecs/reporting.js.map +1 -0
  465. package/dist/renderable/codecs/requirements.d.ts +4743 -0
  466. package/dist/renderable/codecs/requirements.d.ts.map +1 -0
  467. package/dist/renderable/codecs/requirements.js +428 -0
  468. package/dist/renderable/codecs/requirements.js.map +1 -0
  469. package/dist/renderable/codecs/session.d.ts +9410 -0
  470. package/dist/renderable/codecs/session.d.ts.map +1 -0
  471. package/dist/renderable/codecs/session.js +848 -0
  472. package/dist/renderable/codecs/session.js.map +1 -0
  473. package/dist/renderable/codecs/shape-matcher.d.ts +54 -0
  474. package/dist/renderable/codecs/shape-matcher.d.ts.map +1 -0
  475. package/dist/renderable/codecs/shape-matcher.js +106 -0
  476. package/dist/renderable/codecs/shape-matcher.js.map +1 -0
  477. package/dist/renderable/codecs/shared-schema.d.ts +44 -0
  478. package/dist/renderable/codecs/shared-schema.d.ts.map +1 -0
  479. package/dist/renderable/codecs/shared-schema.js +43 -0
  480. package/dist/renderable/codecs/shared-schema.js.map +1 -0
  481. package/dist/renderable/codecs/taxonomy.d.ts +4733 -0
  482. package/dist/renderable/codecs/taxonomy.d.ts.map +1 -0
  483. package/dist/renderable/codecs/taxonomy.js +570 -0
  484. package/dist/renderable/codecs/taxonomy.js.map +1 -0
  485. package/dist/renderable/codecs/timeline.d.ts +14094 -0
  486. package/dist/renderable/codecs/timeline.d.ts.map +1 -0
  487. package/dist/renderable/codecs/timeline.js +906 -0
  488. package/dist/renderable/codecs/timeline.js.map +1 -0
  489. package/dist/renderable/codecs/types/base.d.ts +81 -0
  490. package/dist/renderable/codecs/types/base.d.ts.map +1 -0
  491. package/dist/renderable/codecs/types/base.js +56 -0
  492. package/dist/renderable/codecs/types/base.js.map +1 -0
  493. package/dist/renderable/codecs/types/index.d.ts +5 -0
  494. package/dist/renderable/codecs/types/index.d.ts.map +1 -0
  495. package/dist/renderable/codecs/types/index.js +5 -0
  496. package/dist/renderable/codecs/types/index.js.map +1 -0
  497. package/dist/renderable/codecs/validation-rules.d.ts +4773 -0
  498. package/dist/renderable/codecs/validation-rules.d.ts.map +1 -0
  499. package/dist/renderable/codecs/validation-rules.js +537 -0
  500. package/dist/renderable/codecs/validation-rules.js.map +1 -0
  501. package/dist/renderable/generate.d.ts +338 -0
  502. package/dist/renderable/generate.d.ts.map +1 -0
  503. package/dist/renderable/generate.js +437 -0
  504. package/dist/renderable/generate.js.map +1 -0
  505. package/dist/renderable/index.d.ts +36 -0
  506. package/dist/renderable/index.d.ts.map +1 -0
  507. package/dist/renderable/index.js +58 -0
  508. package/dist/renderable/index.js.map +1 -0
  509. package/dist/renderable/load-preamble.d.ts +56 -0
  510. package/dist/renderable/load-preamble.d.ts.map +1 -0
  511. package/dist/renderable/load-preamble.js +298 -0
  512. package/dist/renderable/load-preamble.js.map +1 -0
  513. package/dist/renderable/render.d.ts +61 -0
  514. package/dist/renderable/render.d.ts.map +1 -0
  515. package/dist/renderable/render.js +346 -0
  516. package/dist/renderable/render.js.map +1 -0
  517. package/dist/renderable/schema.d.ts +194 -0
  518. package/dist/renderable/schema.d.ts.map +1 -0
  519. package/dist/renderable/schema.js +197 -0
  520. package/dist/renderable/schema.js.map +1 -0
  521. package/dist/renderable/utils.d.ts +146 -0
  522. package/dist/renderable/utils.d.ts.map +1 -0
  523. package/dist/renderable/utils.js +362 -0
  524. package/dist/renderable/utils.js.map +1 -0
  525. package/dist/scanner/ast-parser.d.ts +75 -0
  526. package/dist/scanner/ast-parser.d.ts.map +1 -0
  527. package/dist/scanner/ast-parser.js +835 -0
  528. package/dist/scanner/ast-parser.js.map +1 -0
  529. package/dist/scanner/gherkin-ast-parser.d.ts +166 -0
  530. package/dist/scanner/gherkin-ast-parser.d.ts.map +1 -0
  531. package/dist/scanner/gherkin-ast-parser.js +507 -0
  532. package/dist/scanner/gherkin-ast-parser.js.map +1 -0
  533. package/dist/scanner/gherkin-scanner.d.ts +106 -0
  534. package/dist/scanner/gherkin-scanner.d.ts.map +1 -0
  535. package/dist/scanner/gherkin-scanner.js +149 -0
  536. package/dist/scanner/gherkin-scanner.js.map +1 -0
  537. package/dist/scanner/index.d.ts +85 -0
  538. package/dist/scanner/index.d.ts.map +1 -0
  539. package/dist/scanner/index.js +102 -0
  540. package/dist/scanner/index.js.map +1 -0
  541. package/dist/scanner/pattern-scanner.d.ts +83 -0
  542. package/dist/scanner/pattern-scanner.d.ts.map +1 -0
  543. package/dist/scanner/pattern-scanner.js +110 -0
  544. package/dist/scanner/pattern-scanner.js.map +1 -0
  545. package/dist/taxonomy/categories.d.ts +47 -0
  546. package/dist/taxonomy/categories.d.ts.map +1 -0
  547. package/dist/taxonomy/categories.js +175 -0
  548. package/dist/taxonomy/categories.js.map +1 -0
  549. package/dist/taxonomy/claude-section-values.d.ts +12 -0
  550. package/dist/taxonomy/claude-section-values.d.ts.map +1 -0
  551. package/dist/taxonomy/claude-section-values.js +17 -0
  552. package/dist/taxonomy/claude-section-values.js.map +1 -0
  553. package/dist/taxonomy/conventions.d.ts +13 -0
  554. package/dist/taxonomy/conventions.d.ts.map +1 -0
  555. package/dist/taxonomy/conventions.js +27 -0
  556. package/dist/taxonomy/conventions.js.map +1 -0
  557. package/dist/taxonomy/deliverable-status.d.ts +99 -0
  558. package/dist/taxonomy/deliverable-status.d.ts.map +1 -0
  559. package/dist/taxonomy/deliverable-status.js +131 -0
  560. package/dist/taxonomy/deliverable-status.js.map +1 -0
  561. package/dist/taxonomy/format-types.d.ts +17 -0
  562. package/dist/taxonomy/format-types.d.ts.map +1 -0
  563. package/dist/taxonomy/format-types.js +23 -0
  564. package/dist/taxonomy/format-types.js.map +1 -0
  565. package/dist/taxonomy/generator-options.d.ts +67 -0
  566. package/dist/taxonomy/generator-options.d.ts.map +1 -0
  567. package/dist/taxonomy/generator-options.js +75 -0
  568. package/dist/taxonomy/generator-options.js.map +1 -0
  569. package/dist/taxonomy/hierarchy-levels.d.ts +23 -0
  570. package/dist/taxonomy/hierarchy-levels.d.ts.map +1 -0
  571. package/dist/taxonomy/hierarchy-levels.js +22 -0
  572. package/dist/taxonomy/hierarchy-levels.js.map +1 -0
  573. package/dist/taxonomy/index.d.ts +35 -0
  574. package/dist/taxonomy/index.d.ts.map +1 -0
  575. package/dist/taxonomy/index.js +56 -0
  576. package/dist/taxonomy/index.js.map +1 -0
  577. package/dist/taxonomy/layer-types.d.ts +22 -0
  578. package/dist/taxonomy/layer-types.d.ts.map +1 -0
  579. package/dist/taxonomy/layer-types.js +28 -0
  580. package/dist/taxonomy/layer-types.js.map +1 -0
  581. package/dist/taxonomy/normalized-status.d.ts +99 -0
  582. package/dist/taxonomy/normalized-status.d.ts.map +1 -0
  583. package/dist/taxonomy/normalized-status.js +113 -0
  584. package/dist/taxonomy/normalized-status.js.map +1 -0
  585. package/dist/taxonomy/registry-builder.d.ts +104 -0
  586. package/dist/taxonomy/registry-builder.d.ts.map +1 -0
  587. package/dist/taxonomy/registry-builder.js +561 -0
  588. package/dist/taxonomy/registry-builder.js.map +1 -0
  589. package/dist/taxonomy/risk-levels.d.ts +16 -0
  590. package/dist/taxonomy/risk-levels.d.ts.map +1 -0
  591. package/dist/taxonomy/risk-levels.js +15 -0
  592. package/dist/taxonomy/risk-levels.js.map +1 -0
  593. package/dist/taxonomy/severity-types.d.ts +6 -0
  594. package/dist/taxonomy/severity-types.d.ts.map +1 -0
  595. package/dist/taxonomy/severity-types.js +5 -0
  596. package/dist/taxonomy/severity-types.js.map +1 -0
  597. package/dist/taxonomy/status-values.d.ts +39 -0
  598. package/dist/taxonomy/status-values.d.ts.map +1 -0
  599. package/dist/taxonomy/status-values.js +42 -0
  600. package/dist/taxonomy/status-values.js.map +1 -0
  601. package/dist/types/branded.d.ts +89 -0
  602. package/dist/types/branded.d.ts.map +1 -0
  603. package/dist/types/branded.js +57 -0
  604. package/dist/types/branded.js.map +1 -0
  605. package/dist/types/errors.d.ts +342 -0
  606. package/dist/types/errors.d.ts.map +1 -0
  607. package/dist/types/errors.js +251 -0
  608. package/dist/types/errors.js.map +1 -0
  609. package/dist/types/index.d.ts +41 -0
  610. package/dist/types/index.d.ts.map +1 -0
  611. package/dist/types/index.js +5 -0
  612. package/dist/types/index.js.map +1 -0
  613. package/dist/types/result.d.ts +78 -0
  614. package/dist/types/result.d.ts.map +1 -0
  615. package/dist/types/result.js +78 -0
  616. package/dist/types/result.js.map +1 -0
  617. package/dist/utils/collection-utils.d.ts +49 -0
  618. package/dist/utils/collection-utils.d.ts.map +1 -0
  619. package/dist/utils/collection-utils.js +58 -0
  620. package/dist/utils/collection-utils.js.map +1 -0
  621. package/dist/utils/id-utils.d.ts +46 -0
  622. package/dist/utils/id-utils.d.ts.map +1 -0
  623. package/dist/utils/id-utils.js +51 -0
  624. package/dist/utils/id-utils.js.map +1 -0
  625. package/dist/utils/index.d.ts +21 -0
  626. package/dist/utils/index.d.ts.map +1 -0
  627. package/dist/utils/index.js +21 -0
  628. package/dist/utils/index.js.map +1 -0
  629. package/dist/utils/string-utils.d.ts +150 -0
  630. package/dist/utils/string-utils.d.ts.map +1 -0
  631. package/dist/utils/string-utils.js +281 -0
  632. package/dist/utils/string-utils.js.map +1 -0
  633. package/dist/validation/anti-patterns.d.ts +134 -0
  634. package/dist/validation/anti-patterns.d.ts.map +1 -0
  635. package/dist/validation/anti-patterns.js +307 -0
  636. package/dist/validation/anti-patterns.js.map +1 -0
  637. package/dist/validation/dod-validator.d.ts +94 -0
  638. package/dist/validation/dod-validator.d.ts.map +1 -0
  639. package/dist/validation/dod-validator.js +198 -0
  640. package/dist/validation/dod-validator.js.map +1 -0
  641. package/dist/validation/fsm/index.d.ts +59 -0
  642. package/dist/validation/fsm/index.d.ts.map +1 -0
  643. package/dist/validation/fsm/index.js +64 -0
  644. package/dist/validation/fsm/index.js.map +1 -0
  645. package/dist/validation/fsm/states.d.ts +93 -0
  646. package/dist/validation/fsm/states.d.ts.map +1 -0
  647. package/dist/validation/fsm/states.js +98 -0
  648. package/dist/validation/fsm/states.js.map +1 -0
  649. package/dist/validation/fsm/transitions.d.ts +100 -0
  650. package/dist/validation/fsm/transitions.d.ts.map +1 -0
  651. package/dist/validation/fsm/transitions.js +122 -0
  652. package/dist/validation/fsm/transitions.js.map +1 -0
  653. package/dist/validation/fsm/validator.d.ts +163 -0
  654. package/dist/validation/fsm/validator.d.ts.map +1 -0
  655. package/dist/validation/fsm/validator.js +205 -0
  656. package/dist/validation/fsm/validator.js.map +1 -0
  657. package/dist/validation/index.d.ts +23 -0
  658. package/dist/validation/index.d.ts.map +1 -0
  659. package/dist/validation/index.js +25 -0
  660. package/dist/validation/index.js.map +1 -0
  661. package/dist/validation/types.d.ts +136 -0
  662. package/dist/validation/types.d.ts.map +1 -0
  663. package/dist/validation/types.js +56 -0
  664. package/dist/validation/types.js.map +1 -0
  665. package/dist/validation-schemas/codec-utils.d.ts +188 -0
  666. package/dist/validation-schemas/codec-utils.d.ts.map +1 -0
  667. package/dist/validation-schemas/codec-utils.js +258 -0
  668. package/dist/validation-schemas/codec-utils.js.map +1 -0
  669. package/dist/validation-schemas/config.d.ts +99 -0
  670. package/dist/validation-schemas/config.d.ts.map +1 -0
  671. package/dist/validation-schemas/config.js +178 -0
  672. package/dist/validation-schemas/config.js.map +1 -0
  673. package/dist/validation-schemas/doc-directive.d.ts +195 -0
  674. package/dist/validation-schemas/doc-directive.d.ts.map +1 -0
  675. package/dist/validation-schemas/doc-directive.js +239 -0
  676. package/dist/validation-schemas/doc-directive.js.map +1 -0
  677. package/dist/validation-schemas/dual-source.d.ts +167 -0
  678. package/dist/validation-schemas/dual-source.d.ts.map +1 -0
  679. package/dist/validation-schemas/dual-source.js +168 -0
  680. package/dist/validation-schemas/dual-source.js.map +1 -0
  681. package/dist/validation-schemas/export-info.d.ts +53 -0
  682. package/dist/validation-schemas/export-info.d.ts.map +1 -0
  683. package/dist/validation-schemas/export-info.js +101 -0
  684. package/dist/validation-schemas/export-info.js.map +1 -0
  685. package/dist/validation-schemas/extracted-pattern.d.ts +351 -0
  686. package/dist/validation-schemas/extracted-pattern.d.ts.map +1 -0
  687. package/dist/validation-schemas/extracted-pattern.js +459 -0
  688. package/dist/validation-schemas/extracted-pattern.js.map +1 -0
  689. package/dist/validation-schemas/extracted-shape.d.ts +200 -0
  690. package/dist/validation-schemas/extracted-shape.d.ts.map +1 -0
  691. package/dist/validation-schemas/extracted-shape.js +182 -0
  692. package/dist/validation-schemas/extracted-shape.js.map +1 -0
  693. package/dist/validation-schemas/feature.d.ts +554 -0
  694. package/dist/validation-schemas/feature.d.ts.map +1 -0
  695. package/dist/validation-schemas/feature.js +262 -0
  696. package/dist/validation-schemas/feature.js.map +1 -0
  697. package/dist/validation-schemas/index.d.ts +15 -0
  698. package/dist/validation-schemas/index.d.ts.map +1 -0
  699. package/dist/validation-schemas/index.js +32 -0
  700. package/dist/validation-schemas/index.js.map +1 -0
  701. package/dist/validation-schemas/lint.d.ts +46 -0
  702. package/dist/validation-schemas/lint.d.ts.map +1 -0
  703. package/dist/validation-schemas/lint.js +45 -0
  704. package/dist/validation-schemas/lint.js.map +1 -0
  705. package/dist/validation-schemas/master-dataset.d.ts +8299 -0
  706. package/dist/validation-schemas/master-dataset.d.ts.map +1 -0
  707. package/dist/validation-schemas/master-dataset.js +275 -0
  708. package/dist/validation-schemas/master-dataset.js.map +1 -0
  709. package/dist/validation-schemas/output-schemas.d.ts +183 -0
  710. package/dist/validation-schemas/output-schemas.d.ts.map +1 -0
  711. package/dist/validation-schemas/output-schemas.js +149 -0
  712. package/dist/validation-schemas/output-schemas.js.map +1 -0
  713. package/dist/validation-schemas/scenario-ref.d.ts +80 -0
  714. package/dist/validation-schemas/scenario-ref.d.ts.map +1 -0
  715. package/dist/validation-schemas/scenario-ref.js +73 -0
  716. package/dist/validation-schemas/scenario-ref.js.map +1 -0
  717. package/dist/validation-schemas/tag-registry.d.ts +210 -0
  718. package/dist/validation-schemas/tag-registry.d.ts.map +1 -0
  719. package/dist/validation-schemas/tag-registry.js +248 -0
  720. package/dist/validation-schemas/tag-registry.js.map +1 -0
  721. package/dist/validation-schemas/workflow-config.d.ts +125 -0
  722. package/dist/validation-schemas/workflow-config.d.ts.map +1 -0
  723. package/dist/validation-schemas/workflow-config.js +138 -0
  724. package/dist/validation-schemas/workflow-config.js.map +1 -0
  725. package/docs/ANNOTATION-GUIDE.md +271 -0
  726. package/docs/ARCHITECTURE.md +1636 -0
  727. package/docs/CONFIGURATION.md +337 -0
  728. package/docs/DOCS-GAP-ANALYSIS.md +811 -0
  729. package/docs/GHERKIN-PATTERNS.md +366 -0
  730. package/docs/INDEX.md +345 -0
  731. package/docs/MCP-SETUP.md +140 -0
  732. package/docs/METHODOLOGY.md +240 -0
  733. package/docs/PROCESS-API.md +65 -0
  734. package/docs/PROCESS-GUARD.md +341 -0
  735. package/docs/SESSION-GUIDES.md +391 -0
  736. package/docs/TAXONOMY.md +106 -0
  737. package/docs/VALIDATION.md +418 -0
  738. package/docs-live/ARCHITECTURE.md +362 -0
  739. package/docs-live/BUSINESS-RULES.md +24 -0
  740. package/docs-live/CHANGELOG-GENERATED.md +375 -0
  741. package/docs-live/DECISIONS.md +78 -0
  742. package/docs-live/INDEX.md +231 -0
  743. package/docs-live/PRODUCT-AREAS.md +255 -0
  744. package/docs-live/TAXONOMY.md +202 -0
  745. package/docs-live/VALIDATION-RULES.md +119 -0
  746. package/docs-live/_claude-md/annotation/annotation-overview.md +26 -0
  747. package/docs-live/_claude-md/annotation/annotation-reference.md +213 -0
  748. package/docs-live/_claude-md/architecture/architecture-codecs.md +160 -0
  749. package/docs-live/_claude-md/architecture/architecture-types.md +32 -0
  750. package/docs-live/_claude-md/architecture/reference-sample.md +162 -0
  751. package/docs-live/_claude-md/authoring/gherkin-authoring-guide.md +245 -0
  752. package/docs-live/_claude-md/configuration/configuration-guide.md +216 -0
  753. package/docs-live/_claude-md/configuration/configuration-overview.md +37 -0
  754. package/docs-live/_claude-md/core-types/core-types-overview.md +20 -0
  755. package/docs-live/_claude-md/data-api/data-api-overview.md +39 -0
  756. package/docs-live/_claude-md/generation/generation-overview.md +30 -0
  757. package/docs-live/_claude-md/process/process-overview.md +127 -0
  758. package/docs-live/_claude-md/validation/process-guard.md +185 -0
  759. package/docs-live/_claude-md/validation/validation-overview.md +37 -0
  760. package/docs-live/_claude-md/validation/validation-tools-guide.md +242 -0
  761. package/docs-live/_claude-md/workflow/session-workflow-guide.md +141 -0
  762. package/docs-live/business-rules/annotation.md +1462 -0
  763. package/docs-live/business-rules/configuration.md +465 -0
  764. package/docs-live/business-rules/core-types.md +531 -0
  765. package/docs-live/business-rules/data-api.md +1403 -0
  766. package/docs-live/business-rules/generation.md +4726 -0
  767. package/docs-live/business-rules/process.md +122 -0
  768. package/docs-live/business-rules/validation.md +998 -0
  769. package/docs-live/decisions/adr-001-taxonomy-canonical-values.md +197 -0
  770. package/docs-live/decisions/adr-002-gherkin-only-testing.md +57 -0
  771. package/docs-live/decisions/adr-003-source-first-pattern-architecture.md +147 -0
  772. package/docs-live/decisions/adr-004-session-workflow-commands.md +137 -0
  773. package/docs-live/decisions/adr-005-codec-based-markdown-rendering.md +150 -0
  774. package/docs-live/decisions/adr-006-single-read-model-architecture.md +136 -0
  775. package/docs-live/decisions/adr-021-doc-generation-proof-of-concept.md +489 -0
  776. package/docs-live/product-areas/ANNOTATION.md +591 -0
  777. package/docs-live/product-areas/CONFIGURATION.md +1048 -0
  778. package/docs-live/product-areas/CORE-TYPES.md +221 -0
  779. package/docs-live/product-areas/DATA-API.md +850 -0
  780. package/docs-live/product-areas/GENERATION.md +1200 -0
  781. package/docs-live/product-areas/PROCESS.md +351 -0
  782. package/docs-live/product-areas/VALIDATION.md +1135 -0
  783. package/docs-live/reference/ANNOTATION-REFERENCE.md +232 -0
  784. package/docs-live/reference/ARCHITECTURE-CODECS.md +675 -0
  785. package/docs-live/reference/ARCHITECTURE-TYPES.md +436 -0
  786. package/docs-live/reference/CONFIGURATION-GUIDE.md +235 -0
  787. package/docs-live/reference/GHERKIN-AUTHORING-GUIDE.md +270 -0
  788. package/docs-live/reference/PROCESS-API-RECIPES.md +476 -0
  789. package/docs-live/reference/PROCESS-API-REFERENCE.md +63 -0
  790. package/docs-live/reference/PROCESS-GUARD-REFERENCE.md +258 -0
  791. package/docs-live/reference/REFERENCE-SAMPLE.md +1135 -0
  792. package/docs-live/reference/SESSION-WORKFLOW-GUIDE.md +384 -0
  793. package/docs-live/reference/VALIDATION-TOOLS-GUIDE.md +263 -0
  794. package/docs-live/taxonomy/categories.md +33 -0
  795. package/docs-live/taxonomy/format-types.md +67 -0
  796. package/docs-live/taxonomy/metadata-tags.md +693 -0
  797. package/docs-live/validation/error-catalog.md +78 -0
  798. package/docs-live/validation/fsm-transitions.md +50 -0
  799. package/docs-live/validation/protection-levels.md +51 -0
  800. package/package.json +233 -0
@@ -0,0 +1,160 @@
1
+ ### Available Codecs Reference
2
+
3
+ #### ValidationRulesCodec
4
+
5
+ | Option | Type | Default | Description |
6
+ | ----------------------- | ------- | ------- | --------------------------------------------------- |
7
+ | includeFSMDiagram | boolean | true | Include FSM state diagram |
8
+ | includeCLIUsage | boolean | true | Include CLI usage section |
9
+ | includeEscapeHatches | boolean | true | Include escape hatches section |
10
+ | includeProtectionMatrix | boolean | true | Include protection levels matrix |
11
+ | includeErrorGuide | boolean | true | Include error guide with rationale and alternatives |
12
+
13
+ #### RoadmapDocumentCodec
14
+
15
+ | Option | Type | Default | Description |
16
+ | ------------------- | ------------------------ | ------- | ----------------------------------- |
17
+ | generateDetailFiles | boolean | true | Create phase detail files |
18
+ | filterStatus | NormalizedStatusFilter[] | [] | Filter by status |
19
+ | includeProcess | boolean | true | Show quarter, effort, team metadata |
20
+ | includeDeliverables | boolean | true | List deliverables per phase |
21
+ | filterPhases | number[] | [] | Filter to specific phases |
22
+
23
+ #### CompletedMilestonesCodec
24
+
25
+ #### CurrentWorkCodec
26
+
27
+ #### TaxonomyDocumentCodec
28
+
29
+ | Option | Type | Default | Description |
30
+ | ------------------ | ------- | ------- | ------------------------------- |
31
+ | includePresets | boolean | true | Include preset comparison table |
32
+ | includeFormatTypes | boolean | true | Include format type reference |
33
+ | includeArchDiagram | boolean | true | Include architecture diagram |
34
+ | groupByDomain | boolean | true | Group metadata tags by domain |
35
+
36
+ #### SessionContextCodec
37
+
38
+ #### RemainingWorkCodec
39
+
40
+ | Option | Type | Default | Description |
41
+ | --------------------- | ---------------------------------------------- | ------- | ----------------------------- |
42
+ | includeIncomplete | boolean | true | Include planned items |
43
+ | includeBlocked | boolean | true | Show blocked items analysis |
44
+ | includeNextActionable | boolean | true | Next actionable items section |
45
+ | maxNextActionable | number | 5 | Max items in next actionable |
46
+ | sortBy | "phase" \| "priority" \| "effort" \| "quarter" | "phase" | Sort order |
47
+ | groupPlannedBy | "quarter" \| "priority" \| "level" \| "none" | "none" | Group planned items |
48
+
49
+ #### RequirementsDocumentCodec
50
+
51
+ | Option | Type | Default | Description |
52
+ | -------------------- | ---------------------------------------- | -------------- | -------------------------------- |
53
+ | generateDetailFiles | boolean | true | Create product area detail files |
54
+ | groupBy | "product-area" \| "user-role" \| "phase" | "product-area" | Primary grouping |
55
+ | filterStatus | NormalizedStatusFilter[] | [] | Filter by status (empty = all) |
56
+ | includeScenarioSteps | boolean | true | Show Given/When/Then steps |
57
+ | includeBusinessValue | boolean | true | Display business value metadata |
58
+ | includeBusinessRules | boolean | true | Show Gherkin Rule: sections |
59
+
60
+ #### ChangelogCodec
61
+
62
+ | Option | Type | Default | Description |
63
+ | ----------------- | ---------------------- | ------- | --------------------------------- |
64
+ | includeUnreleased | boolean | true | Include unreleased section |
65
+ | includeLinks | boolean | true | Include links |
66
+ | categoryMapping | Record<string, string> | {} | Map categories to changelog types |
67
+
68
+ #### TraceabilityCodec
69
+
70
+ #### OverviewCodec
71
+
72
+ #### ReferenceDocumentCodec
73
+
74
+ | Option | Type | Description |
75
+ | ------------------ | --------------- | ------------------------------------------------------------ |
76
+ | conventionTags | string[] | Convention tag values to extract from decision records |
77
+ | diagramScopes | DiagramScope[] | Multiple diagrams |
78
+ | shapeSelectors | ShapeSelector[] | Fine-grained declaration-level shape filtering |
79
+ | behaviorCategories | string[] | Category tags for behavior pattern content |
80
+ | includeTags | string[] | Cross-cutting content routing via include tags |
81
+ | preamble | SectionBlock[] | Static editorial sections prepended before generated content |
82
+ | productArea | string | Pre-filter all content sources to matching product area |
83
+ | excludeSourcePaths | string[] | Exclude patterns by source path prefix |
84
+
85
+ | Type | Description |
86
+ | --------------- | -------------------------------------------------------------- |
87
+ | graph (default) | Flowchart with subgraphs by archContext, custom node shapes |
88
+ | sequenceDiagram | Sequence diagram with typed messages between participants |
89
+ | stateDiagram-v2 | State diagram with transitions from dependsOn relationships |
90
+ | C4Context | C4 context diagram with boundaries, systems, and relationships |
91
+ | classDiagram | Class diagram with archRole stereotypes and typed arrows |
92
+
93
+ | Variant | Example | Behavior |
94
+ | -------------- | ----------------------------------------------- | --------------------------- |
95
+ | group only | `{ group: "api-types" }` | Match shapes by group tag |
96
+ | source + names | `{ source: "src/types.ts", names: ["Config"] }` | Named shapes from file |
97
+ | source only | `{ source: "src/path/*.ts" }` | All tagged shapes from glob |
98
+
99
+ #### PrChangesCodec
100
+
101
+ #### PlanningChecklistCodec
102
+
103
+ #### SessionPlanCodec
104
+
105
+ #### SessionFindingsCodec
106
+
107
+ #### PatternsDocumentCodec
108
+
109
+ | Option | Type | Default | Description |
110
+ | ---------------------- | ------------------------------------- | ---------- | ------------------------------------------- |
111
+ | generateDetailFiles | boolean | true | Create category detail files |
112
+ | detailLevel | "summary" \| "standard" \| "detailed" | "standard" | Output verbosity |
113
+ | includeDependencyGraph | boolean | true | Render Mermaid dependency graph |
114
+ | includeUseCases | boolean | true | Show use cases section |
115
+ | filterCategories | string[] | [] | Filter to specific categories (empty = all) |
116
+
117
+ #### IndexCodec
118
+
119
+ | Option | Type | Default | Description |
120
+ | ------------------------ | --------------- | ------- | ---------------------------------------------------------------- |
121
+ | preamble | SectionBlock[] | [] | Editorial sections (reading paths, document roles, key concepts) |
122
+ | documentEntries | DocumentEntry[] | [] | Static document inventory entries |
123
+ | includeProductAreaStats | boolean | true | Product area statistics table |
124
+ | includePhaseProgress | boolean | true | Phase progress summary |
125
+ | includeDocumentInventory | boolean | true | Unified document inventory |
126
+ | includePackageMetadata | boolean | true | Package metadata header |
127
+
128
+ #### DesignReviewCodec
129
+
130
+ #### CompositeCodec
131
+
132
+ #### ClaudeModuleCodec
133
+
134
+ #### BusinessRulesCodec
135
+
136
+ | Option | Type | Default | Description |
137
+ | -------------------- | ------------------------------------------ | ------------------- | ----------------------------------------- |
138
+ | groupBy | "domain" \| "phase" \| "domain-then-phase" | "domain-then-phase" | Primary grouping strategy |
139
+ | includeCodeExamples | boolean | false | Include code examples from DocStrings |
140
+ | includeTables | boolean | true | Include markdown tables from descriptions |
141
+ | includeRationale | boolean | true | Include rationale section per rule |
142
+ | filterDomains | string[] | [] | Filter by domain categories (empty = all) |
143
+ | filterPhases | number[] | [] | Filter by phases (empty = all) |
144
+ | onlyWithInvariants | boolean | false | Show only rules with explicit invariants |
145
+ | includeSource | boolean | true | Include source feature file link |
146
+ | includeVerifiedBy | boolean | true | Include Verified by scenario links |
147
+ | maxDescriptionLength | number | 150 | Max description length in standard mode |
148
+ | excludeSourcePaths | string[] | [] | Exclude patterns by source path prefix |
149
+
150
+ #### ArchitectureDocumentCodec
151
+
152
+ | Option | Type | Default | Description |
153
+ | ------------------------ | ------------------------ | ----------- | ---------------------------------------------- |
154
+ | diagramType | "component" \| "layered" | "component" | Type of diagram to generate |
155
+ | includeInventory | boolean | true | Include component inventory table |
156
+ | includeLegend | boolean | true | Include legend for arrow styles |
157
+ | filterContexts | string[] | [] | Filter to specific contexts (empty = all) |
158
+ | diagramKeyComponentsOnly | boolean | true | Only show components with archRole in diagrams |
159
+
160
+ #### AdrDocumentCodec
@@ -0,0 +1,32 @@
1
+ ### Architecture Types Reference
2
+
3
+ #### API Types
4
+
5
+ | Type | Kind |
6
+ | ----------------------- | --------- |
7
+ | MasterDatasetSchema | const |
8
+ | StatusGroupsSchema | const |
9
+ | StatusCountsSchema | const |
10
+ | PhaseGroupSchema | const |
11
+ | SourceViewsSchema | const |
12
+ | RelationshipEntrySchema | const |
13
+ | RuntimeMasterDataset | interface |
14
+ | RawDataset | interface |
15
+ | PipelineOptions | interface |
16
+ | PipelineResult | interface |
17
+
18
+ #### Orchestrator Pipeline Responsibilities
19
+
20
+ **Invariant:** The orchestrator is the integration boundary for full docs generation: it delegates dataset construction to the shared pipeline, then executes codecs and writes files.
21
+
22
+ #### Steps 1-8 via buildMasterDataset()
23
+
24
+ #### Steps 9-10: Codec Execution and File Writing
25
+
26
+ #### Shared Pipeline Factory Responsibilities
27
+
28
+ **Invariant:** `buildMasterDataset()` is the shared factory for Steps 1-8 of the architecture pipeline and returns `Result<PipelineResult, PipelineError>` without process-level side effects.
29
+
30
+ #### 8-Step Dataset Build Flow
31
+
32
+ #### Consumer Architecture and PipelineOptions Differentiation
@@ -0,0 +1,162 @@
1
+ ### Reference Generation Sample
2
+
3
+ #### Product area canonical values
4
+
5
+ **Invariant:** The product-area tag uses one of 7 canonical values. Each value represents a reader-facing documentation section, not a source module.
6
+
7
+ | Value | Reader Question | Covers |
8
+ | ------------- | ----------------------------------- | ----------------------------------------------- |
9
+ | Annotation | How do I annotate code? | Scanning, extraction, tag parsing, dual-source |
10
+ | Configuration | How do I configure the tool? | Config loading, presets, resolution |
11
+ | Generation | How does code become docs? | Codecs, generators, rendering, diagrams |
12
+ | Validation | How is the workflow enforced? | FSM, DoD, anti-patterns, process guard, lint |
13
+ | DataAPI | How do I query process state? | Process state API, stubs, context assembly, CLI |
14
+ | CoreTypes | What foundational types exist? | Result monad, error factories, string utils |
15
+ | Process | How does the session workflow work? | Session lifecycle, handoffs, conventions |
16
+
17
+ #### ADR category canonical values
18
+
19
+ **Invariant:** The adr-category tag uses one of 4 values.
20
+
21
+ | Value | Purpose |
22
+ | ------------- | --------------------------------------------- |
23
+ | architecture | System structure, component design, data flow |
24
+ | process | Workflow, conventions, annotation rules |
25
+ | testing | Test strategy, verification approach |
26
+ | documentation | Documentation generation, content structure |
27
+
28
+ #### FSM status values and protection levels
29
+
30
+ **Invariant:** Pattern status uses exactly 4 values with defined protection levels. These are enforced by Process Guard at commit time.
31
+
32
+ | Status | Protection | Can Add Deliverables | Allowed Actions |
33
+ | --------- | ------------ | -------------------- | ------------------------------- |
34
+ | roadmap | None | Yes | Full editing |
35
+ | active | Scope-locked | No | Edit existing deliverables only |
36
+ | completed | Hard-locked | No | Requires unlock-reason tag |
37
+ | deferred | None | Yes | Full editing |
38
+
39
+ #### Valid FSM transitions
40
+
41
+ **Invariant:** Only these transitions are valid. All others are rejected by Process Guard.
42
+
43
+ | From | To | Trigger |
44
+ | -------- | --------- | --------------------- |
45
+ | roadmap | active | Start work |
46
+ | roadmap | deferred | Postpone |
47
+ | active | completed | All deliverables done |
48
+ | active | roadmap | Blocked/regressed |
49
+ | deferred | roadmap | Resume planning |
50
+
51
+ #### Tag format types
52
+
53
+ **Invariant:** Every tag has one of 6 format types that determines how its value is parsed.
54
+
55
+ | Format | Parsing | Example |
56
+ | ------------ | ------------------------------ | ----------------------------- |
57
+ | flag | Boolean presence, no value | @architect-core |
58
+ | value | Simple string | @architect-pattern MyPattern |
59
+ | enum | Constrained to predefined list | @architect-status completed |
60
+ | csv | Comma-separated values | @architect-uses A, B, C |
61
+ | number | Numeric value | @architect-phase 15 |
62
+ | quoted-value | Preserves spaces | @architect-brief:'Multi word' |
63
+
64
+ #### Source ownership
65
+
66
+ **Invariant:** Relationship tags have defined ownership by source type. Anti-pattern detection enforces these boundaries.
67
+
68
+ | Tag | Correct Source | Wrong Source | Rationale |
69
+ | ---------- | -------------- | ------------- | ---------------------------------- |
70
+ | uses | TypeScript | Feature files | TS owns runtime dependencies |
71
+ | depends-on | Feature files | TypeScript | Gherkin owns planning dependencies |
72
+ | quarter | Feature files | TypeScript | Gherkin owns timeline metadata |
73
+ | team | Feature files | TypeScript | Gherkin owns ownership metadata |
74
+
75
+ #### Quarter format convention
76
+
77
+ **Invariant:** The quarter tag uses `YYYY-QN` format (e.g., `2026-Q1`). ISO-year-first sorting works lexicographically.
78
+
79
+ #### Canonical phase definitions (6-phase USDP standard)
80
+
81
+ **Invariant:** The default workflow defines exactly 6 phases in fixed order. These are the canonical phase names and ordinals used by all generated documentation.
82
+
83
+ | Order | Phase | Purpose |
84
+ | ----- | ------------- | ---------------------------------------------- |
85
+ | 1 | Inception | Problem framing, scope definition |
86
+ | 2 | Elaboration | Design decisions, architecture exploration |
87
+ | 3 | Session | Planning and design session work |
88
+ | 4 | Construction | Implementation, testing, integration |
89
+ | 5 | Validation | Verification, acceptance criteria confirmation |
90
+ | 6 | Retrospective | Review, lessons learned, documentation |
91
+
92
+ #### Deliverable status canonical values
93
+
94
+ **Invariant:** Deliverable status (distinct from pattern FSM status) uses exactly 6 values, enforced by Zod schema at parse time.
95
+
96
+ | Value | Meaning |
97
+ | ----------- | -------------------- |
98
+ | complete | Work is done |
99
+ | in-progress | Work is ongoing |
100
+ | pending | Work has not started |
101
+ | deferred | Work postponed |
102
+ | superseded | Replaced by another |
103
+ | n/a | Not applicable |
104
+
105
+ #### API Types
106
+
107
+ | Type | Kind |
108
+ | ------------------------- | --------- |
109
+ | normalizeStatus | function |
110
+ | DELIVERABLE_STATUS_VALUES | const |
111
+ | CategoryDefinition | interface |
112
+ | SectionBlock | type |
113
+
114
+ #### Behavior Specifications
115
+
116
+ ##### ArchitectFactory
117
+
118
+ ##### DefineConfig
119
+
120
+ ##### ConfigBasedWorkflowDefinition
121
+
122
+ | Rule | Description |
123
+ | ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
124
+ | Default workflow is built from an inline constant | **Invariant:** `loadDefaultWorkflow()` returns a `LoadedWorkflow` without<br> file system access. It cannot fail. The... |
125
+ | Custom workflow files still work via --workflow flag | **Invariant:** `loadWorkflowFromPath()` remains available for projects<br> that need custom workflow definitions. The... |
126
+ | FSM validation and Process Guard are not affected | **Invariant:** The FSM transition matrix, protection levels, and Process<br> Guard rules remain hardcoded in... |
127
+ | Workflow as a configurable preset field is deferred | **Invariant:** The inline default workflow constant is the only workflow source until preset integration is... |
128
+
129
+ ##### ADR005CodecBasedMarkdownRendering
130
+
131
+ | Rule | Description |
132
+ | ----------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
133
+ | Codecs implement a decode-only contract | **Invariant:** Every codec is a pure function that accepts a MasterDataset<br> and returns a RenderableDocument.... |
134
+ | RenderableDocument is a typed intermediate representation | **Invariant:** RenderableDocument contains a title, an ordered array of<br> SectionBlock elements, and an optional... |
135
+ | CompositeCodec assembles documents from child codecs | **Invariant:** CompositeCodec accepts an array of child codecs and<br> produces a single RenderableDocument by... |
136
+ | ADR content comes from both Feature description and Rule prefixes | **Invariant:** ADR structured content (Context, Decision, Consequences)<br> can appear in two locations within a... |
137
+ | The markdown renderer is codec-agnostic | **Invariant:** The renderer accepts any RenderableDocument regardless of<br> which codec produced it. Rendering... |
138
+
139
+ ##### ADR001TaxonomyCanonicalValues
140
+
141
+ | Rule | Description |
142
+ | --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
143
+ | Product area canonical values | **Invariant:** The product-area tag uses one of 7 canonical values.<br> Each value represents a reader-facing... |
144
+ | ADR category canonical values | **Invariant:** The adr-category tag uses one of 4 values.<br> **Rationale:** Unbounded category values prevent... |
145
+ | FSM status values and protection levels | **Invariant:** Pattern status uses exactly 4 values with defined<br> protection levels. These are enforced by Process... |
146
+ | Valid FSM transitions | **Invariant:** Only these transitions are valid. All others are<br> rejected by Process Guard.<br> **Rationale:**... |
147
+ | Tag format types | **Invariant:** Every tag has one of 6 format types that determines<br> how its value is parsed.<br> **Rationale:**... |
148
+ | Source ownership | **Invariant:** Relationship tags have defined ownership by source type.<br> Anti-pattern detection enforces these... |
149
+ | Quarter format convention | **Invariant:** The quarter tag uses `YYYY-QN` format (e.g., `2026-Q1`).<br> ISO-year-first sorting works... |
150
+ | Canonical phase definitions (6-phase USDP standard) | **Invariant:** The default workflow defines exactly 6 phases in fixed<br> order. These are the canonical phase names... |
151
+ | Deliverable status canonical values | **Invariant:** Deliverable status (distinct from pattern FSM status)<br> uses exactly 6 values, enforced by Zod... |
152
+
153
+ ##### ProcessGuardTesting
154
+
155
+ | Rule | Description |
156
+ | --------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
157
+ | Completed files require unlock-reason to modify | **Invariant:** A completed spec file cannot be modified unless it carries an @architect-unlock-reason tag.... |
158
+ | Status transitions must follow PDR-005 FSM | **Invariant:** Status changes must follow the directed graph: roadmap->active->completed, roadmap<->deferred,... |
159
+ | Active specs cannot add new deliverables | **Invariant:** A spec in active status cannot have deliverables added that were not present when it entered active.... |
160
+ | Files outside active session scope trigger warnings | **Invariant:** Files modified outside the active session's declared scope produce a session-scope warning.... |
161
+ | Explicitly excluded files trigger errors | **Invariant:** Files explicitly excluded from a session cannot be modified, producing a session-excluded error.... |
162
+ | Multiple rules validate independently | **Invariant:** Each validation rule evaluates independently — a single file can produce violations from multiple... |
@@ -0,0 +1,245 @@
1
+ ### Gherkin Authoring Guide
2
+
3
+ #### Essential Patterns
4
+
5
+ ##### Roadmap Spec Structure
6
+
7
+ Roadmap specs define planned work with Problem/Solution descriptions and a Background deliverables table.
8
+
9
+ ```gherkin
10
+ @architect
11
+ @architect-pattern:ProcessGuardLinter
12
+ @architect-status:roadmap
13
+ @architect-phase:99
14
+ Feature: Process Guard Linter
15
+
16
+ **Problem:**
17
+ During planning and implementation sessions, accidental modifications occur:
18
+ - Specs outside the intended scope get modified in bulk
19
+ - Completed/approved work gets inadvertently changed
20
+
21
+ **Solution:**
22
+ Implement a Decider-based linter that:
23
+ 1. Derives process state from existing file annotations
24
+ 2. Validates proposed changes against derived state
25
+ 3. Enforces file protection levels per PDR-005
26
+
27
+ Background: Deliverables
28
+ Given the following deliverables:
29
+ | Deliverable | Status | Location |
30
+ | State derivation | Pending | src/lint/process-guard/derive.ts |
31
+ | Git diff change detection | Pending | src/lint/process-guard/detect.ts |
32
+ | CLI integration | Pending | src/cli/lint-process.ts |
33
+ ```
34
+
35
+ **Key elements:**
36
+
37
+ - `@architect` -- bare opt-in marker (required)
38
+ - `@architect-pattern:Name` -- unique identifier (required)
39
+ - `@architect-status:roadmap` -- FSM state
40
+ - `**Problem:**` / `**Solution:**` -- extracted by generators
41
+ - Background deliverables table -- tracks implementation progress
42
+
43
+ ##### Rule Blocks for Business Constraints
44
+
45
+ Use `Rule:` to group related scenarios under a business constraint.
46
+
47
+ ```gherkin
48
+ Rule: Status transitions must follow PDR-005 FSM
49
+
50
+ **Invariant:** Only valid FSM transitions are allowed.
51
+
52
+ **Rationale:** The FSM enforces deliberate progression through planning, implementation, and completion.
53
+
54
+ **Verified by:** Valid transitions pass, Invalid transitions fail
55
+
56
+ @happy-path
57
+ Scenario Outline: Valid transitions pass validation
58
+ Given a file with status "<from>"
59
+ When the status changes to "<to>"
60
+ Then validation passes
61
+
62
+ Examples:
63
+ | from | to |
64
+ | roadmap | active |
65
+ | roadmap | deferred |
66
+ | active | completed |
67
+ | deferred | roadmap |
68
+ ```
69
+
70
+ | Element | Purpose | Extracted By |
71
+ | ------------------ | --------------------------------------- | ------------------------------------------- |
72
+ | `**Invariant:**` | Business constraint (what must be true) | Business Rules generator |
73
+ | `**Rationale:**` | Business justification (why it exists) | Business Rules generator |
74
+ | `**Verified by:**` | Comma-separated scenario names | Multiple codecs (Business Rules, Reference) |
75
+
76
+ ##### Scenario Outline for Variations
77
+
78
+ When the same pattern applies with different inputs, use `Scenario Outline` with an `Examples` table:
79
+
80
+ ```gherkin
81
+ Scenario Outline: Protection levels by status
82
+ Given a file with status "<status>"
83
+ When checking protection level
84
+ Then protection is "<protection>"
85
+ And unlock required is "<unlock>"
86
+
87
+ Examples:
88
+ | status | protection | unlock |
89
+ | roadmap | none | no |
90
+ | active | scope | no |
91
+ | completed | hard | yes |
92
+ | deferred | none | no |
93
+ ```
94
+
95
+ ##### Executable Test Features
96
+
97
+ Test features focus on behavior verification with section dividers for organization.
98
+
99
+ ```gherkin
100
+ @behavior @scanner-core
101
+ @architect-pattern:ScannerCore
102
+ Feature: Scanner Core Integration
103
+
104
+ Background:
105
+ Given a scanner integration context with temp directory
106
+
107
+ @happy-path
108
+ Scenario: Scan files and extract directives
109
+ Given a file "src/auth.ts" with valid content
110
+ When scanning with pattern "src/**/*.ts"
111
+ Then the scan should succeed with 1 file
112
+ ```
113
+
114
+ Section comments (`# ====`) improve readability in large feature files.
115
+
116
+ #### DataTable and DocString Usage
117
+
118
+ ##### Background DataTable (Reference Data)
119
+
120
+ Use for data that applies to all scenarios -- deliverables, definitions, etc.
121
+
122
+ ```gherkin
123
+ Background: Deliverables
124
+ Given the following deliverables:
125
+ | Deliverable | Status | Location | Tests |
126
+ | Category types | Done | src/types.ts | Yes |
127
+ | Validation logic | Pending | src/validate.ts | Yes |
128
+ ```
129
+
130
+ ##### Scenario DataTable (Test Data)
131
+
132
+ Use for scenario-specific test inputs.
133
+
134
+ ```gherkin
135
+ Scenario: Session file defines modification scope
136
+ Given a session file with in-scope specs:
137
+ | spec | intent |
138
+ | mvp-workflow-implementation | modify |
139
+ | short-form-tag-migration | review |
140
+ When deriving process state
141
+ Then "mvp-workflow-implementation" is modifiable
142
+ ```
143
+
144
+ ##### DocString for Code Examples
145
+
146
+ Use `"""typescript` for code blocks. Essential when content contains pipes or special characters.
147
+
148
+ ```gherkin
149
+ Scenario: Extract directive from TypeScript
150
+ Given a file with content:
151
+ """typescript
152
+ /** @architect */
153
+ export function authenticate() {}
154
+ """
155
+ When scanning the file
156
+ Then directive should have tag "@architect-core"
157
+ ```
158
+
159
+ #### Tag Conventions
160
+
161
+ ##### Semantic Tags (Extracted by Generators)
162
+
163
+ | Tag | Purpose |
164
+ | ---------------------- | ------------------------------------------------- |
165
+ | `@acceptance-criteria` | Required for DoD validation of completed patterns |
166
+ | `@happy-path` | Primary success scenario |
167
+ | `@validation` | Input validation, constraint checks |
168
+ | `@business-rule` | Business invariant verification |
169
+ | `@business-failure` | Expected business failure scenario |
170
+ | `@edge-case` | Boundary conditions, unusual inputs |
171
+ | `@error-handling` | Error recovery, graceful degradation |
172
+
173
+ #### Feature Description Patterns
174
+
175
+ Choose headers that fit your pattern:
176
+
177
+ | Structure | Headers | Best For |
178
+ | ---------------- | ------------------------------------------ | ------------------------- |
179
+ | Problem/Solution | `**Problem:**`, `**Solution:**` | Pain point to fix |
180
+ | Value-First | `**Business Value:**`, `**How It Works:**` | TDD-style, Gherkin spirit |
181
+ | Context/Approach | `**Context:**`, `**Approach:**` | Technical patterns |
182
+
183
+ The **Problem/Solution** pattern is the dominant style in this codebase.
184
+
185
+ #### Feature File Rich Content
186
+
187
+ Feature files serve dual purposes: **executable specs** and **documentation source**. Content in the Feature description section appears in generated docs.
188
+
189
+ ##### Code-First Principle
190
+
191
+ **Prefer code stubs over DocStrings for complex examples.** Feature files should reference code, not duplicate it.
192
+
193
+ | Approach | When to Use |
194
+ | ---------------------------- | ------------------------------------------------------------ |
195
+ | DocStrings (`"""typescript`) | Brief examples (5-10 lines), current/target state comparison |
196
+ | Code stub reference | Complex APIs, interfaces, full implementations |
197
+
198
+ Code stubs are annotated TypeScript files with `throw new Error("not yet implemented")`, located in `architect/stubs/{pattern-name}/`.
199
+
200
+ ##### Valid Rich Content
201
+
202
+ | Content Type | Syntax | Appears in Docs |
203
+ | ------------- | ----------------------- | ---------------- |
204
+ | Plain text | Regular paragraphs | Yes |
205
+ | Bold/emphasis | `**bold**`, `*italic*` | Yes |
206
+ | Tables | Markdown pipe tables | Yes |
207
+ | Lists | `- item` or `1. item` | Yes |
208
+ | DocStrings | `"""typescript`...`"""` | Yes (code block) |
209
+ | Comments | `# comment` | No (ignored) |
210
+
211
+ #### Syntax Notes and Gotchas
212
+
213
+ ##### Forbidden in Feature Descriptions
214
+
215
+ | Forbidden | Why | Alternative |
216
+ | ----------------------------- | -------------------------------- | ----------------------------------- |
217
+ | Code fences (triple backtick) | Not Gherkin syntax | Use DocStrings with lang hint |
218
+ | `@prefix` in free text | Interpreted as Gherkin tag | Remove `@` or use `libar-dev` |
219
+ | Nested DocStrings | Gherkin parser error | Reference code stub file |
220
+ | `#` at line start | Gherkin comment -- kills parsing | Remove, use `//`, or step DocString |
221
+
222
+ ##### Tag Value Constraints
223
+
224
+ **Tag values cannot contain spaces.** Use hyphens:
225
+
226
+ | Invalid | Valid |
227
+ | ------------------------------- | ------------------------------ |
228
+ | `@unlock-reason:Fix for issue` | `@unlock-reason:Fix-for-issue` |
229
+ | `@architect-pattern:My Pattern` | `@architect-pattern:MyPattern` |
230
+
231
+ For values with spaces, use the `quoted-value` format where supported:
232
+
233
+ ```gherkin
234
+ @architect-usecase "When handling command failures"
235
+ ```
236
+
237
+ #### Quick Reference
238
+
239
+ | Element | Use For | Example |
240
+ | -------------------- | -------------------------------------- | ----------------------------------- |
241
+ | Background DataTable | Deliverables, shared reference data | Deliverables table in roadmap specs |
242
+ | Rule: | Group scenarios by business constraint | Invariant + Rationale + Verified by |
243
+ | Scenario Outline | Same pattern with variations | Examples tables with multiple rows |
244
+ | DocString `"""` | Code examples, content with pipes | TypeScript/Gherkin code blocks |
245
+ | Section comments `#` | Organize large feature files | `# ========= Section ==========` |