@contractspec/bundle.workspace 1.46.2 → 1.48.0
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/dist/_virtual/rolldown_runtime.mjs +20 -0
- package/dist/adapters/ai.d.mts +12 -0
- package/dist/adapters/ai.d.mts.map +1 -0
- package/dist/adapters/ai.mjs +83 -0
- package/dist/adapters/ai.mjs.map +1 -0
- package/dist/adapters/factory.d.mts +29 -0
- package/dist/adapters/factory.d.mts.map +1 -0
- package/dist/adapters/factory.mjs +37 -0
- package/dist/adapters/factory.mjs.map +1 -0
- package/dist/adapters/fs.d.mts +12 -0
- package/dist/adapters/fs.d.mts.map +1 -0
- package/dist/adapters/fs.mjs +133 -0
- package/dist/adapters/fs.mjs.map +1 -0
- package/dist/adapters/git.d.mts +11 -0
- package/dist/adapters/git.d.mts.map +1 -0
- package/dist/adapters/git.mjs +84 -0
- package/dist/adapters/git.mjs.map +1 -0
- package/dist/adapters/index.d.mts +7 -0
- package/dist/adapters/index.mjs +9 -0
- package/dist/adapters/logger.d.mts +18 -0
- package/dist/adapters/logger.d.mts.map +1 -0
- package/dist/adapters/logger.mjs +81 -0
- package/dist/adapters/logger.mjs.map +1 -0
- package/dist/adapters/watcher.d.mts +11 -0
- package/dist/adapters/watcher.d.mts.map +1 -0
- package/dist/adapters/watcher.mjs +74 -0
- package/dist/adapters/watcher.mjs.map +1 -0
- package/dist/adapters/workspace.d.mts +148 -0
- package/dist/adapters/workspace.d.mts.map +1 -0
- package/dist/adapters/workspace.mjs +275 -0
- package/dist/adapters/workspace.mjs.map +1 -0
- package/dist/ai/agents/claude-code-agent.d.mts +22 -0
- package/dist/ai/agents/claude-code-agent.d.mts.map +1 -0
- package/dist/ai/agents/claude-code-agent.mjs +182 -0
- package/dist/ai/agents/claude-code-agent.mjs.map +1 -0
- package/dist/ai/agents/cursor-agent.d.mts +68 -0
- package/dist/ai/agents/cursor-agent.d.mts.map +1 -0
- package/dist/ai/agents/cursor-agent.mjs +436 -0
- package/dist/ai/agents/cursor-agent.mjs.map +1 -0
- package/dist/ai/agents/index.mjs +7 -0
- package/dist/ai/agents/openai-codex-agent.d.mts +22 -0
- package/dist/ai/agents/openai-codex-agent.d.mts.map +1 -0
- package/dist/ai/agents/openai-codex-agent.mjs +167 -0
- package/dist/ai/agents/openai-codex-agent.mjs.map +1 -0
- package/dist/ai/agents/orchestrator.d.mts +50 -0
- package/dist/ai/agents/orchestrator.d.mts.map +1 -0
- package/dist/ai/agents/orchestrator.mjs +143 -0
- package/dist/ai/agents/orchestrator.mjs.map +1 -0
- package/dist/ai/agents/simple-agent.d.mts +17 -0
- package/dist/ai/agents/simple-agent.d.mts.map +1 -0
- package/dist/ai/agents/simple-agent.mjs +92 -0
- package/dist/ai/agents/simple-agent.mjs.map +1 -0
- package/dist/ai/agents/types.d.mts +36 -0
- package/dist/ai/agents/types.d.mts.map +1 -0
- package/dist/ai/client.d.mts +97 -0
- package/dist/ai/client.d.mts.map +1 -0
- package/dist/ai/client.mjs +189 -0
- package/dist/ai/client.mjs.map +1 -0
- package/dist/ai/index.d.mts +9 -0
- package/dist/ai/index.mjs +11 -0
- package/dist/ai/prompts/code-generation.d.mts +26 -0
- package/dist/ai/prompts/code-generation.d.mts.map +1 -0
- package/dist/ai/prompts/code-generation.mjs +143 -0
- package/dist/ai/prompts/code-generation.mjs.map +1 -0
- package/dist/ai/prompts/index.d.mts +10 -0
- package/dist/ai/prompts/index.d.mts.map +1 -0
- package/dist/ai/prompts/index.mjs +13 -0
- package/dist/ai/prompts/index.mjs.map +1 -0
- package/dist/ai/prompts/spec-creation.d.mts +29 -0
- package/dist/ai/prompts/spec-creation.d.mts.map +1 -0
- package/dist/ai/prompts/spec-creation.mjs +111 -0
- package/dist/ai/prompts/spec-creation.mjs.map +1 -0
- package/dist/ai/providers.d.mts +29 -0
- package/dist/ai/providers.d.mts.map +1 -0
- package/dist/ai/providers.mjs +39 -0
- package/dist/ai/providers.mjs.map +1 -0
- package/dist/formatters/index.d.mts +11 -0
- package/dist/formatters/index.d.mts.map +1 -0
- package/dist/formatters/index.mjs +17 -0
- package/dist/formatters/index.mjs.map +1 -0
- package/dist/formatters/json.d.mts +56 -0
- package/dist/formatters/json.d.mts.map +1 -0
- package/dist/formatters/json.mjs +43 -0
- package/dist/formatters/json.mjs.map +1 -0
- package/dist/formatters/sarif.d.mts +101 -0
- package/dist/formatters/sarif.d.mts.map +1 -0
- package/dist/formatters/sarif.mjs +163 -0
- package/dist/formatters/sarif.mjs.map +1 -0
- package/dist/formatters/text.d.mts +35 -0
- package/dist/formatters/text.d.mts.map +1 -0
- package/dist/formatters/text.mjs +209 -0
- package/dist/formatters/text.mjs.map +1 -0
- package/dist/index.d.mts +128 -0
- package/dist/index.mjs +113 -0
- package/dist/ports/ai.d.mts +59 -0
- package/dist/ports/ai.d.mts.map +1 -0
- package/dist/ports/fs.d.mts +81 -0
- package/dist/ports/fs.d.mts.map +1 -0
- package/dist/ports/git.d.mts +46 -0
- package/dist/ports/git.d.mts.map +1 -0
- package/dist/ports/index.d.mts +6 -0
- package/dist/ports/logger.d.mts +88 -0
- package/dist/ports/logger.d.mts.map +1 -0
- package/dist/ports/rulesync.d.mts +38 -0
- package/dist/ports/rulesync.d.mts.map +1 -0
- package/dist/ports/watcher.d.mts +52 -0
- package/dist/ports/watcher.d.mts.map +1 -0
- package/dist/services/agent-guide/adapters/claude-code.d.mts +35 -0
- package/dist/services/agent-guide/adapters/claude-code.d.mts.map +1 -0
- package/dist/services/agent-guide/adapters/claude-code.mjs +144 -0
- package/dist/services/agent-guide/adapters/claude-code.mjs.map +1 -0
- package/dist/services/agent-guide/adapters/cursor-cli.d.mts +39 -0
- package/dist/services/agent-guide/adapters/cursor-cli.d.mts.map +1 -0
- package/dist/services/agent-guide/adapters/cursor-cli.mjs +135 -0
- package/dist/services/agent-guide/adapters/cursor-cli.mjs.map +1 -0
- package/dist/services/agent-guide/adapters/generic-mcp.d.mts +53 -0
- package/dist/services/agent-guide/adapters/generic-mcp.d.mts.map +1 -0
- package/dist/services/agent-guide/adapters/generic-mcp.mjs +159 -0
- package/dist/services/agent-guide/adapters/generic-mcp.mjs.map +1 -0
- package/dist/services/agent-guide/adapters/index.d.mts +23 -0
- package/dist/services/agent-guide/adapters/index.d.mts.map +1 -0
- package/dist/services/agent-guide/adapters/index.mjs +31 -0
- package/dist/services/agent-guide/adapters/index.mjs.map +1 -0
- package/dist/services/agent-guide/agent-guide-service.d.mts +56 -0
- package/dist/services/agent-guide/agent-guide-service.d.mts.map +1 -0
- package/dist/services/agent-guide/agent-guide-service.mjs +147 -0
- package/dist/services/agent-guide/agent-guide-service.mjs.map +1 -0
- package/dist/services/agent-guide/index.d.mts +6 -0
- package/dist/services/agent-guide/index.mjs +7 -0
- package/dist/services/agent-guide/types.d.mts +58 -0
- package/dist/services/agent-guide/types.d.mts.map +1 -0
- package/dist/services/build.d.mts +61 -0
- package/dist/services/build.d.mts.map +1 -0
- package/dist/services/build.mjs +151 -0
- package/dist/services/build.mjs.map +1 -0
- package/dist/services/ci-check/checks/coverage.mjs +77 -0
- package/dist/services/ci-check/checks/coverage.mjs.map +1 -0
- package/dist/services/ci-check/checks/deps.mjs +32 -0
- package/dist/services/ci-check/checks/deps.mjs.map +1 -0
- package/dist/services/ci-check/checks/doctor.mjs +38 -0
- package/dist/services/ci-check/checks/doctor.mjs.map +1 -0
- package/dist/services/ci-check/checks/drift.mjs +40 -0
- package/dist/services/ci-check/checks/drift.mjs.map +1 -0
- package/dist/services/ci-check/checks/handlers.mjs +38 -0
- package/dist/services/ci-check/checks/handlers.mjs.map +1 -0
- package/dist/services/ci-check/checks/implementation.mjs +73 -0
- package/dist/services/ci-check/checks/implementation.mjs.map +1 -0
- package/dist/services/ci-check/checks/index.mjs +13 -0
- package/dist/services/ci-check/checks/integrity.mjs +31 -0
- package/dist/services/ci-check/checks/integrity.mjs.map +1 -0
- package/dist/services/ci-check/checks/layers.mjs +66 -0
- package/dist/services/ci-check/checks/layers.mjs.map +1 -0
- package/dist/services/ci-check/checks/structure.mjs +35 -0
- package/dist/services/ci-check/checks/structure.mjs.map +1 -0
- package/dist/services/ci-check/checks/test-refs.mjs +63 -0
- package/dist/services/ci-check/checks/test-refs.mjs.map +1 -0
- package/dist/services/ci-check/checks/tests.mjs +38 -0
- package/dist/services/ci-check/checks/tests.mjs.map +1 -0
- package/dist/services/ci-check/ci-check-service.d.mts +16 -0
- package/dist/services/ci-check/ci-check-service.d.mts.map +1 -0
- package/dist/services/ci-check/ci-check-service.mjs +129 -0
- package/dist/services/ci-check/ci-check-service.mjs.map +1 -0
- package/dist/services/ci-check/index.d.mts +2 -0
- package/dist/services/ci-check/index.mjs +4 -0
- package/dist/services/ci-check/types.d.mts +147 -0
- package/dist/services/ci-check/types.d.mts.map +1 -0
- package/dist/services/ci-check/types.mjs +37 -0
- package/dist/services/ci-check/types.mjs.map +1 -0
- package/dist/services/ci-check/utils.mjs +76 -0
- package/dist/services/ci-check/utils.mjs.map +1 -0
- package/dist/services/clean.d.mts +41 -0
- package/dist/services/clean.d.mts.map +1 -0
- package/dist/services/clean.mjs +72 -0
- package/dist/services/clean.mjs.map +1 -0
- package/dist/services/config.d.mts +16 -0
- package/dist/services/config.d.mts.map +1 -0
- package/dist/services/config.mjs +63 -0
- package/dist/services/config.mjs.map +1 -0
- package/dist/services/coverage/parsers/index.mjs +34 -0
- package/dist/services/coverage/parsers/index.mjs.map +1 -0
- package/dist/services/coverage/parsers/istanbul-parser.mjs +108 -0
- package/dist/services/coverage/parsers/istanbul-parser.mjs.map +1 -0
- package/dist/services/coverage/validator.mjs +55 -0
- package/dist/services/coverage/validator.mjs.map +1 -0
- package/dist/services/create/ai-generator.d.mts +84 -0
- package/dist/services/create/ai-generator.d.mts.map +1 -0
- package/dist/services/create/ai-generator.mjs +178 -0
- package/dist/services/create/ai-generator.mjs.map +1 -0
- package/dist/services/create/index.d.mts +28 -0
- package/dist/services/create/index.d.mts.map +1 -0
- package/dist/services/create/index.mjs +37 -0
- package/dist/services/create/index.mjs.map +1 -0
- package/dist/services/create/templates.d.mts +22 -0
- package/dist/services/create/templates.d.mts.map +1 -0
- package/dist/services/create/templates.mjs +39 -0
- package/dist/services/create/templates.mjs.map +1 -0
- package/dist/services/deps.d.mts +53 -0
- package/dist/services/deps.d.mts.map +1 -0
- package/dist/services/deps.mjs +62 -0
- package/dist/services/deps.mjs.map +1 -0
- package/dist/services/diff.d.mts +34 -0
- package/dist/services/diff.d.mts.map +1 -0
- package/dist/services/diff.mjs +34 -0
- package/dist/services/diff.mjs.map +1 -0
- package/dist/services/docs/docs-service.d.mts +20 -0
- package/dist/services/docs/docs-service.d.mts.map +1 -0
- package/dist/services/docs/docs-service.mjs +59 -0
- package/dist/services/docs/docs-service.mjs.map +1 -0
- package/dist/services/docs/index.d.mts +1 -0
- package/dist/services/docs/index.mjs +3 -0
- package/dist/services/doctor/checks/ai.mjs +119 -0
- package/dist/services/doctor/checks/ai.mjs.map +1 -0
- package/dist/services/doctor/checks/cli.mjs +156 -0
- package/dist/services/doctor/checks/cli.mjs.map +1 -0
- package/dist/services/doctor/checks/config.mjs +303 -0
- package/dist/services/doctor/checks/config.mjs.map +1 -0
- package/dist/services/doctor/checks/deps.mjs +267 -0
- package/dist/services/doctor/checks/deps.mjs.map +1 -0
- package/dist/services/doctor/checks/index.mjs +9 -0
- package/dist/services/doctor/checks/layers.mjs +139 -0
- package/dist/services/doctor/checks/layers.mjs.map +1 -0
- package/dist/services/doctor/checks/mcp.mjs +145 -0
- package/dist/services/doctor/checks/mcp.mjs.map +1 -0
- package/dist/services/doctor/checks/workspace.mjs +263 -0
- package/dist/services/doctor/checks/workspace.mjs.map +1 -0
- package/dist/services/doctor/doctor-service.d.mts +24 -0
- package/dist/services/doctor/doctor-service.d.mts.map +1 -0
- package/dist/services/doctor/doctor-service.mjs +118 -0
- package/dist/services/doctor/doctor-service.mjs.map +1 -0
- package/dist/services/doctor/index.d.mts +2 -0
- package/dist/services/doctor/index.mjs +4 -0
- package/dist/services/doctor/types.d.mts +118 -0
- package/dist/services/doctor/types.d.mts.map +1 -0
- package/dist/services/doctor/types.mjs +29 -0
- package/dist/services/doctor/types.mjs.map +1 -0
- package/dist/services/drift.mjs +73 -0
- package/dist/services/drift.mjs.map +1 -0
- package/dist/services/extract.d.mts +12 -0
- package/dist/services/extract.d.mts.map +1 -0
- package/dist/services/extract.mjs +33 -0
- package/dist/services/extract.mjs.map +1 -0
- package/dist/services/features/completion.d.mts +21 -0
- package/dist/services/features/completion.d.mts.map +1 -0
- package/dist/services/features/completion.mjs +70 -0
- package/dist/services/features/completion.mjs.map +1 -0
- package/dist/services/features/feature-editor.d.mts +27 -0
- package/dist/services/features/feature-editor.d.mts.map +1 -0
- package/dist/services/features/feature-editor.mjs +37 -0
- package/dist/services/features/feature-editor.mjs.map +1 -0
- package/dist/services/features/index.d.mts +11 -0
- package/dist/services/features/index.d.mts.map +1 -0
- package/dist/services/features/index.mjs +16 -0
- package/dist/services/features/index.mjs.map +1 -0
- package/dist/services/features/validation.d.mts +21 -0
- package/dist/services/features/validation.d.mts.map +1 -0
- package/dist/services/features/validation.mjs +27 -0
- package/dist/services/features/validation.mjs.map +1 -0
- package/dist/services/fix/fix-link-formatter.d.mts +12 -0
- package/dist/services/fix/fix-link-formatter.d.mts.map +1 -0
- package/dist/services/fix/fix-link-formatter.mjs +38 -0
- package/dist/services/fix/fix-link-formatter.mjs.map +1 -0
- package/dist/services/fix/fix-service.d.mts +74 -0
- package/dist/services/fix/fix-service.d.mts.map +1 -0
- package/dist/services/fix/fix-service.mjs +169 -0
- package/dist/services/fix/fix-service.mjs.map +1 -0
- package/dist/services/fix/index.d.mts +16 -0
- package/dist/services/fix/index.d.mts.map +1 -0
- package/dist/services/fix/index.mjs +24 -0
- package/dist/services/fix/index.mjs.map +1 -0
- package/dist/services/fix/path-resolver.mjs +83 -0
- package/dist/services/fix/path-resolver.mjs.map +1 -0
- package/dist/services/fix/schemas.d.mts +17 -0
- package/dist/services/fix/schemas.d.mts.map +1 -0
- package/dist/services/fix/schemas.mjs +12 -0
- package/dist/services/fix/schemas.mjs.map +1 -0
- package/dist/services/fix/strategies/implement-ai.d.mts +18 -0
- package/dist/services/fix/strategies/implement-ai.d.mts.map +1 -0
- package/dist/services/fix/strategies/implement-ai.mjs +139 -0
- package/dist/services/fix/strategies/implement-ai.mjs.map +1 -0
- package/dist/services/fix/strategies/implement-skeleton.d.mts +14 -0
- package/dist/services/fix/strategies/implement-skeleton.d.mts.map +1 -0
- package/dist/services/fix/strategies/implement-skeleton.mjs +77 -0
- package/dist/services/fix/strategies/implement-skeleton.mjs.map +1 -0
- package/dist/services/fix/strategies/index.d.mts +3 -0
- package/dist/services/fix/strategies/remove-reference.d.mts +17 -0
- package/dist/services/fix/strategies/remove-reference.d.mts.map +1 -0
- package/dist/services/fix/strategies/remove-reference.mjs +98 -0
- package/dist/services/fix/strategies/remove-reference.mjs.map +1 -0
- package/dist/services/fix/types.d.mts +207 -0
- package/dist/services/fix/types.d.mts.map +1 -0
- package/dist/services/fix/types.mjs +20 -0
- package/dist/services/fix/types.mjs.map +1 -0
- package/dist/services/formatter.d.mts +15 -0
- package/dist/services/formatter.d.mts.map +1 -0
- package/dist/services/formatter.mjs +26 -0
- package/dist/services/formatter.mjs.map +1 -0
- package/dist/services/gap.d.mts +18 -0
- package/dist/services/gap.d.mts.map +1 -0
- package/dist/services/gap.mjs +44 -0
- package/dist/services/gap.mjs.map +1 -0
- package/dist/services/generate-artifacts.d.mts +11 -0
- package/dist/services/generate-artifacts.d.mts.map +1 -0
- package/dist/services/generate-artifacts.mjs +27 -0
- package/dist/services/generate-artifacts.mjs.map +1 -0
- package/dist/services/hooks/hooks-service.d.mts +24 -0
- package/dist/services/hooks/hooks-service.d.mts.map +1 -0
- package/dist/services/hooks/hooks-service.mjs +126 -0
- package/dist/services/hooks/hooks-service.mjs.map +1 -0
- package/dist/services/hooks/index.d.mts +10 -0
- package/dist/services/hooks/index.d.mts.map +1 -0
- package/dist/services/hooks/index.mjs +12 -0
- package/dist/services/hooks/index.mjs.map +1 -0
- package/dist/services/hooks/types.d.mts +56 -0
- package/dist/services/hooks/types.d.mts.map +1 -0
- package/dist/services/impact/formatters.d.mts +27 -0
- package/dist/services/impact/formatters.d.mts.map +1 -0
- package/dist/services/impact/formatters.mjs +139 -0
- package/dist/services/impact/formatters.mjs.map +1 -0
- package/dist/services/impact/impact-detection-service.d.mts +22 -0
- package/dist/services/impact/impact-detection-service.d.mts.map +1 -0
- package/dist/services/impact/impact-detection-service.mjs +96 -0
- package/dist/services/impact/impact-detection-service.mjs.map +1 -0
- package/dist/services/impact/index.d.mts +11 -0
- package/dist/services/impact/index.d.mts.map +1 -0
- package/dist/services/impact/index.mjs +16 -0
- package/dist/services/impact/index.mjs.map +1 -0
- package/dist/services/impact/types.d.mts +63 -0
- package/dist/services/impact/types.d.mts.map +1 -0
- package/dist/services/implementation/discovery.d.mts +30 -0
- package/dist/services/implementation/discovery.d.mts.map +1 -0
- package/dist/services/implementation/discovery.mjs +144 -0
- package/dist/services/implementation/discovery.mjs.map +1 -0
- package/dist/services/implementation/index.d.mts +6 -0
- package/dist/services/implementation/index.mjs +7 -0
- package/dist/services/implementation/resolver/conventions.d.mts +18 -0
- package/dist/services/implementation/resolver/conventions.d.mts.map +1 -0
- package/dist/services/implementation/resolver/conventions.mjs +59 -0
- package/dist/services/implementation/resolver/conventions.mjs.map +1 -0
- package/dist/services/implementation/resolver/index.d.mts +24 -0
- package/dist/services/implementation/resolver/index.d.mts.map +1 -0
- package/dist/services/implementation/resolver/index.mjs +111 -0
- package/dist/services/implementation/resolver/index.mjs.map +1 -0
- package/dist/services/implementation/resolver/parsers.d.mts +16 -0
- package/dist/services/implementation/resolver/parsers.d.mts.map +1 -0
- package/dist/services/implementation/resolver/parsers.mjs +100 -0
- package/dist/services/implementation/resolver/parsers.mjs.map +1 -0
- package/dist/services/implementation/resolver/status.d.mts +21 -0
- package/dist/services/implementation/resolver/status.d.mts.map +1 -0
- package/dist/services/implementation/resolver/status.mjs +31 -0
- package/dist/services/implementation/resolver/status.mjs.map +1 -0
- package/dist/services/implementation/types.d.mts +89 -0
- package/dist/services/implementation/types.d.mts.map +1 -0
- package/dist/services/import/import-service.d.mts +47 -0
- package/dist/services/import/import-service.d.mts.map +1 -0
- package/dist/services/import/import-service.mjs +196 -0
- package/dist/services/import/import-service.mjs.map +1 -0
- package/dist/services/import/index.d.mts +3 -0
- package/dist/services/import/index.mjs +5 -0
- package/dist/services/import/report-service.d.mts +31 -0
- package/dist/services/import/report-service.d.mts.map +1 -0
- package/dist/services/import/report-service.mjs +124 -0
- package/dist/services/import/report-service.mjs.map +1 -0
- package/dist/services/import/verify-service.d.mts +67 -0
- package/dist/services/import/verify-service.d.mts.map +1 -0
- package/dist/services/import/verify-service.mjs +105 -0
- package/dist/services/import/verify-service.mjs.map +1 -0
- package/dist/services/index.d.mts +107 -0
- package/dist/services/index.mjs +104 -0
- package/dist/services/integrity-diagram.d.mts +36 -0
- package/dist/services/integrity-diagram.d.mts.map +1 -0
- package/dist/services/integrity-diagram.mjs +275 -0
- package/dist/services/integrity-diagram.mjs.map +1 -0
- package/dist/services/integrity.d.mts +152 -0
- package/dist/services/integrity.d.mts.map +1 -0
- package/dist/services/integrity.mjs +361 -0
- package/dist/services/integrity.mjs.map +1 -0
- package/dist/services/layer-discovery.d.mts +77 -0
- package/dist/services/layer-discovery.d.mts.map +1 -0
- package/dist/services/layer-discovery.mjs +121 -0
- package/dist/services/layer-discovery.mjs.map +1 -0
- package/dist/services/list.d.mts +37 -0
- package/dist/services/list.d.mts.map +1 -0
- package/dist/services/list.mjs +46 -0
- package/dist/services/list.mjs.map +1 -0
- package/dist/services/llm/index.d.mts +28 -0
- package/dist/services/llm/index.d.mts.map +1 -0
- package/dist/services/llm/index.mjs +187 -0
- package/dist/services/llm/index.mjs.map +1 -0
- package/dist/services/llm/verify-static.d.mts +26 -0
- package/dist/services/llm/verify-static.d.mts.map +1 -0
- package/dist/services/llm/verify-static.mjs +82 -0
- package/dist/services/llm/verify-static.mjs.map +1 -0
- package/dist/services/modules/module-resolver.mjs +61 -0
- package/dist/services/modules/module-resolver.mjs.map +1 -0
- package/dist/services/openapi/export-service.d.mts +53 -0
- package/dist/services/openapi/export-service.d.mts.map +1 -0
- package/dist/services/openapi/export-service.mjs +50 -0
- package/dist/services/openapi/export-service.mjs.map +1 -0
- package/dist/services/openapi/import-service.d.mts +17 -0
- package/dist/services/openapi/import-service.d.mts.map +1 -0
- package/dist/services/openapi/import-service.mjs +165 -0
- package/dist/services/openapi/import-service.mjs.map +1 -0
- package/dist/services/openapi/index.d.mts +5 -0
- package/dist/services/openapi/index.mjs +6 -0
- package/dist/services/openapi/sync-service.d.mts +17 -0
- package/dist/services/openapi/sync-service.d.mts.map +1 -0
- package/dist/services/openapi/sync-service.mjs +120 -0
- package/dist/services/openapi/sync-service.mjs.map +1 -0
- package/dist/services/openapi/types.d.mts +162 -0
- package/dist/services/openapi/types.d.mts.map +1 -0
- package/dist/services/openapi/validate-service.d.mts +16 -0
- package/dist/services/openapi/validate-service.d.mts.map +1 -0
- package/dist/services/openapi/validate-service.mjs +130 -0
- package/dist/services/openapi/validate-service.mjs.map +1 -0
- package/dist/services/quickstart/dependencies.d.mts +31 -0
- package/dist/services/quickstart/dependencies.d.mts.map +1 -0
- package/dist/services/quickstart/dependencies.mjs +57 -0
- package/dist/services/quickstart/dependencies.mjs.map +1 -0
- package/dist/services/quickstart/index.mjs +4 -0
- package/dist/services/quickstart/quickstart-service.d.mts +20 -0
- package/dist/services/quickstart/quickstart-service.d.mts.map +1 -0
- package/dist/services/quickstart/quickstart-service.mjs +196 -0
- package/dist/services/quickstart/quickstart-service.mjs.map +1 -0
- package/dist/services/quickstart/types.d.mts +81 -0
- package/dist/services/quickstart/types.d.mts.map +1 -0
- package/dist/services/regenerator.d.mts +18 -0
- package/dist/services/regenerator.d.mts.map +1 -0
- package/dist/services/regenerator.mjs +23 -0
- package/dist/services/regenerator.mjs.map +1 -0
- package/dist/services/registry.d.mts +53 -0
- package/dist/services/registry.d.mts.map +1 -0
- package/dist/services/registry.mjs +74 -0
- package/dist/services/registry.mjs.map +1 -0
- package/dist/services/rulesync.d.mts +17 -0
- package/dist/services/rulesync.d.mts.map +1 -0
- package/dist/services/rulesync.mjs +72 -0
- package/dist/services/rulesync.mjs.map +1 -0
- package/dist/services/setup/config-generators.d.mts +42 -0
- package/dist/services/setup/config-generators.d.mts.map +1 -0
- package/dist/services/setup/config-generators.mjs +252 -0
- package/dist/services/setup/config-generators.mjs.map +1 -0
- package/dist/services/setup/file-merger.d.mts +27 -0
- package/dist/services/setup/file-merger.d.mts.map +1 -0
- package/dist/services/setup/file-merger.mjs +61 -0
- package/dist/services/setup/file-merger.mjs.map +1 -0
- package/dist/services/setup/setup-service.d.mts +12 -0
- package/dist/services/setup/setup-service.d.mts.map +1 -0
- package/dist/services/setup/setup-service.mjs +96 -0
- package/dist/services/setup/setup-service.mjs.map +1 -0
- package/dist/services/setup/targets/agents-md.mjs +47 -0
- package/dist/services/setup/targets/agents-md.mjs.map +1 -0
- package/dist/services/setup/targets/cli-config.mjs +60 -0
- package/dist/services/setup/targets/cli-config.mjs.map +1 -0
- package/dist/services/setup/targets/cursor-rules.mjs +48 -0
- package/dist/services/setup/targets/cursor-rules.mjs.map +1 -0
- package/dist/services/setup/targets/mcp-claude.mjs +60 -0
- package/dist/services/setup/targets/mcp-claude.mjs.map +1 -0
- package/dist/services/setup/targets/mcp-cursor.mjs +59 -0
- package/dist/services/setup/targets/mcp-cursor.mjs.map +1 -0
- package/dist/services/setup/targets/vscode-settings.mjs +63 -0
- package/dist/services/setup/targets/vscode-settings.mjs.map +1 -0
- package/dist/services/setup/types.d.mts +85 -0
- package/dist/services/setup/types.d.mts.map +1 -0
- package/dist/services/setup/types.mjs +27 -0
- package/dist/services/setup/types.mjs.map +1 -0
- package/dist/services/sync.d.mts +42 -0
- package/dist/services/sync.d.mts.map +1 -0
- package/dist/services/sync.mjs +64 -0
- package/dist/services/sync.mjs.map +1 -0
- package/dist/services/test/index.d.mts +2 -0
- package/dist/services/test/index.mjs +4 -0
- package/dist/services/test/test-generator-service.d.mts +24 -0
- package/dist/services/test/test-generator-service.d.mts.map +1 -0
- package/dist/services/test/test-generator-service.mjs +92 -0
- package/dist/services/test/test-generator-service.mjs.map +1 -0
- package/dist/services/test/test-service.d.mts +27 -0
- package/dist/services/test/test-service.d.mts.map +1 -0
- package/dist/services/test/test-service.mjs +94 -0
- package/dist/services/test/test-service.mjs.map +1 -0
- package/dist/services/test-link/index.d.mts +18 -0
- package/dist/services/test-link/index.d.mts.map +1 -0
- package/dist/services/test-link/index.mjs +60 -0
- package/dist/services/test-link/index.mjs.map +1 -0
- package/dist/services/test-link/test-ref-validator.d.mts +2 -0
- package/dist/services/test-link/test-ref-validator.mjs +50 -0
- package/dist/services/test-link/test-ref-validator.mjs.map +1 -0
- package/dist/services/upgrade/index.d.mts +10 -0
- package/dist/services/upgrade/index.d.mts.map +1 -0
- package/dist/services/upgrade/index.mjs +15 -0
- package/dist/services/upgrade/index.mjs.map +1 -0
- package/dist/services/upgrade/types.d.mts +78 -0
- package/dist/services/upgrade/types.d.mts.map +1 -0
- package/dist/services/upgrade/upgrade-service.d.mts +38 -0
- package/dist/services/upgrade/upgrade-service.d.mts.map +1 -0
- package/dist/services/upgrade/upgrade-service.mjs +201 -0
- package/dist/services/upgrade/upgrade-service.mjs.map +1 -0
- package/dist/services/validate/blueprint-validator.d.mts +23 -0
- package/dist/services/validate/blueprint-validator.d.mts.map +1 -0
- package/dist/services/validate/blueprint-validator.mjs +50 -0
- package/dist/services/validate/blueprint-validator.mjs.map +1 -0
- package/dist/services/validate/implementation-agent-validator.d.mts +20 -0
- package/dist/services/validate/implementation-agent-validator.d.mts.map +1 -0
- package/dist/services/validate/implementation-agent-validator.mjs +42 -0
- package/dist/services/validate/implementation-agent-validator.mjs.map +1 -0
- package/dist/services/validate/implementation-validator.d.mts +32 -0
- package/dist/services/validate/implementation-validator.d.mts.map +1 -0
- package/dist/services/validate/implementation-validator.mjs +64 -0
- package/dist/services/validate/implementation-validator.mjs.map +1 -0
- package/dist/services/validate/index.d.mts +5 -0
- package/dist/services/validate/index.mjs +7 -0
- package/dist/services/validate/spec-validator.d.mts +42 -0
- package/dist/services/validate/spec-validator.d.mts.map +1 -0
- package/dist/services/validate/spec-validator.mjs +49 -0
- package/dist/services/validate/spec-validator.mjs.map +1 -0
- package/dist/services/validate/tenant-validator.d.mts +21 -0
- package/dist/services/validate/tenant-validator.d.mts.map +1 -0
- package/dist/services/validate/tenant-validator.mjs +165 -0
- package/dist/services/validate/tenant-validator.mjs.map +1 -0
- package/dist/services/verification-cache/adapters/filesystem.d.mts +46 -0
- package/dist/services/verification-cache/adapters/filesystem.d.mts.map +1 -0
- package/dist/services/verification-cache/adapters/filesystem.mjs +120 -0
- package/dist/services/verification-cache/adapters/filesystem.mjs.map +1 -0
- package/dist/services/verification-cache/adapters/in-memory.d.mts +27 -0
- package/dist/services/verification-cache/adapters/in-memory.d.mts.map +1 -0
- package/dist/services/verification-cache/adapters/in-memory.mjs +46 -0
- package/dist/services/verification-cache/adapters/in-memory.mjs.map +1 -0
- package/dist/services/verification-cache/adapters/index.d.mts +3 -0
- package/dist/services/verification-cache/adapters/index.mjs +5 -0
- package/dist/services/verification-cache/adapters/workspace-state.d.mts +49 -0
- package/dist/services/verification-cache/adapters/workspace-state.d.mts.map +1 -0
- package/dist/services/verification-cache/adapters/workspace-state.mjs +91 -0
- package/dist/services/verification-cache/adapters/workspace-state.mjs.map +1 -0
- package/dist/services/verification-cache/cache-service.d.mts +70 -0
- package/dist/services/verification-cache/cache-service.d.mts.map +1 -0
- package/dist/services/verification-cache/cache-service.mjs +256 -0
- package/dist/services/verification-cache/cache-service.mjs.map +1 -0
- package/dist/services/verification-cache/index.d.mts +6 -0
- package/dist/services/verification-cache/index.mjs +8 -0
- package/dist/services/verification-cache/types.d.mts +124 -0
- package/dist/services/verification-cache/types.d.mts.map +1 -0
- package/dist/services/verification-cache/types.mjs +16 -0
- package/dist/services/verification-cache/types.mjs.map +1 -0
- package/dist/services/verify/ai-verifier.d.mts +25 -0
- package/dist/services/verify/ai-verifier.d.mts.map +1 -0
- package/dist/services/verify/ai-verifier.mjs +403 -0
- package/dist/services/verify/ai-verifier.mjs.map +1 -0
- package/dist/services/verify/behavior-verifier.d.mts +12 -0
- package/dist/services/verify/behavior-verifier.d.mts.map +1 -0
- package/dist/services/verify/behavior-verifier.mjs +186 -0
- package/dist/services/verify/behavior-verifier.mjs.map +1 -0
- package/dist/services/verify/index.d.mts +5 -0
- package/dist/services/verify/index.mjs +6 -0
- package/dist/services/verify/structure-verifier.d.mts +12 -0
- package/dist/services/verify/structure-verifier.d.mts.map +1 -0
- package/dist/services/verify/structure-verifier.mjs +196 -0
- package/dist/services/verify/structure-verifier.mjs.map +1 -0
- package/dist/services/verify/types.d.mts +137 -0
- package/dist/services/verify/types.d.mts.map +1 -0
- package/dist/services/verify/verify-service.d.mts +60 -0
- package/dist/services/verify/verify-service.d.mts.map +1 -0
- package/dist/services/verify/verify-service.mjs +204 -0
- package/dist/services/verify/verify-service.mjs.map +1 -0
- package/dist/services/versioning/changelog-formatter.d.mts +24 -0
- package/dist/services/versioning/changelog-formatter.d.mts.map +1 -0
- package/dist/services/versioning/changelog-formatter.mjs +155 -0
- package/dist/services/versioning/changelog-formatter.mjs.map +1 -0
- package/dist/services/versioning/conventional-commits.d.mts +95 -0
- package/dist/services/versioning/conventional-commits.d.mts.map +1 -0
- package/dist/services/versioning/conventional-commits.mjs +184 -0
- package/dist/services/versioning/conventional-commits.mjs.map +1 -0
- package/dist/services/versioning/index.d.mts +12 -0
- package/dist/services/versioning/index.d.mts.map +1 -0
- package/dist/services/versioning/index.mjs +28 -0
- package/dist/services/versioning/index.mjs.map +1 -0
- package/dist/services/versioning/types.d.mts +135 -0
- package/dist/services/versioning/types.d.mts.map +1 -0
- package/dist/services/versioning/versioning-service.d.mts +74 -0
- package/dist/services/versioning/versioning-service.d.mts.map +1 -0
- package/dist/services/versioning/versioning-service.mjs +501 -0
- package/dist/services/versioning/versioning-service.mjs.map +1 -0
- package/dist/services/vibe/config.d.mts +12 -0
- package/dist/services/vibe/config.d.mts.map +1 -0
- package/dist/services/vibe/config.mjs +43 -0
- package/dist/services/vibe/config.mjs.map +1 -0
- package/dist/services/vibe/context.d.mts +19 -0
- package/dist/services/vibe/context.d.mts.map +1 -0
- package/dist/services/vibe/context.mjs +92 -0
- package/dist/services/vibe/context.mjs.map +1 -0
- package/dist/services/vibe/definitions.d.mts +8 -0
- package/dist/services/vibe/definitions.d.mts.map +1 -0
- package/dist/services/vibe/definitions.mjs +129 -0
- package/dist/services/vibe/definitions.mjs.map +1 -0
- package/dist/services/vibe/engine.d.mts +44 -0
- package/dist/services/vibe/engine.d.mts.map +1 -0
- package/dist/services/vibe/engine.mjs +147 -0
- package/dist/services/vibe/engine.mjs.map +1 -0
- package/dist/services/vibe/index.d.mts +15 -0
- package/dist/services/vibe/index.d.mts.map +1 -0
- package/dist/services/vibe/index.mjs +26 -0
- package/dist/services/vibe/index.mjs.map +1 -0
- package/dist/services/vibe/loader.d.mts +15 -0
- package/dist/services/vibe/loader.d.mts.map +1 -0
- package/dist/services/vibe/loader.mjs +48 -0
- package/dist/services/vibe/loader.mjs.map +1 -0
- package/dist/services/vibe/pack.d.mts +19 -0
- package/dist/services/vibe/pack.d.mts.map +1 -0
- package/dist/services/vibe/pack.mjs +66 -0
- package/dist/services/vibe/pack.mjs.map +1 -0
- package/dist/services/vibe/types.d.mts +59 -0
- package/dist/services/vibe/types.d.mts.map +1 -0
- package/dist/services/vibe/types.mjs +12 -0
- package/dist/services/vibe/types.mjs.map +1 -0
- package/dist/services/view/index.d.mts +11 -0
- package/dist/services/view/index.d.mts.map +1 -0
- package/dist/services/view/index.mjs +119 -0
- package/dist/services/view/index.mjs.map +1 -0
- package/dist/services/watch.d.mts +25 -0
- package/dist/services/watch.d.mts.map +1 -0
- package/dist/services/watch.mjs +33 -0
- package/dist/services/watch.mjs.map +1 -0
- package/dist/services/workspace-info.d.mts +62 -0
- package/dist/services/workspace-info.d.mts.map +1 -0
- package/dist/services/workspace-info.mjs +103 -0
- package/dist/services/workspace-info.mjs.map +1 -0
- package/dist/templates/app-config.template.d.mts +7 -0
- package/dist/templates/app-config.template.d.mts.map +1 -0
- package/dist/templates/app-config.template.mjs +107 -0
- package/dist/templates/app-config.template.mjs.map +1 -0
- package/dist/templates/data-view.template.d.mts +7 -0
- package/dist/templates/data-view.template.d.mts.map +1 -0
- package/dist/templates/data-view.template.mjs +70 -0
- package/dist/templates/data-view.template.mjs.map +1 -0
- package/dist/templates/event.template.d.mts +11 -0
- package/dist/templates/event.template.d.mts.map +1 -0
- package/dist/templates/event.template.mjs +42 -0
- package/dist/templates/event.template.mjs.map +1 -0
- package/dist/templates/experiment.template.d.mts +7 -0
- package/dist/templates/experiment.template.d.mts.map +1 -0
- package/dist/templates/experiment.template.mjs +89 -0
- package/dist/templates/experiment.template.mjs.map +1 -0
- package/dist/templates/feature.template.d.mts +33 -0
- package/dist/templates/feature.template.d.mts.map +1 -0
- package/dist/templates/feature.template.mjs +52 -0
- package/dist/templates/feature.template.mjs.map +1 -0
- package/dist/templates/fix/skeleton-capability.mjs +49 -0
- package/dist/templates/fix/skeleton-capability.mjs.map +1 -0
- package/dist/templates/fix/skeleton-event.mjs +56 -0
- package/dist/templates/fix/skeleton-event.mjs.map +1 -0
- package/dist/templates/fix/skeleton-operation.mjs +122 -0
- package/dist/templates/fix/skeleton-operation.mjs.map +1 -0
- package/dist/templates/fix/skeleton-presentation.mjs +65 -0
- package/dist/templates/fix/skeleton-presentation.mjs.map +1 -0
- package/dist/templates/fix/utils.mjs +34 -0
- package/dist/templates/fix/utils.mjs.map +1 -0
- package/dist/templates/handler.template.d.mts +16 -0
- package/dist/templates/handler.template.d.mts.map +1 -0
- package/dist/templates/handler.template.mjs +100 -0
- package/dist/templates/handler.template.mjs.map +1 -0
- package/dist/templates/index.d.mts +22 -0
- package/dist/templates/index.d.mts.map +1 -0
- package/dist/templates/index.mjs +39 -0
- package/dist/templates/index.mjs.map +1 -0
- package/dist/templates/integration.template.d.mts +7 -0
- package/dist/templates/integration.template.d.mts.map +1 -0
- package/dist/templates/integration.template.mjs +160 -0
- package/dist/templates/integration.template.mjs.map +1 -0
- package/dist/templates/knowledge.template.d.mts +7 -0
- package/dist/templates/knowledge.template.d.mts.map +1 -0
- package/dist/templates/knowledge.template.mjs +75 -0
- package/dist/templates/knowledge.template.mjs.map +1 -0
- package/dist/templates/migration.template.d.mts +7 -0
- package/dist/templates/migration.template.d.mts.map +1 -0
- package/dist/templates/migration.template.mjs +62 -0
- package/dist/templates/migration.template.mjs.map +1 -0
- package/dist/templates/operation.template.d.mts +11 -0
- package/dist/templates/operation.template.d.mts.map +1 -0
- package/dist/templates/operation.template.mjs +107 -0
- package/dist/templates/operation.template.mjs.map +1 -0
- package/dist/templates/presentation.template.d.mts +11 -0
- package/dist/templates/presentation.template.d.mts.map +1 -0
- package/dist/templates/presentation.template.mjs +80 -0
- package/dist/templates/presentation.template.mjs.map +1 -0
- package/dist/templates/telemetry.template.d.mts +7 -0
- package/dist/templates/telemetry.template.d.mts.map +1 -0
- package/dist/templates/telemetry.template.mjs +91 -0
- package/dist/templates/telemetry.template.mjs.map +1 -0
- package/dist/templates/workflow-runner.template.d.mts +16 -0
- package/dist/templates/workflow-runner.template.d.mts.map +1 -0
- package/dist/templates/workflow-runner.template.mjs +50 -0
- package/dist/templates/workflow-runner.template.mjs.map +1 -0
- package/dist/templates/workflow.template.d.mts +7 -0
- package/dist/templates/workflow.template.d.mts.map +1 -0
- package/dist/templates/workflow.template.mjs +69 -0
- package/dist/templates/workflow.template.mjs.map +1 -0
- package/dist/types/config.d.mts +34 -0
- package/dist/types/config.d.mts.map +1 -0
- package/dist/types.d.mts +324 -0
- package/dist/types.d.mts.map +1 -0
- package/dist/utils/filter.d.mts +16 -0
- package/dist/utils/filter.d.mts.map +1 -0
- package/dist/utils/filter.mjs +22 -0
- package/dist/utils/filter.mjs.map +1 -0
- package/dist/utils/index.d.mts +11 -0
- package/dist/utils/index.d.mts.map +1 -0
- package/dist/utils/index.mjs +20 -0
- package/dist/utils/index.mjs.map +1 -0
- package/dist/utils/module-loader.d.mts +5 -0
- package/dist/utils/module-loader.d.mts.map +1 -0
- package/dist/utils/module-loader.mjs +41 -0
- package/dist/utils/module-loader.mjs.map +1 -0
- package/dist/utils/validation.d.mts +37 -0
- package/dist/utils/validation.d.mts.map +1 -0
- package/dist/utils/validation.mjs +43 -0
- package/dist/utils/validation.mjs.map +1 -0
- package/package.json +24 -19
- package/dist/_virtual/rolldown_runtime.js +0 -18
- package/dist/adapters/ai.d.ts +0 -12
- package/dist/adapters/ai.d.ts.map +0 -1
- package/dist/adapters/ai.js +0 -83
- package/dist/adapters/ai.js.map +0 -1
- package/dist/adapters/factory.d.ts +0 -29
- package/dist/adapters/factory.d.ts.map +0 -1
- package/dist/adapters/factory.js +0 -37
- package/dist/adapters/factory.js.map +0 -1
- package/dist/adapters/fs.d.ts +0 -12
- package/dist/adapters/fs.d.ts.map +0 -1
- package/dist/adapters/fs.js +0 -131
- package/dist/adapters/fs.js.map +0 -1
- package/dist/adapters/git.d.ts +0 -11
- package/dist/adapters/git.d.ts.map +0 -1
- package/dist/adapters/git.js +0 -84
- package/dist/adapters/git.js.map +0 -1
- package/dist/adapters/index.d.ts +0 -7
- package/dist/adapters/index.js +0 -7
- package/dist/adapters/logger.d.ts +0 -18
- package/dist/adapters/logger.d.ts.map +0 -1
- package/dist/adapters/logger.js +0 -81
- package/dist/adapters/logger.js.map +0 -1
- package/dist/adapters/watcher.d.ts +0 -11
- package/dist/adapters/watcher.d.ts.map +0 -1
- package/dist/adapters/watcher.js +0 -74
- package/dist/adapters/watcher.js.map +0 -1
- package/dist/adapters/workspace.d.ts +0 -148
- package/dist/adapters/workspace.d.ts.map +0 -1
- package/dist/adapters/workspace.js +0 -275
- package/dist/adapters/workspace.js.map +0 -1
- package/dist/ai/agents/claude-code-agent.d.ts +0 -22
- package/dist/ai/agents/claude-code-agent.d.ts.map +0 -1
- package/dist/ai/agents/claude-code-agent.js +0 -182
- package/dist/ai/agents/claude-code-agent.js.map +0 -1
- package/dist/ai/agents/cursor-agent.d.ts +0 -68
- package/dist/ai/agents/cursor-agent.d.ts.map +0 -1
- package/dist/ai/agents/cursor-agent.js +0 -436
- package/dist/ai/agents/cursor-agent.js.map +0 -1
- package/dist/ai/agents/index.js +0 -5
- package/dist/ai/agents/openai-codex-agent.d.ts +0 -22
- package/dist/ai/agents/openai-codex-agent.d.ts.map +0 -1
- package/dist/ai/agents/openai-codex-agent.js +0 -167
- package/dist/ai/agents/openai-codex-agent.js.map +0 -1
- package/dist/ai/agents/orchestrator.d.ts +0 -50
- package/dist/ai/agents/orchestrator.d.ts.map +0 -1
- package/dist/ai/agents/orchestrator.js +0 -143
- package/dist/ai/agents/orchestrator.js.map +0 -1
- package/dist/ai/agents/simple-agent.d.ts +0 -17
- package/dist/ai/agents/simple-agent.d.ts.map +0 -1
- package/dist/ai/agents/simple-agent.js +0 -92
- package/dist/ai/agents/simple-agent.js.map +0 -1
- package/dist/ai/agents/types.d.ts +0 -36
- package/dist/ai/agents/types.d.ts.map +0 -1
- package/dist/ai/client.d.ts +0 -97
- package/dist/ai/client.d.ts.map +0 -1
- package/dist/ai/client.js +0 -189
- package/dist/ai/client.js.map +0 -1
- package/dist/ai/index.d.ts +0 -9
- package/dist/ai/index.js +0 -9
- package/dist/ai/prompts/code-generation.d.ts +0 -26
- package/dist/ai/prompts/code-generation.d.ts.map +0 -1
- package/dist/ai/prompts/code-generation.js +0 -143
- package/dist/ai/prompts/code-generation.js.map +0 -1
- package/dist/ai/prompts/index.d.ts +0 -10
- package/dist/ai/prompts/index.d.ts.map +0 -1
- package/dist/ai/prompts/index.js +0 -13
- package/dist/ai/prompts/index.js.map +0 -1
- package/dist/ai/prompts/spec-creation.d.ts +0 -29
- package/dist/ai/prompts/spec-creation.d.ts.map +0 -1
- package/dist/ai/prompts/spec-creation.js +0 -111
- package/dist/ai/prompts/spec-creation.js.map +0 -1
- package/dist/ai/providers.d.ts +0 -29
- package/dist/ai/providers.d.ts.map +0 -1
- package/dist/ai/providers.js +0 -39
- package/dist/ai/providers.js.map +0 -1
- package/dist/formatters/index.d.ts +0 -11
- package/dist/formatters/index.d.ts.map +0 -1
- package/dist/formatters/index.js +0 -19
- package/dist/formatters/index.js.map +0 -1
- package/dist/formatters/json.d.ts +0 -89
- package/dist/formatters/json.d.ts.map +0 -1
- package/dist/formatters/json.js +0 -72
- package/dist/formatters/json.js.map +0 -1
- package/dist/formatters/sarif.d.ts +0 -101
- package/dist/formatters/sarif.d.ts.map +0 -1
- package/dist/formatters/sarif.js +0 -163
- package/dist/formatters/sarif.js.map +0 -1
- package/dist/formatters/text.d.ts +0 -35
- package/dist/formatters/text.d.ts.map +0 -1
- package/dist/formatters/text.js +0 -209
- package/dist/formatters/text.js.map +0 -1
- package/dist/index.d.ts +0 -111
- package/dist/index.js +0 -97
- package/dist/ports/ai.d.ts +0 -59
- package/dist/ports/ai.d.ts.map +0 -1
- package/dist/ports/fs.d.ts +0 -81
- package/dist/ports/fs.d.ts.map +0 -1
- package/dist/ports/git.d.ts +0 -46
- package/dist/ports/git.d.ts.map +0 -1
- package/dist/ports/index.d.ts +0 -6
- package/dist/ports/logger.d.ts +0 -88
- package/dist/ports/logger.d.ts.map +0 -1
- package/dist/ports/rulesync.d.ts +0 -38
- package/dist/ports/rulesync.d.ts.map +0 -1
- package/dist/ports/watcher.d.ts +0 -52
- package/dist/ports/watcher.d.ts.map +0 -1
- package/dist/services/agent-guide/adapters/claude-code.d.ts +0 -35
- package/dist/services/agent-guide/adapters/claude-code.d.ts.map +0 -1
- package/dist/services/agent-guide/adapters/claude-code.js +0 -144
- package/dist/services/agent-guide/adapters/claude-code.js.map +0 -1
- package/dist/services/agent-guide/adapters/cursor-cli.d.ts +0 -39
- package/dist/services/agent-guide/adapters/cursor-cli.d.ts.map +0 -1
- package/dist/services/agent-guide/adapters/cursor-cli.js +0 -135
- package/dist/services/agent-guide/adapters/cursor-cli.js.map +0 -1
- package/dist/services/agent-guide/adapters/generic-mcp.d.ts +0 -53
- package/dist/services/agent-guide/adapters/generic-mcp.d.ts.map +0 -1
- package/dist/services/agent-guide/adapters/generic-mcp.js +0 -159
- package/dist/services/agent-guide/adapters/generic-mcp.js.map +0 -1
- package/dist/services/agent-guide/adapters/index.d.ts +0 -23
- package/dist/services/agent-guide/adapters/index.d.ts.map +0 -1
- package/dist/services/agent-guide/adapters/index.js +0 -31
- package/dist/services/agent-guide/adapters/index.js.map +0 -1
- package/dist/services/agent-guide/agent-guide-service.d.ts +0 -56
- package/dist/services/agent-guide/agent-guide-service.d.ts.map +0 -1
- package/dist/services/agent-guide/agent-guide-service.js +0 -147
- package/dist/services/agent-guide/agent-guide-service.js.map +0 -1
- package/dist/services/agent-guide/index.d.ts +0 -6
- package/dist/services/agent-guide/index.js +0 -5
- package/dist/services/agent-guide/types.d.ts +0 -58
- package/dist/services/agent-guide/types.d.ts.map +0 -1
- package/dist/services/build.d.ts +0 -59
- package/dist/services/build.d.ts.map +0 -1
- package/dist/services/build.js +0 -140
- package/dist/services/build.js.map +0 -1
- package/dist/services/ci-check/ci-check-service.d.ts +0 -16
- package/dist/services/ci-check/ci-check-service.d.ts.map +0 -1
- package/dist/services/ci-check/ci-check-service.js +0 -459
- package/dist/services/ci-check/ci-check-service.js.map +0 -1
- package/dist/services/ci-check/index.d.ts +0 -2
- package/dist/services/ci-check/index.js +0 -2
- package/dist/services/ci-check/types.d.ts +0 -143
- package/dist/services/ci-check/types.d.ts.map +0 -1
- package/dist/services/ci-check/types.js +0 -31
- package/dist/services/ci-check/types.js.map +0 -1
- package/dist/services/clean.d.ts +0 -41
- package/dist/services/clean.d.ts.map +0 -1
- package/dist/services/clean.js +0 -72
- package/dist/services/clean.js.map +0 -1
- package/dist/services/config.d.ts +0 -16
- package/dist/services/config.d.ts.map +0 -1
- package/dist/services/config.js +0 -63
- package/dist/services/config.js.map +0 -1
- package/dist/services/create/ai-generator.d.ts +0 -84
- package/dist/services/create/ai-generator.d.ts.map +0 -1
- package/dist/services/create/ai-generator.js +0 -178
- package/dist/services/create/ai-generator.js.map +0 -1
- package/dist/services/create/index.d.ts +0 -27
- package/dist/services/create/index.d.ts.map +0 -1
- package/dist/services/create/index.js +0 -36
- package/dist/services/create/index.js.map +0 -1
- package/dist/services/create/templates.d.ts +0 -21
- package/dist/services/create/templates.d.ts.map +0 -1
- package/dist/services/create/templates.js +0 -37
- package/dist/services/create/templates.js.map +0 -1
- package/dist/services/deps.d.ts +0 -53
- package/dist/services/deps.d.ts.map +0 -1
- package/dist/services/deps.js +0 -62
- package/dist/services/deps.js.map +0 -1
- package/dist/services/diff.d.ts +0 -34
- package/dist/services/diff.d.ts.map +0 -1
- package/dist/services/diff.js +0 -34
- package/dist/services/diff.js.map +0 -1
- package/dist/services/docs/docs-service.d.ts +0 -19
- package/dist/services/docs/docs-service.d.ts.map +0 -1
- package/dist/services/docs/docs-service.js +0 -41
- package/dist/services/docs/docs-service.js.map +0 -1
- package/dist/services/docs/index.d.ts +0 -1
- package/dist/services/docs/index.js +0 -1
- package/dist/services/doctor/checks/ai.js +0 -119
- package/dist/services/doctor/checks/ai.js.map +0 -1
- package/dist/services/doctor/checks/cli.js +0 -156
- package/dist/services/doctor/checks/cli.js.map +0 -1
- package/dist/services/doctor/checks/config.js +0 -303
- package/dist/services/doctor/checks/config.js.map +0 -1
- package/dist/services/doctor/checks/deps.js +0 -267
- package/dist/services/doctor/checks/deps.js.map +0 -1
- package/dist/services/doctor/checks/index.js +0 -7
- package/dist/services/doctor/checks/layers.js +0 -139
- package/dist/services/doctor/checks/layers.js.map +0 -1
- package/dist/services/doctor/checks/mcp.js +0 -145
- package/dist/services/doctor/checks/mcp.js.map +0 -1
- package/dist/services/doctor/checks/workspace.js +0 -263
- package/dist/services/doctor/checks/workspace.js.map +0 -1
- package/dist/services/doctor/doctor-service.d.ts +0 -24
- package/dist/services/doctor/doctor-service.d.ts.map +0 -1
- package/dist/services/doctor/doctor-service.js +0 -118
- package/dist/services/doctor/doctor-service.js.map +0 -1
- package/dist/services/doctor/index.d.ts +0 -2
- package/dist/services/doctor/index.js +0 -2
- package/dist/services/doctor/types.d.ts +0 -118
- package/dist/services/doctor/types.d.ts.map +0 -1
- package/dist/services/doctor/types.js +0 -29
- package/dist/services/doctor/types.js.map +0 -1
- package/dist/services/formatter.d.ts +0 -15
- package/dist/services/formatter.d.ts.map +0 -1
- package/dist/services/formatter.js +0 -26
- package/dist/services/formatter.js.map +0 -1
- package/dist/services/hooks/hooks-service.d.ts +0 -24
- package/dist/services/hooks/hooks-service.d.ts.map +0 -1
- package/dist/services/hooks/hooks-service.js +0 -126
- package/dist/services/hooks/hooks-service.js.map +0 -1
- package/dist/services/hooks/index.d.ts +0 -10
- package/dist/services/hooks/index.d.ts.map +0 -1
- package/dist/services/hooks/index.js +0 -12
- package/dist/services/hooks/index.js.map +0 -1
- package/dist/services/hooks/types.d.ts +0 -56
- package/dist/services/hooks/types.d.ts.map +0 -1
- package/dist/services/impact/formatters.d.ts +0 -27
- package/dist/services/impact/formatters.d.ts.map +0 -1
- package/dist/services/impact/formatters.js +0 -111
- package/dist/services/impact/formatters.js.map +0 -1
- package/dist/services/impact/impact-detection-service.d.ts +0 -22
- package/dist/services/impact/impact-detection-service.d.ts.map +0 -1
- package/dist/services/impact/impact-detection-service.js +0 -96
- package/dist/services/impact/impact-detection-service.js.map +0 -1
- package/dist/services/impact/index.d.ts +0 -11
- package/dist/services/impact/index.d.ts.map +0 -1
- package/dist/services/impact/index.js +0 -16
- package/dist/services/impact/index.js.map +0 -1
- package/dist/services/impact/types.d.ts +0 -58
- package/dist/services/impact/types.d.ts.map +0 -1
- package/dist/services/implementation/discovery.d.ts +0 -30
- package/dist/services/implementation/discovery.d.ts.map +0 -1
- package/dist/services/implementation/discovery.js +0 -144
- package/dist/services/implementation/discovery.js.map +0 -1
- package/dist/services/implementation/index.d.ts +0 -3
- package/dist/services/implementation/index.js +0 -2
- package/dist/services/implementation/resolver.d.ts +0 -44
- package/dist/services/implementation/resolver.d.ts.map +0 -1
- package/dist/services/implementation/resolver.js +0 -224
- package/dist/services/implementation/resolver.js.map +0 -1
- package/dist/services/implementation/types.d.ts +0 -79
- package/dist/services/implementation/types.d.ts.map +0 -1
- package/dist/services/index.d.ts +0 -91
- package/dist/services/index.js +0 -87
- package/dist/services/integrity-diagram.d.ts +0 -36
- package/dist/services/integrity-diagram.d.ts.map +0 -1
- package/dist/services/integrity-diagram.js +0 -275
- package/dist/services/integrity-diagram.js.map +0 -1
- package/dist/services/integrity.d.ts +0 -134
- package/dist/services/integrity.d.ts.map +0 -1
- package/dist/services/integrity.js +0 -272
- package/dist/services/integrity.js.map +0 -1
- package/dist/services/layer-discovery.d.ts +0 -77
- package/dist/services/layer-discovery.d.ts.map +0 -1
- package/dist/services/layer-discovery.js +0 -121
- package/dist/services/layer-discovery.js.map +0 -1
- package/dist/services/list.d.ts +0 -31
- package/dist/services/list.d.ts.map +0 -1
- package/dist/services/list.js +0 -36
- package/dist/services/list.js.map +0 -1
- package/dist/services/llm/index.d.ts +0 -28
- package/dist/services/llm/index.d.ts.map +0 -1
- package/dist/services/llm/index.js +0 -187
- package/dist/services/llm/index.js.map +0 -1
- package/dist/services/llm/verify-static.d.ts +0 -26
- package/dist/services/llm/verify-static.d.ts.map +0 -1
- package/dist/services/llm/verify-static.js +0 -82
- package/dist/services/llm/verify-static.js.map +0 -1
- package/dist/services/openapi/export-service.d.ts +0 -53
- package/dist/services/openapi/export-service.d.ts.map +0 -1
- package/dist/services/openapi/export-service.js +0 -50
- package/dist/services/openapi/export-service.js.map +0 -1
- package/dist/services/openapi/import-service.d.ts +0 -17
- package/dist/services/openapi/import-service.d.ts.map +0 -1
- package/dist/services/openapi/import-service.js +0 -168
- package/dist/services/openapi/import-service.js.map +0 -1
- package/dist/services/openapi/index.d.ts +0 -5
- package/dist/services/openapi/index.js +0 -4
- package/dist/services/openapi/sync-service.d.ts +0 -17
- package/dist/services/openapi/sync-service.d.ts.map +0 -1
- package/dist/services/openapi/sync-service.js +0 -120
- package/dist/services/openapi/sync-service.js.map +0 -1
- package/dist/services/openapi/types.d.ts +0 -162
- package/dist/services/openapi/types.d.ts.map +0 -1
- package/dist/services/openapi/validate-service.d.ts +0 -16
- package/dist/services/openapi/validate-service.d.ts.map +0 -1
- package/dist/services/openapi/validate-service.js +0 -130
- package/dist/services/openapi/validate-service.js.map +0 -1
- package/dist/services/quickstart/dependencies.d.ts +0 -31
- package/dist/services/quickstart/dependencies.d.ts.map +0 -1
- package/dist/services/quickstart/dependencies.js +0 -57
- package/dist/services/quickstart/dependencies.js.map +0 -1
- package/dist/services/quickstart/index.js +0 -2
- package/dist/services/quickstart/quickstart-service.d.ts +0 -20
- package/dist/services/quickstart/quickstart-service.d.ts.map +0 -1
- package/dist/services/quickstart/quickstart-service.js +0 -196
- package/dist/services/quickstart/quickstart-service.js.map +0 -1
- package/dist/services/quickstart/types.d.ts +0 -81
- package/dist/services/quickstart/types.d.ts.map +0 -1
- package/dist/services/regenerator.d.ts +0 -18
- package/dist/services/regenerator.d.ts.map +0 -1
- package/dist/services/regenerator.js +0 -23
- package/dist/services/regenerator.js.map +0 -1
- package/dist/services/registry.d.ts +0 -53
- package/dist/services/registry.d.ts.map +0 -1
- package/dist/services/registry.js +0 -74
- package/dist/services/registry.js.map +0 -1
- package/dist/services/rulesync.d.ts +0 -17
- package/dist/services/rulesync.d.ts.map +0 -1
- package/dist/services/rulesync.js +0 -71
- package/dist/services/rulesync.js.map +0 -1
- package/dist/services/setup/config-generators.d.ts +0 -42
- package/dist/services/setup/config-generators.d.ts.map +0 -1
- package/dist/services/setup/config-generators.js +0 -252
- package/dist/services/setup/config-generators.js.map +0 -1
- package/dist/services/setup/file-merger.d.ts +0 -27
- package/dist/services/setup/file-merger.d.ts.map +0 -1
- package/dist/services/setup/file-merger.js +0 -61
- package/dist/services/setup/file-merger.js.map +0 -1
- package/dist/services/setup/index.js +0 -4
- package/dist/services/setup/setup-service.d.ts +0 -12
- package/dist/services/setup/setup-service.d.ts.map +0 -1
- package/dist/services/setup/setup-service.js +0 -96
- package/dist/services/setup/setup-service.js.map +0 -1
- package/dist/services/setup/targets/agents-md.js +0 -47
- package/dist/services/setup/targets/agents-md.js.map +0 -1
- package/dist/services/setup/targets/cli-config.js +0 -60
- package/dist/services/setup/targets/cli-config.js.map +0 -1
- package/dist/services/setup/targets/cursor-rules.js +0 -48
- package/dist/services/setup/targets/cursor-rules.js.map +0 -1
- package/dist/services/setup/targets/mcp-claude.js +0 -60
- package/dist/services/setup/targets/mcp-claude.js.map +0 -1
- package/dist/services/setup/targets/mcp-cursor.js +0 -59
- package/dist/services/setup/targets/mcp-cursor.js.map +0 -1
- package/dist/services/setup/targets/vscode-settings.js +0 -63
- package/dist/services/setup/targets/vscode-settings.js.map +0 -1
- package/dist/services/setup/types.d.ts +0 -85
- package/dist/services/setup/types.d.ts.map +0 -1
- package/dist/services/setup/types.js +0 -27
- package/dist/services/setup/types.js.map +0 -1
- package/dist/services/sync.d.ts +0 -42
- package/dist/services/sync.d.ts.map +0 -1
- package/dist/services/sync.js +0 -64
- package/dist/services/sync.js.map +0 -1
- package/dist/services/test/index.d.ts +0 -1
- package/dist/services/test/index.js +0 -1
- package/dist/services/test/test-service.d.ts +0 -22
- package/dist/services/test/test-service.d.ts.map +0 -1
- package/dist/services/test/test-service.js +0 -81
- package/dist/services/test/test-service.js.map +0 -1
- package/dist/services/upgrade/index.d.ts +0 -10
- package/dist/services/upgrade/index.d.ts.map +0 -1
- package/dist/services/upgrade/index.js +0 -15
- package/dist/services/upgrade/index.js.map +0 -1
- package/dist/services/upgrade/types.d.ts +0 -78
- package/dist/services/upgrade/types.d.ts.map +0 -1
- package/dist/services/upgrade/upgrade-service.d.ts +0 -38
- package/dist/services/upgrade/upgrade-service.d.ts.map +0 -1
- package/dist/services/upgrade/upgrade-service.js +0 -201
- package/dist/services/upgrade/upgrade-service.js.map +0 -1
- package/dist/services/validate/blueprint-validator.d.ts +0 -23
- package/dist/services/validate/blueprint-validator.d.ts.map +0 -1
- package/dist/services/validate/blueprint-validator.js +0 -50
- package/dist/services/validate/blueprint-validator.js.map +0 -1
- package/dist/services/validate/implementation-agent-validator.d.ts +0 -20
- package/dist/services/validate/implementation-agent-validator.d.ts.map +0 -1
- package/dist/services/validate/implementation-agent-validator.js +0 -42
- package/dist/services/validate/implementation-agent-validator.js.map +0 -1
- package/dist/services/validate/implementation-validator.d.ts +0 -32
- package/dist/services/validate/implementation-validator.d.ts.map +0 -1
- package/dist/services/validate/implementation-validator.js +0 -64
- package/dist/services/validate/implementation-validator.js.map +0 -1
- package/dist/services/validate/index.d.ts +0 -5
- package/dist/services/validate/index.js +0 -5
- package/dist/services/validate/spec-validator.d.ts +0 -42
- package/dist/services/validate/spec-validator.d.ts.map +0 -1
- package/dist/services/validate/spec-validator.js +0 -50
- package/dist/services/validate/spec-validator.js.map +0 -1
- package/dist/services/validate/tenant-validator.d.ts +0 -21
- package/dist/services/validate/tenant-validator.d.ts.map +0 -1
- package/dist/services/validate/tenant-validator.js +0 -165
- package/dist/services/validate/tenant-validator.js.map +0 -1
- package/dist/services/verification-cache/adapters/filesystem.d.ts +0 -46
- package/dist/services/verification-cache/adapters/filesystem.d.ts.map +0 -1
- package/dist/services/verification-cache/adapters/filesystem.js +0 -120
- package/dist/services/verification-cache/adapters/filesystem.js.map +0 -1
- package/dist/services/verification-cache/adapters/in-memory.d.ts +0 -27
- package/dist/services/verification-cache/adapters/in-memory.d.ts.map +0 -1
- package/dist/services/verification-cache/adapters/in-memory.js +0 -46
- package/dist/services/verification-cache/adapters/in-memory.js.map +0 -1
- package/dist/services/verification-cache/adapters/index.d.ts +0 -3
- package/dist/services/verification-cache/adapters/index.js +0 -3
- package/dist/services/verification-cache/adapters/workspace-state.d.ts +0 -49
- package/dist/services/verification-cache/adapters/workspace-state.d.ts.map +0 -1
- package/dist/services/verification-cache/adapters/workspace-state.js +0 -91
- package/dist/services/verification-cache/adapters/workspace-state.js.map +0 -1
- package/dist/services/verification-cache/cache-service.d.ts +0 -70
- package/dist/services/verification-cache/cache-service.d.ts.map +0 -1
- package/dist/services/verification-cache/cache-service.js +0 -256
- package/dist/services/verification-cache/cache-service.js.map +0 -1
- package/dist/services/verification-cache/index.d.ts +0 -6
- package/dist/services/verification-cache/index.js +0 -6
- package/dist/services/verification-cache/types.d.ts +0 -124
- package/dist/services/verification-cache/types.d.ts.map +0 -1
- package/dist/services/verification-cache/types.js +0 -16
- package/dist/services/verification-cache/types.js.map +0 -1
- package/dist/services/verify/ai-verifier.d.ts +0 -25
- package/dist/services/verify/ai-verifier.d.ts.map +0 -1
- package/dist/services/verify/ai-verifier.js +0 -403
- package/dist/services/verify/ai-verifier.js.map +0 -1
- package/dist/services/verify/behavior-verifier.d.ts +0 -12
- package/dist/services/verify/behavior-verifier.d.ts.map +0 -1
- package/dist/services/verify/behavior-verifier.js +0 -186
- package/dist/services/verify/behavior-verifier.js.map +0 -1
- package/dist/services/verify/index.d.ts +0 -5
- package/dist/services/verify/index.js +0 -4
- package/dist/services/verify/structure-verifier.d.ts +0 -12
- package/dist/services/verify/structure-verifier.d.ts.map +0 -1
- package/dist/services/verify/structure-verifier.js +0 -196
- package/dist/services/verify/structure-verifier.js.map +0 -1
- package/dist/services/verify/types.d.ts +0 -137
- package/dist/services/verify/types.d.ts.map +0 -1
- package/dist/services/verify/verify-service.d.ts +0 -60
- package/dist/services/verify/verify-service.d.ts.map +0 -1
- package/dist/services/verify/verify-service.js +0 -204
- package/dist/services/verify/verify-service.js.map +0 -1
- package/dist/services/versioning/changelog-formatter.d.ts +0 -24
- package/dist/services/versioning/changelog-formatter.d.ts.map +0 -1
- package/dist/services/versioning/changelog-formatter.js +0 -155
- package/dist/services/versioning/changelog-formatter.js.map +0 -1
- package/dist/services/versioning/conventional-commits.d.ts +0 -95
- package/dist/services/versioning/conventional-commits.d.ts.map +0 -1
- package/dist/services/versioning/conventional-commits.js +0 -184
- package/dist/services/versioning/conventional-commits.js.map +0 -1
- package/dist/services/versioning/index.d.ts +0 -12
- package/dist/services/versioning/index.d.ts.map +0 -1
- package/dist/services/versioning/index.js +0 -28
- package/dist/services/versioning/index.js.map +0 -1
- package/dist/services/versioning/types.d.ts +0 -135
- package/dist/services/versioning/types.d.ts.map +0 -1
- package/dist/services/versioning/versioning-service.d.ts +0 -74
- package/dist/services/versioning/versioning-service.d.ts.map +0 -1
- package/dist/services/versioning/versioning-service.js +0 -501
- package/dist/services/versioning/versioning-service.js.map +0 -1
- package/dist/services/watch.d.ts +0 -25
- package/dist/services/watch.d.ts.map +0 -1
- package/dist/services/watch.js +0 -33
- package/dist/services/watch.js.map +0 -1
- package/dist/services/workspace-info.d.ts +0 -62
- package/dist/services/workspace-info.d.ts.map +0 -1
- package/dist/services/workspace-info.js +0 -103
- package/dist/services/workspace-info.js.map +0 -1
- package/dist/templates/app-config.template.d.ts +0 -7
- package/dist/templates/app-config.template.d.ts.map +0 -1
- package/dist/templates/app-config.template.js +0 -107
- package/dist/templates/app-config.template.js.map +0 -1
- package/dist/templates/data-view.template.d.ts +0 -7
- package/dist/templates/data-view.template.d.ts.map +0 -1
- package/dist/templates/data-view.template.js +0 -70
- package/dist/templates/data-view.template.js.map +0 -1
- package/dist/templates/event.template.d.ts +0 -11
- package/dist/templates/event.template.d.ts.map +0 -1
- package/dist/templates/event.template.js +0 -42
- package/dist/templates/event.template.js.map +0 -1
- package/dist/templates/experiment.template.d.ts +0 -7
- package/dist/templates/experiment.template.d.ts.map +0 -1
- package/dist/templates/experiment.template.js +0 -89
- package/dist/templates/experiment.template.js.map +0 -1
- package/dist/templates/handler.template.d.ts +0 -16
- package/dist/templates/handler.template.d.ts.map +0 -1
- package/dist/templates/handler.template.js +0 -100
- package/dist/templates/handler.template.js.map +0 -1
- package/dist/templates/index.d.ts +0 -21
- package/dist/templates/index.d.ts.map +0 -1
- package/dist/templates/index.js +0 -37
- package/dist/templates/index.js.map +0 -1
- package/dist/templates/integration.template.d.ts +0 -7
- package/dist/templates/integration.template.d.ts.map +0 -1
- package/dist/templates/integration.template.js +0 -160
- package/dist/templates/integration.template.js.map +0 -1
- package/dist/templates/knowledge.template.d.ts +0 -7
- package/dist/templates/knowledge.template.d.ts.map +0 -1
- package/dist/templates/knowledge.template.js +0 -75
- package/dist/templates/knowledge.template.js.map +0 -1
- package/dist/templates/migration.template.d.ts +0 -7
- package/dist/templates/migration.template.d.ts.map +0 -1
- package/dist/templates/migration.template.js +0 -62
- package/dist/templates/migration.template.js.map +0 -1
- package/dist/templates/operation.template.d.ts +0 -11
- package/dist/templates/operation.template.d.ts.map +0 -1
- package/dist/templates/operation.template.js +0 -107
- package/dist/templates/operation.template.js.map +0 -1
- package/dist/templates/presentation.template.d.ts +0 -11
- package/dist/templates/presentation.template.d.ts.map +0 -1
- package/dist/templates/presentation.template.js +0 -80
- package/dist/templates/presentation.template.js.map +0 -1
- package/dist/templates/telemetry.template.d.ts +0 -7
- package/dist/templates/telemetry.template.d.ts.map +0 -1
- package/dist/templates/telemetry.template.js +0 -91
- package/dist/templates/telemetry.template.js.map +0 -1
- package/dist/templates/workflow-runner.template.d.ts +0 -16
- package/dist/templates/workflow-runner.template.d.ts.map +0 -1
- package/dist/templates/workflow-runner.template.js +0 -50
- package/dist/templates/workflow-runner.template.js.map +0 -1
- package/dist/templates/workflow.template.d.ts +0 -7
- package/dist/templates/workflow.template.d.ts.map +0 -1
- package/dist/templates/workflow.template.js +0 -69
- package/dist/templates/workflow.template.js.map +0 -1
- package/dist/types/config.d.ts +0 -34
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types.d.ts +0 -324
- package/dist/types.d.ts.map +0 -1
- package/dist/utils/module-loader.js +0 -41
- package/dist/utils/module-loader.js.map +0 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { loadWorkspaceConfig } from "../../config.mjs";
|
|
2
|
+
import { resolveAllImplementations } from "../../implementation/resolver/index.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/services/ci-check/checks/implementation.ts
|
|
5
|
+
/**
|
|
6
|
+
* Run implementation verification checks.
|
|
7
|
+
*/
|
|
8
|
+
async function runImplementationChecks(adapters, specFiles, options) {
|
|
9
|
+
const { fs } = adapters;
|
|
10
|
+
const issues = [];
|
|
11
|
+
const config = await loadWorkspaceConfig(fs);
|
|
12
|
+
const implOptions = options.implementation ?? {};
|
|
13
|
+
const results = await resolveAllImplementations(specFiles.filter((f) => f.includes(".operation.")), { fs }, config, { computeHashes: implOptions.useCache ?? true });
|
|
14
|
+
for (const result of results) {
|
|
15
|
+
if (implOptions.requireImplemented && result.status === "missing") issues.push({
|
|
16
|
+
ruleId: "impl-missing",
|
|
17
|
+
severity: "error",
|
|
18
|
+
message: `Spec ${result.specKey} has no implementation`,
|
|
19
|
+
category: "implementation",
|
|
20
|
+
file: result.specPath,
|
|
21
|
+
context: {
|
|
22
|
+
specKey: result.specKey,
|
|
23
|
+
specVersion: result.specVersion,
|
|
24
|
+
status: result.status
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
else if (result.status === "missing") issues.push({
|
|
28
|
+
ruleId: "impl-missing",
|
|
29
|
+
severity: "warning",
|
|
30
|
+
message: `Spec ${result.specKey} has no implementation`,
|
|
31
|
+
category: "implementation",
|
|
32
|
+
file: result.specPath,
|
|
33
|
+
context: {
|
|
34
|
+
specKey: result.specKey,
|
|
35
|
+
specVersion: result.specVersion,
|
|
36
|
+
status: result.status
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
if (!implOptions.allowPartial && result.status === "partial") {
|
|
40
|
+
const missingImpls = result.implementations.filter((i) => !i.exists && i.type !== "test").map((i) => i.path);
|
|
41
|
+
issues.push({
|
|
42
|
+
ruleId: "impl-partial",
|
|
43
|
+
severity: "warning",
|
|
44
|
+
message: `Spec ${result.specKey} has partial implementation: missing ${missingImpls.join(", ")}`,
|
|
45
|
+
category: "implementation",
|
|
46
|
+
file: result.specPath,
|
|
47
|
+
context: {
|
|
48
|
+
specKey: result.specKey,
|
|
49
|
+
specVersion: result.specVersion,
|
|
50
|
+
status: result.status,
|
|
51
|
+
missingFiles: missingImpls
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
const missingTests = result.implementations.filter((i) => !i.exists && i.type === "test");
|
|
56
|
+
if (missingTests.length > 0) issues.push({
|
|
57
|
+
ruleId: "impl-missing-tests",
|
|
58
|
+
severity: "note",
|
|
59
|
+
message: `Spec ${result.specKey} missing test files: ${missingTests.map((t) => t.path).join(", ")}`,
|
|
60
|
+
category: "implementation",
|
|
61
|
+
file: result.specPath,
|
|
62
|
+
context: {
|
|
63
|
+
specKey: result.specKey,
|
|
64
|
+
missingTests: missingTests.map((t) => t.path)
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
return issues;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
//#endregion
|
|
72
|
+
export { runImplementationChecks };
|
|
73
|
+
//# sourceMappingURL=implementation.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"implementation.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/implementation.ts"],"sourcesContent":["/**\n * Implementation verification checks.\n */\n\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport { loadWorkspaceConfig } from '../../config';\nimport { resolveAllImplementations } from '../../implementation/resolver';\nimport type { CICheckOptions, CIIssue } from '../types';\n\n/**\n * Run implementation verification checks.\n */\nexport async function runImplementationChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n specFiles: string[],\n options: CICheckOptions\n): Promise<CIIssue[]> {\n const { fs } = adapters;\n const issues: CIIssue[] = [];\n\n const config = await loadWorkspaceConfig(fs);\n const implOptions = options.implementation ?? {};\n\n // Only check operation specs by default\n const operationSpecs = specFiles.filter((f) => f.includes('.operation.'));\n\n // Resolve implementations for all specs\n const results = await resolveAllImplementations(\n operationSpecs,\n { fs },\n config,\n {\n computeHashes: implOptions.useCache ?? true,\n }\n );\n\n for (const result of results) {\n // Check if implementation is required\n if (implOptions.requireImplemented && result.status === 'missing') {\n issues.push({\n ruleId: 'impl-missing',\n severity: 'error',\n message: `Spec ${result.specKey} has no implementation`,\n category: 'implementation',\n file: result.specPath,\n context: {\n specKey: result.specKey,\n specVersion: result.specVersion,\n status: result.status,\n },\n });\n } else if (result.status === 'missing') {\n issues.push({\n ruleId: 'impl-missing',\n severity: 'warning',\n message: `Spec ${result.specKey} has no implementation`,\n category: 'implementation',\n file: result.specPath,\n context: {\n specKey: result.specKey,\n specVersion: result.specVersion,\n status: result.status,\n },\n });\n }\n\n // Check for partial implementations\n if (!implOptions.allowPartial && result.status === 'partial') {\n const missingImpls = result.implementations\n .filter((i) => !i.exists && i.type !== 'test')\n .map((i) => i.path);\n\n issues.push({\n ruleId: 'impl-partial',\n severity: 'warning',\n message: `Spec ${result.specKey} has partial implementation: missing ${missingImpls.join(', ')}`,\n category: 'implementation',\n file: result.specPath,\n context: {\n specKey: result.specKey,\n specVersion: result.specVersion,\n status: result.status,\n missingFiles: missingImpls,\n },\n });\n }\n\n // Report missing tests\n const missingTests = result.implementations.filter(\n (i) => !i.exists && i.type === 'test'\n );\n if (missingTests.length > 0) {\n issues.push({\n ruleId: 'impl-missing-tests',\n severity: 'note',\n message: `Spec ${result.specKey} missing test files: ${missingTests.map((t) => t.path).join(', ')}`,\n category: 'implementation',\n file: result.specPath,\n context: {\n specKey: result.specKey,\n missingTests: missingTests.map((t) => t.path),\n },\n });\n }\n }\n\n return issues;\n}\n"],"mappings":";;;;;;;AAaA,eAAsB,wBACpB,UACA,WACA,SACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,SAAoB,EAAE;CAE5B,MAAM,SAAS,MAAM,oBAAoB,GAAG;CAC5C,MAAM,cAAc,QAAQ,kBAAkB,EAAE;CAMhD,MAAM,UAAU,MAAM,0BAHC,UAAU,QAAQ,MAAM,EAAE,SAAS,cAAc,CAAC,EAKvE,EAAE,IAAI,EACN,QACA,EACE,eAAe,YAAY,YAAY,MACxC,CACF;AAED,MAAK,MAAM,UAAU,SAAS;AAE5B,MAAI,YAAY,sBAAsB,OAAO,WAAW,UACtD,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,QAAQ,OAAO,QAAQ;GAChC,UAAU;GACV,MAAM,OAAO;GACb,SAAS;IACP,SAAS,OAAO;IAChB,aAAa,OAAO;IACpB,QAAQ,OAAO;IAChB;GACF,CAAC;WACO,OAAO,WAAW,UAC3B,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,QAAQ,OAAO,QAAQ;GAChC,UAAU;GACV,MAAM,OAAO;GACb,SAAS;IACP,SAAS,OAAO;IAChB,aAAa,OAAO;IACpB,QAAQ,OAAO;IAChB;GACF,CAAC;AAIJ,MAAI,CAAC,YAAY,gBAAgB,OAAO,WAAW,WAAW;GAC5D,MAAM,eAAe,OAAO,gBACzB,QAAQ,MAAM,CAAC,EAAE,UAAU,EAAE,SAAS,OAAO,CAC7C,KAAK,MAAM,EAAE,KAAK;AAErB,UAAO,KAAK;IACV,QAAQ;IACR,UAAU;IACV,SAAS,QAAQ,OAAO,QAAQ,uCAAuC,aAAa,KAAK,KAAK;IAC9F,UAAU;IACV,MAAM,OAAO;IACb,SAAS;KACP,SAAS,OAAO;KAChB,aAAa,OAAO;KACpB,QAAQ,OAAO;KACf,cAAc;KACf;IACF,CAAC;;EAIJ,MAAM,eAAe,OAAO,gBAAgB,QACzC,MAAM,CAAC,EAAE,UAAU,EAAE,SAAS,OAChC;AACD,MAAI,aAAa,SAAS,EACxB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,QAAQ,OAAO,QAAQ,uBAAuB,aAAa,KAAK,MAAM,EAAE,KAAK,CAAC,KAAK,KAAK;GACjG,UAAU;GACV,MAAM,OAAO;GACb,SAAS;IACP,SAAS,OAAO;IAChB,cAAc,aAAa,KAAK,MAAM,EAAE,KAAK;IAC9C;GACF,CAAC;;AAIN,QAAO"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { runStructureChecks } from "./structure.mjs";
|
|
2
|
+
import { runIntegrityChecks } from "./integrity.mjs";
|
|
3
|
+
import { runDepsChecks } from "./deps.mjs";
|
|
4
|
+
import { runDoctorChecks } from "./doctor.mjs";
|
|
5
|
+
import { runHandlerChecks } from "./handlers.mjs";
|
|
6
|
+
import { runTestChecks } from "./tests.mjs";
|
|
7
|
+
import { runTestRefsChecks } from "./test-refs.mjs";
|
|
8
|
+
import { runCoverageChecks } from "./coverage.mjs";
|
|
9
|
+
import { runImplementationChecks } from "./implementation.mjs";
|
|
10
|
+
import { runLayerChecks } from "./layers.mjs";
|
|
11
|
+
import { runDriftChecks } from "./drift.mjs";
|
|
12
|
+
|
|
13
|
+
export { };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { analyzeIntegrity } from "../../integrity.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/services/ci-check/checks/integrity.ts
|
|
4
|
+
/**
|
|
5
|
+
* Run integrity analysis checks.
|
|
6
|
+
*/
|
|
7
|
+
async function runIntegrityChecks(adapters, options) {
|
|
8
|
+
const issues = [];
|
|
9
|
+
const result = await analyzeIntegrity(adapters, {
|
|
10
|
+
pattern: options.pattern,
|
|
11
|
+
all: true
|
|
12
|
+
});
|
|
13
|
+
for (const issue of result.issues) issues.push({
|
|
14
|
+
ruleId: `integrity-${issue.type}`,
|
|
15
|
+
severity: issue.severity === "error" ? "error" : "warning",
|
|
16
|
+
message: issue.message,
|
|
17
|
+
category: "integrity",
|
|
18
|
+
file: issue.file,
|
|
19
|
+
context: {
|
|
20
|
+
specKey: issue.specKey,
|
|
21
|
+
specType: issue.specType,
|
|
22
|
+
featureKey: issue.featureKey,
|
|
23
|
+
ref: issue.ref
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
return issues;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
//#endregion
|
|
30
|
+
export { runIntegrityChecks };
|
|
31
|
+
//# sourceMappingURL=integrity.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integrity.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/integrity.ts"],"sourcesContent":["/**\n * Integrity analysis checks.\n */\n\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport { analyzeIntegrity } from '../../integrity';\nimport type { CICheckOptions, CIIssue } from '../types';\n\n/**\n * Run integrity analysis checks.\n */\nexport async function runIntegrityChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n options: CICheckOptions\n): Promise<CIIssue[]> {\n const issues: CIIssue[] = [];\n\n const result = await analyzeIntegrity(adapters, {\n pattern: options.pattern,\n all: true,\n });\n\n for (const issue of result.issues) {\n issues.push({\n ruleId: `integrity-${issue.type}`,\n severity: issue.severity === 'error' ? 'error' : 'warning',\n message: issue.message,\n category: 'integrity',\n file: issue.file,\n context: {\n specKey: issue.specKey,\n specType: issue.specType,\n featureKey: issue.featureKey,\n ref: issue.ref,\n },\n });\n }\n\n return issues;\n}\n"],"mappings":";;;;;;AAYA,eAAsB,mBACpB,UACA,SACoB;CACpB,MAAM,SAAoB,EAAE;CAE5B,MAAM,SAAS,MAAM,iBAAiB,UAAU;EAC9C,SAAS,QAAQ;EACjB,KAAK;EACN,CAAC;AAEF,MAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK;EACV,QAAQ,aAAa,MAAM;EAC3B,UAAU,MAAM,aAAa,UAAU,UAAU;EACjD,SAAS,MAAM;EACf,UAAU;EACV,MAAM,MAAM;EACZ,SAAS;GACP,SAAS,MAAM;GACf,UAAU,MAAM;GAChB,YAAY,MAAM;GAClB,KAAK,MAAM;GACZ;EACF,CAAC;AAGJ,QAAO"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { discoverLayers } from "../../layer-discovery.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/services/ci-check/checks/layers.ts
|
|
4
|
+
/**
|
|
5
|
+
* Run layer validation checks.
|
|
6
|
+
*/
|
|
7
|
+
async function runLayerChecks(adapters, _options) {
|
|
8
|
+
const issues = [];
|
|
9
|
+
const result = await discoverLayers(adapters, {});
|
|
10
|
+
for (const [key, feature] of result.inventory.features) {
|
|
11
|
+
if (!feature.key) issues.push({
|
|
12
|
+
ruleId: "layer-feature-missing-key",
|
|
13
|
+
severity: "error",
|
|
14
|
+
message: `Feature missing required 'key' field`,
|
|
15
|
+
category: "layers",
|
|
16
|
+
file: feature.filePath,
|
|
17
|
+
context: { key }
|
|
18
|
+
});
|
|
19
|
+
if (!feature.owners?.length) issues.push({
|
|
20
|
+
ruleId: "layer-feature-missing-owners",
|
|
21
|
+
severity: "warning",
|
|
22
|
+
message: `Feature '${key}' missing 'owners' field`,
|
|
23
|
+
category: "layers",
|
|
24
|
+
file: feature.filePath,
|
|
25
|
+
context: { key }
|
|
26
|
+
});
|
|
27
|
+
if (feature.operations.length === 0 && feature.events.length === 0 && feature.presentations.length === 0) issues.push({
|
|
28
|
+
ruleId: "layer-feature-empty",
|
|
29
|
+
severity: "warning",
|
|
30
|
+
message: `Feature '${key}' has no operations, events, or presentations`,
|
|
31
|
+
category: "layers",
|
|
32
|
+
file: feature.filePath,
|
|
33
|
+
context: { key }
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
for (const [key, example] of result.inventory.examples) {
|
|
37
|
+
if (!example.entrypoints.packageName) issues.push({
|
|
38
|
+
ruleId: "layer-example-missing-package",
|
|
39
|
+
severity: "error",
|
|
40
|
+
message: `Example '${key}' missing 'packageName' in entrypoints`,
|
|
41
|
+
category: "layers",
|
|
42
|
+
file: example.filePath,
|
|
43
|
+
context: { key }
|
|
44
|
+
});
|
|
45
|
+
if (!example.surfaces.templates && !example.surfaces.sandbox.enabled && !example.surfaces.studio.enabled && !example.surfaces.mcp.enabled) issues.push({
|
|
46
|
+
ruleId: "layer-example-no-surfaces",
|
|
47
|
+
severity: "warning",
|
|
48
|
+
message: `Example '${key}' has no enabled surfaces`,
|
|
49
|
+
category: "layers",
|
|
50
|
+
file: example.filePath,
|
|
51
|
+
context: { key }
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
for (const config of result.inventory.workspaceConfigs.values()) if (!config.valid) for (const error of config.errors) issues.push({
|
|
55
|
+
ruleId: "layer-workspace-config-invalid",
|
|
56
|
+
severity: "error",
|
|
57
|
+
message: `Invalid workspace config: ${error}`,
|
|
58
|
+
category: "layers",
|
|
59
|
+
file: config.file
|
|
60
|
+
});
|
|
61
|
+
return issues;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
//#endregion
|
|
65
|
+
export { runLayerChecks };
|
|
66
|
+
//# sourceMappingURL=layers.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"layers.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/layers.ts"],"sourcesContent":["/**\n * Layer validation checks.\n */\n\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport { discoverLayers } from '../../layer-discovery';\nimport type { CICheckOptions, CIIssue } from '../types';\n\n/**\n * Run layer validation checks.\n */\nexport async function runLayerChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n _options: CICheckOptions\n): Promise<CIIssue[]> {\n const issues: CIIssue[] = [];\n\n // Discover all layers\n const result = await discoverLayers(adapters, {});\n\n // Validate features\n for (const [key, feature] of result.inventory.features) {\n // Check required meta fields\n if (!feature.key) {\n issues.push({\n ruleId: 'layer-feature-missing-key',\n severity: 'error',\n message: `Feature missing required 'key' field`,\n category: 'layers',\n file: feature.filePath,\n context: { key },\n });\n }\n\n if (!feature.owners?.length) {\n issues.push({\n ruleId: 'layer-feature-missing-owners',\n severity: 'warning',\n message: `Feature '${key}' missing 'owners' field`,\n category: 'layers',\n file: feature.filePath,\n context: { key },\n });\n }\n\n // Check for empty features\n if (\n feature.operations.length === 0 &&\n feature.events.length === 0 &&\n feature.presentations.length === 0\n ) {\n issues.push({\n ruleId: 'layer-feature-empty',\n severity: 'warning',\n message: `Feature '${key}' has no operations, events, or presentations`,\n category: 'layers',\n file: feature.filePath,\n context: { key },\n });\n }\n }\n\n // Validate examples\n for (const [key, example] of result.inventory.examples) {\n // Check required entrypoints\n if (!example.entrypoints.packageName) {\n issues.push({\n ruleId: 'layer-example-missing-package',\n severity: 'error',\n message: `Example '${key}' missing 'packageName' in entrypoints`,\n category: 'layers',\n file: example.filePath,\n context: { key },\n });\n }\n\n // Check required surfaces\n if (\n !example.surfaces.templates &&\n !example.surfaces.sandbox.enabled &&\n !example.surfaces.studio.enabled &&\n !example.surfaces.mcp.enabled\n ) {\n issues.push({\n ruleId: 'layer-example-no-surfaces',\n severity: 'warning',\n message: `Example '${key}' has no enabled surfaces`,\n category: 'layers',\n file: example.filePath,\n context: { key },\n });\n }\n }\n\n // Validate workspace configs\n for (const config of result.inventory.workspaceConfigs.values()) {\n if (!config.valid) {\n for (const error of config.errors) {\n issues.push({\n ruleId: 'layer-workspace-config-invalid',\n severity: 'error',\n message: `Invalid workspace config: ${error}`,\n category: 'layers',\n file: config.file,\n });\n }\n }\n }\n\n return issues;\n}\n"],"mappings":";;;;;;AAYA,eAAsB,eACpB,UACA,UACoB;CACpB,MAAM,SAAoB,EAAE;CAG5B,MAAM,SAAS,MAAM,eAAe,UAAU,EAAE,CAAC;AAGjD,MAAK,MAAM,CAAC,KAAK,YAAY,OAAO,UAAU,UAAU;AAEtD,MAAI,CAAC,QAAQ,IACX,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV,MAAM,QAAQ;GACd,SAAS,EAAE,KAAK;GACjB,CAAC;AAGJ,MAAI,CAAC,QAAQ,QAAQ,OACnB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,YAAY,IAAI;GACzB,UAAU;GACV,MAAM,QAAQ;GACd,SAAS,EAAE,KAAK;GACjB,CAAC;AAIJ,MACE,QAAQ,WAAW,WAAW,KAC9B,QAAQ,OAAO,WAAW,KAC1B,QAAQ,cAAc,WAAW,EAEjC,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,YAAY,IAAI;GACzB,UAAU;GACV,MAAM,QAAQ;GACd,SAAS,EAAE,KAAK;GACjB,CAAC;;AAKN,MAAK,MAAM,CAAC,KAAK,YAAY,OAAO,UAAU,UAAU;AAEtD,MAAI,CAAC,QAAQ,YAAY,YACvB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,YAAY,IAAI;GACzB,UAAU;GACV,MAAM,QAAQ;GACd,SAAS,EAAE,KAAK;GACjB,CAAC;AAIJ,MACE,CAAC,QAAQ,SAAS,aAClB,CAAC,QAAQ,SAAS,QAAQ,WAC1B,CAAC,QAAQ,SAAS,OAAO,WACzB,CAAC,QAAQ,SAAS,IAAI,QAEtB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS,YAAY,IAAI;GACzB,UAAU;GACV,MAAM,QAAQ;GACd,SAAS,EAAE,KAAK;GACjB,CAAC;;AAKN,MAAK,MAAM,UAAU,OAAO,UAAU,iBAAiB,QAAQ,CAC7D,KAAI,CAAC,OAAO,MACV,MAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK;EACV,QAAQ;EACR,UAAU;EACV,SAAS,6BAA6B;EACtC,UAAU;EACV,MAAM,OAAO;EACd,CAAC;AAKR,QAAO"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { validateSpecStructure } from "@contractspec/module.workspace";
|
|
2
|
+
|
|
3
|
+
//#region src/services/ci-check/checks/structure.ts
|
|
4
|
+
/**
|
|
5
|
+
* Structure validation checks.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Run spec structure validation checks.
|
|
9
|
+
*/
|
|
10
|
+
async function runStructureChecks(adapters, specFiles) {
|
|
11
|
+
const { fs } = adapters;
|
|
12
|
+
const issues = [];
|
|
13
|
+
for (const file of specFiles) {
|
|
14
|
+
const result = validateSpecStructure(await fs.readFile(file), file);
|
|
15
|
+
for (const error of result.errors) issues.push({
|
|
16
|
+
ruleId: "spec-structure-error",
|
|
17
|
+
severity: "error",
|
|
18
|
+
message: error,
|
|
19
|
+
category: "structure",
|
|
20
|
+
file
|
|
21
|
+
});
|
|
22
|
+
for (const warning of result.warnings) issues.push({
|
|
23
|
+
ruleId: "spec-structure-warning",
|
|
24
|
+
severity: "warning",
|
|
25
|
+
message: warning,
|
|
26
|
+
category: "structure",
|
|
27
|
+
file
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
return issues;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
//#endregion
|
|
34
|
+
export { runStructureChecks };
|
|
35
|
+
//# sourceMappingURL=structure.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structure.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/structure.ts"],"sourcesContent":["/**\n * Structure validation checks.\n */\n\nimport { validateSpecStructure } from '@contractspec/module.workspace';\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport type { CIIssue } from '../types';\n\n/**\n * Run spec structure validation checks.\n */\nexport async function runStructureChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n specFiles: string[]\n): Promise<CIIssue[]> {\n const { fs } = adapters;\n const issues: CIIssue[] = [];\n\n for (const file of specFiles) {\n const content = await fs.readFile(file);\n const result = validateSpecStructure(content, file);\n\n for (const error of result.errors) {\n issues.push({\n ruleId: 'spec-structure-error',\n severity: 'error',\n message: error,\n category: 'structure',\n file,\n });\n }\n\n for (const warning of result.warnings) {\n issues.push({\n ruleId: 'spec-structure-warning',\n severity: 'warning',\n message: warning,\n category: 'structure',\n file,\n });\n }\n }\n\n return issues;\n}\n"],"mappings":";;;;;;;;;AAYA,eAAsB,mBACpB,UACA,WACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,SAAoB,EAAE;AAE5B,MAAK,MAAM,QAAQ,WAAW;EAE5B,MAAM,SAAS,sBADC,MAAM,GAAG,SAAS,KAAK,EACO,KAAK;AAEnD,OAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV;GACD,CAAC;AAGJ,OAAK,MAAM,WAAW,OAAO,SAC3B,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV;GACD,CAAC;;AAIN,QAAO"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { validateTestRefs } from "../../test-link/test-ref-validator.mjs";
|
|
2
|
+
import { scanAllSpecsFromSource } from "@contractspec/module.workspace";
|
|
3
|
+
|
|
4
|
+
//#region src/services/ci-check/checks/test-refs.ts
|
|
5
|
+
/**
|
|
6
|
+
* Test reference validation checks.
|
|
7
|
+
*
|
|
8
|
+
* Validates that all tests referenced in OperationSpec.tests actually exist.
|
|
9
|
+
* Missing references are reported as ERRORS (blocking CI) to enforce contract integrity.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Run test reference validation checks.
|
|
13
|
+
*/
|
|
14
|
+
async function runTestRefsChecks(adapters, specFiles) {
|
|
15
|
+
const { fs } = adapters;
|
|
16
|
+
const issues = [];
|
|
17
|
+
const testSpecIndex = /* @__PURE__ */ new Map();
|
|
18
|
+
const specsByFile = /* @__PURE__ */ new Map();
|
|
19
|
+
for (const specFile of specFiles) {
|
|
20
|
+
const scans = scanAllSpecsFromSource(await fs.readFile(specFile), specFile);
|
|
21
|
+
for (const scan of scans) {
|
|
22
|
+
if (!scan.key || !scan.version) continue;
|
|
23
|
+
if (scan.specType === "test-spec") {
|
|
24
|
+
const testKey = `${scan.key}.v${scan.version}`;
|
|
25
|
+
testSpecIndex.set(testKey, {
|
|
26
|
+
key: scan.key,
|
|
27
|
+
version: scan.version,
|
|
28
|
+
file: specFile,
|
|
29
|
+
type: "test-spec"
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (scan.testRefs && scan.testRefs.length > 0) {
|
|
33
|
+
if (!specsByFile.has(specFile)) specsByFile.set(specFile, []);
|
|
34
|
+
specsByFile.get(specFile)?.push({
|
|
35
|
+
key: scan.key,
|
|
36
|
+
version: scan.version,
|
|
37
|
+
testRefs: scan.testRefs
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
for (const [specFile, specs] of specsByFile) for (const spec of specs) {
|
|
43
|
+
if (!spec.testRefs) continue;
|
|
44
|
+
const result = validateTestRefs(specFile, spec.key, spec.version, spec.testRefs, testSpecIndex, { treatMissingAsError: true });
|
|
45
|
+
for (const error of result.errors) issues.push({
|
|
46
|
+
ruleId: "test-ref-missing",
|
|
47
|
+
severity: "error",
|
|
48
|
+
message: error,
|
|
49
|
+
category: "test-refs",
|
|
50
|
+
file: specFile,
|
|
51
|
+
context: {
|
|
52
|
+
specKey: spec.key,
|
|
53
|
+
specVersion: spec.version,
|
|
54
|
+
missingTests: result.missingTests
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
return issues;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
export { runTestRefsChecks };
|
|
63
|
+
//# sourceMappingURL=test-refs.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-refs.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/test-refs.ts"],"sourcesContent":["/**\n * Test reference validation checks.\n *\n * Validates that all tests referenced in OperationSpec.tests actually exist.\n * Missing references are reported as ERRORS (blocking CI) to enforce contract integrity.\n */\n\nimport { scanAllSpecsFromSource } from '@contractspec/module.workspace';\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport type { SpecLocation } from '../../integrity';\nimport { validateTestRefs } from '../../test-link';\nimport type { CIIssue } from '../types';\n\n/**\n * Run test reference validation checks.\n */\nexport async function runTestRefsChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n specFiles: string[]\n): Promise<CIIssue[]> {\n const { fs } = adapters;\n const issues: CIIssue[] = [];\n\n // Build inventory of test specs\n const testSpecIndex = new Map<string, SpecLocation>();\n const specsByFile = new Map<\n string,\n {\n key: string;\n version: string;\n testRefs?: { key: string; version: string }[];\n }[]\n >();\n\n // Scan all spec files to build inventory\n for (const specFile of specFiles) {\n const content = await fs.readFile(specFile);\n const scans = scanAllSpecsFromSource(content, specFile);\n\n for (const scan of scans) {\n if (!scan.key || !scan.version) continue;\n\n // Build test spec index\n if (scan.specType === 'test-spec') {\n const testKey = `${scan.key}.v${scan.version}`;\n testSpecIndex.set(testKey, {\n key: scan.key,\n version: scan.version,\n file: specFile,\n type: 'test-spec',\n });\n }\n\n // Track specs with test refs for validation\n if (scan.testRefs && scan.testRefs.length > 0) {\n if (!specsByFile.has(specFile)) {\n specsByFile.set(specFile, []);\n }\n specsByFile.get(specFile)?.push({\n key: scan.key,\n version: scan.version,\n testRefs: scan.testRefs,\n });\n }\n }\n }\n\n // Validate test references for each spec\n for (const [specFile, specs] of specsByFile) {\n for (const spec of specs) {\n if (!spec.testRefs) continue;\n\n const result = validateTestRefs(\n specFile,\n spec.key,\n spec.version,\n spec.testRefs,\n testSpecIndex,\n { treatMissingAsError: true }\n );\n\n // Report errors for missing test references\n for (const error of result.errors) {\n issues.push({\n ruleId: 'test-ref-missing',\n severity: 'error', // ERRORS - block CI for contract integrity\n message: error,\n category: 'test-refs',\n file: specFile,\n context: {\n specKey: spec.key,\n specVersion: spec.version,\n missingTests: result.missingTests,\n },\n });\n }\n }\n }\n\n return issues;\n}\n"],"mappings":";;;;;;;;;;;;;AAiBA,eAAsB,kBACpB,UACA,WACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,SAAoB,EAAE;CAG5B,MAAM,gCAAgB,IAAI,KAA2B;CACrD,MAAM,8BAAc,IAAI,KAOrB;AAGH,MAAK,MAAM,YAAY,WAAW;EAEhC,MAAM,QAAQ,uBADE,MAAM,GAAG,SAAS,SAAS,EACG,SAAS;AAEvD,OAAK,MAAM,QAAQ,OAAO;AACxB,OAAI,CAAC,KAAK,OAAO,CAAC,KAAK,QAAS;AAGhC,OAAI,KAAK,aAAa,aAAa;IACjC,MAAM,UAAU,GAAG,KAAK,IAAI,IAAI,KAAK;AACrC,kBAAc,IAAI,SAAS;KACzB,KAAK,KAAK;KACV,SAAS,KAAK;KACd,MAAM;KACN,MAAM;KACP,CAAC;;AAIJ,OAAI,KAAK,YAAY,KAAK,SAAS,SAAS,GAAG;AAC7C,QAAI,CAAC,YAAY,IAAI,SAAS,CAC5B,aAAY,IAAI,UAAU,EAAE,CAAC;AAE/B,gBAAY,IAAI,SAAS,EAAE,KAAK;KAC9B,KAAK,KAAK;KACV,SAAS,KAAK;KACd,UAAU,KAAK;KAChB,CAAC;;;;AAMR,MAAK,MAAM,CAAC,UAAU,UAAU,YAC9B,MAAK,MAAM,QAAQ,OAAO;AACxB,MAAI,CAAC,KAAK,SAAU;EAEpB,MAAM,SAAS,iBACb,UACA,KAAK,KACL,KAAK,SACL,KAAK,UACL,eACA,EAAE,qBAAqB,MAAM,CAC9B;AAGD,OAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV,MAAM;GACN,SAAS;IACP,SAAS,KAAK;IACd,aAAa,KAAK;IAClB,cAAc,OAAO;IACtB;GACF,CAAC;;AAKR,QAAO"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { validateImplementationFiles } from "../../validate/implementation-validator.mjs";
|
|
2
|
+
import { loadWorkspaceConfig } from "../../config.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/services/ci-check/checks/tests.ts
|
|
5
|
+
/**
|
|
6
|
+
* Run test coverage checks.
|
|
7
|
+
*/
|
|
8
|
+
async function runTestChecks(adapters, specFiles) {
|
|
9
|
+
const { fs } = adapters;
|
|
10
|
+
const issues = [];
|
|
11
|
+
const config = await loadWorkspaceConfig(fs);
|
|
12
|
+
for (const specFile of specFiles) {
|
|
13
|
+
if (!specFile.includes(".operation.")) continue;
|
|
14
|
+
const result = await validateImplementationFiles(specFile, { fs }, config, {
|
|
15
|
+
checkTests: true,
|
|
16
|
+
outputDir: config.outputDir
|
|
17
|
+
});
|
|
18
|
+
for (const error of result.errors) issues.push({
|
|
19
|
+
ruleId: "test-missing",
|
|
20
|
+
severity: "warning",
|
|
21
|
+
message: error,
|
|
22
|
+
category: "tests",
|
|
23
|
+
file: specFile
|
|
24
|
+
});
|
|
25
|
+
for (const warning of result.warnings) issues.push({
|
|
26
|
+
ruleId: "test-warning",
|
|
27
|
+
severity: "warning",
|
|
28
|
+
message: warning,
|
|
29
|
+
category: "tests",
|
|
30
|
+
file: specFile
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
return issues;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { runTestChecks };
|
|
38
|
+
//# sourceMappingURL=tests.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tests.mjs","names":[],"sources":["../../../../src/services/ci-check/checks/tests.ts"],"sourcesContent":["/**\n * Test coverage checks.\n */\n\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport { loadWorkspaceConfig } from '../../config';\nimport { validateImplementationFiles } from '../../validate/implementation-validator';\nimport type { CIIssue } from '../types';\n\n/**\n * Run test coverage checks.\n */\nexport async function runTestChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n specFiles: string[]\n): Promise<CIIssue[]> {\n const { fs } = adapters;\n const issues: CIIssue[] = [];\n\n const config = await loadWorkspaceConfig(fs);\n\n for (const specFile of specFiles) {\n // Only check operation specs\n if (!specFile.includes('.operation.')) continue;\n\n const result = await validateImplementationFiles(specFile, { fs }, config, {\n checkTests: true,\n outputDir: config.outputDir,\n });\n\n for (const error of result.errors) {\n issues.push({\n ruleId: 'test-missing',\n severity: 'warning', // Test missing is a warning, not error\n message: error,\n category: 'tests',\n file: specFile,\n });\n }\n\n for (const warning of result.warnings) {\n issues.push({\n ruleId: 'test-warning',\n severity: 'warning',\n message: warning,\n category: 'tests',\n file: specFile,\n });\n }\n }\n\n return issues;\n}\n"],"mappings":";;;;;;;AAaA,eAAsB,cACpB,UACA,WACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,SAAoB,EAAE;CAE5B,MAAM,SAAS,MAAM,oBAAoB,GAAG;AAE5C,MAAK,MAAM,YAAY,WAAW;AAEhC,MAAI,CAAC,SAAS,SAAS,cAAc,CAAE;EAEvC,MAAM,SAAS,MAAM,4BAA4B,UAAU,EAAE,IAAI,EAAE,QAAQ;GACzE,YAAY;GACZ,WAAW,OAAO;GACnB,CAAC;AAEF,OAAK,MAAM,SAAS,OAAO,OACzB,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV,MAAM;GACP,CAAC;AAGJ,OAAK,MAAM,WAAW,OAAO,SAC3B,QAAO,KAAK;GACV,QAAQ;GACR,UAAU;GACV,SAAS;GACT,UAAU;GACV,MAAM;GACP,CAAC;;AAIN,QAAO"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FsAdapter } from "../../ports/fs.mjs";
|
|
2
|
+
import { LoggerAdapter } from "../../ports/logger.mjs";
|
|
3
|
+
import { CICheckOptions, CICheckResult } from "./types.mjs";
|
|
4
|
+
|
|
5
|
+
//#region src/services/ci-check/ci-check-service.d.ts
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Run all CI checks and return structured results.
|
|
9
|
+
*/
|
|
10
|
+
declare function runCIChecks(adapters: {
|
|
11
|
+
fs: FsAdapter;
|
|
12
|
+
logger: LoggerAdapter;
|
|
13
|
+
}, options?: CICheckOptions): Promise<CICheckResult>;
|
|
14
|
+
//#endregion
|
|
15
|
+
export { runCIChecks };
|
|
16
|
+
//# sourceMappingURL=ci-check-service.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ci-check-service.d.mts","names":[],"sources":["../../../src/services/ci-check/ci-check-service.ts"],"sourcesContent":[],"mappings":";;;;;;;;;iBAsCsB,WAAA;MACJ;UAAmB;aAC1B,iBACR,QAAQ"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { isTestFile } from "../../utils/filter.mjs";
|
|
2
|
+
import "../../utils/index.mjs";
|
|
3
|
+
import { runStructureChecks } from "./checks/structure.mjs";
|
|
4
|
+
import { runIntegrityChecks } from "./checks/integrity.mjs";
|
|
5
|
+
import { runDepsChecks } from "./checks/deps.mjs";
|
|
6
|
+
import { runDoctorChecks } from "./checks/doctor.mjs";
|
|
7
|
+
import { runHandlerChecks } from "./checks/handlers.mjs";
|
|
8
|
+
import { runTestChecks } from "./checks/tests.mjs";
|
|
9
|
+
import { runTestRefsChecks } from "./checks/test-refs.mjs";
|
|
10
|
+
import { runCoverageChecks } from "./checks/coverage.mjs";
|
|
11
|
+
import { runImplementationChecks } from "./checks/implementation.mjs";
|
|
12
|
+
import { runLayerChecks } from "./checks/layers.mjs";
|
|
13
|
+
import { runDriftChecks } from "./checks/drift.mjs";
|
|
14
|
+
import "./checks/index.mjs";
|
|
15
|
+
import { createCategorySummary, getChecksToRun, getGitInfo } from "./utils.mjs";
|
|
16
|
+
import { isFeatureFile } from "@contractspec/module.workspace";
|
|
17
|
+
|
|
18
|
+
//#region src/services/ci-check/ci-check-service.ts
|
|
19
|
+
/**
|
|
20
|
+
* CI Check service.
|
|
21
|
+
*
|
|
22
|
+
* Orchestrates all validation checks for CI/CD pipelines.
|
|
23
|
+
* Returns structured results suitable for multiple output formats.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Run all CI checks and return structured results.
|
|
27
|
+
*/
|
|
28
|
+
async function runCIChecks(adapters, options = {}) {
|
|
29
|
+
const startTime = Date.now();
|
|
30
|
+
const { fs, logger } = adapters;
|
|
31
|
+
const issues = [];
|
|
32
|
+
const categorySummaries = [];
|
|
33
|
+
const checksToRun = getChecksToRun(options);
|
|
34
|
+
logger.info("Starting CI checks...", { checks: checksToRun });
|
|
35
|
+
const specFiles = (await fs.glob({ pattern: options.pattern })).filter((f) => !isFeatureFile(f) && !isTestFile(f, options.config));
|
|
36
|
+
if (checksToRun.includes("structure")) {
|
|
37
|
+
const categoryStart = Date.now();
|
|
38
|
+
const structureIssues = await runStructureChecks(adapters, specFiles);
|
|
39
|
+
issues.push(...structureIssues);
|
|
40
|
+
categorySummaries.push(createCategorySummary("structure", structureIssues, Date.now() - categoryStart));
|
|
41
|
+
}
|
|
42
|
+
if (checksToRun.includes("integrity")) {
|
|
43
|
+
const categoryStart = Date.now();
|
|
44
|
+
const integrityIssues = await runIntegrityChecks(adapters, options);
|
|
45
|
+
issues.push(...integrityIssues);
|
|
46
|
+
categorySummaries.push(createCategorySummary("integrity", integrityIssues, Date.now() - categoryStart));
|
|
47
|
+
}
|
|
48
|
+
if (checksToRun.includes("deps")) {
|
|
49
|
+
const categoryStart = Date.now();
|
|
50
|
+
const depsIssues = await runDepsChecks(adapters, options);
|
|
51
|
+
issues.push(...depsIssues);
|
|
52
|
+
categorySummaries.push(createCategorySummary("deps", depsIssues, Date.now() - categoryStart));
|
|
53
|
+
}
|
|
54
|
+
if (checksToRun.includes("doctor")) {
|
|
55
|
+
const categoryStart = Date.now();
|
|
56
|
+
const doctorIssues = await runDoctorChecks(adapters, options);
|
|
57
|
+
issues.push(...doctorIssues);
|
|
58
|
+
categorySummaries.push(createCategorySummary("doctor", doctorIssues, Date.now() - categoryStart));
|
|
59
|
+
}
|
|
60
|
+
if (checksToRun.includes("handlers") || options.checkHandlers) {
|
|
61
|
+
const categoryStart = Date.now();
|
|
62
|
+
const handlerIssues = await runHandlerChecks(adapters, specFiles);
|
|
63
|
+
issues.push(...handlerIssues);
|
|
64
|
+
categorySummaries.push(createCategorySummary("handlers", handlerIssues, Date.now() - categoryStart));
|
|
65
|
+
}
|
|
66
|
+
if (checksToRun.includes("tests") || options.checkTests) {
|
|
67
|
+
const categoryStart = Date.now();
|
|
68
|
+
const testIssues = await runTestChecks(adapters, specFiles);
|
|
69
|
+
issues.push(...testIssues);
|
|
70
|
+
categorySummaries.push(createCategorySummary("tests", testIssues, Date.now() - categoryStart));
|
|
71
|
+
}
|
|
72
|
+
if (checksToRun.includes("test-refs")) {
|
|
73
|
+
const categoryStart = Date.now();
|
|
74
|
+
const testRefIssues = await runTestRefsChecks(adapters, specFiles);
|
|
75
|
+
issues.push(...testRefIssues);
|
|
76
|
+
categorySummaries.push(createCategorySummary("test-refs", testRefIssues, Date.now() - categoryStart));
|
|
77
|
+
}
|
|
78
|
+
if (checksToRun.includes("coverage")) {
|
|
79
|
+
const categoryStart = Date.now();
|
|
80
|
+
const coverageIssues = await runCoverageChecks(adapters, specFiles, options);
|
|
81
|
+
issues.push(...coverageIssues);
|
|
82
|
+
categorySummaries.push(createCategorySummary("coverage", coverageIssues, Date.now() - categoryStart));
|
|
83
|
+
}
|
|
84
|
+
if (checksToRun.includes("implementation")) {
|
|
85
|
+
const categoryStart = Date.now();
|
|
86
|
+
const implIssues = await runImplementationChecks(adapters, specFiles, options);
|
|
87
|
+
issues.push(...implIssues);
|
|
88
|
+
categorySummaries.push(createCategorySummary("implementation", implIssues, Date.now() - categoryStart));
|
|
89
|
+
}
|
|
90
|
+
if (checksToRun.includes("layers")) {
|
|
91
|
+
const categoryStart = Date.now();
|
|
92
|
+
const layerIssues = await runLayerChecks(adapters, options);
|
|
93
|
+
issues.push(...layerIssues);
|
|
94
|
+
categorySummaries.push(createCategorySummary("layers", layerIssues, Date.now() - categoryStart));
|
|
95
|
+
}
|
|
96
|
+
if (checksToRun.includes("drift")) {
|
|
97
|
+
const categoryStart = Date.now();
|
|
98
|
+
const driftIssues = await runDriftChecks(adapters, options);
|
|
99
|
+
issues.push(...driftIssues);
|
|
100
|
+
categorySummaries.push(createCategorySummary("drift", driftIssues, Date.now() - categoryStart));
|
|
101
|
+
}
|
|
102
|
+
const totalErrors = issues.filter((i) => i.severity === "error").length;
|
|
103
|
+
const totalWarnings = issues.filter((i) => i.severity === "warning").length;
|
|
104
|
+
const totalNotes = issues.filter((i) => i.severity === "note").length;
|
|
105
|
+
const success = options.failOnWarnings ? totalErrors === 0 && totalWarnings === 0 : totalErrors === 0;
|
|
106
|
+
const gitInfo = await getGitInfo(fs);
|
|
107
|
+
const result = {
|
|
108
|
+
success,
|
|
109
|
+
totalErrors,
|
|
110
|
+
totalWarnings,
|
|
111
|
+
totalNotes,
|
|
112
|
+
issues,
|
|
113
|
+
categories: categorySummaries,
|
|
114
|
+
durationMs: Date.now() - startTime,
|
|
115
|
+
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
116
|
+
...gitInfo
|
|
117
|
+
};
|
|
118
|
+
logger.info("CI checks complete", {
|
|
119
|
+
success,
|
|
120
|
+
errors: totalErrors,
|
|
121
|
+
warnings: totalWarnings,
|
|
122
|
+
durationMs: result.durationMs
|
|
123
|
+
});
|
|
124
|
+
return result;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
//#endregion
|
|
128
|
+
export { runCIChecks };
|
|
129
|
+
//# sourceMappingURL=ci-check-service.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ci-check-service.mjs","names":[],"sources":["../../../src/services/ci-check/ci-check-service.ts"],"sourcesContent":["/**\n * CI Check service.\n *\n * Orchestrates all validation checks for CI/CD pipelines.\n * Returns structured results suitable for multiple output formats.\n */\n\nimport { isFeatureFile } from '@contractspec/module.workspace';\nimport type { FsAdapter } from '../../ports/fs';\nimport type { LoggerAdapter } from '../../ports/logger';\n\nimport type {\n CICheckCategorySummary,\n CICheckOptions,\n CICheckResult,\n CIIssue,\n} from './types';\n\nimport {\n runStructureChecks,\n runIntegrityChecks,\n runDepsChecks,\n runDoctorChecks,\n runHandlerChecks,\n runTestChecks,\n runTestRefsChecks,\n runCoverageChecks,\n runImplementationChecks,\n runLayerChecks,\n runDriftChecks,\n} from './checks';\n\nimport { createCategorySummary, getChecksToRun, getGitInfo } from './utils';\nimport { isTestFile } from '../../utils';\n\n/**\n * Run all CI checks and return structured results.\n */\nexport async function runCIChecks(\n adapters: { fs: FsAdapter; logger: LoggerAdapter },\n options: CICheckOptions = {}\n): Promise<CICheckResult> {\n const startTime = Date.now();\n const { fs, logger } = adapters;\n\n const issues: CIIssue[] = [];\n const categorySummaries: CICheckCategorySummary[] = [];\n\n // Determine which checks to run\n const checksToRun = getChecksToRun(options);\n\n logger.info('Starting CI checks...', { checks: checksToRun });\n\n // Discover spec files\n const files = await fs.glob({ pattern: options.pattern });\n const specFiles = files.filter(\n (f) => !isFeatureFile(f) && !isTestFile(f, options.config)\n );\n\n // Run spec structure validation\n if (checksToRun.includes('structure')) {\n const categoryStart = Date.now();\n const structureIssues = await runStructureChecks(adapters, specFiles);\n issues.push(...structureIssues);\n categorySummaries.push(\n createCategorySummary(\n 'structure',\n structureIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run integrity analysis\n if (checksToRun.includes('integrity')) {\n const categoryStart = Date.now();\n const integrityIssues = await runIntegrityChecks(adapters, options);\n issues.push(...integrityIssues);\n categorySummaries.push(\n createCategorySummary(\n 'integrity',\n integrityIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run dependency analysis\n if (checksToRun.includes('deps')) {\n const categoryStart = Date.now();\n const depsIssues = await runDepsChecks(adapters, options);\n issues.push(...depsIssues);\n categorySummaries.push(\n createCategorySummary('deps', depsIssues, Date.now() - categoryStart)\n );\n }\n\n // Run doctor checks (skip AI in CI)\n if (checksToRun.includes('doctor')) {\n const categoryStart = Date.now();\n const doctorIssues = await runDoctorChecks(adapters, options);\n issues.push(...doctorIssues);\n categorySummaries.push(\n createCategorySummary('doctor', doctorIssues, Date.now() - categoryStart)\n );\n }\n\n // Run handler checks\n if (checksToRun.includes('handlers') || options.checkHandlers) {\n const categoryStart = Date.now();\n const handlerIssues = await runHandlerChecks(adapters, specFiles);\n issues.push(...handlerIssues);\n categorySummaries.push(\n createCategorySummary(\n 'handlers',\n handlerIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run test checks\n if (checksToRun.includes('tests') || options.checkTests) {\n const categoryStart = Date.now();\n const testIssues = await runTestChecks(adapters, specFiles);\n issues.push(...testIssues);\n categorySummaries.push(\n createCategorySummary('tests', testIssues, Date.now() - categoryStart)\n );\n }\n\n // Run test-refs checks (validate OperationSpec.tests references)\n if (checksToRun.includes('test-refs')) {\n const categoryStart = Date.now();\n const testRefIssues = await runTestRefsChecks(adapters, specFiles);\n issues.push(...testRefIssues);\n categorySummaries.push(\n createCategorySummary(\n 'test-refs',\n testRefIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run coverage checks (validate TestSpec.coverage requirements)\n if (checksToRun.includes('coverage')) {\n const categoryStart = Date.now();\n const coverageIssues = await runCoverageChecks(\n adapters,\n specFiles,\n options\n );\n issues.push(...coverageIssues);\n categorySummaries.push(\n createCategorySummary(\n 'coverage',\n coverageIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run implementation checks\n if (checksToRun.includes('implementation')) {\n const categoryStart = Date.now();\n const implIssues = await runImplementationChecks(\n adapters,\n specFiles,\n options\n );\n issues.push(...implIssues);\n categorySummaries.push(\n createCategorySummary(\n 'implementation',\n implIssues,\n Date.now() - categoryStart\n )\n );\n }\n\n // Run layers checks\n if (checksToRun.includes('layers')) {\n const categoryStart = Date.now();\n const layerIssues = await runLayerChecks(adapters, options);\n issues.push(...layerIssues);\n categorySummaries.push(\n createCategorySummary('layers', layerIssues, Date.now() - categoryStart)\n );\n }\n\n // Run drift checks\n if (checksToRun.includes('drift')) {\n const categoryStart = Date.now();\n const driftIssues = await runDriftChecks(adapters, options);\n issues.push(...driftIssues);\n categorySummaries.push(\n createCategorySummary('drift', driftIssues, Date.now() - categoryStart)\n );\n }\n\n // Calculate totals\n const totalErrors = issues.filter((i) => i.severity === 'error').length;\n const totalWarnings = issues.filter((i) => i.severity === 'warning').length;\n const totalNotes = issues.filter((i) => i.severity === 'note').length;\n\n // Determine success (no errors, or no warnings if failOnWarnings)\n const success = options.failOnWarnings\n ? totalErrors === 0 && totalWarnings === 0\n : totalErrors === 0;\n\n // Try to get git info\n const gitInfo = await getGitInfo(fs);\n\n const result: CICheckResult = {\n success,\n totalErrors,\n totalWarnings,\n totalNotes,\n issues,\n categories: categorySummaries,\n durationMs: Date.now() - startTime,\n timestamp: new Date().toISOString(),\n ...gitInfo,\n };\n\n logger.info('CI checks complete', {\n success,\n errors: totalErrors,\n warnings: totalWarnings,\n durationMs: result.durationMs,\n });\n\n return result;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,eAAsB,YACpB,UACA,UAA0B,EAAE,EACJ;CACxB,MAAM,YAAY,KAAK,KAAK;CAC5B,MAAM,EAAE,IAAI,WAAW;CAEvB,MAAM,SAAoB,EAAE;CAC5B,MAAM,oBAA8C,EAAE;CAGtD,MAAM,cAAc,eAAe,QAAQ;AAE3C,QAAO,KAAK,yBAAyB,EAAE,QAAQ,aAAa,CAAC;CAI7D,MAAM,aADQ,MAAM,GAAG,KAAK,EAAE,SAAS,QAAQ,SAAS,CAAC,EACjC,QACrB,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,WAAW,GAAG,QAAQ,OAAO,CAC3D;AAGD,KAAI,YAAY,SAAS,YAAY,EAAE;EACrC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,kBAAkB,MAAM,mBAAmB,UAAU,UAAU;AACrE,SAAO,KAAK,GAAG,gBAAgB;AAC/B,oBAAkB,KAChB,sBACE,aACA,iBACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,YAAY,EAAE;EACrC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,kBAAkB,MAAM,mBAAmB,UAAU,QAAQ;AACnE,SAAO,KAAK,GAAG,gBAAgB;AAC/B,oBAAkB,KAChB,sBACE,aACA,iBACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,OAAO,EAAE;EAChC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,aAAa,MAAM,cAAc,UAAU,QAAQ;AACzD,SAAO,KAAK,GAAG,WAAW;AAC1B,oBAAkB,KAChB,sBAAsB,QAAQ,YAAY,KAAK,KAAK,GAAG,cAAc,CACtE;;AAIH,KAAI,YAAY,SAAS,SAAS,EAAE;EAClC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,eAAe,MAAM,gBAAgB,UAAU,QAAQ;AAC7D,SAAO,KAAK,GAAG,aAAa;AAC5B,oBAAkB,KAChB,sBAAsB,UAAU,cAAc,KAAK,KAAK,GAAG,cAAc,CAC1E;;AAIH,KAAI,YAAY,SAAS,WAAW,IAAI,QAAQ,eAAe;EAC7D,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,gBAAgB,MAAM,iBAAiB,UAAU,UAAU;AACjE,SAAO,KAAK,GAAG,cAAc;AAC7B,oBAAkB,KAChB,sBACE,YACA,eACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,QAAQ,IAAI,QAAQ,YAAY;EACvD,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,aAAa,MAAM,cAAc,UAAU,UAAU;AAC3D,SAAO,KAAK,GAAG,WAAW;AAC1B,oBAAkB,KAChB,sBAAsB,SAAS,YAAY,KAAK,KAAK,GAAG,cAAc,CACvE;;AAIH,KAAI,YAAY,SAAS,YAAY,EAAE;EACrC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,gBAAgB,MAAM,kBAAkB,UAAU,UAAU;AAClE,SAAO,KAAK,GAAG,cAAc;AAC7B,oBAAkB,KAChB,sBACE,aACA,eACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,WAAW,EAAE;EACpC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,iBAAiB,MAAM,kBAC3B,UACA,WACA,QACD;AACD,SAAO,KAAK,GAAG,eAAe;AAC9B,oBAAkB,KAChB,sBACE,YACA,gBACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,iBAAiB,EAAE;EAC1C,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,aAAa,MAAM,wBACvB,UACA,WACA,QACD;AACD,SAAO,KAAK,GAAG,WAAW;AAC1B,oBAAkB,KAChB,sBACE,kBACA,YACA,KAAK,KAAK,GAAG,cACd,CACF;;AAIH,KAAI,YAAY,SAAS,SAAS,EAAE;EAClC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,cAAc,MAAM,eAAe,UAAU,QAAQ;AAC3D,SAAO,KAAK,GAAG,YAAY;AAC3B,oBAAkB,KAChB,sBAAsB,UAAU,aAAa,KAAK,KAAK,GAAG,cAAc,CACzE;;AAIH,KAAI,YAAY,SAAS,QAAQ,EAAE;EACjC,MAAM,gBAAgB,KAAK,KAAK;EAChC,MAAM,cAAc,MAAM,eAAe,UAAU,QAAQ;AAC3D,SAAO,KAAK,GAAG,YAAY;AAC3B,oBAAkB,KAChB,sBAAsB,SAAS,aAAa,KAAK,KAAK,GAAG,cAAc,CACxE;;CAIH,MAAM,cAAc,OAAO,QAAQ,MAAM,EAAE,aAAa,QAAQ,CAAC;CACjE,MAAM,gBAAgB,OAAO,QAAQ,MAAM,EAAE,aAAa,UAAU,CAAC;CACrE,MAAM,aAAa,OAAO,QAAQ,MAAM,EAAE,aAAa,OAAO,CAAC;CAG/D,MAAM,UAAU,QAAQ,iBACpB,gBAAgB,KAAK,kBAAkB,IACvC,gBAAgB;CAGpB,MAAM,UAAU,MAAM,WAAW,GAAG;CAEpC,MAAM,SAAwB;EAC5B;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ,YAAY,KAAK,KAAK,GAAG;EACzB,4BAAW,IAAI,MAAM,EAAC,aAAa;EACnC,GAAG;EACJ;AAED,QAAO,KAAK,sBAAsB;EAChC;EACA,QAAQ;EACR,UAAU;EACV,YAAY,OAAO;EACpB,CAAC;AAEF,QAAO"}
|