@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.
- package/CHANGELOG.md +50 -0
- package/LICENSE +25 -0
- package/LICENSE-MCP +62 -0
- package/README.md +147 -0
- package/dist/api/arch-queries.d.ts +95 -0
- package/dist/api/arch-queries.d.ts.map +1 -0
- package/dist/api/arch-queries.js +310 -0
- package/dist/api/arch-queries.js.map +1 -0
- package/dist/api/context-assembler.d.ts +124 -0
- package/dist/api/context-assembler.d.ts.map +1 -0
- package/dist/api/context-assembler.js +472 -0
- package/dist/api/context-assembler.js.map +1 -0
- package/dist/api/context-formatter.d.ts +26 -0
- package/dist/api/context-formatter.d.ts.map +1 -0
- package/dist/api/context-formatter.js +183 -0
- package/dist/api/context-formatter.js.map +1 -0
- package/dist/api/coverage-analyzer.d.ts +38 -0
- package/dist/api/coverage-analyzer.d.ts.map +1 -0
- package/dist/api/coverage-analyzer.js +117 -0
- package/dist/api/coverage-analyzer.js.map +1 -0
- package/dist/api/fuzzy-match.d.ts +75 -0
- package/dist/api/fuzzy-match.d.ts.map +1 -0
- package/dist/api/fuzzy-match.js +150 -0
- package/dist/api/fuzzy-match.js.map +1 -0
- package/dist/api/handoff-generator.d.ts +45 -0
- package/dist/api/handoff-generator.d.ts.map +1 -0
- package/dist/api/handoff-generator.js +139 -0
- package/dist/api/handoff-generator.js.map +1 -0
- package/dist/api/index.d.ts +61 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +54 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/pattern-helpers.d.ts +51 -0
- package/dist/api/pattern-helpers.d.ts.map +1 -0
- package/dist/api/pattern-helpers.js +84 -0
- package/dist/api/pattern-helpers.js.map +1 -0
- package/dist/api/process-state.d.ts +224 -0
- package/dist/api/process-state.d.ts.map +1 -0
- package/dist/api/process-state.js +308 -0
- package/dist/api/process-state.js.map +1 -0
- package/dist/api/rules-query.d.ts +60 -0
- package/dist/api/rules-query.d.ts.map +1 -0
- package/dist/api/rules-query.js +154 -0
- package/dist/api/rules-query.js.map +1 -0
- package/dist/api/scope-validator.d.ts +56 -0
- package/dist/api/scope-validator.d.ts.map +1 -0
- package/dist/api/scope-validator.js +293 -0
- package/dist/api/scope-validator.js.map +1 -0
- package/dist/api/stub-resolver.d.ts +117 -0
- package/dist/api/stub-resolver.d.ts.map +1 -0
- package/dist/api/stub-resolver.js +154 -0
- package/dist/api/stub-resolver.js.map +1 -0
- package/dist/api/summarize.d.ts +75 -0
- package/dist/api/summarize.d.ts.map +1 -0
- package/dist/api/summarize.js +97 -0
- package/dist/api/summarize.js.map +1 -0
- package/dist/api/types.d.ts +221 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +57 -0
- package/dist/api/types.js.map +1 -0
- package/dist/cache/file-cache.d.ts +72 -0
- package/dist/cache/file-cache.d.ts.map +1 -0
- package/dist/cache/file-cache.js +80 -0
- package/dist/cache/file-cache.js.map +1 -0
- package/dist/cache/index.d.ts +5 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +5 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/cli/cli-schema.d.ts +83 -0
- package/dist/cli/cli-schema.d.ts.map +1 -0
- package/dist/cli/cli-schema.js +505 -0
- package/dist/cli/cli-schema.js.map +1 -0
- package/dist/cli/dataset-cache.d.ts +66 -0
- package/dist/cli/dataset-cache.d.ts.map +1 -0
- package/dist/cli/dataset-cache.js +179 -0
- package/dist/cli/dataset-cache.js.map +1 -0
- package/dist/cli/error-handler.d.ts +84 -0
- package/dist/cli/error-handler.d.ts.map +1 -0
- package/dist/cli/error-handler.js +197 -0
- package/dist/cli/error-handler.js.map +1 -0
- package/dist/cli/generate-docs.d.ts +30 -0
- package/dist/cli/generate-docs.d.ts.map +1 -0
- package/dist/cli/generate-docs.js +370 -0
- package/dist/cli/generate-docs.js.map +1 -0
- package/dist/cli/lint-patterns.d.ts +57 -0
- package/dist/cli/lint-patterns.d.ts.map +1 -0
- package/dist/cli/lint-patterns.js +257 -0
- package/dist/cli/lint-patterns.js.map +1 -0
- package/dist/cli/lint-process.d.ts +54 -0
- package/dist/cli/lint-process.d.ts.map +1 -0
- package/dist/cli/lint-process.js +319 -0
- package/dist/cli/lint-process.js.map +1 -0
- package/dist/cli/lint-steps.d.ts +32 -0
- package/dist/cli/lint-steps.d.ts.map +1 -0
- package/dist/cli/lint-steps.js +172 -0
- package/dist/cli/lint-steps.js.map +1 -0
- package/dist/cli/mcp-server.d.ts +22 -0
- package/dist/cli/mcp-server.d.ts.map +1 -0
- package/dist/cli/mcp-server.js +57 -0
- package/dist/cli/mcp-server.js.map +1 -0
- package/dist/cli/output-pipeline.d.ts +130 -0
- package/dist/cli/output-pipeline.d.ts.map +1 -0
- package/dist/cli/output-pipeline.js +234 -0
- package/dist/cli/output-pipeline.js.map +1 -0
- package/dist/cli/process-api.d.ts +37 -0
- package/dist/cli/process-api.d.ts.map +1 -0
- package/dist/cli/process-api.js +1550 -0
- package/dist/cli/process-api.js.map +1 -0
- package/dist/cli/repl.d.ts +38 -0
- package/dist/cli/repl.d.ts.map +1 -0
- package/dist/cli/repl.js +239 -0
- package/dist/cli/repl.js.map +1 -0
- package/dist/cli/validate-patterns.d.ts +115 -0
- package/dist/cli/validate-patterns.d.ts.map +1 -0
- package/dist/cli/validate-patterns.js +707 -0
- package/dist/cli/validate-patterns.js.map +1 -0
- package/dist/cli/version.d.ts +35 -0
- package/dist/cli/version.d.ts.map +1 -0
- package/dist/cli/version.js +64 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/config/config-loader.d.ts +167 -0
- package/dist/config/config-loader.d.ts.map +1 -0
- package/dist/config/config-loader.js +294 -0
- package/dist/config/config-loader.js.map +1 -0
- package/dist/config/defaults.d.ts +92 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +103 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/define-config.d.ts +37 -0
- package/dist/config/define-config.d.ts.map +1 -0
- package/dist/config/define-config.js +38 -0
- package/dist/config/define-config.js.map +1 -0
- package/dist/config/factory.d.ts +79 -0
- package/dist/config/factory.d.ts.map +1 -0
- package/dist/config/factory.js +116 -0
- package/dist/config/factory.js.map +1 -0
- package/dist/config/index.d.ts +45 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +48 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/merge-sources.d.ts +47 -0
- package/dist/config/merge-sources.d.ts.map +1 -0
- package/dist/config/merge-sources.js +61 -0
- package/dist/config/merge-sources.js.map +1 -0
- package/dist/config/presets.d.ts +115 -0
- package/dist/config/presets.d.ts.map +1 -0
- package/dist/config/presets.js +119 -0
- package/dist/config/presets.js.map +1 -0
- package/dist/config/project-config-schema.d.ts +192 -0
- package/dist/config/project-config-schema.d.ts.map +1 -0
- package/dist/config/project-config-schema.js +231 -0
- package/dist/config/project-config-schema.js.map +1 -0
- package/dist/config/project-config.d.ts +229 -0
- package/dist/config/project-config.d.ts.map +1 -0
- package/dist/config/project-config.js +37 -0
- package/dist/config/project-config.js.map +1 -0
- package/dist/config/regex-builders.d.ts +49 -0
- package/dist/config/regex-builders.d.ts.map +1 -0
- package/dist/config/regex-builders.js +85 -0
- package/dist/config/regex-builders.js.map +1 -0
- package/dist/config/resolve-config.d.ts +65 -0
- package/dist/config/resolve-config.d.ts.map +1 -0
- package/dist/config/resolve-config.js +150 -0
- package/dist/config/resolve-config.js.map +1 -0
- package/dist/config/types.d.ts +81 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +22 -0
- package/dist/config/types.js.map +1 -0
- package/dist/config/workflow-loader.d.ts +90 -0
- package/dist/config/workflow-loader.d.ts.map +1 -0
- package/dist/config/workflow-loader.js +167 -0
- package/dist/config/workflow-loader.js.map +1 -0
- package/dist/extractor/doc-extractor.d.ts +233 -0
- package/dist/extractor/doc-extractor.d.ts.map +1 -0
- package/dist/extractor/doc-extractor.js +481 -0
- package/dist/extractor/doc-extractor.js.map +1 -0
- package/dist/extractor/dual-source-extractor.d.ts +161 -0
- package/dist/extractor/dual-source-extractor.d.ts.map +1 -0
- package/dist/extractor/dual-source-extractor.js +407 -0
- package/dist/extractor/dual-source-extractor.js.map +1 -0
- package/dist/extractor/gherkin-extractor.d.ts +170 -0
- package/dist/extractor/gherkin-extractor.d.ts.map +1 -0
- package/dist/extractor/gherkin-extractor.js +543 -0
- package/dist/extractor/gherkin-extractor.js.map +1 -0
- package/dist/extractor/index.d.ts +7 -0
- package/dist/extractor/index.d.ts.map +1 -0
- package/dist/extractor/index.js +11 -0
- package/dist/extractor/index.js.map +1 -0
- package/dist/extractor/layer-inference.d.ts +66 -0
- package/dist/extractor/layer-inference.d.ts.map +1 -0
- package/dist/extractor/layer-inference.js +93 -0
- package/dist/extractor/layer-inference.js.map +1 -0
- package/dist/extractor/shape-extractor.d.ts +79 -0
- package/dist/extractor/shape-extractor.d.ts.map +1 -0
- package/dist/extractor/shape-extractor.js +966 -0
- package/dist/extractor/shape-extractor.js.map +1 -0
- package/dist/generators/built-in/cli-recipe-generator.d.ts +30 -0
- package/dist/generators/built-in/cli-recipe-generator.d.ts.map +1 -0
- package/dist/generators/built-in/cli-recipe-generator.js +155 -0
- package/dist/generators/built-in/cli-recipe-generator.js.map +1 -0
- package/dist/generators/built-in/codec-generators.d.ts +29 -0
- package/dist/generators/built-in/codec-generators.d.ts.map +1 -0
- package/dist/generators/built-in/codec-generators.js +195 -0
- package/dist/generators/built-in/codec-generators.js.map +1 -0
- package/dist/generators/built-in/decision-doc-generator.d.ts +204 -0
- package/dist/generators/built-in/decision-doc-generator.d.ts.map +1 -0
- package/dist/generators/built-in/decision-doc-generator.js +654 -0
- package/dist/generators/built-in/decision-doc-generator.js.map +1 -0
- package/dist/generators/built-in/design-review-generator.d.ts +26 -0
- package/dist/generators/built-in/design-review-generator.d.ts.map +1 -0
- package/dist/generators/built-in/design-review-generator.js +94 -0
- package/dist/generators/built-in/design-review-generator.js.map +1 -0
- package/dist/generators/built-in/index.d.ts +22 -0
- package/dist/generators/built-in/index.d.ts.map +1 -0
- package/dist/generators/built-in/index.js +23 -0
- package/dist/generators/built-in/index.js.map +1 -0
- package/dist/generators/built-in/process-api-reference-generator.d.ts +18 -0
- package/dist/generators/built-in/process-api-reference-generator.d.ts.map +1 -0
- package/dist/generators/built-in/process-api-reference-generator.js +85 -0
- package/dist/generators/built-in/process-api-reference-generator.js.map +1 -0
- package/dist/generators/built-in/reference-generators.d.ts +51 -0
- package/dist/generators/built-in/reference-generators.d.ts.map +1 -0
- package/dist/generators/built-in/reference-generators.js +320 -0
- package/dist/generators/built-in/reference-generators.js.map +1 -0
- package/dist/generators/codec-based.d.ts +63 -0
- package/dist/generators/codec-based.d.ts.map +1 -0
- package/dist/generators/codec-based.js +88 -0
- package/dist/generators/codec-based.js.map +1 -0
- package/dist/generators/content-deduplicator.d.ts +114 -0
- package/dist/generators/content-deduplicator.d.ts.map +1 -0
- package/dist/generators/content-deduplicator.js +356 -0
- package/dist/generators/content-deduplicator.js.map +1 -0
- package/dist/generators/index.d.ts +50 -0
- package/dist/generators/index.d.ts.map +1 -0
- package/dist/generators/index.js +54 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/generators/orchestrator.d.ts +265 -0
- package/dist/generators/orchestrator.d.ts.map +1 -0
- package/dist/generators/orchestrator.js +570 -0
- package/dist/generators/orchestrator.js.map +1 -0
- package/dist/generators/pipeline/build-pipeline.d.ts +131 -0
- package/dist/generators/pipeline/build-pipeline.d.ts.map +1 -0
- package/dist/generators/pipeline/build-pipeline.js +248 -0
- package/dist/generators/pipeline/build-pipeline.js.map +1 -0
- package/dist/generators/pipeline/context-inference.d.ts +55 -0
- package/dist/generators/pipeline/context-inference.d.ts.map +1 -0
- package/dist/generators/pipeline/context-inference.js +76 -0
- package/dist/generators/pipeline/context-inference.js.map +1 -0
- package/dist/generators/pipeline/index.d.ts +27 -0
- package/dist/generators/pipeline/index.d.ts.map +1 -0
- package/dist/generators/pipeline/index.js +34 -0
- package/dist/generators/pipeline/index.js.map +1 -0
- package/dist/generators/pipeline/merge-patterns.d.ts +33 -0
- package/dist/generators/pipeline/merge-patterns.d.ts.map +1 -0
- package/dist/generators/pipeline/merge-patterns.js +50 -0
- package/dist/generators/pipeline/merge-patterns.js.map +1 -0
- package/dist/generators/pipeline/relationship-resolver.d.ts +47 -0
- package/dist/generators/pipeline/relationship-resolver.d.ts.map +1 -0
- package/dist/generators/pipeline/relationship-resolver.js +132 -0
- package/dist/generators/pipeline/relationship-resolver.js.map +1 -0
- package/dist/generators/pipeline/sequence-utils.d.ts +49 -0
- package/dist/generators/pipeline/sequence-utils.d.ts.map +1 -0
- package/dist/generators/pipeline/sequence-utils.js +235 -0
- package/dist/generators/pipeline/sequence-utils.js.map +1 -0
- package/dist/generators/pipeline/transform-dataset.d.ts +82 -0
- package/dist/generators/pipeline/transform-dataset.d.ts.map +1 -0
- package/dist/generators/pipeline/transform-dataset.js +355 -0
- package/dist/generators/pipeline/transform-dataset.js.map +1 -0
- package/dist/generators/pipeline/transform-types.d.ts +96 -0
- package/dist/generators/pipeline/transform-types.d.ts.map +1 -0
- package/dist/generators/pipeline/transform-types.js +18 -0
- package/dist/generators/pipeline/transform-types.js.map +1 -0
- package/dist/generators/registry.d.ts +64 -0
- package/dist/generators/registry.d.ts.map +1 -0
- package/dist/generators/registry.js +77 -0
- package/dist/generators/registry.js.map +1 -0
- package/dist/generators/source-mapper.d.ts +143 -0
- package/dist/generators/source-mapper.d.ts.map +1 -0
- package/dist/generators/source-mapper.js +602 -0
- package/dist/generators/source-mapper.js.map +1 -0
- package/dist/generators/source-mapping-validator.d.ts +118 -0
- package/dist/generators/source-mapping-validator.d.ts.map +1 -0
- package/dist/generators/source-mapping-validator.js +334 -0
- package/dist/generators/source-mapping-validator.js.map +1 -0
- package/dist/generators/types.d.ts +104 -0
- package/dist/generators/types.d.ts.map +1 -0
- package/dist/generators/types.js +5 -0
- package/dist/generators/types.js.map +1 -0
- package/dist/generators/warning-collector.d.ts +144 -0
- package/dist/generators/warning-collector.d.ts.map +1 -0
- package/dist/generators/warning-collector.js +166 -0
- package/dist/generators/warning-collector.js.map +1 -0
- package/dist/git/branch-diff.d.ts +44 -0
- package/dist/git/branch-diff.d.ts.map +1 -0
- package/dist/git/branch-diff.js +57 -0
- package/dist/git/branch-diff.js.map +1 -0
- package/dist/git/helpers.d.ts +46 -0
- package/dist/git/helpers.d.ts.map +1 -0
- package/dist/git/helpers.js +67 -0
- package/dist/git/helpers.js.map +1 -0
- package/dist/git/index.d.ts +18 -0
- package/dist/git/index.d.ts.map +1 -0
- package/dist/git/index.js +18 -0
- package/dist/git/index.js.map +1 -0
- package/dist/git/name-status.d.ts +32 -0
- package/dist/git/name-status.d.ts.map +1 -0
- package/dist/git/name-status.js +66 -0
- package/dist/git/name-status.js.map +1 -0
- package/dist/index.d.ts +107 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +122 -0
- package/dist/index.js.map +1 -0
- package/dist/lint/engine.d.ts +113 -0
- package/dist/lint/engine.d.ts.map +1 -0
- package/dist/lint/engine.js +228 -0
- package/dist/lint/engine.js.map +1 -0
- package/dist/lint/index.d.ts +26 -0
- package/dist/lint/index.d.ts.map +1 -0
- package/dist/lint/index.js +24 -0
- package/dist/lint/index.js.map +1 -0
- package/dist/lint/process-guard/decider.d.ts +166 -0
- package/dist/lint/process-guard/decider.d.ts.map +1 -0
- package/dist/lint/process-guard/decider.js +412 -0
- package/dist/lint/process-guard/decider.js.map +1 -0
- package/dist/lint/process-guard/derive-state.d.ts +96 -0
- package/dist/lint/process-guard/derive-state.d.ts.map +1 -0
- package/dist/lint/process-guard/derive-state.js +368 -0
- package/dist/lint/process-guard/derive-state.js.map +1 -0
- package/dist/lint/process-guard/detect-changes.d.ts +109 -0
- package/dist/lint/process-guard/detect-changes.d.ts.map +1 -0
- package/dist/lint/process-guard/detect-changes.js +487 -0
- package/dist/lint/process-guard/detect-changes.js.map +1 -0
- package/dist/lint/process-guard/index.d.ts +35 -0
- package/dist/lint/process-guard/index.d.ts.map +1 -0
- package/dist/lint/process-guard/index.js +39 -0
- package/dist/lint/process-guard/index.js.map +1 -0
- package/dist/lint/process-guard/types.d.ts +255 -0
- package/dist/lint/process-guard/types.d.ts.map +1 -0
- package/dist/lint/process-guard/types.js +31 -0
- package/dist/lint/process-guard/types.js.map +1 -0
- package/dist/lint/rules.d.ts +147 -0
- package/dist/lint/rules.d.ts.map +1 -0
- package/dist/lint/rules.js +289 -0
- package/dist/lint/rules.js.map +1 -0
- package/dist/lint/steps/cross-checks.d.ts +66 -0
- package/dist/lint/steps/cross-checks.d.ts.map +1 -0
- package/dist/lint/steps/cross-checks.js +290 -0
- package/dist/lint/steps/cross-checks.js.map +1 -0
- package/dist/lint/steps/feature-checks.d.ts +78 -0
- package/dist/lint/steps/feature-checks.d.ts.map +1 -0
- package/dist/lint/steps/feature-checks.js +279 -0
- package/dist/lint/steps/feature-checks.js.map +1 -0
- package/dist/lint/steps/index.d.ts +22 -0
- package/dist/lint/steps/index.d.ts.map +1 -0
- package/dist/lint/steps/index.js +26 -0
- package/dist/lint/steps/index.js.map +1 -0
- package/dist/lint/steps/pair-resolver.d.ts +29 -0
- package/dist/lint/steps/pair-resolver.d.ts.map +1 -0
- package/dist/lint/steps/pair-resolver.js +76 -0
- package/dist/lint/steps/pair-resolver.js.map +1 -0
- package/dist/lint/steps/runner.d.ts +28 -0
- package/dist/lint/steps/runner.d.ts.map +1 -0
- package/dist/lint/steps/runner.js +143 -0
- package/dist/lint/steps/runner.js.map +1 -0
- package/dist/lint/steps/step-checks.d.ts +41 -0
- package/dist/lint/steps/step-checks.d.ts.map +1 -0
- package/dist/lint/steps/step-checks.js +164 -0
- package/dist/lint/steps/step-checks.js.map +1 -0
- package/dist/lint/steps/types.d.ts +95 -0
- package/dist/lint/steps/types.d.ts.map +1 -0
- package/dist/lint/steps/types.js +79 -0
- package/dist/lint/steps/types.js.map +1 -0
- package/dist/lint/steps/utils.d.ts +22 -0
- package/dist/lint/steps/utils.d.ts.map +1 -0
- package/dist/lint/steps/utils.js +57 -0
- package/dist/lint/steps/utils.js.map +1 -0
- package/dist/mcp/file-watcher.d.ts +24 -0
- package/dist/mcp/file-watcher.d.ts.map +1 -0
- package/dist/mcp/file-watcher.js +75 -0
- package/dist/mcp/file-watcher.js.map +1 -0
- package/dist/mcp/index.d.ts +19 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +21 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/mcp/pipeline-session.d.ts +33 -0
- package/dist/mcp/pipeline-session.d.ts.map +1 -0
- package/dist/mcp/pipeline-session.js +149 -0
- package/dist/mcp/pipeline-session.js.map +1 -0
- package/dist/mcp/server.d.ts +28 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +197 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/tool-registry.d.ts +4 -0
- package/dist/mcp/tool-registry.d.ts.map +1 -0
- package/dist/mcp/tool-registry.js +525 -0
- package/dist/mcp/tool-registry.js.map +1 -0
- package/dist/renderable/codecs/adr.d.ts +4730 -0
- package/dist/renderable/codecs/adr.d.ts.map +1 -0
- package/dist/renderable/codecs/adr.js +590 -0
- package/dist/renderable/codecs/adr.js.map +1 -0
- package/dist/renderable/codecs/architecture.d.ts +4760 -0
- package/dist/renderable/codecs/architecture.d.ts.map +1 -0
- package/dist/renderable/codecs/architecture.js +524 -0
- package/dist/renderable/codecs/architecture.js.map +1 -0
- package/dist/renderable/codecs/business-rules.d.ts +4777 -0
- package/dist/renderable/codecs/business-rules.d.ts.map +1 -0
- package/dist/renderable/codecs/business-rules.js +648 -0
- package/dist/renderable/codecs/business-rules.js.map +1 -0
- package/dist/renderable/codecs/claude-module.d.ts +4710 -0
- package/dist/renderable/codecs/claude-module.d.ts.map +1 -0
- package/dist/renderable/codecs/claude-module.js +214 -0
- package/dist/renderable/codecs/claude-module.js.map +1 -0
- package/dist/renderable/codecs/composite.d.ts +84 -0
- package/dist/renderable/codecs/composite.d.ts.map +1 -0
- package/dist/renderable/codecs/composite.js +124 -0
- package/dist/renderable/codecs/composite.js.map +1 -0
- package/dist/renderable/codecs/convention-extractor.d.ts +105 -0
- package/dist/renderable/codecs/convention-extractor.d.ts.map +1 -0
- package/dist/renderable/codecs/convention-extractor.js +353 -0
- package/dist/renderable/codecs/convention-extractor.js.map +1 -0
- package/dist/renderable/codecs/decision-doc.d.ts +308 -0
- package/dist/renderable/codecs/decision-doc.d.ts.map +1 -0
- package/dist/renderable/codecs/decision-doc.js +485 -0
- package/dist/renderable/codecs/decision-doc.js.map +1 -0
- package/dist/renderable/codecs/design-review.d.ts +55 -0
- package/dist/renderable/codecs/design-review.d.ts.map +1 -0
- package/dist/renderable/codecs/design-review.js +532 -0
- package/dist/renderable/codecs/design-review.js.map +1 -0
- package/dist/renderable/codecs/diagram-utils.d.ts +62 -0
- package/dist/renderable/codecs/diagram-utils.d.ts.map +1 -0
- package/dist/renderable/codecs/diagram-utils.js +70 -0
- package/dist/renderable/codecs/diagram-utils.js.map +1 -0
- package/dist/renderable/codecs/helpers.d.ts +553 -0
- package/dist/renderable/codecs/helpers.d.ts.map +1 -0
- package/dist/renderable/codecs/helpers.js +913 -0
- package/dist/renderable/codecs/helpers.js.map +1 -0
- package/dist/renderable/codecs/index-codec.d.ts +4714 -0
- package/dist/renderable/codecs/index-codec.d.ts.map +1 -0
- package/dist/renderable/codecs/index-codec.js +250 -0
- package/dist/renderable/codecs/index-codec.js.map +1 -0
- package/dist/renderable/codecs/index.d.ts +46 -0
- package/dist/renderable/codecs/index.d.ts.map +1 -0
- package/dist/renderable/codecs/index.js +70 -0
- package/dist/renderable/codecs/index.js.map +1 -0
- package/dist/renderable/codecs/patterns.d.ts +4757 -0
- package/dist/renderable/codecs/patterns.d.ts.map +1 -0
- package/dist/renderable/codecs/patterns.js +462 -0
- package/dist/renderable/codecs/patterns.js.map +1 -0
- package/dist/renderable/codecs/planning.d.ts +14055 -0
- package/dist/renderable/codecs/planning.d.ts.map +1 -0
- package/dist/renderable/codecs/planning.js +449 -0
- package/dist/renderable/codecs/planning.js.map +1 -0
- package/dist/renderable/codecs/pr-changes.d.ts +4742 -0
- package/dist/renderable/codecs/pr-changes.d.ts.map +1 -0
- package/dist/renderable/codecs/pr-changes.js +425 -0
- package/dist/renderable/codecs/pr-changes.js.map +1 -0
- package/dist/renderable/codecs/reference.d.ts +215 -0
- package/dist/renderable/codecs/reference.d.ts.map +1 -0
- package/dist/renderable/codecs/reference.js +1578 -0
- package/dist/renderable/codecs/reference.js.map +1 -0
- package/dist/renderable/codecs/reporting.d.ts +14026 -0
- package/dist/renderable/codecs/reporting.d.ts.map +1 -0
- package/dist/renderable/codecs/reporting.js +365 -0
- package/dist/renderable/codecs/reporting.js.map +1 -0
- package/dist/renderable/codecs/requirements.d.ts +4743 -0
- package/dist/renderable/codecs/requirements.d.ts.map +1 -0
- package/dist/renderable/codecs/requirements.js +428 -0
- package/dist/renderable/codecs/requirements.js.map +1 -0
- package/dist/renderable/codecs/session.d.ts +9410 -0
- package/dist/renderable/codecs/session.d.ts.map +1 -0
- package/dist/renderable/codecs/session.js +848 -0
- package/dist/renderable/codecs/session.js.map +1 -0
- package/dist/renderable/codecs/shape-matcher.d.ts +54 -0
- package/dist/renderable/codecs/shape-matcher.d.ts.map +1 -0
- package/dist/renderable/codecs/shape-matcher.js +106 -0
- package/dist/renderable/codecs/shape-matcher.js.map +1 -0
- package/dist/renderable/codecs/shared-schema.d.ts +44 -0
- package/dist/renderable/codecs/shared-schema.d.ts.map +1 -0
- package/dist/renderable/codecs/shared-schema.js +43 -0
- package/dist/renderable/codecs/shared-schema.js.map +1 -0
- package/dist/renderable/codecs/taxonomy.d.ts +4733 -0
- package/dist/renderable/codecs/taxonomy.d.ts.map +1 -0
- package/dist/renderable/codecs/taxonomy.js +570 -0
- package/dist/renderable/codecs/taxonomy.js.map +1 -0
- package/dist/renderable/codecs/timeline.d.ts +14094 -0
- package/dist/renderable/codecs/timeline.d.ts.map +1 -0
- package/dist/renderable/codecs/timeline.js +906 -0
- package/dist/renderable/codecs/timeline.js.map +1 -0
- package/dist/renderable/codecs/types/base.d.ts +81 -0
- package/dist/renderable/codecs/types/base.d.ts.map +1 -0
- package/dist/renderable/codecs/types/base.js +56 -0
- package/dist/renderable/codecs/types/base.js.map +1 -0
- package/dist/renderable/codecs/types/index.d.ts +5 -0
- package/dist/renderable/codecs/types/index.d.ts.map +1 -0
- package/dist/renderable/codecs/types/index.js +5 -0
- package/dist/renderable/codecs/types/index.js.map +1 -0
- package/dist/renderable/codecs/validation-rules.d.ts +4773 -0
- package/dist/renderable/codecs/validation-rules.d.ts.map +1 -0
- package/dist/renderable/codecs/validation-rules.js +537 -0
- package/dist/renderable/codecs/validation-rules.js.map +1 -0
- package/dist/renderable/generate.d.ts +338 -0
- package/dist/renderable/generate.d.ts.map +1 -0
- package/dist/renderable/generate.js +437 -0
- package/dist/renderable/generate.js.map +1 -0
- package/dist/renderable/index.d.ts +36 -0
- package/dist/renderable/index.d.ts.map +1 -0
- package/dist/renderable/index.js +58 -0
- package/dist/renderable/index.js.map +1 -0
- package/dist/renderable/load-preamble.d.ts +56 -0
- package/dist/renderable/load-preamble.d.ts.map +1 -0
- package/dist/renderable/load-preamble.js +298 -0
- package/dist/renderable/load-preamble.js.map +1 -0
- package/dist/renderable/render.d.ts +61 -0
- package/dist/renderable/render.d.ts.map +1 -0
- package/dist/renderable/render.js +346 -0
- package/dist/renderable/render.js.map +1 -0
- package/dist/renderable/schema.d.ts +194 -0
- package/dist/renderable/schema.d.ts.map +1 -0
- package/dist/renderable/schema.js +197 -0
- package/dist/renderable/schema.js.map +1 -0
- package/dist/renderable/utils.d.ts +146 -0
- package/dist/renderable/utils.d.ts.map +1 -0
- package/dist/renderable/utils.js +362 -0
- package/dist/renderable/utils.js.map +1 -0
- package/dist/scanner/ast-parser.d.ts +75 -0
- package/dist/scanner/ast-parser.d.ts.map +1 -0
- package/dist/scanner/ast-parser.js +835 -0
- package/dist/scanner/ast-parser.js.map +1 -0
- package/dist/scanner/gherkin-ast-parser.d.ts +166 -0
- package/dist/scanner/gherkin-ast-parser.d.ts.map +1 -0
- package/dist/scanner/gherkin-ast-parser.js +507 -0
- package/dist/scanner/gherkin-ast-parser.js.map +1 -0
- package/dist/scanner/gherkin-scanner.d.ts +106 -0
- package/dist/scanner/gherkin-scanner.d.ts.map +1 -0
- package/dist/scanner/gherkin-scanner.js +149 -0
- package/dist/scanner/gherkin-scanner.js.map +1 -0
- package/dist/scanner/index.d.ts +85 -0
- package/dist/scanner/index.d.ts.map +1 -0
- package/dist/scanner/index.js +102 -0
- package/dist/scanner/index.js.map +1 -0
- package/dist/scanner/pattern-scanner.d.ts +83 -0
- package/dist/scanner/pattern-scanner.d.ts.map +1 -0
- package/dist/scanner/pattern-scanner.js +110 -0
- package/dist/scanner/pattern-scanner.js.map +1 -0
- package/dist/taxonomy/categories.d.ts +47 -0
- package/dist/taxonomy/categories.d.ts.map +1 -0
- package/dist/taxonomy/categories.js +175 -0
- package/dist/taxonomy/categories.js.map +1 -0
- package/dist/taxonomy/claude-section-values.d.ts +12 -0
- package/dist/taxonomy/claude-section-values.d.ts.map +1 -0
- package/dist/taxonomy/claude-section-values.js +17 -0
- package/dist/taxonomy/claude-section-values.js.map +1 -0
- package/dist/taxonomy/conventions.d.ts +13 -0
- package/dist/taxonomy/conventions.d.ts.map +1 -0
- package/dist/taxonomy/conventions.js +27 -0
- package/dist/taxonomy/conventions.js.map +1 -0
- package/dist/taxonomy/deliverable-status.d.ts +99 -0
- package/dist/taxonomy/deliverable-status.d.ts.map +1 -0
- package/dist/taxonomy/deliverable-status.js +131 -0
- package/dist/taxonomy/deliverable-status.js.map +1 -0
- package/dist/taxonomy/format-types.d.ts +17 -0
- package/dist/taxonomy/format-types.d.ts.map +1 -0
- package/dist/taxonomy/format-types.js +23 -0
- package/dist/taxonomy/format-types.js.map +1 -0
- package/dist/taxonomy/generator-options.d.ts +67 -0
- package/dist/taxonomy/generator-options.d.ts.map +1 -0
- package/dist/taxonomy/generator-options.js +75 -0
- package/dist/taxonomy/generator-options.js.map +1 -0
- package/dist/taxonomy/hierarchy-levels.d.ts +23 -0
- package/dist/taxonomy/hierarchy-levels.d.ts.map +1 -0
- package/dist/taxonomy/hierarchy-levels.js +22 -0
- package/dist/taxonomy/hierarchy-levels.js.map +1 -0
- package/dist/taxonomy/index.d.ts +35 -0
- package/dist/taxonomy/index.d.ts.map +1 -0
- package/dist/taxonomy/index.js +56 -0
- package/dist/taxonomy/index.js.map +1 -0
- package/dist/taxonomy/layer-types.d.ts +22 -0
- package/dist/taxonomy/layer-types.d.ts.map +1 -0
- package/dist/taxonomy/layer-types.js +28 -0
- package/dist/taxonomy/layer-types.js.map +1 -0
- package/dist/taxonomy/normalized-status.d.ts +99 -0
- package/dist/taxonomy/normalized-status.d.ts.map +1 -0
- package/dist/taxonomy/normalized-status.js +113 -0
- package/dist/taxonomy/normalized-status.js.map +1 -0
- package/dist/taxonomy/registry-builder.d.ts +104 -0
- package/dist/taxonomy/registry-builder.d.ts.map +1 -0
- package/dist/taxonomy/registry-builder.js +561 -0
- package/dist/taxonomy/registry-builder.js.map +1 -0
- package/dist/taxonomy/risk-levels.d.ts +16 -0
- package/dist/taxonomy/risk-levels.d.ts.map +1 -0
- package/dist/taxonomy/risk-levels.js +15 -0
- package/dist/taxonomy/risk-levels.js.map +1 -0
- package/dist/taxonomy/severity-types.d.ts +6 -0
- package/dist/taxonomy/severity-types.d.ts.map +1 -0
- package/dist/taxonomy/severity-types.js +5 -0
- package/dist/taxonomy/severity-types.js.map +1 -0
- package/dist/taxonomy/status-values.d.ts +39 -0
- package/dist/taxonomy/status-values.d.ts.map +1 -0
- package/dist/taxonomy/status-values.js +42 -0
- package/dist/taxonomy/status-values.js.map +1 -0
- package/dist/types/branded.d.ts +89 -0
- package/dist/types/branded.d.ts.map +1 -0
- package/dist/types/branded.js +57 -0
- package/dist/types/branded.js.map +1 -0
- package/dist/types/errors.d.ts +342 -0
- package/dist/types/errors.d.ts.map +1 -0
- package/dist/types/errors.js +251 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/index.d.ts +41 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +5 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/result.d.ts +78 -0
- package/dist/types/result.d.ts.map +1 -0
- package/dist/types/result.js +78 -0
- package/dist/types/result.js.map +1 -0
- package/dist/utils/collection-utils.d.ts +49 -0
- package/dist/utils/collection-utils.d.ts.map +1 -0
- package/dist/utils/collection-utils.js +58 -0
- package/dist/utils/collection-utils.js.map +1 -0
- package/dist/utils/id-utils.d.ts +46 -0
- package/dist/utils/id-utils.d.ts.map +1 -0
- package/dist/utils/id-utils.js +51 -0
- package/dist/utils/id-utils.js.map +1 -0
- package/dist/utils/index.d.ts +21 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/string-utils.d.ts +150 -0
- package/dist/utils/string-utils.d.ts.map +1 -0
- package/dist/utils/string-utils.js +281 -0
- package/dist/utils/string-utils.js.map +1 -0
- package/dist/validation/anti-patterns.d.ts +134 -0
- package/dist/validation/anti-patterns.d.ts.map +1 -0
- package/dist/validation/anti-patterns.js +307 -0
- package/dist/validation/anti-patterns.js.map +1 -0
- package/dist/validation/dod-validator.d.ts +94 -0
- package/dist/validation/dod-validator.d.ts.map +1 -0
- package/dist/validation/dod-validator.js +198 -0
- package/dist/validation/dod-validator.js.map +1 -0
- package/dist/validation/fsm/index.d.ts +59 -0
- package/dist/validation/fsm/index.d.ts.map +1 -0
- package/dist/validation/fsm/index.js +64 -0
- package/dist/validation/fsm/index.js.map +1 -0
- package/dist/validation/fsm/states.d.ts +93 -0
- package/dist/validation/fsm/states.d.ts.map +1 -0
- package/dist/validation/fsm/states.js +98 -0
- package/dist/validation/fsm/states.js.map +1 -0
- package/dist/validation/fsm/transitions.d.ts +100 -0
- package/dist/validation/fsm/transitions.d.ts.map +1 -0
- package/dist/validation/fsm/transitions.js +122 -0
- package/dist/validation/fsm/transitions.js.map +1 -0
- package/dist/validation/fsm/validator.d.ts +163 -0
- package/dist/validation/fsm/validator.d.ts.map +1 -0
- package/dist/validation/fsm/validator.js +205 -0
- package/dist/validation/fsm/validator.js.map +1 -0
- package/dist/validation/index.d.ts +23 -0
- package/dist/validation/index.d.ts.map +1 -0
- package/dist/validation/index.js +25 -0
- package/dist/validation/index.js.map +1 -0
- package/dist/validation/types.d.ts +136 -0
- package/dist/validation/types.d.ts.map +1 -0
- package/dist/validation/types.js +56 -0
- package/dist/validation/types.js.map +1 -0
- package/dist/validation-schemas/codec-utils.d.ts +188 -0
- package/dist/validation-schemas/codec-utils.d.ts.map +1 -0
- package/dist/validation-schemas/codec-utils.js +258 -0
- package/dist/validation-schemas/codec-utils.js.map +1 -0
- package/dist/validation-schemas/config.d.ts +99 -0
- package/dist/validation-schemas/config.d.ts.map +1 -0
- package/dist/validation-schemas/config.js +178 -0
- package/dist/validation-schemas/config.js.map +1 -0
- package/dist/validation-schemas/doc-directive.d.ts +195 -0
- package/dist/validation-schemas/doc-directive.d.ts.map +1 -0
- package/dist/validation-schemas/doc-directive.js +239 -0
- package/dist/validation-schemas/doc-directive.js.map +1 -0
- package/dist/validation-schemas/dual-source.d.ts +167 -0
- package/dist/validation-schemas/dual-source.d.ts.map +1 -0
- package/dist/validation-schemas/dual-source.js +168 -0
- package/dist/validation-schemas/dual-source.js.map +1 -0
- package/dist/validation-schemas/export-info.d.ts +53 -0
- package/dist/validation-schemas/export-info.d.ts.map +1 -0
- package/dist/validation-schemas/export-info.js +101 -0
- package/dist/validation-schemas/export-info.js.map +1 -0
- package/dist/validation-schemas/extracted-pattern.d.ts +351 -0
- package/dist/validation-schemas/extracted-pattern.d.ts.map +1 -0
- package/dist/validation-schemas/extracted-pattern.js +459 -0
- package/dist/validation-schemas/extracted-pattern.js.map +1 -0
- package/dist/validation-schemas/extracted-shape.d.ts +200 -0
- package/dist/validation-schemas/extracted-shape.d.ts.map +1 -0
- package/dist/validation-schemas/extracted-shape.js +182 -0
- package/dist/validation-schemas/extracted-shape.js.map +1 -0
- package/dist/validation-schemas/feature.d.ts +554 -0
- package/dist/validation-schemas/feature.d.ts.map +1 -0
- package/dist/validation-schemas/feature.js +262 -0
- package/dist/validation-schemas/feature.js.map +1 -0
- package/dist/validation-schemas/index.d.ts +15 -0
- package/dist/validation-schemas/index.d.ts.map +1 -0
- package/dist/validation-schemas/index.js +32 -0
- package/dist/validation-schemas/index.js.map +1 -0
- package/dist/validation-schemas/lint.d.ts +46 -0
- package/dist/validation-schemas/lint.d.ts.map +1 -0
- package/dist/validation-schemas/lint.js +45 -0
- package/dist/validation-schemas/lint.js.map +1 -0
- package/dist/validation-schemas/master-dataset.d.ts +8299 -0
- package/dist/validation-schemas/master-dataset.d.ts.map +1 -0
- package/dist/validation-schemas/master-dataset.js +275 -0
- package/dist/validation-schemas/master-dataset.js.map +1 -0
- package/dist/validation-schemas/output-schemas.d.ts +183 -0
- package/dist/validation-schemas/output-schemas.d.ts.map +1 -0
- package/dist/validation-schemas/output-schemas.js +149 -0
- package/dist/validation-schemas/output-schemas.js.map +1 -0
- package/dist/validation-schemas/scenario-ref.d.ts +80 -0
- package/dist/validation-schemas/scenario-ref.d.ts.map +1 -0
- package/dist/validation-schemas/scenario-ref.js +73 -0
- package/dist/validation-schemas/scenario-ref.js.map +1 -0
- package/dist/validation-schemas/tag-registry.d.ts +210 -0
- package/dist/validation-schemas/tag-registry.d.ts.map +1 -0
- package/dist/validation-schemas/tag-registry.js +248 -0
- package/dist/validation-schemas/tag-registry.js.map +1 -0
- package/dist/validation-schemas/workflow-config.d.ts +125 -0
- package/dist/validation-schemas/workflow-config.d.ts.map +1 -0
- package/dist/validation-schemas/workflow-config.js +138 -0
- package/dist/validation-schemas/workflow-config.js.map +1 -0
- package/docs/ANNOTATION-GUIDE.md +271 -0
- package/docs/ARCHITECTURE.md +1636 -0
- package/docs/CONFIGURATION.md +337 -0
- package/docs/DOCS-GAP-ANALYSIS.md +811 -0
- package/docs/GHERKIN-PATTERNS.md +366 -0
- package/docs/INDEX.md +345 -0
- package/docs/MCP-SETUP.md +140 -0
- package/docs/METHODOLOGY.md +240 -0
- package/docs/PROCESS-API.md +65 -0
- package/docs/PROCESS-GUARD.md +341 -0
- package/docs/SESSION-GUIDES.md +391 -0
- package/docs/TAXONOMY.md +106 -0
- package/docs/VALIDATION.md +418 -0
- package/docs-live/ARCHITECTURE.md +362 -0
- package/docs-live/BUSINESS-RULES.md +24 -0
- package/docs-live/CHANGELOG-GENERATED.md +375 -0
- package/docs-live/DECISIONS.md +78 -0
- package/docs-live/INDEX.md +231 -0
- package/docs-live/PRODUCT-AREAS.md +255 -0
- package/docs-live/TAXONOMY.md +202 -0
- package/docs-live/VALIDATION-RULES.md +119 -0
- package/docs-live/_claude-md/annotation/annotation-overview.md +26 -0
- package/docs-live/_claude-md/annotation/annotation-reference.md +213 -0
- package/docs-live/_claude-md/architecture/architecture-codecs.md +160 -0
- package/docs-live/_claude-md/architecture/architecture-types.md +32 -0
- package/docs-live/_claude-md/architecture/reference-sample.md +162 -0
- package/docs-live/_claude-md/authoring/gherkin-authoring-guide.md +245 -0
- package/docs-live/_claude-md/configuration/configuration-guide.md +216 -0
- package/docs-live/_claude-md/configuration/configuration-overview.md +37 -0
- package/docs-live/_claude-md/core-types/core-types-overview.md +20 -0
- package/docs-live/_claude-md/data-api/data-api-overview.md +39 -0
- package/docs-live/_claude-md/generation/generation-overview.md +30 -0
- package/docs-live/_claude-md/process/process-overview.md +127 -0
- package/docs-live/_claude-md/validation/process-guard.md +185 -0
- package/docs-live/_claude-md/validation/validation-overview.md +37 -0
- package/docs-live/_claude-md/validation/validation-tools-guide.md +242 -0
- package/docs-live/_claude-md/workflow/session-workflow-guide.md +141 -0
- package/docs-live/business-rules/annotation.md +1462 -0
- package/docs-live/business-rules/configuration.md +465 -0
- package/docs-live/business-rules/core-types.md +531 -0
- package/docs-live/business-rules/data-api.md +1403 -0
- package/docs-live/business-rules/generation.md +4726 -0
- package/docs-live/business-rules/process.md +122 -0
- package/docs-live/business-rules/validation.md +998 -0
- package/docs-live/decisions/adr-001-taxonomy-canonical-values.md +197 -0
- package/docs-live/decisions/adr-002-gherkin-only-testing.md +57 -0
- package/docs-live/decisions/adr-003-source-first-pattern-architecture.md +147 -0
- package/docs-live/decisions/adr-004-session-workflow-commands.md +137 -0
- package/docs-live/decisions/adr-005-codec-based-markdown-rendering.md +150 -0
- package/docs-live/decisions/adr-006-single-read-model-architecture.md +136 -0
- package/docs-live/decisions/adr-021-doc-generation-proof-of-concept.md +489 -0
- package/docs-live/product-areas/ANNOTATION.md +591 -0
- package/docs-live/product-areas/CONFIGURATION.md +1048 -0
- package/docs-live/product-areas/CORE-TYPES.md +221 -0
- package/docs-live/product-areas/DATA-API.md +850 -0
- package/docs-live/product-areas/GENERATION.md +1200 -0
- package/docs-live/product-areas/PROCESS.md +351 -0
- package/docs-live/product-areas/VALIDATION.md +1135 -0
- package/docs-live/reference/ANNOTATION-REFERENCE.md +232 -0
- package/docs-live/reference/ARCHITECTURE-CODECS.md +675 -0
- package/docs-live/reference/ARCHITECTURE-TYPES.md +436 -0
- package/docs-live/reference/CONFIGURATION-GUIDE.md +235 -0
- package/docs-live/reference/GHERKIN-AUTHORING-GUIDE.md +270 -0
- package/docs-live/reference/PROCESS-API-RECIPES.md +476 -0
- package/docs-live/reference/PROCESS-API-REFERENCE.md +63 -0
- package/docs-live/reference/PROCESS-GUARD-REFERENCE.md +258 -0
- package/docs-live/reference/REFERENCE-SAMPLE.md +1135 -0
- package/docs-live/reference/SESSION-WORKFLOW-GUIDE.md +384 -0
- package/docs-live/reference/VALIDATION-TOOLS-GUIDE.md +263 -0
- package/docs-live/taxonomy/categories.md +33 -0
- package/docs-live/taxonomy/format-types.md +67 -0
- package/docs-live/taxonomy/metadata-tags.md +693 -0
- package/docs-live/validation/error-catalog.md +78 -0
- package/docs-live/validation/fsm-transitions.md +50 -0
- package/docs-live/validation/protection-levels.md +51 -0
- package/package.json +233 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-validation @architect-config
|
|
4
|
+
* @architect-pattern WorkflowConfigSchema
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-used-by WorkflowLoader, ConfigurableWorkflows
|
|
7
|
+
*
|
|
8
|
+
* ## WorkflowConfigSchema - Workflow Configuration Validation
|
|
9
|
+
*
|
|
10
|
+
* Zod schemas for validating workflow configuration files that define
|
|
11
|
+
* status models, phase definitions, and artifact mappings.
|
|
12
|
+
*
|
|
13
|
+
* ### When to Use
|
|
14
|
+
*
|
|
15
|
+
* - When validating workflow configuration (inline defaults or custom files)
|
|
16
|
+
* - When validating custom workflow configurations
|
|
17
|
+
* - When creating new workflow definitions
|
|
18
|
+
*/
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
/**
|
|
21
|
+
* Status definition within a workflow
|
|
22
|
+
*
|
|
23
|
+
* Each status has a name, display emoji, and optional transition rules.
|
|
24
|
+
*/
|
|
25
|
+
export declare const WorkflowStatusSchema: z.ZodObject<{
|
|
26
|
+
name: z.ZodString;
|
|
27
|
+
emoji: z.ZodString;
|
|
28
|
+
label: z.ZodOptional<z.ZodString>;
|
|
29
|
+
description: z.ZodOptional<z.ZodString>;
|
|
30
|
+
transitionsTo: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
31
|
+
terminal: z.ZodOptional<z.ZodBoolean>;
|
|
32
|
+
}, z.core.$strict>;
|
|
33
|
+
export type WorkflowStatus = z.infer<typeof WorkflowStatusSchema>;
|
|
34
|
+
/**
|
|
35
|
+
* Artifact mapping for a workflow phase
|
|
36
|
+
*
|
|
37
|
+
* Defines which artifacts are read/written during each phase.
|
|
38
|
+
*/
|
|
39
|
+
export declare const PhaseArtifactsSchema: z.ZodObject<{
|
|
40
|
+
reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
41
|
+
writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
42
|
+
}, z.core.$strict>;
|
|
43
|
+
export type PhaseArtifacts = z.infer<typeof PhaseArtifactsSchema>;
|
|
44
|
+
/**
|
|
45
|
+
* Phase definition within a workflow
|
|
46
|
+
*
|
|
47
|
+
* Phases are the stages of work delivery (e.g., Inception, Construction).
|
|
48
|
+
*/
|
|
49
|
+
export declare const WorkflowPhaseSchema: z.ZodObject<{
|
|
50
|
+
name: z.ZodString;
|
|
51
|
+
description: z.ZodOptional<z.ZodString>;
|
|
52
|
+
statusOnEntry: z.ZodOptional<z.ZodString>;
|
|
53
|
+
artifacts: z.ZodOptional<z.ZodObject<{
|
|
54
|
+
reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
55
|
+
writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
56
|
+
}, z.core.$strict>>;
|
|
57
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
58
|
+
}, z.core.$strict>;
|
|
59
|
+
export type WorkflowPhase = z.infer<typeof WorkflowPhaseSchema>;
|
|
60
|
+
/**
|
|
61
|
+
* Complete workflow configuration
|
|
62
|
+
*
|
|
63
|
+
* Defines a delivery workflow with statuses, phases, and metadata.
|
|
64
|
+
* Multiple workflows can be defined (e.g., 6-phase-standard, 3-phase-minimal).
|
|
65
|
+
*/
|
|
66
|
+
export declare const WorkflowConfigSchema: z.ZodObject<{
|
|
67
|
+
name: z.ZodString;
|
|
68
|
+
version: z.ZodString;
|
|
69
|
+
description: z.ZodOptional<z.ZodString>;
|
|
70
|
+
statuses: z.ZodArray<z.ZodObject<{
|
|
71
|
+
name: z.ZodString;
|
|
72
|
+
emoji: z.ZodString;
|
|
73
|
+
label: z.ZodOptional<z.ZodString>;
|
|
74
|
+
description: z.ZodOptional<z.ZodString>;
|
|
75
|
+
transitionsTo: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
76
|
+
terminal: z.ZodOptional<z.ZodBoolean>;
|
|
77
|
+
}, z.core.$strict>>;
|
|
78
|
+
phases: z.ZodArray<z.ZodObject<{
|
|
79
|
+
name: z.ZodString;
|
|
80
|
+
description: z.ZodOptional<z.ZodString>;
|
|
81
|
+
statusOnEntry: z.ZodOptional<z.ZodString>;
|
|
82
|
+
artifacts: z.ZodOptional<z.ZodObject<{
|
|
83
|
+
reads: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
84
|
+
writes: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
85
|
+
}, z.core.$strict>>;
|
|
86
|
+
order: z.ZodOptional<z.ZodNumber>;
|
|
87
|
+
}, z.core.$strict>>;
|
|
88
|
+
defaultStatus: z.ZodOptional<z.ZodString>;
|
|
89
|
+
metadata: z.ZodOptional<z.ZodObject<{
|
|
90
|
+
author: z.ZodOptional<z.ZodString>;
|
|
91
|
+
lastUpdated: z.ZodOptional<z.ZodString>;
|
|
92
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
93
|
+
}, z.core.$strip>>;
|
|
94
|
+
}, z.core.$strict>;
|
|
95
|
+
export type WorkflowConfig = z.infer<typeof WorkflowConfigSchema>;
|
|
96
|
+
/**
|
|
97
|
+
* Loaded workflow with computed lookup maps
|
|
98
|
+
*
|
|
99
|
+
* Runtime representation that includes fast status/phase lookup.
|
|
100
|
+
*/
|
|
101
|
+
export interface LoadedWorkflow {
|
|
102
|
+
/** Original config */
|
|
103
|
+
readonly config: WorkflowConfig;
|
|
104
|
+
/** Status lookup by name (case-insensitive) */
|
|
105
|
+
readonly statusMap: Map<string, WorkflowStatus>;
|
|
106
|
+
/** Phase lookup by name (case-insensitive) */
|
|
107
|
+
readonly phaseMap: Map<string, WorkflowPhase>;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Create a LoadedWorkflow from a WorkflowConfig
|
|
111
|
+
*
|
|
112
|
+
* Builds lookup maps for efficient status/phase resolution.
|
|
113
|
+
*
|
|
114
|
+
* @param config - Validated workflow configuration
|
|
115
|
+
* @returns LoadedWorkflow with lookup maps
|
|
116
|
+
*/
|
|
117
|
+
export declare function createLoadedWorkflow(config: WorkflowConfig): LoadedWorkflow;
|
|
118
|
+
/**
|
|
119
|
+
* Runtime type guard for WorkflowConfig
|
|
120
|
+
*
|
|
121
|
+
* @param value - Value to check
|
|
122
|
+
* @returns True if value conforms to WorkflowConfigSchema
|
|
123
|
+
*/
|
|
124
|
+
export declare function isWorkflowConfig(value: unknown): value is WorkflowConfig;
|
|
125
|
+
//# sourceMappingURL=workflow-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-config.d.ts","sourceRoot":"","sources":["../../src/validation-schemas/workflow-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;kBAoBtB,CAAC;AAEZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;kBAQtB,CAAC;AAEZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;kBAiBrB,CAAC;AAEZ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkCtB,CAAC;AAEZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,sBAAsB;IACtB,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAEhC,+CAA+C;IAC/C,QAAQ,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEhD,8CAA8C;IAC9C,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CAC/C;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,cAAc,CAgB3E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-validation @architect-config
|
|
4
|
+
* @architect-pattern WorkflowConfigSchema
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-used-by WorkflowLoader, ConfigurableWorkflows
|
|
7
|
+
*
|
|
8
|
+
* ## WorkflowConfigSchema - Workflow Configuration Validation
|
|
9
|
+
*
|
|
10
|
+
* Zod schemas for validating workflow configuration files that define
|
|
11
|
+
* status models, phase definitions, and artifact mappings.
|
|
12
|
+
*
|
|
13
|
+
* ### When to Use
|
|
14
|
+
*
|
|
15
|
+
* - When validating workflow configuration (inline defaults or custom files)
|
|
16
|
+
* - When validating custom workflow configurations
|
|
17
|
+
* - When creating new workflow definitions
|
|
18
|
+
*/
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
/**
|
|
21
|
+
* Status definition within a workflow
|
|
22
|
+
*
|
|
23
|
+
* Each status has a name, display emoji, and optional transition rules.
|
|
24
|
+
*/
|
|
25
|
+
export const WorkflowStatusSchema = z
|
|
26
|
+
.object({
|
|
27
|
+
/** Status identifier (e.g., "roadmap", "active", "completed") */
|
|
28
|
+
name: z.string().min(1),
|
|
29
|
+
/** Display emoji for this status */
|
|
30
|
+
emoji: z.string().min(1),
|
|
31
|
+
/** Human-readable label (optional, defaults to capitalized name) */
|
|
32
|
+
label: z.string().optional(),
|
|
33
|
+
/** Human-readable description of what this status means */
|
|
34
|
+
description: z.string().optional(),
|
|
35
|
+
/** Status IDs this status can transition to (for validation) */
|
|
36
|
+
transitionsTo: z.array(z.string()).optional(),
|
|
37
|
+
/** Whether this is a terminal status (no further transitions) */
|
|
38
|
+
terminal: z.boolean().optional(),
|
|
39
|
+
})
|
|
40
|
+
.strict();
|
|
41
|
+
/**
|
|
42
|
+
* Artifact mapping for a workflow phase
|
|
43
|
+
*
|
|
44
|
+
* Defines which artifacts are read/written during each phase.
|
|
45
|
+
*/
|
|
46
|
+
export const PhaseArtifactsSchema = z
|
|
47
|
+
.object({
|
|
48
|
+
/** Artifacts read during this phase */
|
|
49
|
+
reads: z.array(z.string()).optional(),
|
|
50
|
+
/** Artifacts produced during this phase */
|
|
51
|
+
writes: z.array(z.string()).optional(),
|
|
52
|
+
})
|
|
53
|
+
.strict();
|
|
54
|
+
/**
|
|
55
|
+
* Phase definition within a workflow
|
|
56
|
+
*
|
|
57
|
+
* Phases are the stages of work delivery (e.g., Inception, Construction).
|
|
58
|
+
*/
|
|
59
|
+
export const WorkflowPhaseSchema = z
|
|
60
|
+
.object({
|
|
61
|
+
/** Phase name (e.g., "Inception", "Construction") */
|
|
62
|
+
name: z.string().min(1),
|
|
63
|
+
/** Human-readable description of this phase */
|
|
64
|
+
description: z.string().optional(),
|
|
65
|
+
/** Status assigned when entering this phase */
|
|
66
|
+
statusOnEntry: z.string().optional(),
|
|
67
|
+
/** Artifact read/write mappings for this phase */
|
|
68
|
+
artifacts: PhaseArtifactsSchema.optional(),
|
|
69
|
+
/** Order index for sorting phases (lower = earlier) */
|
|
70
|
+
order: z.number().int().nonnegative().optional(),
|
|
71
|
+
})
|
|
72
|
+
.strict();
|
|
73
|
+
/**
|
|
74
|
+
* Complete workflow configuration
|
|
75
|
+
*
|
|
76
|
+
* Defines a delivery workflow with statuses, phases, and metadata.
|
|
77
|
+
* Multiple workflows can be defined (e.g., 6-phase-standard, 3-phase-minimal).
|
|
78
|
+
*/
|
|
79
|
+
export const WorkflowConfigSchema = z
|
|
80
|
+
.object({
|
|
81
|
+
/** Workflow name (e.g., "6-phase-standard") */
|
|
82
|
+
name: z.string().min(1),
|
|
83
|
+
/** Semantic version for config compatibility */
|
|
84
|
+
version: z.string().regex(/^\d+\.\d+\.\d+$/, 'Version must be semver format'),
|
|
85
|
+
/** Human-readable description */
|
|
86
|
+
description: z.string().optional(),
|
|
87
|
+
/** Status definitions for this workflow */
|
|
88
|
+
statuses: z.array(WorkflowStatusSchema).min(1),
|
|
89
|
+
/** Phase definitions for this workflow */
|
|
90
|
+
phases: z.array(WorkflowPhaseSchema).min(1),
|
|
91
|
+
/** Default status for new items */
|
|
92
|
+
defaultStatus: z.string().optional(),
|
|
93
|
+
/** Metadata for this workflow config */
|
|
94
|
+
metadata: z
|
|
95
|
+
.object({
|
|
96
|
+
/** Author or team who created this workflow */
|
|
97
|
+
author: z.string().optional(),
|
|
98
|
+
/** When this config was last updated */
|
|
99
|
+
lastUpdated: z.string().optional(),
|
|
100
|
+
/** Tags for categorization */
|
|
101
|
+
tags: z.array(z.string()).optional(),
|
|
102
|
+
})
|
|
103
|
+
.optional(),
|
|
104
|
+
})
|
|
105
|
+
.strict();
|
|
106
|
+
/**
|
|
107
|
+
* Create a LoadedWorkflow from a WorkflowConfig
|
|
108
|
+
*
|
|
109
|
+
* Builds lookup maps for efficient status/phase resolution.
|
|
110
|
+
*
|
|
111
|
+
* @param config - Validated workflow configuration
|
|
112
|
+
* @returns LoadedWorkflow with lookup maps
|
|
113
|
+
*/
|
|
114
|
+
export function createLoadedWorkflow(config) {
|
|
115
|
+
const statusMap = new Map();
|
|
116
|
+
for (const status of config.statuses) {
|
|
117
|
+
statusMap.set(status.name.toLowerCase(), status);
|
|
118
|
+
}
|
|
119
|
+
const phaseMap = new Map();
|
|
120
|
+
for (const phase of config.phases) {
|
|
121
|
+
phaseMap.set(phase.name.toLowerCase(), phase);
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
config,
|
|
125
|
+
statusMap,
|
|
126
|
+
phaseMap,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Runtime type guard for WorkflowConfig
|
|
131
|
+
*
|
|
132
|
+
* @param value - Value to check
|
|
133
|
+
* @returns True if value conforms to WorkflowConfigSchema
|
|
134
|
+
*/
|
|
135
|
+
export function isWorkflowConfig(value) {
|
|
136
|
+
return WorkflowConfigSchema.safeParse(value).success;
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=workflow-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-config.js","sourceRoot":"","sources":["../../src/validation-schemas/workflow-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,iEAAiE;IACjE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvB,oCAAoC;IACpC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAExB,oEAAoE;IACpE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE5B,2DAA2D;IAC3D,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,gEAAgE;IAChE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAE7C,iEAAiE;IACjE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACjC,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ;;;;GAIG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,uCAAuC;IACvC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;IAErC,2CAA2C;IAC3C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;CACvC,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KACjC,MAAM,CAAC;IACN,qDAAqD;IACrD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvB,+CAA+C;IAC/C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,+CAA+C;IAC/C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEpC,kDAAkD;IAClD,SAAS,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAE1C,uDAAuD;IACvD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CACjD,CAAC;KACD,MAAM,EAAE,CAAC;AAIZ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,MAAM,CAAC;IACN,+CAA+C;IAC/C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvB,gDAAgD;IAChD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;IAE7E,iCAAiC;IACjC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,2CAA2C;IAC3C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE9C,0CAA0C;IAC1C,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3C,mCAAmC;IACnC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEpC,wCAAwC;IACxC,QAAQ,EAAE,CAAC;SACR,MAAM,CAAC;QACN,+CAA+C;QAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAE7B,wCAAwC;QACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAElC,8BAA8B;QAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;KACrC,CAAC;SACD,QAAQ,EAAE;CACd,CAAC;KACD,MAAM,EAAE,CAAC;AAoBZ;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;IAClD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,OAAO;QACL,MAAM;QACN,SAAS;QACT,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,OAAO,oBAAoB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACvD,CAAC"}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
# Annotation Guide
|
|
2
|
+
|
|
3
|
+
> **Deprecated:** This document is superseded by the auto-generated [Annotation Reference Guide](../docs-live/reference/ANNOTATION-REFERENCE.md) which includes all content from this guide plus auto-updated tag tables. This file is preserved for reference only.
|
|
4
|
+
|
|
5
|
+
How to annotate TypeScript and Gherkin files for pattern extraction, documentation generation, and architecture diagrams.
|
|
6
|
+
|
|
7
|
+
For the **complete tag reference** (all 50+ tags with formats, values, and examples), generate the taxonomy: `pnpm docs:taxonomy` or see [TAXONOMY.md](./TAXONOMY.md) for the taxonomy architecture.
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Getting Started
|
|
12
|
+
|
|
13
|
+
### File-Level Opt-In
|
|
14
|
+
|
|
15
|
+
Every file that participates in the annotation system must have a `@architect` opt-in marker. Files without this marker are invisible to the scanner.
|
|
16
|
+
|
|
17
|
+
**TypeScript** — file-level JSDoc block:
|
|
18
|
+
|
|
19
|
+
```typescript
|
|
20
|
+
/**
|
|
21
|
+
* @architect
|
|
22
|
+
* @architect-pattern MyPattern
|
|
23
|
+
* @architect-status roadmap
|
|
24
|
+
* @architect-uses EventStore, CommandBus
|
|
25
|
+
*
|
|
26
|
+
* ## My Pattern - Description
|
|
27
|
+
*
|
|
28
|
+
* Paragraph describing the pattern's purpose.
|
|
29
|
+
*/
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
**Gherkin** — file-level tags before `Feature:`:
|
|
33
|
+
|
|
34
|
+
```gherkin
|
|
35
|
+
@architect
|
|
36
|
+
@architect-pattern:MyPattern
|
|
37
|
+
@architect-status:roadmap
|
|
38
|
+
@architect-phase:14
|
|
39
|
+
@architect-depends-on:EventStore,CommandBus
|
|
40
|
+
Feature: My Pattern
|
|
41
|
+
|
|
42
|
+
**Problem:**
|
|
43
|
+
Description of the problem.
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Tag Prefix by Preset
|
|
47
|
+
|
|
48
|
+
The tag prefix is configurable via presets. All examples in this guide use the default `@architect-` prefix.
|
|
49
|
+
|
|
50
|
+
| Preset | Prefix | Categories | Use Case |
|
|
51
|
+
| ------------------------- | ------------- | ---------- | ---------------------------- |
|
|
52
|
+
| `libar-generic` (default) | `@architect-` | 3 | Simple projects |
|
|
53
|
+
| `ddd-es-cqrs` | `@architect-` | 21 | DDD/Event Sourcing monorepos |
|
|
54
|
+
|
|
55
|
+
See [CONFIGURATION.md](./CONFIGURATION.md) for preset details and custom configuration.
|
|
56
|
+
|
|
57
|
+
### Dual-Source Ownership
|
|
58
|
+
|
|
59
|
+
Annotations are split between TypeScript and Gherkin by domain:
|
|
60
|
+
|
|
61
|
+
| Source | Owns | Example Tags |
|
|
62
|
+
| -------------- | ----------------------------------------------- | -------------------------------------------- |
|
|
63
|
+
| **TypeScript** | Implementation: runtime deps, category, shapes | `uses`, `used-by`, `extract-shapes`, `shape` |
|
|
64
|
+
| **Gherkin** | Planning: status, phase, timeline, dependencies | `status`, `phase`, `depends-on`, `quarter` |
|
|
65
|
+
|
|
66
|
+
Anti-pattern validation enforces these boundaries — see [VALIDATION.md](./VALIDATION.md).
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Shape Extraction
|
|
71
|
+
|
|
72
|
+
Shape extraction pulls TypeScript type definitions (interfaces, type aliases, enums, functions, consts) into generated documentation. There are three modes:
|
|
73
|
+
|
|
74
|
+
### Mode 1: File-Level Explicit Names
|
|
75
|
+
|
|
76
|
+
List specific declaration names in the file-level JSDoc:
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
/**
|
|
80
|
+
* @architect
|
|
81
|
+
* @architect-extract-shapes MasterDatasetSchema, StatusGroupsSchema, RelationshipEntry
|
|
82
|
+
*/
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Names appear in the generated output in the order listed.
|
|
86
|
+
|
|
87
|
+
### Mode 2: File-Level Wildcard
|
|
88
|
+
|
|
89
|
+
Extract all exported declarations automatically:
|
|
90
|
+
|
|
91
|
+
```typescript
|
|
92
|
+
/**
|
|
93
|
+
* @architect
|
|
94
|
+
* @architect-extract-shapes *
|
|
95
|
+
*/
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Wildcard must be the sole value — `*, Foo` is invalid.
|
|
99
|
+
|
|
100
|
+
### Mode 3: Declaration-Level Tagging
|
|
101
|
+
|
|
102
|
+
Tag individual declarations with `@architect-shape`, optionally with a group name:
|
|
103
|
+
|
|
104
|
+
```typescript
|
|
105
|
+
/** @architect-shape api-types */
|
|
106
|
+
export interface CommandInput {
|
|
107
|
+
readonly aggregateId: string;
|
|
108
|
+
readonly payload: unknown;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/** @architect-shape api-types */
|
|
112
|
+
export type CommandResult = Result<void, CommandError>;
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
Declaration-level shapes work on both exported and non-exported declarations. The optional group name (`api-types`) enables filtering in diagram scopes and product area documents via `@architect-include`.
|
|
116
|
+
|
|
117
|
+
### Critical Gotcha: Zod Schemas
|
|
118
|
+
|
|
119
|
+
For Zod files, extract the **schema constant** (with `Schema` suffix), not the inferred type alias:
|
|
120
|
+
|
|
121
|
+
| Wrong (type alias) | Correct (schema constant) |
|
|
122
|
+
| ---------------------------------------- | ----------------------------------------- |
|
|
123
|
+
| `@extract-shapes MasterDataset` | `@extract-shapes MasterDatasetSchema` |
|
|
124
|
+
| Shows: `z.infer<typeof ...>` (unhelpful) | Shows: `z.object({...})` (full structure) |
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Annotation Patterns by File Type
|
|
129
|
+
|
|
130
|
+
### Zod Schema Files
|
|
131
|
+
|
|
132
|
+
```typescript
|
|
133
|
+
/**
|
|
134
|
+
* @architect
|
|
135
|
+
* @architect-pattern MasterDataset
|
|
136
|
+
* @architect-status completed
|
|
137
|
+
* @architect-extract-shapes MasterDatasetSchema, StatusGroupsSchema, PhaseGroupSchema
|
|
138
|
+
*/
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Interface / Type Files
|
|
142
|
+
|
|
143
|
+
```typescript
|
|
144
|
+
/**
|
|
145
|
+
* @architect
|
|
146
|
+
* @architect-pattern DocumentGenerator
|
|
147
|
+
* @architect-status completed
|
|
148
|
+
* @architect-extract-shapes DocumentGenerator, GeneratorContext, GeneratorOutput
|
|
149
|
+
*/
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Function / Service Files
|
|
153
|
+
|
|
154
|
+
```typescript
|
|
155
|
+
/**
|
|
156
|
+
* @architect
|
|
157
|
+
* @architect-pattern TransformDataset
|
|
158
|
+
* @architect-status completed
|
|
159
|
+
* @architect-arch-context generator
|
|
160
|
+
* @architect-arch-layer application
|
|
161
|
+
* @architect-extract-shapes transformToMasterDataset, RuntimeMasterDataset
|
|
162
|
+
*/
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Gherkin Feature Files
|
|
166
|
+
|
|
167
|
+
```gherkin
|
|
168
|
+
@architect
|
|
169
|
+
@architect-pattern:ProcessGuardLinter
|
|
170
|
+
@architect-status:roadmap
|
|
171
|
+
@architect-phase:99
|
|
172
|
+
@architect-depends-on:StateMachine,ValidationRules
|
|
173
|
+
Feature: Process Guard Linter
|
|
174
|
+
|
|
175
|
+
Background: Deliverables
|
|
176
|
+
Given the following deliverables:
|
|
177
|
+
| Deliverable | Status | Location |
|
|
178
|
+
| State derivation | Pending | src/lint/derive.ts |
|
|
179
|
+
|
|
180
|
+
Rule: Completed specs require unlock reason
|
|
181
|
+
|
|
182
|
+
**Invariant:** A completed spec cannot be modified without explicit unlock.
|
|
183
|
+
**Rationale:** Prevents accidental regression of validated work.
|
|
184
|
+
|
|
185
|
+
@acceptance-criteria @happy-path
|
|
186
|
+
Scenario: Reject modification without unlock
|
|
187
|
+
Given a spec with status "completed"
|
|
188
|
+
When I modify a deliverable
|
|
189
|
+
Then validation fails with "completed-protection"
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## Tag Groups Quick Reference
|
|
195
|
+
|
|
196
|
+
> For the complete tag reference with all values, see the [generated Taxonomy Reference](../docs-live/TAXONOMY.md).
|
|
197
|
+
|
|
198
|
+
Tags are organized into 12 functional groups. This table shows representative tags per group — for the **complete reference** with all formats, values, and examples, run `pnpm docs:taxonomy`.
|
|
199
|
+
|
|
200
|
+
| Group | Tags (representative) | Format Types |
|
|
201
|
+
| ---------------- | ---------------------------------------------------- | ------------------------- |
|
|
202
|
+
| **Core** | `pattern`, `status`, `core`, `brief` | value, enum, flag |
|
|
203
|
+
| **Relationship** | `uses`, `used-by`, `implements`, `depends-on` | csv, value |
|
|
204
|
+
| **Process** | `phase`, `quarter`, `effort`, `team`, `priority` | number, value, enum |
|
|
205
|
+
| **PRD** | `product-area`, `user-role`, `business-value` | value |
|
|
206
|
+
| **ADR** | `adr`, `adr-status`, `adr-category`, `adr-theme` | value, enum |
|
|
207
|
+
| **Hierarchy** | `level`, `parent`, `title` | enum, value, quoted-value |
|
|
208
|
+
| **Traceability** | `executable-specs`, `roadmap-spec`, `behavior-file` | csv, value |
|
|
209
|
+
| **Discovery** | `discovered-gap`, `discovered-improvement` | value (repeatable) |
|
|
210
|
+
| **Architecture** | `arch-role`, `arch-context`, `arch-layer`, `include` | enum, value, csv |
|
|
211
|
+
| **Extraction** | `extract-shapes`, `shape` | csv, value |
|
|
212
|
+
| **Stub** | `target`, `since` | value |
|
|
213
|
+
| **Convention** | `convention` | csv (enum values) |
|
|
214
|
+
|
|
215
|
+
### Format Types
|
|
216
|
+
|
|
217
|
+
| Format | Syntax Example | Parsing |
|
|
218
|
+
| -------------- | ----------------------------- | ------------------------------ |
|
|
219
|
+
| `flag` | `@architect-core` | Boolean presence (no value) |
|
|
220
|
+
| `value` | `@architect-pattern Foo` | Simple string |
|
|
221
|
+
| `enum` | `@architect-status roadmap` | Constrained to predefined list |
|
|
222
|
+
| `csv` | `@architect-uses A, B, C` | Comma-separated values |
|
|
223
|
+
| `number` | `@architect-phase 14` | Numeric value |
|
|
224
|
+
| `quoted-value` | `@architect-title:'My Title'` | Preserves spaces in value |
|
|
225
|
+
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
## Verification
|
|
229
|
+
|
|
230
|
+
### CLI Commands
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
# Tag usage inventory (counts per tag and value)
|
|
234
|
+
pnpm architect:query -- tags
|
|
235
|
+
|
|
236
|
+
# Find files missing @architect opt-in marker
|
|
237
|
+
pnpm architect:query -- unannotated --path src/types
|
|
238
|
+
|
|
239
|
+
# File inventory by type (TS, Gherkin, Stubs)
|
|
240
|
+
pnpm architect:query -- sources
|
|
241
|
+
|
|
242
|
+
# Full pattern JSON including extractedShapes
|
|
243
|
+
pnpm architect:query -- query getPattern MyPattern
|
|
244
|
+
|
|
245
|
+
# Generate complete tag reference
|
|
246
|
+
pnpm docs:taxonomy
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### Common Issues
|
|
250
|
+
|
|
251
|
+
| Symptom | Cause | Fix |
|
|
252
|
+
| ------------------------------- | ---------------------------------- | ----------------------------------------------- |
|
|
253
|
+
| Pattern not in scanner output | Missing `@architect` opt-in marker | Add file-level `@architect` JSDoc/tag |
|
|
254
|
+
| Shape shows `z.infer<>` wrapper | Extracted type alias, not schema | Use schema constant name (e.g., `FooSchema`) |
|
|
255
|
+
| Shape not in product area doc | Missing `@architect-product-area` | Add product-area tag to file-level annotation |
|
|
256
|
+
| Declaration-level shape missing | No `@architect-shape` on decl | Add `@architect-shape` JSDoc to the declaration |
|
|
257
|
+
| Tag value rejected | Wrong format or invalid enum value | Check format type in taxonomy reference |
|
|
258
|
+
| Anti-pattern validation error | Tag on wrong source type | Move tag to correct source (TS vs Gherkin) |
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## Related Documentation
|
|
263
|
+
|
|
264
|
+
| Topic | Document |
|
|
265
|
+
| ------------------------- | ---------------------------------------------- |
|
|
266
|
+
| Taxonomy architecture | [TAXONOMY.md](./TAXONOMY.md) |
|
|
267
|
+
| Presets and configuration | [CONFIGURATION.md](./CONFIGURATION.md) |
|
|
268
|
+
| Pipeline and codecs | [ARCHITECTURE.md](./ARCHITECTURE.md) |
|
|
269
|
+
| Gherkin writing patterns | [GHERKIN-PATTERNS.md](./GHERKIN-PATTERNS.md) |
|
|
270
|
+
| Anti-pattern validation | [VALIDATION.md](./VALIDATION.md) |
|
|
271
|
+
| Product area enrichment | [CLAUDE.md — Product Area Guide](../CLAUDE.md) |
|