@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,139 @@
|
|
|
1
|
+
import { FIX_STRATEGY_STABILITY } from "../types.mjs";
|
|
2
|
+
import { generateSkeletonOperation } from "../../../templates/fix/skeleton-operation.mjs";
|
|
3
|
+
import { generateSkeletonEvent } from "../../../templates/fix/skeleton-event.mjs";
|
|
4
|
+
import { generateSkeletonPresentation } from "../../../templates/fix/skeleton-presentation.mjs";
|
|
5
|
+
import { generateSkeletonCapability } from "../../../templates/fix/skeleton-capability.mjs";
|
|
6
|
+
import { resolveOutputPath } from "../path-resolver.mjs";
|
|
7
|
+
import path from "node:path";
|
|
8
|
+
|
|
9
|
+
//#region src/services/fix/strategies/implement-ai.ts
|
|
10
|
+
/**
|
|
11
|
+
* Create a spec with AI-generated content.
|
|
12
|
+
*
|
|
13
|
+
* Falls back to skeleton if AI is not available or fails.
|
|
14
|
+
*/
|
|
15
|
+
async function implementAiStrategy(issue, options, adapters) {
|
|
16
|
+
const { fs, logger } = adapters;
|
|
17
|
+
const { ref, specType, featureKey } = issue;
|
|
18
|
+
try {
|
|
19
|
+
const ctx = {
|
|
20
|
+
key: ref.key,
|
|
21
|
+
version: ref.version,
|
|
22
|
+
specType,
|
|
23
|
+
stability: FIX_STRATEGY_STABILITY["implement-ai"],
|
|
24
|
+
featureKey
|
|
25
|
+
};
|
|
26
|
+
let enrichedCtx = ctx;
|
|
27
|
+
if (options.aiConfig) try {
|
|
28
|
+
enrichedCtx = await enrichWithAI(ctx, options, logger);
|
|
29
|
+
} catch (aiError) {
|
|
30
|
+
logger.warn("AI enrichment failed, falling back to skeleton", { error: aiError instanceof Error ? aiError.message : String(aiError) });
|
|
31
|
+
}
|
|
32
|
+
else logger.info("No AI config provided, using skeleton with experimental stability");
|
|
33
|
+
const code = generateSpecCode(enrichedCtx);
|
|
34
|
+
if (!code) return {
|
|
35
|
+
success: false,
|
|
36
|
+
strategy: "implement-ai",
|
|
37
|
+
issue,
|
|
38
|
+
filesChanged: [],
|
|
39
|
+
error: `Unsupported spec type: ${specType}`
|
|
40
|
+
};
|
|
41
|
+
const filePath = resolveOutputPath(issue, options);
|
|
42
|
+
const filesChanged = [];
|
|
43
|
+
if (!options.dryRun) {
|
|
44
|
+
const dir = path.dirname(filePath);
|
|
45
|
+
await fs.mkdir(dir);
|
|
46
|
+
await fs.writeFile(filePath, code);
|
|
47
|
+
filesChanged.push({
|
|
48
|
+
path: filePath,
|
|
49
|
+
action: "created"
|
|
50
|
+
});
|
|
51
|
+
} else filesChanged.push({
|
|
52
|
+
path: filePath,
|
|
53
|
+
action: "created"
|
|
54
|
+
});
|
|
55
|
+
return {
|
|
56
|
+
success: true,
|
|
57
|
+
strategy: "implement-ai",
|
|
58
|
+
issue,
|
|
59
|
+
filesChanged
|
|
60
|
+
};
|
|
61
|
+
} catch (error) {
|
|
62
|
+
return {
|
|
63
|
+
success: false,
|
|
64
|
+
strategy: "implement-ai",
|
|
65
|
+
issue,
|
|
66
|
+
filesChanged: [],
|
|
67
|
+
error: error instanceof Error ? error.message : String(error)
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Enrich the generation context with AI-generated content.
|
|
73
|
+
*/
|
|
74
|
+
async function enrichWithAI(ctx, _options, logger) {
|
|
75
|
+
logger.info("Generating AI content for spec", {
|
|
76
|
+
key: ctx.key,
|
|
77
|
+
type: ctx.specType
|
|
78
|
+
});
|
|
79
|
+
const enrichment = inferEnrichmentFromKey(ctx.key, ctx.specType);
|
|
80
|
+
return {
|
|
81
|
+
...ctx,
|
|
82
|
+
description: enrichment.description,
|
|
83
|
+
enrichment: {
|
|
84
|
+
goal: enrichment.goal,
|
|
85
|
+
context: enrichment.context,
|
|
86
|
+
owners: ["@team"],
|
|
87
|
+
tags: enrichment.tags
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Infer enrichment content from the spec key.
|
|
93
|
+
*/
|
|
94
|
+
function inferEnrichmentFromKey(key, specType) {
|
|
95
|
+
const parts = key.split(".");
|
|
96
|
+
const domain = parts[0] || "unknown";
|
|
97
|
+
const action = parts.slice(1).join(" ").replace(/_/g, " ");
|
|
98
|
+
const domainTags = [domain];
|
|
99
|
+
const actionKeywords = action.toLowerCase().split(" ");
|
|
100
|
+
const matchedTags = [
|
|
101
|
+
"auth",
|
|
102
|
+
"user",
|
|
103
|
+
"admin",
|
|
104
|
+
"api",
|
|
105
|
+
"data",
|
|
106
|
+
"search",
|
|
107
|
+
"create",
|
|
108
|
+
"update",
|
|
109
|
+
"delete"
|
|
110
|
+
].filter((tag) => actionKeywords.some((kw) => kw.includes(tag)));
|
|
111
|
+
return {
|
|
112
|
+
description: `${capitalize(specType)} for ${domain} ${action}`,
|
|
113
|
+
goal: `Enable ${action} functionality in the ${domain} domain`,
|
|
114
|
+
context: `Part of the ${domain} feature set. Generated by ContractSpec AI fix.`,
|
|
115
|
+
tags: [...domainTags, ...matchedTags]
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Generate spec code based on type.
|
|
120
|
+
*/
|
|
121
|
+
function generateSpecCode(ctx) {
|
|
122
|
+
switch (ctx.specType) {
|
|
123
|
+
case "operation": return generateSkeletonOperation(ctx);
|
|
124
|
+
case "event": return generateSkeletonEvent(ctx);
|
|
125
|
+
case "presentation": return generateSkeletonPresentation(ctx);
|
|
126
|
+
case "capability": return generateSkeletonCapability(ctx);
|
|
127
|
+
default: return;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Capitalize the first letter of a string.
|
|
132
|
+
*/
|
|
133
|
+
function capitalize(str) {
|
|
134
|
+
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
//#endregion
|
|
138
|
+
export { implementAiStrategy };
|
|
139
|
+
//# sourceMappingURL=implement-ai.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"implement-ai.mjs","names":[],"sources":["../../../../src/services/fix/strategies/implement-ai.ts"],"sourcesContent":["/**\n * Implement AI strategy.\n *\n * Creates a spec with AI-generated content using experimental stability.\n */\n\nimport type {\n FixableIssue,\n FixOptions,\n FixResult,\n FixFileChange,\n SpecGenerationContext,\n} from '../types';\nimport type { FsAdapter } from '../../../ports/fs';\nimport type { LoggerAdapter } from '../../../ports/logger';\nimport { FIX_STRATEGY_STABILITY } from '../types';\nimport {\n generateSkeletonOperation,\n generateSkeletonEvent,\n generateSkeletonPresentation,\n generateSkeletonCapability,\n} from '../../../templates/fix';\nimport { resolveOutputPath } from '../path-resolver';\nimport path from 'node:path';\n\n/**\n * Create a spec with AI-generated content.\n *\n * Falls back to skeleton if AI is not available or fails.\n */\nexport async function implementAiStrategy(\n issue: FixableIssue,\n options: FixOptions,\n adapters: { fs: FsAdapter; logger: LoggerAdapter }\n): Promise<FixResult> {\n const { fs, logger } = adapters;\n const { ref, specType, featureKey } = issue;\n\n try {\n // Build generation context with AI enrichment\n const ctx: SpecGenerationContext = {\n key: ref.key,\n version: ref.version,\n specType,\n stability: FIX_STRATEGY_STABILITY['implement-ai'],\n featureKey,\n };\n\n // Try to get AI-generated content\n let enrichedCtx = ctx;\n if (options.aiConfig) {\n try {\n enrichedCtx = await enrichWithAI(ctx, options, logger);\n } catch (aiError) {\n logger.warn('AI enrichment failed, falling back to skeleton', {\n error: aiError instanceof Error ? aiError.message : String(aiError),\n });\n // Continue with unenriched context\n }\n } else {\n logger.info(\n 'No AI config provided, using skeleton with experimental stability'\n );\n }\n\n // Generate the spec code\n const code = generateSpecCode(enrichedCtx);\n if (!code) {\n return {\n success: false,\n strategy: 'implement-ai',\n issue,\n filesChanged: [],\n error: `Unsupported spec type: ${specType}`,\n };\n }\n\n // Determine output path\n const filePath = resolveOutputPath(issue, options);\n\n const filesChanged: FixFileChange[] = [];\n\n // Write the file (unless dry run)\n if (!options.dryRun) {\n // Ensure directory exists\n const dir = path.dirname(filePath);\n await fs.mkdir(dir);\n\n // Write the spec file\n await fs.writeFile(filePath, code);\n\n filesChanged.push({\n path: filePath,\n action: 'created',\n });\n } else {\n // For dry run, report what would be created\n filesChanged.push({\n path: filePath,\n action: 'created',\n });\n }\n\n return {\n success: true,\n strategy: 'implement-ai',\n issue,\n filesChanged,\n };\n } catch (error) {\n return {\n success: false,\n strategy: 'implement-ai',\n issue,\n filesChanged: [],\n error: error instanceof Error ? error.message : String(error),\n };\n }\n}\n\n/**\n * Enrich the generation context with AI-generated content.\n */\nasync function enrichWithAI(\n ctx: SpecGenerationContext,\n _options: FixOptions,\n logger: LoggerAdapter\n): Promise<SpecGenerationContext> {\n // TODO: Integrate with existing AIGenerator from services/create/ai-generator.ts\n // For now, generate reasonable defaults based on the key\n\n logger.info('Generating AI content for spec', {\n key: ctx.key,\n type: ctx.specType,\n });\n\n const enrichment = inferEnrichmentFromKey(ctx.key, ctx.specType);\n\n return {\n ...ctx,\n description: enrichment.description,\n enrichment: {\n goal: enrichment.goal,\n context: enrichment.context,\n owners: ['@team'],\n tags: enrichment.tags,\n },\n };\n}\n\n/**\n * Infer enrichment content from the spec key.\n */\nfunction inferEnrichmentFromKey(\n key: string,\n specType: string\n): {\n description: string;\n goal: string;\n context: string;\n tags: string[];\n} {\n const parts = key.split('.');\n const domain = parts[0] || 'unknown';\n const action = parts.slice(1).join(' ').replace(/_/g, ' ');\n\n const domainTags = [domain];\n const actionKeywords = action.toLowerCase().split(' ');\n\n // Add relevant tags based on action keywords\n const tagKeywords = [\n 'auth',\n 'user',\n 'admin',\n 'api',\n 'data',\n 'search',\n 'create',\n 'update',\n 'delete',\n ];\n const matchedTags = tagKeywords.filter((tag) =>\n actionKeywords.some((kw) => kw.includes(tag))\n );\n\n return {\n description: `${capitalize(specType)} for ${domain} ${action}`,\n goal: `Enable ${action} functionality in the ${domain} domain`,\n context: `Part of the ${domain} feature set. Generated by ContractSpec AI fix.`,\n tags: [...domainTags, ...matchedTags],\n };\n}\n\n/**\n * Generate spec code based on type.\n */\nfunction generateSpecCode(ctx: SpecGenerationContext): string | undefined {\n switch (ctx.specType) {\n case 'operation':\n return generateSkeletonOperation(ctx);\n case 'event':\n return generateSkeletonEvent(ctx);\n case 'presentation':\n return generateSkeletonPresentation(ctx);\n case 'capability':\n return generateSkeletonCapability(ctx);\n default:\n return undefined;\n }\n}\n\n/**\n * Capitalize the first letter of a string.\n */\nfunction capitalize(str: string): string {\n return str.charAt(0).toUpperCase() + str.slice(1);\n}\n"],"mappings":";;;;;;;;;;;;;;AA8BA,eAAsB,oBACpB,OACA,SACA,UACoB;CACpB,MAAM,EAAE,IAAI,WAAW;CACvB,MAAM,EAAE,KAAK,UAAU,eAAe;AAEtC,KAAI;EAEF,MAAM,MAA6B;GACjC,KAAK,IAAI;GACT,SAAS,IAAI;GACb;GACA,WAAW,uBAAuB;GAClC;GACD;EAGD,IAAI,cAAc;AAClB,MAAI,QAAQ,SACV,KAAI;AACF,iBAAc,MAAM,aAAa,KAAK,SAAS,OAAO;WAC/C,SAAS;AAChB,UAAO,KAAK,kDAAkD,EAC5D,OAAO,mBAAmB,QAAQ,QAAQ,UAAU,OAAO,QAAQ,EACpE,CAAC;;MAIJ,QAAO,KACL,oEACD;EAIH,MAAM,OAAO,iBAAiB,YAAY;AAC1C,MAAI,CAAC,KACH,QAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,0BAA0B;GAClC;EAIH,MAAM,WAAW,kBAAkB,OAAO,QAAQ;EAElD,MAAM,eAAgC,EAAE;AAGxC,MAAI,CAAC,QAAQ,QAAQ;GAEnB,MAAM,MAAM,KAAK,QAAQ,SAAS;AAClC,SAAM,GAAG,MAAM,IAAI;AAGnB,SAAM,GAAG,UAAU,UAAU,KAAK;AAElC,gBAAa,KAAK;IAChB,MAAM;IACN,QAAQ;IACT,CAAC;QAGF,cAAa,KAAK;GAChB,MAAM;GACN,QAAQ;GACT,CAAC;AAGJ,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA;GACD;UACM,OAAO;AACd,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;GAC9D;;;;;;AAOL,eAAe,aACb,KACA,UACA,QACgC;AAIhC,QAAO,KAAK,kCAAkC;EAC5C,KAAK,IAAI;EACT,MAAM,IAAI;EACX,CAAC;CAEF,MAAM,aAAa,uBAAuB,IAAI,KAAK,IAAI,SAAS;AAEhE,QAAO;EACL,GAAG;EACH,aAAa,WAAW;EACxB,YAAY;GACV,MAAM,WAAW;GACjB,SAAS,WAAW;GACpB,QAAQ,CAAC,QAAQ;GACjB,MAAM,WAAW;GAClB;EACF;;;;;AAMH,SAAS,uBACP,KACA,UAMA;CACA,MAAM,QAAQ,IAAI,MAAM,IAAI;CAC5B,MAAM,SAAS,MAAM,MAAM;CAC3B,MAAM,SAAS,MAAM,MAAM,EAAE,CAAC,KAAK,IAAI,CAAC,QAAQ,MAAM,IAAI;CAE1D,MAAM,aAAa,CAAC,OAAO;CAC3B,MAAM,iBAAiB,OAAO,aAAa,CAAC,MAAM,IAAI;CActD,MAAM,cAXc;EAClB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CAC+B,QAAQ,QACtC,eAAe,MAAM,OAAO,GAAG,SAAS,IAAI,CAAC,CAC9C;AAED,QAAO;EACL,aAAa,GAAG,WAAW,SAAS,CAAC,OAAO,OAAO,GAAG;EACtD,MAAM,UAAU,OAAO,wBAAwB,OAAO;EACtD,SAAS,eAAe,OAAO;EAC/B,MAAM,CAAC,GAAG,YAAY,GAAG,YAAY;EACtC;;;;;AAMH,SAAS,iBAAiB,KAAgD;AACxE,SAAQ,IAAI,UAAZ;EACE,KAAK,YACH,QAAO,0BAA0B,IAAI;EACvC,KAAK,QACH,QAAO,sBAAsB,IAAI;EACnC,KAAK,eACH,QAAO,6BAA6B,IAAI;EAC1C,KAAK,aACH,QAAO,2BAA2B,IAAI;EACxC,QACE;;;;;;AAON,SAAS,WAAW,KAAqB;AACvC,QAAO,IAAI,OAAO,EAAE,CAAC,aAAa,GAAG,IAAI,MAAM,EAAE"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { FsAdapter } from "../../../ports/fs.mjs";
|
|
2
|
+
import { FixOptions, FixResult, FixableIssue } from "../types.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/services/fix/strategies/implement-skeleton.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Create a skeleton spec for a missing reference.
|
|
8
|
+
*/
|
|
9
|
+
declare function implementSkeletonStrategy(issue: FixableIssue, options: FixOptions, adapters: {
|
|
10
|
+
fs: FsAdapter;
|
|
11
|
+
}): Promise<FixResult>;
|
|
12
|
+
//#endregion
|
|
13
|
+
export { implementSkeletonStrategy };
|
|
14
|
+
//# sourceMappingURL=implement-skeleton.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"implement-skeleton.d.mts","names":[],"sources":["../../../../src/services/fix/strategies/implement-skeleton.ts"],"sourcesContent":[],"mappings":";;;;;;;;AA+BU,iBAJY,yBAAA,CAIZ,KAAA,EAHD,YAGC,EAAA,OAAA,EAFC,UAED,EAAA,QAAA,EAAA;MADQ;IACf,QAAQ"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { FIX_STRATEGY_STABILITY } from "../types.mjs";
|
|
2
|
+
import { generateSkeletonOperation } from "../../../templates/fix/skeleton-operation.mjs";
|
|
3
|
+
import { generateSkeletonEvent } from "../../../templates/fix/skeleton-event.mjs";
|
|
4
|
+
import { generateSkeletonPresentation } from "../../../templates/fix/skeleton-presentation.mjs";
|
|
5
|
+
import { generateSkeletonCapability } from "../../../templates/fix/skeleton-capability.mjs";
|
|
6
|
+
import { resolveOutputPath } from "../path-resolver.mjs";
|
|
7
|
+
import path from "node:path";
|
|
8
|
+
|
|
9
|
+
//#region src/services/fix/strategies/implement-skeleton.ts
|
|
10
|
+
/**
|
|
11
|
+
* Create a skeleton spec for a missing reference.
|
|
12
|
+
*/
|
|
13
|
+
async function implementSkeletonStrategy(issue, options, adapters) {
|
|
14
|
+
const { fs } = adapters;
|
|
15
|
+
const { ref, specType, featureKey } = issue;
|
|
16
|
+
try {
|
|
17
|
+
const code = generateSpecCode({
|
|
18
|
+
key: ref.key,
|
|
19
|
+
version: ref.version,
|
|
20
|
+
specType,
|
|
21
|
+
stability: FIX_STRATEGY_STABILITY["implement-skeleton"],
|
|
22
|
+
description: `Skeleton spec for ${ref.key}`,
|
|
23
|
+
featureKey
|
|
24
|
+
});
|
|
25
|
+
if (!code) return {
|
|
26
|
+
success: false,
|
|
27
|
+
strategy: "implement-skeleton",
|
|
28
|
+
issue,
|
|
29
|
+
filesChanged: [],
|
|
30
|
+
error: `Unsupported spec type: ${specType}`
|
|
31
|
+
};
|
|
32
|
+
const filePath = resolveOutputPath(issue, options);
|
|
33
|
+
const filesChanged = [];
|
|
34
|
+
if (!options.dryRun) {
|
|
35
|
+
const dir = path.dirname(filePath);
|
|
36
|
+
await fs.mkdir(dir);
|
|
37
|
+
await fs.writeFile(filePath, code);
|
|
38
|
+
filesChanged.push({
|
|
39
|
+
path: filePath,
|
|
40
|
+
action: "created"
|
|
41
|
+
});
|
|
42
|
+
} else filesChanged.push({
|
|
43
|
+
path: filePath,
|
|
44
|
+
action: "created"
|
|
45
|
+
});
|
|
46
|
+
return {
|
|
47
|
+
success: true,
|
|
48
|
+
strategy: "implement-skeleton",
|
|
49
|
+
issue,
|
|
50
|
+
filesChanged
|
|
51
|
+
};
|
|
52
|
+
} catch (error) {
|
|
53
|
+
return {
|
|
54
|
+
success: false,
|
|
55
|
+
strategy: "implement-skeleton",
|
|
56
|
+
issue,
|
|
57
|
+
filesChanged: [],
|
|
58
|
+
error: error instanceof Error ? error.message : String(error)
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Generate spec code based on type.
|
|
64
|
+
*/
|
|
65
|
+
function generateSpecCode(ctx) {
|
|
66
|
+
switch (ctx.specType) {
|
|
67
|
+
case "operation": return generateSkeletonOperation(ctx);
|
|
68
|
+
case "event": return generateSkeletonEvent(ctx);
|
|
69
|
+
case "presentation": return generateSkeletonPresentation(ctx);
|
|
70
|
+
case "capability": return generateSkeletonCapability(ctx);
|
|
71
|
+
default: return;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
//#endregion
|
|
76
|
+
export { implementSkeletonStrategy };
|
|
77
|
+
//# sourceMappingURL=implement-skeleton.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"implement-skeleton.mjs","names":[],"sources":["../../../../src/services/fix/strategies/implement-skeleton.ts"],"sourcesContent":["/**\n * Implement skeleton strategy.\n *\n * Creates a minimal spec stub with in_creation stability.\n */\n\nimport type {\n FixableIssue,\n FixOptions,\n FixResult,\n FixFileChange,\n SpecGenerationContext,\n} from '../types';\nimport type { FsAdapter } from '../../../ports/fs';\nimport {\n generateSkeletonOperation,\n generateSkeletonEvent,\n generateSkeletonPresentation,\n generateSkeletonCapability,\n} from '../../../templates/fix';\nimport { resolveOutputPath } from '../path-resolver';\nimport { FIX_STRATEGY_STABILITY } from '../types';\nimport path from 'node:path';\n\n/**\n * Create a skeleton spec for a missing reference.\n */\nexport async function implementSkeletonStrategy(\n issue: FixableIssue,\n options: FixOptions,\n adapters: { fs: FsAdapter }\n): Promise<FixResult> {\n const { fs } = adapters;\n const { ref, specType, featureKey } = issue;\n\n try {\n // Build generation context\n const ctx: SpecGenerationContext = {\n key: ref.key,\n version: ref.version,\n specType,\n stability: FIX_STRATEGY_STABILITY['implement-skeleton'],\n description: `Skeleton spec for ${ref.key}`,\n featureKey,\n };\n\n // Generate the spec code\n const code = generateSpecCode(ctx);\n if (!code) {\n return {\n success: false,\n strategy: 'implement-skeleton',\n issue,\n filesChanged: [],\n error: `Unsupported spec type: ${specType}`,\n };\n }\n\n // Determine output path\n const filePath = resolveOutputPath(issue, options);\n\n const filesChanged: FixFileChange[] = [];\n\n // Write the file (unless dry run)\n if (!options.dryRun) {\n // Ensure directory exists\n const dir = path.dirname(filePath);\n await fs.mkdir(dir);\n\n // Write the spec file\n await fs.writeFile(filePath, code);\n\n filesChanged.push({\n path: filePath,\n action: 'created',\n });\n } else {\n // For dry run, report what would be created\n filesChanged.push({\n path: filePath,\n action: 'created',\n });\n }\n\n return {\n success: true,\n strategy: 'implement-skeleton',\n issue,\n filesChanged,\n };\n } catch (error) {\n return {\n success: false,\n strategy: 'implement-skeleton',\n issue,\n filesChanged: [],\n error: error instanceof Error ? error.message : String(error),\n };\n }\n}\n\n/**\n * Generate spec code based on type.\n */\nfunction generateSpecCode(ctx: SpecGenerationContext): string | undefined {\n switch (ctx.specType) {\n case 'operation':\n return generateSkeletonOperation(ctx);\n case 'event':\n return generateSkeletonEvent(ctx);\n case 'presentation':\n return generateSkeletonPresentation(ctx);\n case 'capability':\n return generateSkeletonCapability(ctx);\n default:\n return undefined;\n }\n}\n"],"mappings":";;;;;;;;;;;;AA2BA,eAAsB,0BACpB,OACA,SACA,UACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,EAAE,KAAK,UAAU,eAAe;AAEtC,KAAI;EAYF,MAAM,OAAO,iBAVsB;GACjC,KAAK,IAAI;GACT,SAAS,IAAI;GACb;GACA,WAAW,uBAAuB;GAClC,aAAa,qBAAqB,IAAI;GACtC;GACD,CAGiC;AAClC,MAAI,CAAC,KACH,QAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,0BAA0B;GAClC;EAIH,MAAM,WAAW,kBAAkB,OAAO,QAAQ;EAElD,MAAM,eAAgC,EAAE;AAGxC,MAAI,CAAC,QAAQ,QAAQ;GAEnB,MAAM,MAAM,KAAK,QAAQ,SAAS;AAClC,SAAM,GAAG,MAAM,IAAI;AAGnB,SAAM,GAAG,UAAU,UAAU,KAAK;AAElC,gBAAa,KAAK;IAChB,MAAM;IACN,QAAQ;IACT,CAAC;QAGF,cAAa,KAAK;GAChB,MAAM;GACN,QAAQ;GACT,CAAC;AAGJ,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA;GACD;UACM,OAAO;AACd,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;GAC9D;;;;;;AAOL,SAAS,iBAAiB,KAAgD;AACxE,SAAQ,IAAI,UAAZ;EACE,KAAK,YACH,QAAO,0BAA0B,IAAI;EACvC,KAAK,QACH,QAAO,sBAAsB,IAAI;EACnC,KAAK,eACH,QAAO,6BAA6B,IAAI;EAC1C,KAAK,aACH,QAAO,2BAA2B,IAAI;EACxC,QACE"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { FsAdapter } from "../../../ports/fs.mjs";
|
|
2
|
+
import { FixOptions, FixResult, FixableIssue } from "../types.mjs";
|
|
3
|
+
|
|
4
|
+
//#region src/services/fix/strategies/remove-reference.d.ts
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Remove a specific reference from a feature file.
|
|
8
|
+
*
|
|
9
|
+
* Parses the feature file content and removes the matching reference
|
|
10
|
+
* from the appropriate array (operations, events, presentations, etc.).
|
|
11
|
+
*/
|
|
12
|
+
declare function removeReferenceStrategy(issue: FixableIssue, options: FixOptions, adapters: {
|
|
13
|
+
fs: FsAdapter;
|
|
14
|
+
}): Promise<FixResult>;
|
|
15
|
+
//#endregion
|
|
16
|
+
export { removeReferenceStrategy };
|
|
17
|
+
//# sourceMappingURL=remove-reference.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remove-reference.d.mts","names":[],"sources":["../../../../src/services/fix/strategies/remove-reference.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;iBAoBsB,uBAAA,QACb,uBACE;MACO;IACf,QAAQ"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
//#region src/services/fix/strategies/remove-reference.ts
|
|
2
|
+
/**
|
|
3
|
+
* Remove a specific reference from a feature file.
|
|
4
|
+
*
|
|
5
|
+
* Parses the feature file content and removes the matching reference
|
|
6
|
+
* from the appropriate array (operations, events, presentations, etc.).
|
|
7
|
+
*/
|
|
8
|
+
async function removeReferenceStrategy(issue, options, adapters) {
|
|
9
|
+
const { fs } = adapters;
|
|
10
|
+
const { ref, featureFile, specType } = issue;
|
|
11
|
+
try {
|
|
12
|
+
const content = await fs.readFile(featureFile);
|
|
13
|
+
const previousContent = content;
|
|
14
|
+
const updatedContent = removeRefFromContent(content, ref, specType);
|
|
15
|
+
if (updatedContent === content) return {
|
|
16
|
+
success: false,
|
|
17
|
+
strategy: "remove-reference",
|
|
18
|
+
issue,
|
|
19
|
+
filesChanged: [],
|
|
20
|
+
error: `Could not find reference ${ref.key}.v${ref.version} in ${featureFile}`
|
|
21
|
+
};
|
|
22
|
+
const filesChanged = [];
|
|
23
|
+
if (!options.dryRun) {
|
|
24
|
+
await fs.writeFile(featureFile, updatedContent);
|
|
25
|
+
filesChanged.push({
|
|
26
|
+
path: featureFile,
|
|
27
|
+
action: "modified",
|
|
28
|
+
previousContent
|
|
29
|
+
});
|
|
30
|
+
} else filesChanged.push({
|
|
31
|
+
path: featureFile,
|
|
32
|
+
action: "modified"
|
|
33
|
+
});
|
|
34
|
+
return {
|
|
35
|
+
success: true,
|
|
36
|
+
strategy: "remove-reference",
|
|
37
|
+
issue,
|
|
38
|
+
filesChanged
|
|
39
|
+
};
|
|
40
|
+
} catch (error) {
|
|
41
|
+
return {
|
|
42
|
+
success: false,
|
|
43
|
+
strategy: "remove-reference",
|
|
44
|
+
issue,
|
|
45
|
+
filesChanged: [],
|
|
46
|
+
error: error instanceof Error ? error.message : String(error)
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Remove a reference from feature file content.
|
|
52
|
+
*
|
|
53
|
+
* Handles different array formats:
|
|
54
|
+
* - operations: [{ key: 'x', version: 'y' }]
|
|
55
|
+
* - events: [{ key: 'x', version: 'y' }]
|
|
56
|
+
* - presentations: [{ key: 'x', version: 'y' }]
|
|
57
|
+
*/
|
|
58
|
+
function removeRefFromContent(content, ref, specType) {
|
|
59
|
+
if (!getArrayName(specType)) return content;
|
|
60
|
+
const keyEscaped = escapeRegex(ref.key);
|
|
61
|
+
const versionEscaped = escapeRegex(ref.version);
|
|
62
|
+
const patterns = [new RegExp(`\\{\\s*key:\\s*['"]${keyEscaped}['"],\\s*version:\\s*['"]${versionEscaped}['"]\\s*\\},?\\s*`, "g"), new RegExp(`\\{\\s*version:\\s*['"]${versionEscaped}['"],\\s*key:\\s*['"]${keyEscaped}['"]\\s*\\},?\\s*`, "g")];
|
|
63
|
+
let result = content;
|
|
64
|
+
for (const pattern of patterns) result = result.replace(pattern, "");
|
|
65
|
+
result = cleanupTrailingCommas(result);
|
|
66
|
+
return result;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get the array name in a feature file for a spec type.
|
|
70
|
+
*/
|
|
71
|
+
function getArrayName(specType) {
|
|
72
|
+
return {
|
|
73
|
+
operation: "operations",
|
|
74
|
+
event: "events",
|
|
75
|
+
presentation: "presentations",
|
|
76
|
+
experiment: "experiments",
|
|
77
|
+
capability: "capabilities",
|
|
78
|
+
workflow: "workflows",
|
|
79
|
+
"data-view": "dataViews",
|
|
80
|
+
form: "forms"
|
|
81
|
+
}[specType];
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Escape special regex characters in a string.
|
|
85
|
+
*/
|
|
86
|
+
function escapeRegex(str) {
|
|
87
|
+
return str.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Clean up trailing commas that may be left after removing elements.
|
|
91
|
+
*/
|
|
92
|
+
function cleanupTrailingCommas(content) {
|
|
93
|
+
return content.replace(/,(\s*)\]/g, "$1]");
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
//#endregion
|
|
97
|
+
export { removeReferenceStrategy };
|
|
98
|
+
//# sourceMappingURL=remove-reference.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remove-reference.mjs","names":[],"sources":["../../../../src/services/fix/strategies/remove-reference.ts"],"sourcesContent":["/**\n * Remove reference strategy.\n *\n * Removes a broken reference from a feature file.\n */\n\nimport type {\n FixableIssue,\n FixOptions,\n FixResult,\n FixFileChange,\n} from '../types';\nimport type { FsAdapter } from '../../../ports/fs';\n\n/**\n * Remove a specific reference from a feature file.\n *\n * Parses the feature file content and removes the matching reference\n * from the appropriate array (operations, events, presentations, etc.).\n */\nexport async function removeReferenceStrategy(\n issue: FixableIssue,\n options: FixOptions,\n adapters: { fs: FsAdapter }\n): Promise<FixResult> {\n const { fs } = adapters;\n const { ref, featureFile, specType } = issue;\n\n try {\n // Read the feature file\n const content = await fs.readFile(featureFile);\n const previousContent = content;\n\n // Find and remove the reference\n const updatedContent = removeRefFromContent(content, ref, specType);\n\n if (updatedContent === content) {\n return {\n success: false,\n strategy: 'remove-reference',\n issue,\n filesChanged: [],\n error: `Could not find reference ${ref.key}.v${ref.version} in ${featureFile}`,\n };\n }\n\n const filesChanged: FixFileChange[] = [];\n\n // Apply the change (unless dry run)\n if (!options.dryRun) {\n await fs.writeFile(featureFile, updatedContent);\n filesChanged.push({\n path: featureFile,\n action: 'modified',\n previousContent,\n });\n } else {\n // For dry run, still report what would change\n filesChanged.push({\n path: featureFile,\n action: 'modified',\n });\n }\n\n return {\n success: true,\n strategy: 'remove-reference',\n issue,\n filesChanged,\n };\n } catch (error) {\n return {\n success: false,\n strategy: 'remove-reference',\n issue,\n filesChanged: [],\n error: error instanceof Error ? error.message : String(error),\n };\n }\n}\n\n/**\n * Remove a reference from feature file content.\n *\n * Handles different array formats:\n * - operations: [{ key: 'x', version: 'y' }]\n * - events: [{ key: 'x', version: 'y' }]\n * - presentations: [{ key: 'x', version: 'y' }]\n */\nfunction removeRefFromContent(\n content: string,\n ref: { key: string; version: string },\n specType: string\n): string {\n // Map spec type to array name in feature file\n const arrayName = getArrayName(specType);\n if (!arrayName) {\n return content;\n }\n\n // Create regex pattern to match the reference object\n // Matches: { key: 'key', version: 'version' } with optional trailing comma\n const keyEscaped = escapeRegex(ref.key);\n const versionEscaped = escapeRegex(ref.version);\n\n // Pattern matches the object with key and version in any order\n // and handles both single and double quotes\n const patterns = [\n // key first, then version\n new RegExp(\n `\\\\{\\\\s*key:\\\\s*['\"]${keyEscaped}['\"],\\\\s*version:\\\\s*['\"]${versionEscaped}['\"]\\\\s*\\\\},?\\\\s*`,\n 'g'\n ),\n // version first, then key\n new RegExp(\n `\\\\{\\\\s*version:\\\\s*['\"]${versionEscaped}['\"],\\\\s*key:\\\\s*['\"]${keyEscaped}['\"]\\\\s*\\\\},?\\\\s*`,\n 'g'\n ),\n ];\n\n let result = content;\n for (const pattern of patterns) {\n result = result.replace(pattern, '');\n }\n\n // Clean up any trailing commas left after removal\n result = cleanupTrailingCommas(result);\n\n return result;\n}\n\n/**\n * Get the array name in a feature file for a spec type.\n */\nfunction getArrayName(specType: string): string | undefined {\n const mapping: Record<string, string> = {\n operation: 'operations',\n event: 'events',\n presentation: 'presentations',\n experiment: 'experiments',\n capability: 'capabilities',\n workflow: 'workflows',\n 'data-view': 'dataViews',\n form: 'forms',\n };\n\n return mapping[specType];\n}\n\n/**\n * Escape special regex characters in a string.\n */\nfunction escapeRegex(str: string): string {\n return str.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}\n\n/**\n * Clean up trailing commas that may be left after removing elements.\n */\nfunction cleanupTrailingCommas(content: string): string {\n // Remove trailing comma before closing bracket\n return content.replace(/,(\\s*)\\]/g, '$1]');\n}\n"],"mappings":";;;;;;;AAoBA,eAAsB,wBACpB,OACA,SACA,UACoB;CACpB,MAAM,EAAE,OAAO;CACf,MAAM,EAAE,KAAK,aAAa,aAAa;AAEvC,KAAI;EAEF,MAAM,UAAU,MAAM,GAAG,SAAS,YAAY;EAC9C,MAAM,kBAAkB;EAGxB,MAAM,iBAAiB,qBAAqB,SAAS,KAAK,SAAS;AAEnE,MAAI,mBAAmB,QACrB,QAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,4BAA4B,IAAI,IAAI,IAAI,IAAI,QAAQ,MAAM;GAClE;EAGH,MAAM,eAAgC,EAAE;AAGxC,MAAI,CAAC,QAAQ,QAAQ;AACnB,SAAM,GAAG,UAAU,aAAa,eAAe;AAC/C,gBAAa,KAAK;IAChB,MAAM;IACN,QAAQ;IACR;IACD,CAAC;QAGF,cAAa,KAAK;GAChB,MAAM;GACN,QAAQ;GACT,CAAC;AAGJ,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA;GACD;UACM,OAAO;AACd,SAAO;GACL,SAAS;GACT,UAAU;GACV;GACA,cAAc,EAAE;GAChB,OAAO,iBAAiB,QAAQ,MAAM,UAAU,OAAO,MAAM;GAC9D;;;;;;;;;;;AAYL,SAAS,qBACP,SACA,KACA,UACQ;AAGR,KAAI,CADc,aAAa,SAAS,CAEtC,QAAO;CAKT,MAAM,aAAa,YAAY,IAAI,IAAI;CACvC,MAAM,iBAAiB,YAAY,IAAI,QAAQ;CAI/C,MAAM,WAAW,CAEf,IAAI,OACF,sBAAsB,WAAW,2BAA2B,eAAe,oBAC3E,IACD,EAED,IAAI,OACF,0BAA0B,eAAe,uBAAuB,WAAW,oBAC3E,IACD,CACF;CAED,IAAI,SAAS;AACb,MAAK,MAAM,WAAW,SACpB,UAAS,OAAO,QAAQ,SAAS,GAAG;AAItC,UAAS,sBAAsB,OAAO;AAEtC,QAAO;;;;;AAMT,SAAS,aAAa,UAAsC;AAY1D,QAXwC;EACtC,WAAW;EACX,OAAO;EACP,cAAc;EACd,YAAY;EACZ,YAAY;EACZ,UAAU;EACV,aAAa;EACb,MAAM;EACP,CAEc;;;;;AAMjB,SAAS,YAAY,KAAqB;AACxC,QAAO,IAAI,QAAQ,uBAAuB,OAAO;;;;;AAMnD,SAAS,sBAAsB,SAAyB;AAEtD,QAAO,QAAQ,QAAQ,aAAa,MAAM"}
|
|
@@ -0,0 +1,207 @@
|
|
|
1
|
+
import { IntegrityIssue } from "../integrity.mjs";
|
|
2
|
+
import { AnalyzedSpecType, RefInfo } from "@contractspec/module.workspace";
|
|
3
|
+
import { Stability } from "@contractspec/lib.contracts";
|
|
4
|
+
|
|
5
|
+
//#region src/services/fix/types.d.ts
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Available fix strategies.
|
|
9
|
+
*/
|
|
10
|
+
type FixStrategyType = 'remove-reference' | 'implement-skeleton' | 'implement-ai';
|
|
11
|
+
/**
|
|
12
|
+
* Human-readable labels for fix strategies.
|
|
13
|
+
*/
|
|
14
|
+
declare const FIX_STRATEGY_LABELS: Record<FixStrategyType, string>;
|
|
15
|
+
/**
|
|
16
|
+
* Stability level for each fix strategy when creating specs.
|
|
17
|
+
*/
|
|
18
|
+
declare const FIX_STRATEGY_STABILITY: Record<Exclude<FixStrategyType, 'remove-reference'>, Stability>;
|
|
19
|
+
/**
|
|
20
|
+
* A fixable issue with context for fix generation.
|
|
21
|
+
*/
|
|
22
|
+
interface FixableIssue {
|
|
23
|
+
/** Original integrity issue. */
|
|
24
|
+
issue: IntegrityIssue;
|
|
25
|
+
/** Reference info (key, version). */
|
|
26
|
+
ref: RefInfo;
|
|
27
|
+
/** Spec type to create. */
|
|
28
|
+
specType: AnalyzedSpecType;
|
|
29
|
+
/** Feature file containing the broken reference. */
|
|
30
|
+
featureFile: string;
|
|
31
|
+
/** Feature key that has the broken reference. */
|
|
32
|
+
featureKey: string;
|
|
33
|
+
/** Available strategies for this issue. */
|
|
34
|
+
availableStrategies: FixStrategyType[];
|
|
35
|
+
/** Deprecated: kept for compatibility if needed, or remove if unused */
|
|
36
|
+
strategies: unknown[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* File change result from applying a fix.
|
|
40
|
+
*/
|
|
41
|
+
interface FixFileChange {
|
|
42
|
+
/** File path. */
|
|
43
|
+
path: string;
|
|
44
|
+
/** Action taken. */
|
|
45
|
+
action: 'created' | 'modified' | 'deleted';
|
|
46
|
+
/** Previous content (for undo). */
|
|
47
|
+
previousContent?: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Result of applying a single fix.
|
|
51
|
+
*/
|
|
52
|
+
interface FixResult {
|
|
53
|
+
/** Whether the fix succeeded. */
|
|
54
|
+
success: boolean;
|
|
55
|
+
/** Strategy used. */
|
|
56
|
+
strategy: FixStrategyType;
|
|
57
|
+
/** Original issue that was fixed. */
|
|
58
|
+
issue: FixableIssue;
|
|
59
|
+
/** Files that were changed. */
|
|
60
|
+
filesChanged: FixFileChange[];
|
|
61
|
+
/** Message describing the outcome. */
|
|
62
|
+
message?: string;
|
|
63
|
+
/** Error message if fix failed. */
|
|
64
|
+
error?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Result of applying multiple fixes.
|
|
68
|
+
*/
|
|
69
|
+
interface BatchFixResult {
|
|
70
|
+
/** Total number of issues processed. */
|
|
71
|
+
total: number;
|
|
72
|
+
/** Number of successful fixes. */
|
|
73
|
+
succeeded: number;
|
|
74
|
+
/** Number of failed fixes. */
|
|
75
|
+
failed: number;
|
|
76
|
+
/** Individual fix results. */
|
|
77
|
+
results: FixResult[];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* AI configuration for implement-ai strategy.
|
|
81
|
+
*/
|
|
82
|
+
interface FixAIConfig {
|
|
83
|
+
/** AI provider to use. */
|
|
84
|
+
provider: 'claude' | 'openai' | 'ollama' | 'custom';
|
|
85
|
+
/** Model to use. */
|
|
86
|
+
model?: string;
|
|
87
|
+
/** Custom endpoint. */
|
|
88
|
+
endpoint?: string;
|
|
89
|
+
/** API key (if not using env var). */
|
|
90
|
+
apiKey?: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Options for the fix service.
|
|
94
|
+
*/
|
|
95
|
+
interface FixOptions {
|
|
96
|
+
/** Working directory. */
|
|
97
|
+
workspaceRoot: string;
|
|
98
|
+
/** Fix strategy to use. */
|
|
99
|
+
strategy: FixStrategyType;
|
|
100
|
+
/** Dry run mode (preview changes without applying). */
|
|
101
|
+
dryRun?: boolean;
|
|
102
|
+
/** Interactive mode for confirmations. */
|
|
103
|
+
interactive?: boolean;
|
|
104
|
+
/** AI config for implement-ai strategy. */
|
|
105
|
+
aiConfig?: FixAIConfig;
|
|
106
|
+
/** Output directory for new specs (optional, uses config default). */
|
|
107
|
+
outputDir?: string;
|
|
108
|
+
/** Format files after creation. */
|
|
109
|
+
format?: boolean;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Request to fix multiple issues.
|
|
113
|
+
*/
|
|
114
|
+
interface BatchFixRequest {
|
|
115
|
+
/** Issues to fix. */
|
|
116
|
+
issues: FixableIssue[];
|
|
117
|
+
/** Options for fixing. */
|
|
118
|
+
options: FixOptions;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Context for spec generation.
|
|
122
|
+
*/
|
|
123
|
+
interface SpecGenerationContext {
|
|
124
|
+
/** Spec key (e.g., "docs.search"). */
|
|
125
|
+
key: string;
|
|
126
|
+
/** Spec version (e.g., "1.0.0"). */
|
|
127
|
+
version: string;
|
|
128
|
+
/** Spec type. */
|
|
129
|
+
specType: AnalyzedSpecType;
|
|
130
|
+
/** Stability level. */
|
|
131
|
+
stability: Stability;
|
|
132
|
+
/** Description (may be inferred from key). */
|
|
133
|
+
description?: string;
|
|
134
|
+
/** Feature key that references this spec. */
|
|
135
|
+
featureKey?: string;
|
|
136
|
+
/** Additional enrichment from AI or user. */
|
|
137
|
+
enrichment?: {
|
|
138
|
+
goal?: string;
|
|
139
|
+
context?: string;
|
|
140
|
+
owners?: string[];
|
|
141
|
+
tags?: string[];
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Types of fix links for external surfaces.
|
|
146
|
+
*/
|
|
147
|
+
type FixLinkType = 'cli' | 'vscode' | 'github-issue';
|
|
148
|
+
/**
|
|
149
|
+
* A fix link for external surfaces (PR comments, etc.).
|
|
150
|
+
*/
|
|
151
|
+
interface FixLink {
|
|
152
|
+
/** Type of link. */
|
|
153
|
+
type: FixLinkType;
|
|
154
|
+
/** Display label. */
|
|
155
|
+
label: string;
|
|
156
|
+
/** Link value (command or URL). */
|
|
157
|
+
value: string;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Options for generating fix links.
|
|
161
|
+
*/
|
|
162
|
+
interface FixLinkOptions {
|
|
163
|
+
/** GitHub repository (owner/repo). */
|
|
164
|
+
repository?: string;
|
|
165
|
+
/** Base branch for issues. */
|
|
166
|
+
baseBranch?: string;
|
|
167
|
+
/** Include CLI commands. */
|
|
168
|
+
includeCli?: boolean;
|
|
169
|
+
/** Include VSCode deep links. */
|
|
170
|
+
includeVscode?: boolean;
|
|
171
|
+
/** Include GitHub issue links. */
|
|
172
|
+
includeGithubIssue?: boolean;
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Extended CI issue with fix links.
|
|
176
|
+
*/
|
|
177
|
+
interface CIIssueWithFixLinks {
|
|
178
|
+
/** Original issue properties. */
|
|
179
|
+
ruleId: string;
|
|
180
|
+
severity: 'error' | 'warning' | 'note';
|
|
181
|
+
message: string;
|
|
182
|
+
category: string;
|
|
183
|
+
file?: string;
|
|
184
|
+
line?: number;
|
|
185
|
+
column?: number;
|
|
186
|
+
endLine?: number;
|
|
187
|
+
endColumn?: number;
|
|
188
|
+
context?: Record<string, unknown>;
|
|
189
|
+
/** Fix links for this issue. */
|
|
190
|
+
fixLinks?: FixLink[];
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Interface for a fix strategy implementation.
|
|
194
|
+
*/
|
|
195
|
+
interface FixStrategy {
|
|
196
|
+
/**
|
|
197
|
+
* type of the strategy
|
|
198
|
+
*/
|
|
199
|
+
readonly type: FixStrategyType;
|
|
200
|
+
/**
|
|
201
|
+
* Apply the fix.
|
|
202
|
+
*/
|
|
203
|
+
fix(issue: FixableIssue, options: FixOptions): Promise<FixResult>;
|
|
204
|
+
}
|
|
205
|
+
//#endregion
|
|
206
|
+
export { BatchFixRequest, BatchFixResult, CIIssueWithFixLinks, FIX_STRATEGY_LABELS, FIX_STRATEGY_STABILITY, FixAIConfig, FixFileChange, FixLink, FixLinkOptions, FixLinkType, FixOptions, FixResult, FixStrategy, FixStrategyType, FixableIssue, SpecGenerationContext };
|
|
207
|
+
//# sourceMappingURL=types.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.mts","names":[],"sources":["../../../src/services/fix/types.ts"],"sourcesContent":[],"mappings":";;;;;;;;;AA8BqC,KAjBzB,eAAA,GAiByB,kBAAA,GAAA,oBAAA,GAAA,cAAA;;AAWrC;;AAIO,cAxBM,mBAwBN,EAxB2B,MAwB3B,CAxBkC,eAwBlC,EAAA,MAAA,CAAA;;;;AAgBU,cA/BJ,sBA+BiB,EA/BO,MA+BP,CA9B5B,OA8B4B,CA9BpB,eA8BoB,EAAA,kBAAA,CAAA,EA7B5B,SA6B4B,CAAA;AAY9B;;;AAQgB,UAxCC,YAAA,CAwCD;EAAa;EAUZ,KAAA,EAhDR,cAgDsB;EAcd;EAcA,GAAA,EA1EV,OA0EU;EAoBA;EAUA,QAAA,EAtGL,gBAsG0B;EAyB1B;EAKK,WAAO,EAAA,MAAA;EAYP;EAgBA,UAAA,EAAA,MAAA;EAmBA;EAIA,mBAAA,EAjLM,eAiLN,EAAA;EAKJ;EAAuB,UAAA,EAAA,OAAA,EAAA;;;;;UA9KnB,aAAA;;;;;;;;;;;UAYA,SAAA;;;;YAIL;;SAEH;;gBAEO;;;;;;;;;UAUC,cAAA;;;;;;;;WAQN;;;;;UAMM,WAAA;;;;;;;;;;;;;UAcA,UAAA;;;;YAIL;;;;;;aAMC;;;;;;;;;UAUI,eAAA;;UAEP;;WAEC;;;;;UAMM,qBAAA;;;;;;YAML;;aAEC;;;;;;;;;;;;;;;;KAiBD,WAAA;;;;UAKK,OAAA;;QAET;;;;;;;;;UAUS,cAAA;;;;;;;;;;;;;;;UAgBA,mBAAA;;;;;;;;;;;YAWL;;aAEC;;;;;UAMI,WAAA;;;;iBAIA;;;;aAKJ,uBAAuB,aAAa,QAAQ"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
//#region src/services/fix/types.ts
|
|
2
|
+
/**
|
|
3
|
+
* Human-readable labels for fix strategies.
|
|
4
|
+
*/
|
|
5
|
+
const FIX_STRATEGY_LABELS = {
|
|
6
|
+
"remove-reference": "Remove broken reference from feature",
|
|
7
|
+
"implement-skeleton": "Create skeleton spec (in_creation)",
|
|
8
|
+
"implement-ai": "Create spec with AI assistance (experimental)"
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Stability level for each fix strategy when creating specs.
|
|
12
|
+
*/
|
|
13
|
+
const FIX_STRATEGY_STABILITY = {
|
|
14
|
+
"implement-skeleton": "in_creation",
|
|
15
|
+
"implement-ai": "experimental"
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
//#endregion
|
|
19
|
+
export { FIX_STRATEGY_LABELS, FIX_STRATEGY_STABILITY };
|
|
20
|
+
//# sourceMappingURL=types.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.mjs","names":[],"sources":["../../../src/services/fix/types.ts"],"sourcesContent":["/**\n * Fix service types.\n *\n * Types for fixing integrity issues found by CI checks.\n */\n\nimport type { AnalyzedSpecType, RefInfo } from '@contractspec/module.workspace';\nimport type { Stability } from '@contractspec/lib.contracts';\nimport type { IntegrityIssue } from '../integrity';\n\n/**\n * Available fix strategies.\n */\nexport type FixStrategyType =\n | 'remove-reference'\n | 'implement-skeleton'\n | 'implement-ai';\n\n/**\n * Human-readable labels for fix strategies.\n */\nexport const FIX_STRATEGY_LABELS: Record<FixStrategyType, string> = {\n 'remove-reference': 'Remove broken reference from feature',\n 'implement-skeleton': 'Create skeleton spec (in_creation)',\n 'implement-ai': 'Create spec with AI assistance (experimental)',\n};\n\n/**\n * Stability level for each fix strategy when creating specs.\n */\nexport const FIX_STRATEGY_STABILITY: Record<\n Exclude<FixStrategyType, 'remove-reference'>,\n Stability\n> = {\n 'implement-skeleton': 'in_creation',\n 'implement-ai': 'experimental',\n};\n\n/**\n * A fixable issue with context for fix generation.\n */\nexport interface FixableIssue {\n /** Original integrity issue. */\n issue: IntegrityIssue;\n /** Reference info (key, version). */\n ref: RefInfo;\n /** Spec type to create. */\n specType: AnalyzedSpecType;\n /** Feature file containing the broken reference. */\n featureFile: string;\n /** Feature key that has the broken reference. */\n featureKey: string;\n /** Available strategies for this issue. */\n availableStrategies: FixStrategyType[];\n /** Deprecated: kept for compatibility if needed, or remove if unused */\n strategies: unknown[];\n}\n\n/**\n * File change result from applying a fix.\n */\nexport interface FixFileChange {\n /** File path. */\n path: string;\n /** Action taken. */\n action: 'created' | 'modified' | 'deleted';\n /** Previous content (for undo). */\n previousContent?: string;\n}\n\n/**\n * Result of applying a single fix.\n */\nexport interface FixResult {\n /** Whether the fix succeeded. */\n success: boolean;\n /** Strategy used. */\n strategy: FixStrategyType;\n /** Original issue that was fixed. */\n issue: FixableIssue;\n /** Files that were changed. */\n filesChanged: FixFileChange[];\n /** Message describing the outcome. */\n message?: string;\n /** Error message if fix failed. */\n error?: string;\n}\n\n/**\n * Result of applying multiple fixes.\n */\nexport interface BatchFixResult {\n /** Total number of issues processed. */\n total: number;\n /** Number of successful fixes. */\n succeeded: number;\n /** Number of failed fixes. */\n failed: number;\n /** Individual fix results. */\n results: FixResult[];\n}\n\n/**\n * AI configuration for implement-ai strategy.\n */\nexport interface FixAIConfig {\n /** AI provider to use. */\n provider: 'claude' | 'openai' | 'ollama' | 'custom';\n /** Model to use. */\n model?: string;\n /** Custom endpoint. */\n endpoint?: string;\n /** API key (if not using env var). */\n apiKey?: string;\n}\n\n/**\n * Options for the fix service.\n */\nexport interface FixOptions {\n /** Working directory. */\n workspaceRoot: string;\n /** Fix strategy to use. */\n strategy: FixStrategyType;\n /** Dry run mode (preview changes without applying). */\n dryRun?: boolean;\n /** Interactive mode for confirmations. */\n interactive?: boolean;\n /** AI config for implement-ai strategy. */\n aiConfig?: FixAIConfig;\n /** Output directory for new specs (optional, uses config default). */\n outputDir?: string;\n /** Format files after creation. */\n format?: boolean;\n}\n\n/**\n * Request to fix multiple issues.\n */\nexport interface BatchFixRequest {\n /** Issues to fix. */\n issues: FixableIssue[];\n /** Options for fixing. */\n options: FixOptions;\n}\n\n/**\n * Context for spec generation.\n */\nexport interface SpecGenerationContext {\n /** Spec key (e.g., \"docs.search\"). */\n key: string;\n /** Spec version (e.g., \"1.0.0\"). */\n version: string;\n /** Spec type. */\n specType: AnalyzedSpecType;\n /** Stability level. */\n stability: Stability;\n /** Description (may be inferred from key). */\n description?: string;\n /** Feature key that references this spec. */\n featureKey?: string;\n /** Additional enrichment from AI or user. */\n enrichment?: {\n goal?: string;\n context?: string;\n owners?: string[];\n tags?: string[];\n };\n}\n\n/**\n * Types of fix links for external surfaces.\n */\nexport type FixLinkType = 'cli' | 'vscode' | 'github-issue';\n\n/**\n * A fix link for external surfaces (PR comments, etc.).\n */\nexport interface FixLink {\n /** Type of link. */\n type: FixLinkType;\n /** Display label. */\n label: string;\n /** Link value (command or URL). */\n value: string;\n}\n\n/**\n * Options for generating fix links.\n */\nexport interface FixLinkOptions {\n /** GitHub repository (owner/repo). */\n repository?: string;\n /** Base branch for issues. */\n baseBranch?: string;\n /** Include CLI commands. */\n includeCli?: boolean;\n /** Include VSCode deep links. */\n includeVscode?: boolean;\n /** Include GitHub issue links. */\n includeGithubIssue?: boolean;\n}\n\n/**\n * Extended CI issue with fix links.\n */\nexport interface CIIssueWithFixLinks {\n /** Original issue properties. */\n ruleId: string;\n severity: 'error' | 'warning' | 'note';\n message: string;\n category: string;\n file?: string;\n line?: number;\n column?: number;\n endLine?: number;\n endColumn?: number;\n context?: Record<string, unknown>;\n /** Fix links for this issue. */\n fixLinks?: FixLink[];\n}\n\n/**\n * Interface for a fix strategy implementation.\n */\nexport interface FixStrategy {\n /**\n * type of the strategy\n */\n readonly type: FixStrategyType;\n\n /**\n * Apply the fix.\n */\n fix(issue: FixableIssue, options: FixOptions): Promise<FixResult>;\n}\n"],"mappings":";;;;AAqBA,MAAa,sBAAuD;CAClE,oBAAoB;CACpB,sBAAsB;CACtB,gBAAgB;CACjB;;;;AAKD,MAAa,yBAGT;CACF,sBAAsB;CACtB,gBAAgB;CACjB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
//#region src/services/formatter.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Formatter service.
|
|
4
|
+
*/
|
|
5
|
+
interface FormatterOptions {
|
|
6
|
+
type?: string;
|
|
7
|
+
cwd?: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Format files using the configured formatter (defaulting to prettier).
|
|
11
|
+
*/
|
|
12
|
+
declare function formatFiles(files: string[], _configResolver?: unknown, options?: FormatterOptions): Promise<void>;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { FormatterOptions, formatFiles };
|
|
15
|
+
//# sourceMappingURL=formatter.d.mts.map
|