@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,239 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-validation
|
|
4
|
+
* @architect-pattern DocDirectiveSchema
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-implements MvpWorkflowImplementation
|
|
7
|
+
* @architect-used-by DocExtractor, ExtractedPatternSchema
|
|
8
|
+
*
|
|
9
|
+
* ## DocDirectiveSchema - Parsed JSDoc Directive Validation
|
|
10
|
+
*
|
|
11
|
+
* Zod schemas for validating parsed @architect-* directives from JSDoc comments.
|
|
12
|
+
* Enforces tag format, position validity, and metadata extraction.
|
|
13
|
+
*
|
|
14
|
+
* ### When to Use
|
|
15
|
+
*
|
|
16
|
+
* - Use when parsing JSDoc comments for @architect-* tags
|
|
17
|
+
* - Use when validating directive structure at boundaries
|
|
18
|
+
*/
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
import { ACCEPTED_STATUS_VALUES, PROCESS_STATUS_VALUES, } from '../taxonomy/index.js';
|
|
21
|
+
import { asDirectiveTag } from '../types/branded.js';
|
|
22
|
+
import { CLAUDE_SECTION_VALUES } from '../taxonomy/claude-section-values.js';
|
|
23
|
+
/**
|
|
24
|
+
* Position information for a directive in source code
|
|
25
|
+
*/
|
|
26
|
+
export const PositionSchema = z
|
|
27
|
+
.object({
|
|
28
|
+
/** Starting line number (1-indexed) */
|
|
29
|
+
startLine: z.number().int().positive('Line numbers must be positive'),
|
|
30
|
+
/** Ending line number (1-indexed) */
|
|
31
|
+
endLine: z.number().int().positive('Line numbers must be positive'),
|
|
32
|
+
})
|
|
33
|
+
.strict()
|
|
34
|
+
.refine((pos) => pos.endLine >= pos.startLine, {
|
|
35
|
+
message: 'End line must be >= start line',
|
|
36
|
+
});
|
|
37
|
+
/**
|
|
38
|
+
* Creates a DirectiveTag schema for a given tag prefix.
|
|
39
|
+
* This factory enables projects to use custom prefixes (e.g., "@acme-" instead of "@architect-").
|
|
40
|
+
*
|
|
41
|
+
* @param tagPrefix - The tag prefix to validate against (e.g., "@acme-" or "@architect-")
|
|
42
|
+
* @returns Zod schema that validates and transforms tags with the given prefix
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* // Custom prefix
|
|
47
|
+
* const customSchema = createDirectiveTagSchema("@acme-");
|
|
48
|
+
* customSchema.parse("@acme-pattern"); // Valid
|
|
49
|
+
*
|
|
50
|
+
* // Default prefix
|
|
51
|
+
* const defaultSchema = createDirectiveTagSchema("@architect-");
|
|
52
|
+
* defaultSchema.parse("@architect-status"); // Valid
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
// eslint-disable-next-line @typescript-eslint/explicit-function-return-type
|
|
56
|
+
export function createDirectiveTagSchema(tagPrefix) {
|
|
57
|
+
return z
|
|
58
|
+
.string()
|
|
59
|
+
.min(1, 'Tag cannot be empty')
|
|
60
|
+
.refine((tag) => tag.startsWith(tagPrefix), {
|
|
61
|
+
message: `Tags must start with ${tagPrefix}`,
|
|
62
|
+
})
|
|
63
|
+
.transform((tag) => asDirectiveTag(tag));
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Directive tag validation (default prefix)
|
|
67
|
+
* Must start with @architect-
|
|
68
|
+
*
|
|
69
|
+
* For custom prefixes, use createDirectiveTagSchema().
|
|
70
|
+
*/
|
|
71
|
+
const DirectiveTagSchema = createDirectiveTagSchema('@architect-');
|
|
72
|
+
/**
|
|
73
|
+
* Default status values for pattern implementation state
|
|
74
|
+
*
|
|
75
|
+
* Uses the single source of truth from taxonomy module (PDR-005 FSM).
|
|
76
|
+
* For registry-based status validation, use createPatternStatusSchema().
|
|
77
|
+
*
|
|
78
|
+
* @see src/taxonomy/status-values.ts
|
|
79
|
+
*/
|
|
80
|
+
export const DefaultPatternStatusSchema = z.enum(PROCESS_STATUS_VALUES);
|
|
81
|
+
/**
|
|
82
|
+
* Status values accepted for directive validation
|
|
83
|
+
*
|
|
84
|
+
* @see src/taxonomy/status-values.ts
|
|
85
|
+
*/
|
|
86
|
+
export const AcceptedPatternStatusSchema = z.enum(ACCEPTED_STATUS_VALUES);
|
|
87
|
+
/**
|
|
88
|
+
* Pattern status schema for directive validation
|
|
89
|
+
*
|
|
90
|
+
* Accepts canonical PDR-005 FSM states only.
|
|
91
|
+
*/
|
|
92
|
+
export const PatternStatusSchema = z.enum(PROCESS_STATUS_VALUES);
|
|
93
|
+
/**
|
|
94
|
+
* Create pattern status schema from tag registry
|
|
95
|
+
*
|
|
96
|
+
* Builds a Zod enum schema using status values defined in the registry's
|
|
97
|
+
* metadata tags. Falls back to default schema if "status" tag not found in registry.
|
|
98
|
+
*
|
|
99
|
+
* @param registry - Tag registry containing metadata tag definitions
|
|
100
|
+
* @returns Zod enum schema for pattern status validation
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* ```typescript
|
|
104
|
+
* const config = await loadConfig();
|
|
105
|
+
* const statusSchema = createPatternStatusSchema(config.tagRegistry);
|
|
106
|
+
* const result = statusSchema.safeParse("completed"); // Validates against registry values
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
109
|
+
export function createPatternStatusSchema(registry) {
|
|
110
|
+
const statusTag = registry.metadataTags.find((t) => t.tag === 'status');
|
|
111
|
+
if (statusTag?.values && statusTag.values.length > 0) {
|
|
112
|
+
// Zod enum requires at least one value, and the type is [string, ...string[]]
|
|
113
|
+
const [first, ...rest] = statusTag.values;
|
|
114
|
+
if (first) {
|
|
115
|
+
return z.enum([first, ...rest]);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
// Fallback to default if not found or invalid
|
|
119
|
+
return DefaultPatternStatusSchema;
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Parsed @architect-* directive from JSDoc comment
|
|
123
|
+
*
|
|
124
|
+
* Schema enforces:
|
|
125
|
+
* - At least one tag
|
|
126
|
+
* - Valid position with endLine >= startLine
|
|
127
|
+
* - Strict mode to prevent extra fields
|
|
128
|
+
*
|
|
129
|
+
* Description defaults to empty string to allow tag-only directives:
|
|
130
|
+
* ```typescript
|
|
131
|
+
* /**
|
|
132
|
+
* * @architect-core
|
|
133
|
+
* *\/
|
|
134
|
+
* export function myFunction() {}
|
|
135
|
+
* ```
|
|
136
|
+
*/
|
|
137
|
+
export const DocDirectiveSchema = z
|
|
138
|
+
.object({
|
|
139
|
+
/** Tags found in comment (e.g., ['@architect-core', '@architect-types']). Empty allowed for Gherkin-sourced patterns. */
|
|
140
|
+
tags: z.array(DirectiveTagSchema).readonly(),
|
|
141
|
+
/** Full description text from JSDoc (defaults to empty for tag-only directives) */
|
|
142
|
+
description: z.string().default(''),
|
|
143
|
+
/** Examples found in JSDoc @example tags */
|
|
144
|
+
examples: z.array(z.string()).readonly().default([]),
|
|
145
|
+
/** Position in source file */
|
|
146
|
+
position: PositionSchema,
|
|
147
|
+
/** Explicit pattern name from @architect-pattern tag */
|
|
148
|
+
patternName: z.string().optional(),
|
|
149
|
+
/** Implementation status from @architect-status tag */
|
|
150
|
+
status: PatternStatusSchema.optional(),
|
|
151
|
+
/** Whether this is a core/essential pattern from @architect-core tag */
|
|
152
|
+
isCore: z.boolean().optional(),
|
|
153
|
+
/** Use cases this pattern applies to from @architect-usecase tags */
|
|
154
|
+
useCases: z.array(z.string()).readonly().optional(),
|
|
155
|
+
/** "When to use" bullet points extracted from description (### When to Use or **When to use:**) */
|
|
156
|
+
whenToUse: z.array(z.string()).readonly().optional(),
|
|
157
|
+
/** Patterns this pattern uses (from @architect-uses tag) */
|
|
158
|
+
uses: z.array(z.string()).readonly().optional(),
|
|
159
|
+
/** Patterns that use this pattern (from @architect-used-by tag) */
|
|
160
|
+
usedBy: z.array(z.string()).readonly().optional(),
|
|
161
|
+
/** Roadmap phase number (from @architect-phase tag) */
|
|
162
|
+
phase: z.number().int().positive().optional(),
|
|
163
|
+
/** Path to pattern brief markdown file (from @architect-brief tag) */
|
|
164
|
+
brief: z.string().optional(),
|
|
165
|
+
/** Patterns this pattern depends on for roadmap planning (from @architect-depends-on tag) */
|
|
166
|
+
dependsOn: z.array(z.string()).readonly().optional(),
|
|
167
|
+
/** Patterns this pattern enables/unlocks (from @architect-enables tag) */
|
|
168
|
+
enables: z.array(z.string()).readonly().optional(),
|
|
169
|
+
/** Patterns this code realizes (from @architect-implements tag) */
|
|
170
|
+
implements: z.array(z.string()).readonly().optional(),
|
|
171
|
+
/** Base pattern this extends (from @architect-extends tag) */
|
|
172
|
+
extends: z.string().optional(),
|
|
173
|
+
/** Related patterns for cross-reference without dependency (from @architect-see-also tag) */
|
|
174
|
+
seeAlso: z.array(z.string()).readonly().optional(),
|
|
175
|
+
/** File paths to implementation APIs (from @architect-api-ref tag) */
|
|
176
|
+
apiRef: z.array(z.string()).readonly().optional(),
|
|
177
|
+
/** Delivery quarter for timeline workflow (from @architect-quarter tag) */
|
|
178
|
+
quarter: z.string().optional(),
|
|
179
|
+
/** Completion date for timeline workflow (from @architect-completed tag) */
|
|
180
|
+
completed: z.string().optional(),
|
|
181
|
+
/** Effort estimate for timeline workflow (from @architect-effort tag) */
|
|
182
|
+
effort: z.string().optional(),
|
|
183
|
+
/** Actual effort logged after implementation (from @architect-effort-actual tag) */
|
|
184
|
+
effortActual: z.string().optional(),
|
|
185
|
+
/** Responsible team for process workflow (from @architect-team tag) */
|
|
186
|
+
team: z.string().optional(),
|
|
187
|
+
/** Workflow/discipline for process workflow (from @architect-workflow tag) */
|
|
188
|
+
workflow: z.string().optional(),
|
|
189
|
+
/** Risk level for process workflow (from @architect-risk tag) */
|
|
190
|
+
risk: z.string().optional(),
|
|
191
|
+
/** Priority level for process workflow (from @architect-priority tag) */
|
|
192
|
+
priority: z.string().optional(),
|
|
193
|
+
// Design session stub metadata (from @architect-target, @architect-since tags)
|
|
194
|
+
/** Target implementation path for stub files (from @architect-target tag) */
|
|
195
|
+
target: z.string().optional(),
|
|
196
|
+
/** Design session that created this pattern (from @architect-since tag) */
|
|
197
|
+
since: z.string().optional(),
|
|
198
|
+
// Architecture diagram generation fields (from @architect-arch-* tags)
|
|
199
|
+
/** Architectural role for diagram generation (from @architect-arch-role tag) */
|
|
200
|
+
archRole: z.string().optional(),
|
|
201
|
+
/** Bounded context this component belongs to (from @architect-arch-context tag) */
|
|
202
|
+
archContext: z.string().optional(),
|
|
203
|
+
/** Architectural layer (from @architect-arch-layer tag) */
|
|
204
|
+
archLayer: z.string().optional(),
|
|
205
|
+
/** Cross-cutting document inclusion for content routing and diagram scoping (from @architect-include CSV tag) */
|
|
206
|
+
include: z.array(z.string().min(1)).readonly().optional(),
|
|
207
|
+
/** Product area for PRD grouping (from @architect-product-area tag) */
|
|
208
|
+
productArea: z.string().optional(),
|
|
209
|
+
// Shape extraction fields
|
|
210
|
+
/** Shape names to extract from this file (from @architect-extract-shapes tag) */
|
|
211
|
+
extractShapes: z.array(z.string()).readonly().optional(),
|
|
212
|
+
/** Convention domains for reference document generation (from @architect-convention CSV tag) */
|
|
213
|
+
convention: z.array(z.string()).readonly().optional(),
|
|
214
|
+
// Claude module generation fields (from @architect-claude-* tags)
|
|
215
|
+
/** Module identifier for CLAUDE.md generation (from @architect-claude-module tag) */
|
|
216
|
+
claudeModule: z.string().optional(),
|
|
217
|
+
/** Target section directory in _claude-md/ (from @architect-claude-section tag) */
|
|
218
|
+
claudeSection: z.enum(CLAUDE_SECTION_VALUES).optional(),
|
|
219
|
+
/** Variation filtering tags for modular-claude-md (from @architect-claude-tags CSV tag) */
|
|
220
|
+
claudeTags: z.array(z.string()).readonly().optional(),
|
|
221
|
+
})
|
|
222
|
+
.strict();
|
|
223
|
+
/**
|
|
224
|
+
* Runtime type guard for DocDirective
|
|
225
|
+
*
|
|
226
|
+
* @param value - Value to check
|
|
227
|
+
* @returns True if value conforms to DocDirective schema
|
|
228
|
+
*
|
|
229
|
+
* @example
|
|
230
|
+
* ```typescript
|
|
231
|
+
* if (isDocDirective(parsed)) {
|
|
232
|
+
* console.log(parsed.tags); // Type-safe access
|
|
233
|
+
* }
|
|
234
|
+
* ```
|
|
235
|
+
*/
|
|
236
|
+
export function isDocDirective(value) {
|
|
237
|
+
return DocDirectiveSchema.safeParse(value).success;
|
|
238
|
+
}
|
|
239
|
+
//# sourceMappingURL=doc-directive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doc-directive.js","sourceRoot":"","sources":["../../src/validation-schemas/doc-directive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GAEtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAE7E;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,uCAAuC;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;IAErE,qCAAqC;IACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;CACpE,CAAC;KACD,MAAM,EAAE;KACR,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,SAAS,EAAE;IAC7C,OAAO,EAAE,gCAAgC;CAC1C,CAAC,CAAC;AAIL;;;;;;;;;;;;;;;;;GAiBG;AACH,4EAA4E;AAC5E,MAAM,UAAU,wBAAwB,CAAC,SAAiB;IACxD,OAAO,CAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,qBAAqB,CAAC;SAC7B,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;QAC1C,OAAO,EAAE,wBAAwB,SAAS,EAAE;KAC7C,CAAC;SACD,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;GAKG;AACH,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,aAAa,CAAC,CAAC;AAEnE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAExE;;;;GAIG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAE1E;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AAGjE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CAAC,QAAqB;IAC7D,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC;IAExE,IAAI,SAAS,EAAE,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrD,8EAA8E;QAC9E,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;QAC1C,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,MAAM,CAAC;IACN,yHAAyH;IACzH,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IAE5C,mFAAmF;IACnF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEnC,4CAA4C;IAC5C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAEpD,8BAA8B;IAC9B,QAAQ,EAAE,cAAc;IAExB,wDAAwD;IACxD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,uDAAuD;IACvD,MAAM,EAAE,mBAAmB,CAAC,QAAQ,EAAE;IAEtC,wEAAwE;IACxE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAE9B,qEAAqE;IACrE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEnD,mGAAmG;IACnG,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEpD,4DAA4D;IAC5D,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAE/C,mEAAmE;IACnE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEjD,uDAAuD;IACvD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAE7C,sEAAsE;IACtE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE5B,6FAA6F;IAC7F,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEpD,0EAA0E;IAC1E,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAElD,mEAAmE;IACnE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAErD,8DAA8D;IAC9D,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,6FAA6F;IAC7F,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAElD,sEAAsE;IACtE,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEjD,2EAA2E;IAC3E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE9B,4EAA4E;IAC5E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,yEAAyE;IACzE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE7B,oFAAoF;IACpF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEnC,uEAAuE;IACvE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE3B,8EAA8E;IAC9E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/B,iEAAiE;IACjE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE3B,yEAAyE;IACzE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/B,+EAA+E;IAE/E,6EAA6E;IAC7E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE7B,2EAA2E;IAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE5B,uEAAuE;IAEvE,gFAAgF;IAChF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/B,mFAAmF;IACnF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,2DAA2D;IAC3D,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,iHAAiH;IACjH,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAEzD,uEAAuE;IACvE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAElC,0BAA0B;IAE1B,iFAAiF;IACjF,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAExD,gGAAgG;IAChG,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAErD,kEAAkE;IAElE,qFAAqF;IACrF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEnC,mFAAmF;IACnF,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE;IAEvD,2FAA2F;IAC3F,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACtD,CAAC;KACD,MAAM,EAAE,CAAC;AAUZ;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAO,kBAAkB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-validation
|
|
4
|
+
* @architect-pattern DualSourceSchemas
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-implements MvpWorkflowImplementation
|
|
7
|
+
* @architect-used-by DocExtractor, FeatureParser, CrossValidator
|
|
8
|
+
*
|
|
9
|
+
* ## DualSourceSchemas - Dual-Source Extraction Type Validation
|
|
10
|
+
*
|
|
11
|
+
* Zod schemas for dual-source extraction types.
|
|
12
|
+
*
|
|
13
|
+
* Following the project's schema-first pattern, all dual-source types
|
|
14
|
+
* are defined as Zod schemas with TypeScript types inferred from them.
|
|
15
|
+
*
|
|
16
|
+
* ### When to Use
|
|
17
|
+
*
|
|
18
|
+
* - When validating process metadata from Gherkin feature tags
|
|
19
|
+
* - When validating deliverables from Background tables
|
|
20
|
+
* - When performing cross-validation between code and feature files
|
|
21
|
+
*/
|
|
22
|
+
import { z } from 'zod';
|
|
23
|
+
import { type HierarchyLevel as TaxonomyHierarchyLevel, type ProcessStatusValue, type RiskLevel as TaxonomyRiskLevel } from '../taxonomy/index.js';
|
|
24
|
+
/**
|
|
25
|
+
* Process status values from Gherkin @architect-status tag
|
|
26
|
+
*
|
|
27
|
+
* Per PDR-005 MVP Workflow State Machine:
|
|
28
|
+
* - roadmap: Planned work, fully editable
|
|
29
|
+
* - active: In progress, scope-locked
|
|
30
|
+
* - completed: Done, hard-locked
|
|
31
|
+
* - deferred: On hold, fully editable
|
|
32
|
+
*
|
|
33
|
+
* @see architect/src/taxonomy/status-values.ts
|
|
34
|
+
*/
|
|
35
|
+
export declare const ProcessStatusSchema: z.ZodEnum<{
|
|
36
|
+
roadmap: "roadmap";
|
|
37
|
+
active: "active";
|
|
38
|
+
completed: "completed";
|
|
39
|
+
deferred: "deferred";
|
|
40
|
+
}>;
|
|
41
|
+
export type ProcessStatus = ProcessStatusValue;
|
|
42
|
+
/**
|
|
43
|
+
* Hierarchy level values from Gherkin @architect-level tag
|
|
44
|
+
*
|
|
45
|
+
* Three-level hierarchy for organizing work:
|
|
46
|
+
* - **epic**: Multi-quarter strategic initiatives
|
|
47
|
+
* - **phase**: Standard work units (2-5 days)
|
|
48
|
+
* - **task**: Fine-grained session-level work (1-4 hours)
|
|
49
|
+
*
|
|
50
|
+
* Default is "phase".
|
|
51
|
+
*
|
|
52
|
+
* @see architect/src/taxonomy/hierarchy-levels.ts
|
|
53
|
+
*/
|
|
54
|
+
export declare const HierarchyLevelSchema: z.ZodEnum<{
|
|
55
|
+
epic: "epic";
|
|
56
|
+
phase: "phase";
|
|
57
|
+
task: "task";
|
|
58
|
+
}>;
|
|
59
|
+
export type HierarchyLevel = TaxonomyHierarchyLevel;
|
|
60
|
+
/**
|
|
61
|
+
* Risk level values from Gherkin @architect-risk tag
|
|
62
|
+
*
|
|
63
|
+
* @see architect/src/taxonomy/risk-levels.ts
|
|
64
|
+
*/
|
|
65
|
+
export declare const RiskLevelSchema: z.ZodEnum<{
|
|
66
|
+
low: "low";
|
|
67
|
+
medium: "medium";
|
|
68
|
+
high: "high";
|
|
69
|
+
}>;
|
|
70
|
+
export type RiskLevel = TaxonomyRiskLevel;
|
|
71
|
+
/**
|
|
72
|
+
* Process metadata from Gherkin feature tags (@architect-*)
|
|
73
|
+
*
|
|
74
|
+
* Extracted from timeline feature files to provide temporal process data
|
|
75
|
+
* (quarter, effort, team, workflow) that complements the timeless pattern
|
|
76
|
+
* graph data from TypeScript code annotations.
|
|
77
|
+
*/
|
|
78
|
+
export declare const ProcessMetadataSchema: z.ZodObject<{
|
|
79
|
+
pattern: z.ZodString;
|
|
80
|
+
phase: z.ZodNumber;
|
|
81
|
+
status: z.ZodEnum<{
|
|
82
|
+
roadmap: "roadmap";
|
|
83
|
+
active: "active";
|
|
84
|
+
completed: "completed";
|
|
85
|
+
deferred: "deferred";
|
|
86
|
+
}>;
|
|
87
|
+
level: z.ZodDefault<z.ZodEnum<{
|
|
88
|
+
epic: "epic";
|
|
89
|
+
phase: "phase";
|
|
90
|
+
task: "task";
|
|
91
|
+
}>>;
|
|
92
|
+
parent: z.ZodOptional<z.ZodString>;
|
|
93
|
+
quarter: z.ZodOptional<z.ZodString>;
|
|
94
|
+
effort: z.ZodOptional<z.ZodString>;
|
|
95
|
+
team: z.ZodOptional<z.ZodString>;
|
|
96
|
+
workflow: z.ZodOptional<z.ZodString>;
|
|
97
|
+
completed: z.ZodOptional<z.ZodString>;
|
|
98
|
+
effortActual: z.ZodOptional<z.ZodString>;
|
|
99
|
+
risk: z.ZodOptional<z.ZodEnum<{
|
|
100
|
+
low: "low";
|
|
101
|
+
medium: "medium";
|
|
102
|
+
high: "high";
|
|
103
|
+
}>>;
|
|
104
|
+
brief: z.ZodOptional<z.ZodString>;
|
|
105
|
+
productArea: z.ZodOptional<z.ZodString>;
|
|
106
|
+
userRole: z.ZodOptional<z.ZodString>;
|
|
107
|
+
businessValue: z.ZodOptional<z.ZodString>;
|
|
108
|
+
}, z.core.$strict>;
|
|
109
|
+
export type ProcessMetadata = z.infer<typeof ProcessMetadataSchema>;
|
|
110
|
+
/**
|
|
111
|
+
* Deliverable from Gherkin Background table
|
|
112
|
+
*
|
|
113
|
+
* Parsed from Background section tables with format:
|
|
114
|
+
* | Deliverable | Status | Tests | Location |
|
|
115
|
+
*
|
|
116
|
+
* Optional columns for extended tracking:
|
|
117
|
+
* | Deliverable | Status | Tests | Location | Finding | Release |
|
|
118
|
+
*
|
|
119
|
+
* - **Finding**: Review traceability ID (e.g., "CODE-001")
|
|
120
|
+
* - **Release**: Semver version for changelog grouping (e.g., "v0.2.0")
|
|
121
|
+
*/
|
|
122
|
+
export declare const DeliverableSchema: z.ZodObject<{
|
|
123
|
+
name: z.ZodString;
|
|
124
|
+
status: z.ZodEnum<{
|
|
125
|
+
deferred: "deferred";
|
|
126
|
+
complete: "complete";
|
|
127
|
+
"in-progress": "in-progress";
|
|
128
|
+
pending: "pending";
|
|
129
|
+
superseded: "superseded";
|
|
130
|
+
"n/a": "n/a";
|
|
131
|
+
}>;
|
|
132
|
+
tests: z.ZodNumber;
|
|
133
|
+
location: z.ZodString;
|
|
134
|
+
finding: z.ZodOptional<z.ZodString>;
|
|
135
|
+
release: z.ZodOptional<z.ZodString>;
|
|
136
|
+
}, z.core.$strict>;
|
|
137
|
+
export type Deliverable = z.infer<typeof DeliverableSchema>;
|
|
138
|
+
/**
|
|
139
|
+
* Cross-validation error when code and feature don't match
|
|
140
|
+
*
|
|
141
|
+
* Reports misalignment between TypeScript code annotations and
|
|
142
|
+
* Gherkin feature tags (e.g., phase number mismatch).
|
|
143
|
+
*/
|
|
144
|
+
export declare const CrossValidationErrorSchema: z.ZodObject<{
|
|
145
|
+
codeName: z.ZodString;
|
|
146
|
+
featureName: z.ZodString;
|
|
147
|
+
codePhase: z.ZodOptional<z.ZodNumber>;
|
|
148
|
+
featurePhase: z.ZodNumber;
|
|
149
|
+
sources: z.ZodObject<{
|
|
150
|
+
code: z.ZodString;
|
|
151
|
+
feature: z.ZodString;
|
|
152
|
+
}, z.core.$strict>;
|
|
153
|
+
message: z.ZodString;
|
|
154
|
+
}, z.core.$strict>;
|
|
155
|
+
export type CrossValidationError = z.infer<typeof CrossValidationErrorSchema>;
|
|
156
|
+
/**
|
|
157
|
+
* Validation summary from dual-source consistency check
|
|
158
|
+
*
|
|
159
|
+
* Provides boolean validity flag and categorized errors/warnings.
|
|
160
|
+
*/
|
|
161
|
+
export declare const ValidationSummarySchema: z.ZodObject<{
|
|
162
|
+
isValid: z.ZodBoolean;
|
|
163
|
+
errors: z.ZodReadonly<z.ZodArray<z.ZodString>>;
|
|
164
|
+
warnings: z.ZodReadonly<z.ZodArray<z.ZodString>>;
|
|
165
|
+
}, z.core.$strict>;
|
|
166
|
+
export type ValidationSummary = z.infer<typeof ValidationSummarySchema>;
|
|
167
|
+
//# sourceMappingURL=dual-source.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dual-source.d.ts","sourceRoot":"","sources":["../../src/validation-schemas/dual-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAKL,KAAK,cAAc,IAAI,sBAAsB,EAC7C,KAAK,kBAAkB,EACvB,KAAK,SAAS,IAAI,iBAAiB,EACpC,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB;;;;;EAAgC,CAAC;AACjE,MAAM,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAE/C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,oBAAoB;;;;EAA2B,CAAC;AAC7D,MAAM,MAAM,cAAc,GAAG,sBAAsB,CAAC;AAEpD;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;EAAsB,CAAC;AACnD,MAAM,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAE1C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmCvB,CAAC;AAEZ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;kBAenB,CAAC;AAEZ,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;kBAoB5B,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;kBASzB,CAAC;AAEZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-validation
|
|
4
|
+
* @architect-pattern DualSourceSchemas
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-implements MvpWorkflowImplementation
|
|
7
|
+
* @architect-used-by DocExtractor, FeatureParser, CrossValidator
|
|
8
|
+
*
|
|
9
|
+
* ## DualSourceSchemas - Dual-Source Extraction Type Validation
|
|
10
|
+
*
|
|
11
|
+
* Zod schemas for dual-source extraction types.
|
|
12
|
+
*
|
|
13
|
+
* Following the project's schema-first pattern, all dual-source types
|
|
14
|
+
* are defined as Zod schemas with TypeScript types inferred from them.
|
|
15
|
+
*
|
|
16
|
+
* ### When to Use
|
|
17
|
+
*
|
|
18
|
+
* - When validating process metadata from Gherkin feature tags
|
|
19
|
+
* - When validating deliverables from Background tables
|
|
20
|
+
* - When performing cross-validation between code and feature files
|
|
21
|
+
*/
|
|
22
|
+
import { z } from 'zod';
|
|
23
|
+
import { DELIVERABLE_STATUS_VALUES, HIERARCHY_LEVELS, PROCESS_STATUS_VALUES, RISK_LEVELS, } from '../taxonomy/index.js';
|
|
24
|
+
/**
|
|
25
|
+
* Process status values from Gherkin @architect-status tag
|
|
26
|
+
*
|
|
27
|
+
* Per PDR-005 MVP Workflow State Machine:
|
|
28
|
+
* - roadmap: Planned work, fully editable
|
|
29
|
+
* - active: In progress, scope-locked
|
|
30
|
+
* - completed: Done, hard-locked
|
|
31
|
+
* - deferred: On hold, fully editable
|
|
32
|
+
*
|
|
33
|
+
* @see architect/src/taxonomy/status-values.ts
|
|
34
|
+
*/
|
|
35
|
+
export const ProcessStatusSchema = z.enum(PROCESS_STATUS_VALUES);
|
|
36
|
+
/**
|
|
37
|
+
* Hierarchy level values from Gherkin @architect-level tag
|
|
38
|
+
*
|
|
39
|
+
* Three-level hierarchy for organizing work:
|
|
40
|
+
* - **epic**: Multi-quarter strategic initiatives
|
|
41
|
+
* - **phase**: Standard work units (2-5 days)
|
|
42
|
+
* - **task**: Fine-grained session-level work (1-4 hours)
|
|
43
|
+
*
|
|
44
|
+
* Default is "phase".
|
|
45
|
+
*
|
|
46
|
+
* @see architect/src/taxonomy/hierarchy-levels.ts
|
|
47
|
+
*/
|
|
48
|
+
export const HierarchyLevelSchema = z.enum(HIERARCHY_LEVELS);
|
|
49
|
+
/**
|
|
50
|
+
* Risk level values from Gherkin @architect-risk tag
|
|
51
|
+
*
|
|
52
|
+
* @see architect/src/taxonomy/risk-levels.ts
|
|
53
|
+
*/
|
|
54
|
+
export const RiskLevelSchema = z.enum(RISK_LEVELS);
|
|
55
|
+
/**
|
|
56
|
+
* Process metadata from Gherkin feature tags (@architect-*)
|
|
57
|
+
*
|
|
58
|
+
* Extracted from timeline feature files to provide temporal process data
|
|
59
|
+
* (quarter, effort, team, workflow) that complements the timeless pattern
|
|
60
|
+
* graph data from TypeScript code annotations.
|
|
61
|
+
*/
|
|
62
|
+
export const ProcessMetadataSchema = z
|
|
63
|
+
.object({
|
|
64
|
+
/** Pattern name (must match code) */
|
|
65
|
+
pattern: z.string().min(1),
|
|
66
|
+
/** Phase number (must match code) */
|
|
67
|
+
phase: z.number().int().positive(),
|
|
68
|
+
/** Process status */
|
|
69
|
+
status: ProcessStatusSchema,
|
|
70
|
+
/** Hierarchy level (default: "phase") */
|
|
71
|
+
level: HierarchyLevelSchema.default('phase'),
|
|
72
|
+
/** Parent pattern name for hierarchy (from @architect-parent tag) */
|
|
73
|
+
parent: z.string().optional(),
|
|
74
|
+
/** Quarter assignment (e.g., "Q1-2025") */
|
|
75
|
+
quarter: z.string().optional(),
|
|
76
|
+
/** Effort estimate (e.g., "2w", "4d") */
|
|
77
|
+
effort: z.string().optional(),
|
|
78
|
+
/** Team assignment */
|
|
79
|
+
team: z.string().optional(),
|
|
80
|
+
/** Delivery workflow */
|
|
81
|
+
workflow: z.string().optional(),
|
|
82
|
+
/** Completion date (ISO format) */
|
|
83
|
+
completed: z.string().optional(),
|
|
84
|
+
/** Actual effort */
|
|
85
|
+
effortActual: z.string().optional(),
|
|
86
|
+
/** Risk level */
|
|
87
|
+
risk: RiskLevelSchema.optional(),
|
|
88
|
+
/** Pattern brief path */
|
|
89
|
+
brief: z.string().optional(),
|
|
90
|
+
/** Product area for PRD grouping */
|
|
91
|
+
productArea: z.string().optional(),
|
|
92
|
+
/** Target user persona */
|
|
93
|
+
userRole: z.string().optional(),
|
|
94
|
+
/** Business value statement */
|
|
95
|
+
businessValue: z.string().optional(),
|
|
96
|
+
})
|
|
97
|
+
.strict();
|
|
98
|
+
/**
|
|
99
|
+
* Deliverable from Gherkin Background table
|
|
100
|
+
*
|
|
101
|
+
* Parsed from Background section tables with format:
|
|
102
|
+
* | Deliverable | Status | Tests | Location |
|
|
103
|
+
*
|
|
104
|
+
* Optional columns for extended tracking:
|
|
105
|
+
* | Deliverable | Status | Tests | Location | Finding | Release |
|
|
106
|
+
*
|
|
107
|
+
* - **Finding**: Review traceability ID (e.g., "CODE-001")
|
|
108
|
+
* - **Release**: Semver version for changelog grouping (e.g., "v0.2.0")
|
|
109
|
+
*/
|
|
110
|
+
export const DeliverableSchema = z
|
|
111
|
+
.object({
|
|
112
|
+
/** Deliverable name/description */
|
|
113
|
+
name: z.string().min(1),
|
|
114
|
+
/** Canonical deliverable status (validated against DELIVERABLE_STATUS_VALUES) */
|
|
115
|
+
status: z.enum(DELIVERABLE_STATUS_VALUES),
|
|
116
|
+
/** Number of tests */
|
|
117
|
+
tests: z.number().int().nonnegative(),
|
|
118
|
+
/** Implementation location */
|
|
119
|
+
location: z.string(),
|
|
120
|
+
/** Optional finding ID for review traceability (e.g., "CODE-001", "ARCH-005") */
|
|
121
|
+
finding: z.string().optional(),
|
|
122
|
+
/** Optional release version for changelog grouping (e.g., "v0.2.0") */
|
|
123
|
+
release: z.string().optional(),
|
|
124
|
+
})
|
|
125
|
+
.strict();
|
|
126
|
+
/**
|
|
127
|
+
* Cross-validation error when code and feature don't match
|
|
128
|
+
*
|
|
129
|
+
* Reports misalignment between TypeScript code annotations and
|
|
130
|
+
* Gherkin feature tags (e.g., phase number mismatch).
|
|
131
|
+
*/
|
|
132
|
+
export const CrossValidationErrorSchema = z
|
|
133
|
+
.object({
|
|
134
|
+
/** Pattern name from code */
|
|
135
|
+
codeName: z.string(),
|
|
136
|
+
/** Pattern name from feature */
|
|
137
|
+
featureName: z.string(),
|
|
138
|
+
/** Phase from code (optional) */
|
|
139
|
+
codePhase: z.number().int().positive().optional(),
|
|
140
|
+
/** Phase from feature */
|
|
141
|
+
featurePhase: z.number().int().positive(),
|
|
142
|
+
/** Source file paths */
|
|
143
|
+
sources: z
|
|
144
|
+
.object({
|
|
145
|
+
code: z.string(),
|
|
146
|
+
feature: z.string(),
|
|
147
|
+
})
|
|
148
|
+
.strict(),
|
|
149
|
+
/** Error description */
|
|
150
|
+
message: z.string(),
|
|
151
|
+
})
|
|
152
|
+
.strict();
|
|
153
|
+
/**
|
|
154
|
+
* Validation summary from dual-source consistency check
|
|
155
|
+
*
|
|
156
|
+
* Provides boolean validity flag and categorized errors/warnings.
|
|
157
|
+
*/
|
|
158
|
+
export const ValidationSummarySchema = z
|
|
159
|
+
.object({
|
|
160
|
+
/** True if no errors (warnings don't fail validation) */
|
|
161
|
+
isValid: z.boolean(),
|
|
162
|
+
/** Critical errors (phase mismatches, etc.) */
|
|
163
|
+
errors: z.array(z.string()).readonly(),
|
|
164
|
+
/** Non-critical warnings (orphaned stubs, etc.) */
|
|
165
|
+
warnings: z.array(z.string()).readonly(),
|
|
166
|
+
})
|
|
167
|
+
.strict();
|
|
168
|
+
//# sourceMappingURL=dual-source.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dual-source.js","sourceRoot":"","sources":["../../src/validation-schemas/dual-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* Discriminated union of all export types
|
|
4
|
+
*
|
|
5
|
+
* **Benefits:**
|
|
6
|
+
* - Type narrowing based on 'type' discriminant
|
|
7
|
+
* - Compile-time exhaustiveness checking
|
|
8
|
+
* - Better error messages from Zod
|
|
9
|
+
*/
|
|
10
|
+
export declare const ExportInfoSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
11
|
+
type: z.ZodLiteral<"function">;
|
|
12
|
+
name: z.ZodString;
|
|
13
|
+
signature: z.ZodOptional<z.ZodString>;
|
|
14
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
15
|
+
type: z.ZodLiteral<"type">;
|
|
16
|
+
name: z.ZodString;
|
|
17
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
18
|
+
type: z.ZodLiteral<"const">;
|
|
19
|
+
name: z.ZodString;
|
|
20
|
+
signature: z.ZodOptional<z.ZodString>;
|
|
21
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
22
|
+
type: z.ZodLiteral<"interface">;
|
|
23
|
+
name: z.ZodString;
|
|
24
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
25
|
+
type: z.ZodLiteral<"class">;
|
|
26
|
+
name: z.ZodString;
|
|
27
|
+
signature: z.ZodOptional<z.ZodString>;
|
|
28
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
29
|
+
type: z.ZodLiteral<"enum">;
|
|
30
|
+
name: z.ZodString;
|
|
31
|
+
}, z.core.$strict>], "type">;
|
|
32
|
+
/**
|
|
33
|
+
* Type alias inferred from discriminated union schema
|
|
34
|
+
*
|
|
35
|
+
* **Schema-First Law**: Type automatically derives from Zod schema,
|
|
36
|
+
* providing both compile-time and runtime type safety.
|
|
37
|
+
*/
|
|
38
|
+
export type ExportInfo = z.infer<typeof ExportInfoSchema>;
|
|
39
|
+
/**
|
|
40
|
+
* Runtime type guard for ExportInfo
|
|
41
|
+
*
|
|
42
|
+
* @param value - Value to check
|
|
43
|
+
* @returns True if value conforms to ExportInfo schema
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* if (isExportInfo(parsed)) {
|
|
48
|
+
* console.log(parsed.name); // Type-safe access
|
|
49
|
+
* }
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
export declare function isExportInfo(value: unknown): value is ExportInfo;
|
|
53
|
+
//# sourceMappingURL=export-info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export-info.d.ts","sourceRoot":"","sources":["../../src/validation-schemas/export-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2ExB;;;;;;;GAOG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;4BAO3B,CAAC;AAEH;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAEhE"}
|