@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,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-core @architect-config
|
|
4
|
+
* @architect-pattern ConfigResolver
|
|
5
|
+
* @architect-status active
|
|
6
|
+
* @architect-arch-layer application
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-arch-role service
|
|
9
|
+
* @architect-uses ProjectConfigTypes, ArchitectFactory, ConfigurationDefaults
|
|
10
|
+
* @architect-used-by ConfigLoader
|
|
11
|
+
*
|
|
12
|
+
* ## Config Resolution
|
|
13
|
+
*
|
|
14
|
+
* Resolves a raw `ArchitectProjectConfig` into a fully-resolved `ResolvedConfig`
|
|
15
|
+
* with all defaults applied, stubs merged into TypeScript sources, and context inference
|
|
16
|
+
* rules prepended to defaults.
|
|
17
|
+
*
|
|
18
|
+
* ### Architecture
|
|
19
|
+
*
|
|
20
|
+
* ```
|
|
21
|
+
* ArchitectProjectConfig (user-authored)
|
|
22
|
+
* |
|
|
23
|
+
* v
|
|
24
|
+
* resolveProjectConfig() -- creates instance, merges sources, applies defaults
|
|
25
|
+
* |
|
|
26
|
+
* v
|
|
27
|
+
* ResolvedConfig { instance, project, isDefault, configPath }
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* ### When to Use
|
|
31
|
+
*
|
|
32
|
+
* - Called by `loadProjectConfig()` after Zod validation succeeds
|
|
33
|
+
* - Called directly in tests to resolve a config without file I/O
|
|
34
|
+
* - `createDefaultResolvedConfig()` provides a fallback when no config file exists
|
|
35
|
+
*/
|
|
36
|
+
import type { ArchitectProjectConfig, ResolvedConfig } from './project-config.js';
|
|
37
|
+
/**
|
|
38
|
+
* Resolves a raw project config into a fully-resolved config with all defaults applied.
|
|
39
|
+
*
|
|
40
|
+
* Resolution steps:
|
|
41
|
+
* 1. Create taxonomy instance from preset/override fields
|
|
42
|
+
* 2. Merge stub globs into TypeScript sources
|
|
43
|
+
* 3. Apply output defaults (directory, overwrite)
|
|
44
|
+
* 4. Default generators to `['patterns']`
|
|
45
|
+
* 5. Prepend user context inference rules before defaults
|
|
46
|
+
* 6. Carry forward remaining fields with defaults
|
|
47
|
+
*
|
|
48
|
+
* @param raw - The raw project configuration (post-Zod validation)
|
|
49
|
+
* @param options - Optional resolution options
|
|
50
|
+
* @returns Fully resolved configuration ready for use by orchestrator and CLIs
|
|
51
|
+
*/
|
|
52
|
+
export declare function resolveProjectConfig(raw: ArchitectProjectConfig, options: {
|
|
53
|
+
readonly configPath: string;
|
|
54
|
+
}): ResolvedConfig;
|
|
55
|
+
/**
|
|
56
|
+
* Creates a default resolved config for when no config file is found.
|
|
57
|
+
*
|
|
58
|
+
* Uses the libar-generic preset with empty sources and standard defaults.
|
|
59
|
+
* The `isDefault` flag is set to `true` so consumers can detect that
|
|
60
|
+
* no user config was loaded.
|
|
61
|
+
*
|
|
62
|
+
* @returns A default ResolvedConfig with empty sources and standard defaults
|
|
63
|
+
*/
|
|
64
|
+
export declare function createDefaultResolvedConfig(): ResolvedConfig;
|
|
65
|
+
//# sourceMappingURL=resolve-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-config.d.ts","sourceRoot":"","sources":["../../src/config/resolve-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,KAAK,EACV,sBAAsB,EAEtB,cAAc,EAGf,MAAM,qBAAqB,CAAC;AAM7B;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,sBAAsB,EAC3B,OAAO,EAAE;IAAE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACvC,cAAc,CAuEhB;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,IAAI,cAAc,CA4B5D"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-core @architect-config
|
|
4
|
+
* @architect-pattern ConfigResolver
|
|
5
|
+
* @architect-status active
|
|
6
|
+
* @architect-arch-layer application
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-arch-role service
|
|
9
|
+
* @architect-uses ProjectConfigTypes, ArchitectFactory, ConfigurationDefaults
|
|
10
|
+
* @architect-used-by ConfigLoader
|
|
11
|
+
*
|
|
12
|
+
* ## Config Resolution
|
|
13
|
+
*
|
|
14
|
+
* Resolves a raw `ArchitectProjectConfig` into a fully-resolved `ResolvedConfig`
|
|
15
|
+
* with all defaults applied, stubs merged into TypeScript sources, and context inference
|
|
16
|
+
* rules prepended to defaults.
|
|
17
|
+
*
|
|
18
|
+
* ### Architecture
|
|
19
|
+
*
|
|
20
|
+
* ```
|
|
21
|
+
* ArchitectProjectConfig (user-authored)
|
|
22
|
+
* |
|
|
23
|
+
* v
|
|
24
|
+
* resolveProjectConfig() -- creates instance, merges sources, applies defaults
|
|
25
|
+
* |
|
|
26
|
+
* v
|
|
27
|
+
* ResolvedConfig { instance, project, isDefault, configPath }
|
|
28
|
+
* ```
|
|
29
|
+
*
|
|
30
|
+
* ### When to Use
|
|
31
|
+
*
|
|
32
|
+
* - Called by `loadProjectConfig()` after Zod validation succeeds
|
|
33
|
+
* - Called directly in tests to resolve a config without file I/O
|
|
34
|
+
* - `createDefaultResolvedConfig()` provides a fallback when no config file exists
|
|
35
|
+
*/
|
|
36
|
+
import { DEFAULT_CONTEXT_INFERENCE_RULES } from './defaults.js';
|
|
37
|
+
import { createArchitect } from './factory.js';
|
|
38
|
+
/**
|
|
39
|
+
* Resolves a raw project config into a fully-resolved config with all defaults applied.
|
|
40
|
+
*
|
|
41
|
+
* Resolution steps:
|
|
42
|
+
* 1. Create taxonomy instance from preset/override fields
|
|
43
|
+
* 2. Merge stub globs into TypeScript sources
|
|
44
|
+
* 3. Apply output defaults (directory, overwrite)
|
|
45
|
+
* 4. Default generators to `['patterns']`
|
|
46
|
+
* 5. Prepend user context inference rules before defaults
|
|
47
|
+
* 6. Carry forward remaining fields with defaults
|
|
48
|
+
*
|
|
49
|
+
* @param raw - The raw project configuration (post-Zod validation)
|
|
50
|
+
* @param options - Optional resolution options
|
|
51
|
+
* @returns Fully resolved configuration ready for use by orchestrator and CLIs
|
|
52
|
+
*/
|
|
53
|
+
export function resolveProjectConfig(raw, options) {
|
|
54
|
+
// 1. Create taxonomy instance from preset/override fields
|
|
55
|
+
const instanceOptions = {};
|
|
56
|
+
if (raw.preset !== undefined) {
|
|
57
|
+
instanceOptions.preset = raw.preset;
|
|
58
|
+
}
|
|
59
|
+
if (raw.tagPrefix !== undefined) {
|
|
60
|
+
instanceOptions.tagPrefix = raw.tagPrefix;
|
|
61
|
+
}
|
|
62
|
+
if (raw.fileOptInTag !== undefined) {
|
|
63
|
+
instanceOptions.fileOptInTag = raw.fileOptInTag;
|
|
64
|
+
}
|
|
65
|
+
if (raw.categories !== undefined) {
|
|
66
|
+
instanceOptions.categories = raw.categories;
|
|
67
|
+
}
|
|
68
|
+
const instance = createArchitect(instanceOptions);
|
|
69
|
+
// 2. Resolve sources — merge stubs into typescript
|
|
70
|
+
const typescript = [
|
|
71
|
+
...(raw.sources?.typescript ?? []),
|
|
72
|
+
...(raw.sources?.stubs ?? []),
|
|
73
|
+
];
|
|
74
|
+
const features = raw.sources?.features ?? [];
|
|
75
|
+
const exclude = raw.sources?.exclude ?? [];
|
|
76
|
+
const sources = {
|
|
77
|
+
typescript,
|
|
78
|
+
features,
|
|
79
|
+
exclude,
|
|
80
|
+
};
|
|
81
|
+
// 3. Resolve output — apply defaults
|
|
82
|
+
const output = {
|
|
83
|
+
directory: raw.output?.directory ?? 'docs/architecture',
|
|
84
|
+
overwrite: raw.output?.overwrite ?? false,
|
|
85
|
+
};
|
|
86
|
+
// 4. Resolve generators — default to ['patterns']
|
|
87
|
+
const generators = raw.generators ?? ['patterns'];
|
|
88
|
+
// 5. Resolve context inference rules — prepend user rules to defaults
|
|
89
|
+
const contextInferenceRules = [
|
|
90
|
+
...(raw.contextInferenceRules ?? []),
|
|
91
|
+
...DEFAULT_CONTEXT_INFERENCE_RULES,
|
|
92
|
+
];
|
|
93
|
+
// 6. Copy remaining fields with defaults
|
|
94
|
+
const generatorOverrides = raw.generatorOverrides ?? {};
|
|
95
|
+
const workflowPath = raw.workflowPath ?? null;
|
|
96
|
+
// 7. Reference document configs (explicit opt-in, empty by default)
|
|
97
|
+
const referenceDocConfigs = raw.referenceDocConfigs ?? [];
|
|
98
|
+
const project = {
|
|
99
|
+
sources,
|
|
100
|
+
output,
|
|
101
|
+
generators,
|
|
102
|
+
generatorOverrides,
|
|
103
|
+
contextInferenceRules,
|
|
104
|
+
workflowPath,
|
|
105
|
+
...(raw.codecOptions !== undefined && { codecOptions: raw.codecOptions }),
|
|
106
|
+
referenceDocConfigs,
|
|
107
|
+
};
|
|
108
|
+
return {
|
|
109
|
+
instance,
|
|
110
|
+
project,
|
|
111
|
+
isDefault: false,
|
|
112
|
+
configPath: options.configPath,
|
|
113
|
+
};
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Creates a default resolved config for when no config file is found.
|
|
117
|
+
*
|
|
118
|
+
* Uses the libar-generic preset with empty sources and standard defaults.
|
|
119
|
+
* The `isDefault` flag is set to `true` so consumers can detect that
|
|
120
|
+
* no user config was loaded.
|
|
121
|
+
*
|
|
122
|
+
* @returns A default ResolvedConfig with empty sources and standard defaults
|
|
123
|
+
*/
|
|
124
|
+
export function createDefaultResolvedConfig() {
|
|
125
|
+
const instance = createArchitect();
|
|
126
|
+
const sources = {
|
|
127
|
+
typescript: [],
|
|
128
|
+
features: [],
|
|
129
|
+
exclude: [],
|
|
130
|
+
};
|
|
131
|
+
const project = {
|
|
132
|
+
sources,
|
|
133
|
+
output: {
|
|
134
|
+
directory: 'docs/architecture',
|
|
135
|
+
overwrite: false,
|
|
136
|
+
},
|
|
137
|
+
generators: ['patterns'],
|
|
138
|
+
generatorOverrides: {},
|
|
139
|
+
contextInferenceRules: [...DEFAULT_CONTEXT_INFERENCE_RULES],
|
|
140
|
+
workflowPath: null,
|
|
141
|
+
referenceDocConfigs: [],
|
|
142
|
+
};
|
|
143
|
+
return {
|
|
144
|
+
instance,
|
|
145
|
+
project,
|
|
146
|
+
isDefault: true,
|
|
147
|
+
configPath: undefined,
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=resolve-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-config.js","sourceRoot":"","sources":["../../src/config/resolve-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-core @architect-config
|
|
4
|
+
* @architect-pattern ConfigurationTypes
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-arch-layer domain
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-extract-shapes ArchitectConfig, ArchitectInstance, RegexBuilders
|
|
9
|
+
*
|
|
10
|
+
* ## Configuration Types
|
|
11
|
+
*
|
|
12
|
+
* Type definitions for the Architect configuration system.
|
|
13
|
+
* Provides fully type-safe configuration with generics to preserve literal types from presets.
|
|
14
|
+
*
|
|
15
|
+
* ### When to Use
|
|
16
|
+
*
|
|
17
|
+
* - When defining custom presets or configurations
|
|
18
|
+
* - When creating type-safe factory functions
|
|
19
|
+
* - When extending the configuration system
|
|
20
|
+
*/
|
|
21
|
+
import type { TagRegistry } from '../validation-schemas/tag-registry.js';
|
|
22
|
+
import type { CategoryDefinition } from '../taxonomy/categories.js';
|
|
23
|
+
import type { MetadataTagDefinitionForRegistry } from '../taxonomy/registry-builder.js';
|
|
24
|
+
import type { ContextInferenceRule } from '../generators/pipeline/context-inference.js';
|
|
25
|
+
/**
|
|
26
|
+
* Configuration for creating an Architect instance.
|
|
27
|
+
* Uses generics to preserve literal types from presets.
|
|
28
|
+
*/
|
|
29
|
+
export interface ArchitectConfig {
|
|
30
|
+
/** Tag prefix for directives (e.g., "@architect-") */
|
|
31
|
+
readonly tagPrefix: string;
|
|
32
|
+
/** File-level opt-in tag (e.g., "@architect") */
|
|
33
|
+
readonly fileOptInTag: string;
|
|
34
|
+
/** Category definitions for pattern classification */
|
|
35
|
+
readonly categories: readonly CategoryDefinition[];
|
|
36
|
+
/** Optional metadata tag definitions */
|
|
37
|
+
readonly metadataTags?: readonly MetadataTagDefinitionForRegistry[];
|
|
38
|
+
/**
|
|
39
|
+
* Optional context inference rules for auto-inferring bounded context from file paths.
|
|
40
|
+
*
|
|
41
|
+
* When provided, these rules are merged with the default rules. User-provided rules
|
|
42
|
+
* take precedence over defaults (applied first in the rule list).
|
|
43
|
+
*
|
|
44
|
+
* @example
|
|
45
|
+
* ```typescript
|
|
46
|
+
* contextInferenceRules: [
|
|
47
|
+
* { pattern: 'packages/orders/**', context: 'orders' },
|
|
48
|
+
* { pattern: 'packages/inventory/**', context: 'inventory' },
|
|
49
|
+
* ]
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
readonly contextInferenceRules?: readonly ContextInferenceRule[];
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Instance returned by createArchitect with configured registry
|
|
56
|
+
*/
|
|
57
|
+
export interface ArchitectInstance {
|
|
58
|
+
/** The fully configured tag registry */
|
|
59
|
+
readonly registry: TagRegistry;
|
|
60
|
+
/** Regex builders for tag detection */
|
|
61
|
+
readonly regexBuilders: RegexBuilders;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Regex builders for tag detection
|
|
65
|
+
*
|
|
66
|
+
* Provides type-safe regex operations for detecting and normalizing tags
|
|
67
|
+
* based on the configured tag prefix.
|
|
68
|
+
*/
|
|
69
|
+
export interface RegexBuilders {
|
|
70
|
+
/** Pattern to match file-level opt-in (e.g., /** @architect *\/) */
|
|
71
|
+
readonly fileOptInPattern: RegExp;
|
|
72
|
+
/** Pattern to match directives (e.g., @architect-pattern, @architect-status) */
|
|
73
|
+
readonly directivePattern: RegExp;
|
|
74
|
+
/** Check if content has the file-level opt-in marker */
|
|
75
|
+
hasFileOptIn(content: string): boolean;
|
|
76
|
+
/** Check if content has any doc directives */
|
|
77
|
+
hasDocDirectives(content: string): boolean;
|
|
78
|
+
/** Normalize a tag by removing @ and prefix (e.g., "@architect-pattern" -> "pattern") */
|
|
79
|
+
normalizeTag(tag: string): string;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACxF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AAExF;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,iDAAiD;IACjD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,sDAAsD;IACtD,QAAQ,CAAC,UAAU,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACnD,wCAAwC;IACxC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,gCAAgC,EAAE,CAAC;IACpE;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAC;CAClE;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,uCAAuC;IACvC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;CACvC;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,oEAAoE;IACpE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,gFAAgF;IAChF,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,wDAAwD;IACxD,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IACvC,8CAA8C;IAC9C,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAC3C,yFAAyF;IACzF,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-core @architect-config
|
|
4
|
+
* @architect-pattern ConfigurationTypes
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-arch-layer domain
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-extract-shapes ArchitectConfig, ArchitectInstance, RegexBuilders
|
|
9
|
+
*
|
|
10
|
+
* ## Configuration Types
|
|
11
|
+
*
|
|
12
|
+
* Type definitions for the Architect configuration system.
|
|
13
|
+
* Provides fully type-safe configuration with generics to preserve literal types from presets.
|
|
14
|
+
*
|
|
15
|
+
* ### When to Use
|
|
16
|
+
*
|
|
17
|
+
* - When defining custom presets or configurations
|
|
18
|
+
* - When creating type-safe factory functions
|
|
19
|
+
* - When extending the configuration system
|
|
20
|
+
*/
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/config/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-config
|
|
4
|
+
* @architect-pattern WorkflowLoader
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-arch-layer infrastructure
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-arch-role infrastructure
|
|
9
|
+
* @architect-uses WorkflowConfigSchema, CodecUtils
|
|
10
|
+
* @architect-used-by GeneratorOrchestrator, SectionHelpers
|
|
11
|
+
*
|
|
12
|
+
* ## WorkflowLoader - Workflow Configuration Loading
|
|
13
|
+
*
|
|
14
|
+
* Provides the default 6-phase workflow as an inline constant and loads
|
|
15
|
+
* custom workflow overrides from JSON files via `--workflow <path>`.
|
|
16
|
+
*
|
|
17
|
+
* ### When to Use
|
|
18
|
+
*
|
|
19
|
+
* - Use `loadDefaultWorkflow()` at pipeline startup (synchronous, infallible)
|
|
20
|
+
* - Use `loadWorkflowFromPath()` for custom `--workflow <file>` overrides
|
|
21
|
+
*/
|
|
22
|
+
import { Result } from '../types/result.js';
|
|
23
|
+
import { type LoadedWorkflow, type WorkflowConfig } from '../validation-schemas/workflow-config.js';
|
|
24
|
+
/**
|
|
25
|
+
* Workflow load error
|
|
26
|
+
*
|
|
27
|
+
* Describes why workflow loading failed, with detailed validation errors
|
|
28
|
+
* if the failure was due to invalid schema.
|
|
29
|
+
*/
|
|
30
|
+
export interface WorkflowLoadError {
|
|
31
|
+
/** Error type identifier */
|
|
32
|
+
type: 'workflow-load-error';
|
|
33
|
+
/** Path or name of the workflow that failed to load */
|
|
34
|
+
source: string;
|
|
35
|
+
/** Human-readable error message */
|
|
36
|
+
message: string;
|
|
37
|
+
/** Detailed Zod validation errors if schema validation failed */
|
|
38
|
+
validationErrors?: string[];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Load workflow configuration from a specific file path
|
|
42
|
+
*
|
|
43
|
+
* @param configPath - Absolute or relative path to workflow JSON file
|
|
44
|
+
* @param source - Source identifier for error messages (defaults to path)
|
|
45
|
+
* @returns Result with LoadedWorkflow or error details
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```typescript
|
|
49
|
+
* const result = await loadWorkflowFromPath("/path/to/custom-workflow.json");
|
|
50
|
+
* if (result.ok) {
|
|
51
|
+
* const workflow = result.value;
|
|
52
|
+
* }
|
|
53
|
+
* ```
|
|
54
|
+
*/
|
|
55
|
+
export declare function loadWorkflowFromPath(configPath: string, source?: string): Promise<Result<LoadedWorkflow, WorkflowLoadError>>;
|
|
56
|
+
/**
|
|
57
|
+
* Load the default workflow (6-phase-standard)
|
|
58
|
+
*
|
|
59
|
+
* Returns the standard USDP 6-phase workflow from an inline constant.
|
|
60
|
+
* Synchronous and infallible — no file I/O, no error handling needed.
|
|
61
|
+
*
|
|
62
|
+
* DD-4: Returns LoadedWorkflow synchronously (not Promise).
|
|
63
|
+
*
|
|
64
|
+
* @returns LoadedWorkflow for 6-phase-standard
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* ```typescript
|
|
68
|
+
* const workflow = loadDefaultWorkflow();
|
|
69
|
+
* const emoji = workflow.statusMap.get("completed")?.emoji; // "\u2705"
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare function loadDefaultWorkflow(): LoadedWorkflow;
|
|
73
|
+
/**
|
|
74
|
+
* Format workflow load error for console display
|
|
75
|
+
*
|
|
76
|
+
* @param error - Workflow load error
|
|
77
|
+
* @returns Formatted error message for console output
|
|
78
|
+
*
|
|
79
|
+
* @example
|
|
80
|
+
* ```typescript
|
|
81
|
+
* const result = await loadWorkflowFromPath("/path/to/custom.json");
|
|
82
|
+
* if (!result.ok) {
|
|
83
|
+
* console.error(formatWorkflowLoadError(result.error));
|
|
84
|
+
* process.exit(1);
|
|
85
|
+
* }
|
|
86
|
+
* ```
|
|
87
|
+
*/
|
|
88
|
+
export declare function formatWorkflowLoadError(error: WorkflowLoadError): string;
|
|
89
|
+
export type { LoadedWorkflow, WorkflowConfig };
|
|
90
|
+
//# sourceMappingURL=workflow-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-loader.d.ts","sourceRoot":"","sources":["../../src/config/workflow-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,0CAA0C,CAAC;AAQlD;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,IAAI,EAAE,qBAAqB,CAAC;IAC5B,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAkCD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC,CAqDpD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,IAAI,cAAc,CAEpD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CASxE;AAGD,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @architect
|
|
3
|
+
* @architect-config
|
|
4
|
+
* @architect-pattern WorkflowLoader
|
|
5
|
+
* @architect-status completed
|
|
6
|
+
* @architect-arch-layer infrastructure
|
|
7
|
+
* @architect-arch-context config
|
|
8
|
+
* @architect-arch-role infrastructure
|
|
9
|
+
* @architect-uses WorkflowConfigSchema, CodecUtils
|
|
10
|
+
* @architect-used-by GeneratorOrchestrator, SectionHelpers
|
|
11
|
+
*
|
|
12
|
+
* ## WorkflowLoader - Workflow Configuration Loading
|
|
13
|
+
*
|
|
14
|
+
* Provides the default 6-phase workflow as an inline constant and loads
|
|
15
|
+
* custom workflow overrides from JSON files via `--workflow <path>`.
|
|
16
|
+
*
|
|
17
|
+
* ### When to Use
|
|
18
|
+
*
|
|
19
|
+
* - Use `loadDefaultWorkflow()` at pipeline startup (synchronous, infallible)
|
|
20
|
+
* - Use `loadWorkflowFromPath()` for custom `--workflow <file>` overrides
|
|
21
|
+
*/
|
|
22
|
+
import * as fs from 'fs/promises';
|
|
23
|
+
import { Result } from '../types/result.js';
|
|
24
|
+
import { WorkflowConfigSchema, createLoadedWorkflow, } from '../validation-schemas/workflow-config.js';
|
|
25
|
+
import { createJsonInputCodec } from '../validation-schemas/codec-utils.js';
|
|
26
|
+
/**
|
|
27
|
+
* Codec for parsing and validating workflow configuration JSON
|
|
28
|
+
*/
|
|
29
|
+
const WorkflowConfigCodec = createJsonInputCodec(WorkflowConfigSchema);
|
|
30
|
+
/**
|
|
31
|
+
* Default workflow configuration (6-phase USDP standard)
|
|
32
|
+
*
|
|
33
|
+
* Inline constant using the 4 canonical statuses from ADR-001.
|
|
34
|
+
* Replaces the deleted catalogue/workflows/6-phase-standard.json.
|
|
35
|
+
*
|
|
36
|
+
* DD-1: Inline constant in workflow-loader.ts, not preset integration.
|
|
37
|
+
* DD-2: Satisfies existing WorkflowConfig type — no new types needed.
|
|
38
|
+
*/
|
|
39
|
+
const DEFAULT_WORKFLOW_CONFIG = Object.freeze({
|
|
40
|
+
name: '6-phase-standard',
|
|
41
|
+
version: '1.0.0',
|
|
42
|
+
statuses: [
|
|
43
|
+
{ name: 'roadmap', emoji: '\u{1F4CB}' },
|
|
44
|
+
{ name: 'active', emoji: '\u{1F6A7}' },
|
|
45
|
+
{ name: 'completed', emoji: '\u2705' },
|
|
46
|
+
{ name: 'deferred', emoji: '\u23F8\uFE0F' },
|
|
47
|
+
],
|
|
48
|
+
phases: [
|
|
49
|
+
{ name: 'Inception', order: 1 },
|
|
50
|
+
{ name: 'Elaboration', order: 2 },
|
|
51
|
+
{ name: 'Session', order: 3 },
|
|
52
|
+
{ name: 'Construction', order: 4 },
|
|
53
|
+
{ name: 'Validation', order: 5 },
|
|
54
|
+
{ name: 'Retrospective', order: 6 },
|
|
55
|
+
],
|
|
56
|
+
defaultStatus: 'roadmap',
|
|
57
|
+
});
|
|
58
|
+
/** Pre-computed LoadedWorkflow singleton — avoids rebuilding Maps on every call */
|
|
59
|
+
const DEFAULT_LOADED_WORKFLOW = createLoadedWorkflow(DEFAULT_WORKFLOW_CONFIG);
|
|
60
|
+
/**
|
|
61
|
+
* Load workflow configuration from a specific file path
|
|
62
|
+
*
|
|
63
|
+
* @param configPath - Absolute or relative path to workflow JSON file
|
|
64
|
+
* @param source - Source identifier for error messages (defaults to path)
|
|
65
|
+
* @returns Result with LoadedWorkflow or error details
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const result = await loadWorkflowFromPath("/path/to/custom-workflow.json");
|
|
70
|
+
* if (result.ok) {
|
|
71
|
+
* const workflow = result.value;
|
|
72
|
+
* }
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export async function loadWorkflowFromPath(configPath, source) {
|
|
76
|
+
const errorSource = source ?? configPath;
|
|
77
|
+
// Read file
|
|
78
|
+
let content;
|
|
79
|
+
try {
|
|
80
|
+
content = await fs.readFile(configPath, 'utf-8');
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
// Handle file read errors
|
|
84
|
+
if (error instanceof Error && 'code' in error) {
|
|
85
|
+
const nodeError = error;
|
|
86
|
+
if (nodeError.code === 'ENOENT') {
|
|
87
|
+
return Result.err({
|
|
88
|
+
type: 'workflow-load-error',
|
|
89
|
+
source: errorSource,
|
|
90
|
+
message: `Workflow file not found: ${configPath}`,
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
if (nodeError.code === 'EACCES') {
|
|
94
|
+
return Result.err({
|
|
95
|
+
type: 'workflow-load-error',
|
|
96
|
+
source: errorSource,
|
|
97
|
+
message: `Permission denied reading workflow: ${configPath}`,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
102
|
+
return Result.err({
|
|
103
|
+
type: 'workflow-load-error',
|
|
104
|
+
source: errorSource,
|
|
105
|
+
message: `Failed to load workflow: ${message}`,
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
// Parse and validate using codec (handles $schema stripping automatically)
|
|
109
|
+
const parseResult = WorkflowConfigCodec.parse(content, errorSource);
|
|
110
|
+
if (!parseResult.ok) {
|
|
111
|
+
const error = {
|
|
112
|
+
type: 'workflow-load-error',
|
|
113
|
+
source: errorSource,
|
|
114
|
+
message: parseResult.error.message,
|
|
115
|
+
};
|
|
116
|
+
if (parseResult.error.validationErrors) {
|
|
117
|
+
error.validationErrors = parseResult.error.validationErrors;
|
|
118
|
+
}
|
|
119
|
+
return Result.err(error);
|
|
120
|
+
}
|
|
121
|
+
// Create LoadedWorkflow with lookup maps
|
|
122
|
+
const workflow = createLoadedWorkflow(parseResult.value);
|
|
123
|
+
return Result.ok(workflow);
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Load the default workflow (6-phase-standard)
|
|
127
|
+
*
|
|
128
|
+
* Returns the standard USDP 6-phase workflow from an inline constant.
|
|
129
|
+
* Synchronous and infallible — no file I/O, no error handling needed.
|
|
130
|
+
*
|
|
131
|
+
* DD-4: Returns LoadedWorkflow synchronously (not Promise).
|
|
132
|
+
*
|
|
133
|
+
* @returns LoadedWorkflow for 6-phase-standard
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```typescript
|
|
137
|
+
* const workflow = loadDefaultWorkflow();
|
|
138
|
+
* const emoji = workflow.statusMap.get("completed")?.emoji; // "\u2705"
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
export function loadDefaultWorkflow() {
|
|
142
|
+
return DEFAULT_LOADED_WORKFLOW;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Format workflow load error for console display
|
|
146
|
+
*
|
|
147
|
+
* @param error - Workflow load error
|
|
148
|
+
* @returns Formatted error message for console output
|
|
149
|
+
*
|
|
150
|
+
* @example
|
|
151
|
+
* ```typescript
|
|
152
|
+
* const result = await loadWorkflowFromPath("/path/to/custom.json");
|
|
153
|
+
* if (!result.ok) {
|
|
154
|
+
* console.error(formatWorkflowLoadError(result.error));
|
|
155
|
+
* process.exit(1);
|
|
156
|
+
* }
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
export function formatWorkflowLoadError(error) {
|
|
160
|
+
const lines = [`Workflow error: ${error.message}`, ` Source: ${error.source}`];
|
|
161
|
+
if (error.validationErrors && error.validationErrors.length > 0) {
|
|
162
|
+
lines.push(' Validation errors:');
|
|
163
|
+
lines.push(...error.validationErrors);
|
|
164
|
+
}
|
|
165
|
+
return lines.join('\n');
|
|
166
|
+
}
|
|
167
|
+
//# sourceMappingURL=workflow-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-loader.js","sourceRoot":"","sources":["../../src/config/workflow-loader.ts"],"names":[],"mappings":"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"}
|