specweave 0.16.7 ā 0.16.11
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/.claude-plugin/marketplace.json +22 -0
- package/CLAUDE.md +45 -26
- package/dist/cli/commands/sync-spec-commits.d.ts +9 -0
- package/dist/cli/commands/sync-spec-commits.d.ts.map +1 -0
- package/dist/cli/commands/sync-spec-commits.js +186 -0
- package/dist/cli/commands/sync-spec-commits.js.map +1 -0
- package/dist/core/agent-model-manager.d.ts +52 -0
- package/dist/core/agent-model-manager.d.ts.map +1 -0
- package/dist/core/agent-model-manager.js +120 -0
- package/dist/core/agent-model-manager.js.map +1 -0
- package/dist/core/comment-builder.d.ts +57 -0
- package/dist/core/comment-builder.d.ts.map +1 -0
- package/dist/core/comment-builder.js +239 -0
- package/dist/core/comment-builder.js.map +1 -0
- package/dist/core/model-selector.d.ts +57 -0
- package/dist/core/model-selector.d.ts.map +1 -0
- package/dist/core/model-selector.js +115 -0
- package/dist/core/model-selector.js.map +1 -0
- package/dist/core/phase-detector.d.ts +62 -0
- package/dist/core/phase-detector.d.ts.map +1 -0
- package/dist/core/phase-detector.js +229 -0
- package/dist/core/phase-detector.js.map +1 -0
- package/dist/core/spec-task-mapper.d.ts +71 -0
- package/dist/core/spec-task-mapper.d.ts.map +1 -0
- package/dist/core/spec-task-mapper.js +208 -0
- package/dist/core/spec-task-mapper.js.map +1 -0
- package/dist/hooks/lib/git-diff-analyzer.d.ts +89 -0
- package/dist/hooks/lib/git-diff-analyzer.d.ts.map +1 -0
- package/dist/hooks/lib/git-diff-analyzer.js +226 -0
- package/dist/hooks/lib/git-diff-analyzer.js.map +1 -0
- package/dist/hooks/lib/invoke-translator-skill.d.ts +60 -0
- package/dist/hooks/lib/invoke-translator-skill.d.ts.map +1 -0
- package/dist/hooks/lib/invoke-translator-skill.js +201 -0
- package/dist/hooks/lib/invoke-translator-skill.js.map +1 -0
- package/dist/hooks/lib/prepare-reflection-context.d.ts +42 -0
- package/dist/hooks/lib/prepare-reflection-context.d.ts.map +1 -0
- package/dist/hooks/lib/prepare-reflection-context.js +123 -0
- package/dist/hooks/lib/prepare-reflection-context.js.map +1 -0
- package/dist/hooks/lib/reflection-config-loader.d.ts +45 -0
- package/dist/hooks/lib/reflection-config-loader.d.ts.map +1 -0
- package/dist/hooks/lib/reflection-config-loader.js +132 -0
- package/dist/hooks/lib/reflection-config-loader.js.map +1 -0
- package/dist/hooks/lib/reflection-parser.d.ts +33 -0
- package/dist/hooks/lib/reflection-parser.d.ts.map +1 -0
- package/dist/hooks/lib/reflection-parser.js +419 -0
- package/dist/hooks/lib/reflection-parser.js.map +1 -0
- package/dist/hooks/lib/reflection-prompt-builder.d.ts +56 -0
- package/dist/hooks/lib/reflection-prompt-builder.d.ts.map +1 -0
- package/dist/hooks/lib/reflection-prompt-builder.js +239 -0
- package/dist/hooks/lib/reflection-prompt-builder.js.map +1 -0
- package/dist/hooks/lib/reflection-storage.d.ts +64 -0
- package/dist/hooks/lib/reflection-storage.d.ts.map +1 -0
- package/dist/hooks/lib/reflection-storage.js +305 -0
- package/dist/hooks/lib/reflection-storage.js.map +1 -0
- package/dist/hooks/lib/run-self-reflection.d.ts +43 -0
- package/dist/hooks/lib/run-self-reflection.d.ts.map +1 -0
- package/dist/hooks/lib/run-self-reflection.js +203 -0
- package/dist/hooks/lib/run-self-reflection.js.map +1 -0
- package/dist/hooks/lib/sync-living-docs.d.ts +27 -0
- package/dist/hooks/lib/sync-living-docs.d.ts.map +1 -0
- package/dist/hooks/lib/sync-living-docs.js +116 -0
- package/dist/hooks/lib/sync-living-docs.js.map +1 -0
- package/dist/hooks/lib/translate-file.d.ts +59 -0
- package/dist/hooks/lib/translate-file.d.ts.map +1 -0
- package/dist/hooks/lib/translate-file.js +350 -0
- package/dist/hooks/lib/translate-file.js.map +1 -0
- package/dist/hooks/lib/translate-living-docs.d.ts +13 -0
- package/dist/hooks/lib/translate-living-docs.d.ts.map +1 -0
- package/dist/hooks/lib/translate-living-docs.js +175 -0
- package/dist/hooks/lib/translate-living-docs.js.map +1 -0
- package/dist/hooks/lib/types/reflection-types.d.ts +164 -0
- package/dist/hooks/lib/types/reflection-types.d.ts.map +1 -0
- package/dist/hooks/lib/types/reflection-types.js +73 -0
- package/dist/hooks/lib/types/reflection-types.js.map +1 -0
- package/dist/hooks/lib/update-tasks-md.d.ts +29 -0
- package/dist/hooks/lib/update-tasks-md.d.ts.map +1 -0
- package/dist/hooks/lib/update-tasks-md.js +203 -0
- package/dist/hooks/lib/update-tasks-md.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +89 -0
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +226 -0
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +60 -0
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +201 -0
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +42 -0
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +123 -0
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +45 -0
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +132 -0
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +33 -0
- package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-parser.js +419 -0
- package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +56 -0
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +239 -0
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +64 -0
- package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/reflection-storage.js +305 -0
- package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +43 -0
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +203 -0
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +27 -0
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +144 -0
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +59 -0
- package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/translate-file.js +350 -0
- package/dist/plugins/specweave/lib/hooks/translate-file.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +13 -0
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +175 -0
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +164 -0
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +73 -0
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +1 -0
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +29 -0
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +1 -0
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +203 -0
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts +94 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.js +219 -0
- package/dist/plugins/specweave-ado/lib/ado-board-resolver.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts +134 -0
- package/dist/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-client-v2.js +478 -0
- package/dist/plugins/specweave-ado/lib/ado-client-v2.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-client.d.ts +112 -0
- package/dist/plugins/specweave-ado/lib/ado-client.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-client.js +272 -0
- package/dist/plugins/specweave-ado/lib/ado-client.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts +40 -0
- package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js +370 -0
- package/dist/plugins/specweave-ado/lib/ado-hierarchical-sync.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-multi-project-sync.d.ts +149 -0
- package/dist/plugins/specweave-ado/lib/ado-multi-project-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-multi-project-sync.js +517 -0
- package/dist/plugins/specweave-ado/lib/ado-multi-project-sync.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-project-detector.d.ts +72 -0
- package/dist/plugins/specweave-ado/lib/ado-project-detector.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-project-detector.js +416 -0
- package/dist/plugins/specweave-ado/lib/ado-project-detector.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-commit-sync.d.ts +38 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-commit-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-commit-sync.js +210 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-commit-sync.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-content-sync.d.ts +28 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-content-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-content-sync.js +241 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-content-sync.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts +100 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-sync.js +471 -0
- package/dist/plugins/specweave-ado/lib/ado-spec-sync.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/conflict-resolver.d.ts +99 -0
- package/dist/plugins/specweave-ado/lib/conflict-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/conflict-resolver.js +331 -0
- package/dist/plugins/specweave-ado/lib/conflict-resolver.js.map +1 -0
- package/dist/plugins/specweave-ado/lib/project-selector.d.ts +42 -0
- package/dist/plugins/specweave-ado/lib/project-selector.d.ts.map +1 -0
- package/dist/plugins/specweave-ado/lib/project-selector.js +211 -0
- package/dist/plugins/specweave-ado/lib/project-selector.js.map +1 -0
- package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts +12 -0
- package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js +28 -0
- package/dist/plugins/specweave-github/lib/cli-sync-increment-changes.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts +54 -0
- package/dist/plugins/specweave-github/lib/github-board-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-board-resolver.js +122 -0
- package/dist/plugins/specweave-github/lib/github-board-resolver.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-client-v2.d.ts +104 -0
- package/dist/plugins/specweave-github/lib/github-client-v2.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-client-v2.js +408 -0
- package/dist/plugins/specweave-github/lib/github-client-v2.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-client.d.ts +96 -0
- package/dist/plugins/specweave-github/lib/github-client.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-client.js +299 -0
- package/dist/plugins/specweave-github/lib/github-client.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts +29 -0
- package/dist/plugins/specweave-github/lib/github-hierarchical-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js +268 -0
- package/dist/plugins/specweave-github/lib/github-hierarchical-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts +61 -0
- package/dist/plugins/specweave-github/lib/github-issue-updater.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-issue-updater.js +327 -0
- package/dist/plugins/specweave-github/lib/github-issue-updater.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-multi-project-sync.d.ts +126 -0
- package/dist/plugins/specweave-github/lib/github-multi-project-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-multi-project-sync.js +420 -0
- package/dist/plugins/specweave-github/lib/github-multi-project-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-commit-sync.d.ts +37 -0
- package/dist/plugins/specweave-github/lib/github-spec-commit-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-commit-sync.js +209 -0
- package/dist/plugins/specweave-github/lib/github-spec-commit-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.d.ts +28 -0
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.js +195 -0
- package/dist/plugins/specweave-github/lib/github-spec-content-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts +108 -0
- package/dist/plugins/specweave-github/lib/github-spec-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-spec-sync.js +505 -0
- package/dist/plugins/specweave-github/lib/github-spec-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts +36 -0
- package/dist/plugins/specweave-github/lib/github-sync-bidirectional.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js +228 -0
- package/dist/plugins/specweave-github/lib/github-sync-bidirectional.js.map +1 -0
- package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts +18 -0
- package/dist/plugins/specweave-github/lib/github-sync-increment-changes.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js +287 -0
- package/dist/plugins/specweave-github/lib/github-sync-increment-changes.js.map +1 -0
- package/dist/plugins/specweave-github/lib/index.d.ts +10 -0
- package/dist/plugins/specweave-github/lib/index.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/index.js +10 -0
- package/dist/plugins/specweave-github/lib/index.js.map +1 -0
- package/dist/plugins/specweave-github/lib/repo-selector.d.ts +49 -0
- package/dist/plugins/specweave-github/lib/repo-selector.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/repo-selector.js +216 -0
- package/dist/plugins/specweave-github/lib/repo-selector.js.map +1 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.d.ts +51 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.js +147 -0
- package/dist/plugins/specweave-github/lib/subtask-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/task-parser.d.ts +37 -0
- package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/task-parser.js +211 -0
- package/dist/plugins/specweave-github/lib/task-parser.js.map +1 -0
- package/dist/plugins/specweave-github/lib/task-sync.d.ts +51 -0
- package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/task-sync.js +332 -0
- package/dist/plugins/specweave-github/lib/task-sync.js.map +1 -0
- package/dist/plugins/specweave-github/lib/types.d.ts +80 -0
- package/dist/plugins/specweave-github/lib/types.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/types.js +5 -0
- package/dist/plugins/specweave-github/lib/types.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts +50 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.js +84 -0
- package/dist/plugins/specweave-jira/lib/jira-board-resolver.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts +33 -0
- package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js +206 -0
- package/dist/plugins/specweave-jira/lib/jira-hierarchical-sync.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-multi-project-sync.d.ts +95 -0
- package/dist/plugins/specweave-jira/lib/jira-multi-project-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-multi-project-sync.js +301 -0
- package/dist/plugins/specweave-jira/lib/jira-multi-project-sync.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-commit-sync.d.ts +43 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-commit-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-commit-sync.js +282 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-commit-sync.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-content-sync.d.ts +33 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-content-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-content-sync.js +294 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-content-sync.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts +105 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-sync.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-sync.js +456 -0
- package/dist/plugins/specweave-jira/lib/jira-spec-sync.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/project-selector.d.ts +42 -0
- package/dist/plugins/specweave-jira/lib/project-selector.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/project-selector.js +216 -0
- package/dist/plugins/specweave-jira/lib/project-selector.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts +67 -0
- package/dist/plugins/specweave-jira/lib/reorganization-detector.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/reorganization-detector.js +252 -0
- package/dist/plugins/specweave-jira/lib/reorganization-detector.js.map +1 -0
- package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts +29 -0
- package/dist/plugins/specweave-jira/lib/setup-wizard.d.ts.map +1 -0
- package/dist/plugins/specweave-jira/lib/setup-wizard.js +219 -0
- package/dist/plugins/specweave-jira/lib/setup-wizard.js.map +1 -0
- package/dist/plugins/specweave-release/lib/dashboard-generator.d.ts +23 -0
- package/dist/plugins/specweave-release/lib/dashboard-generator.d.ts.map +1 -0
- package/dist/plugins/specweave-release/lib/dashboard-generator.js +258 -0
- package/dist/plugins/specweave-release/lib/dashboard-generator.js.map +1 -0
- package/dist/plugins/specweave-release/lib/dora-tracker.d.ts +82 -0
- package/dist/plugins/specweave-release/lib/dora-tracker.d.ts.map +1 -0
- package/dist/plugins/specweave-release/lib/dora-tracker.js +279 -0
- package/dist/plugins/specweave-release/lib/dora-tracker.js.map +1 -0
- package/dist/project-mapper.js +272 -0
- package/dist/scripts/split-spec-by-project.js +105 -0
- package/dist/spec-splitter.js +283 -0
- package/dist/src/adapters/adapter-base.d.ts +71 -0
- package/dist/src/adapters/adapter-base.d.ts.map +1 -0
- package/dist/src/adapters/adapter-base.js +139 -0
- package/dist/src/adapters/adapter-base.js.map +1 -0
- package/dist/src/adapters/adapter-interface.d.ts +149 -0
- package/dist/src/adapters/adapter-interface.d.ts.map +1 -0
- package/dist/src/adapters/adapter-interface.js +8 -0
- package/dist/src/adapters/adapter-interface.js.map +1 -0
- package/dist/src/adapters/adapter-loader.d.ts +91 -0
- package/dist/src/adapters/adapter-loader.d.ts.map +1 -0
- package/dist/src/adapters/adapter-loader.js +238 -0
- package/dist/src/adapters/adapter-loader.js.map +1 -0
- package/dist/src/adapters/agents-md-generator.d.ts +48 -0
- package/dist/src/adapters/agents-md-generator.d.ts.map +1 -0
- package/dist/src/adapters/agents-md-generator.js +193 -0
- package/dist/src/adapters/agents-md-generator.js.map +1 -0
- package/dist/src/adapters/claude/adapter.d.ts +128 -0
- package/dist/src/adapters/claude/adapter.d.ts.map +1 -0
- package/dist/src/adapters/claude/adapter.js +415 -0
- package/dist/src/adapters/claude/adapter.js.map +1 -0
- package/dist/src/adapters/claude-md-generator.d.ts +78 -0
- package/dist/src/adapters/claude-md-generator.d.ts.map +1 -0
- package/dist/src/adapters/claude-md-generator.js +307 -0
- package/dist/src/adapters/claude-md-generator.js.map +1 -0
- package/dist/src/adapters/codex/adapter.d.ts +50 -0
- package/dist/src/adapters/codex/adapter.d.ts.map +1 -0
- package/dist/src/adapters/codex/adapter.js +316 -0
- package/dist/src/adapters/codex/adapter.js.map +1 -0
- package/dist/src/adapters/cursor/adapter.d.ts +98 -0
- package/dist/src/adapters/cursor/adapter.d.ts.map +1 -0
- package/dist/src/adapters/cursor/adapter.js +406 -0
- package/dist/src/adapters/cursor/adapter.js.map +1 -0
- package/dist/src/adapters/doc-generator.d.ts +69 -0
- package/dist/src/adapters/doc-generator.d.ts.map +1 -0
- package/dist/src/adapters/doc-generator.js +247 -0
- package/dist/src/adapters/doc-generator.js.map +1 -0
- package/dist/src/adapters/gemini/adapter.d.ts +50 -0
- package/dist/src/adapters/gemini/adapter.d.ts.map +1 -0
- package/dist/src/adapters/gemini/adapter.js +281 -0
- package/dist/src/adapters/gemini/adapter.js.map +1 -0
- package/dist/src/adapters/generic/adapter.d.ts +86 -0
- package/dist/src/adapters/generic/adapter.d.ts.map +1 -0
- package/dist/src/adapters/generic/adapter.js +338 -0
- package/dist/src/adapters/generic/adapter.js.map +1 -0
- package/dist/src/cli/commands/abandon.d.ts +13 -0
- package/dist/src/cli/commands/abandon.d.ts.map +1 -0
- package/dist/src/cli/commands/abandon.js +15 -0
- package/dist/src/cli/commands/abandon.js.map +1 -0
- package/dist/src/cli/commands/check-discipline.d.ts +16 -0
- package/dist/src/cli/commands/check-discipline.d.ts.map +1 -0
- package/dist/src/cli/commands/check-discipline.js +79 -0
- package/dist/src/cli/commands/check-discipline.js.map +1 -0
- package/dist/src/cli/commands/import-docs.d.ts +21 -0
- package/dist/src/cli/commands/import-docs.d.ts.map +1 -0
- package/dist/src/cli/commands/import-docs.js +146 -0
- package/dist/src/cli/commands/import-docs.js.map +1 -0
- package/dist/src/cli/commands/init-multiproject.d.ts +11 -0
- package/dist/src/cli/commands/init-multiproject.d.ts.map +1 -0
- package/dist/src/cli/commands/init-multiproject.js +202 -0
- package/dist/src/cli/commands/init-multiproject.js.map +1 -0
- package/dist/src/cli/commands/init.d.ts +10 -0
- package/dist/src/cli/commands/init.d.ts.map +1 -0
- package/dist/src/cli/commands/init.js +1328 -0
- package/dist/src/cli/commands/init.js.map +1 -0
- package/dist/src/cli/commands/install.d.ts +9 -0
- package/dist/src/cli/commands/install.d.ts.map +1 -0
- package/dist/src/cli/commands/install.js +127 -0
- package/dist/src/cli/commands/install.js.map +1 -0
- package/dist/src/cli/commands/list.d.ts +8 -0
- package/dist/src/cli/commands/list.d.ts.map +1 -0
- package/dist/src/cli/commands/list.js +119 -0
- package/dist/src/cli/commands/list.js.map +1 -0
- package/dist/src/cli/commands/migrate-to-multiproject.d.ts +37 -0
- package/dist/src/cli/commands/migrate-to-multiproject.d.ts.map +1 -0
- package/dist/src/cli/commands/migrate-to-multiproject.js +189 -0
- package/dist/src/cli/commands/migrate-to-multiproject.js.map +1 -0
- package/dist/src/cli/commands/migrate-to-profiles.d.ts +25 -0
- package/dist/src/cli/commands/migrate-to-profiles.d.ts.map +1 -0
- package/dist/src/cli/commands/migrate-to-profiles.js +348 -0
- package/dist/src/cli/commands/migrate-to-profiles.js.map +1 -0
- package/dist/src/cli/commands/pause.d.ts +13 -0
- package/dist/src/cli/commands/pause.d.ts.map +1 -0
- package/dist/src/cli/commands/pause.js +15 -0
- package/dist/src/cli/commands/pause.js.map +1 -0
- package/dist/src/cli/commands/qa.d.ts +54 -0
- package/dist/src/cli/commands/qa.d.ts.map +1 -0
- package/dist/src/cli/commands/qa.js +98 -0
- package/dist/src/cli/commands/qa.js.map +1 -0
- package/dist/src/cli/commands/resume.d.ts +12 -0
- package/dist/src/cli/commands/resume.d.ts.map +1 -0
- package/dist/src/cli/commands/resume.js +14 -0
- package/dist/src/cli/commands/resume.js.map +1 -0
- package/dist/src/cli/commands/status-line.d.ts +14 -0
- package/dist/src/cli/commands/status-line.d.ts.map +1 -0
- package/dist/src/cli/commands/status-line.js +75 -0
- package/dist/src/cli/commands/status-line.js.map +1 -0
- package/dist/src/cli/commands/status.d.ts +12 -0
- package/dist/src/cli/commands/status.d.ts.map +1 -0
- package/dist/src/cli/commands/status.js +23 -0
- package/dist/src/cli/commands/status.js.map +1 -0
- package/dist/src/cli/commands/switch-project.d.ts +13 -0
- package/dist/src/cli/commands/switch-project.d.ts.map +1 -0
- package/dist/src/cli/commands/switch-project.js +91 -0
- package/dist/src/cli/commands/switch-project.js.map +1 -0
- package/dist/src/cli/commands/sync-spec-commits.d.ts +9 -0
- package/dist/src/cli/commands/sync-spec-commits.d.ts.map +1 -0
- package/dist/src/cli/commands/sync-spec-commits.js +186 -0
- package/dist/src/cli/commands/sync-spec-commits.js.map +1 -0
- package/dist/src/cli/commands/sync-spec-content.d.ts +13 -0
- package/dist/src/cli/commands/sync-spec-content.d.ts.map +1 -0
- package/dist/src/cli/commands/sync-spec-content.js +223 -0
- package/dist/src/cli/commands/sync-spec-content.js.map +1 -0
- package/dist/src/cli/commands/validate-jira.d.ts +35 -0
- package/dist/src/cli/commands/validate-jira.d.ts.map +1 -0
- package/dist/src/cli/commands/validate-jira.js +112 -0
- package/dist/src/cli/commands/validate-jira.js.map +1 -0
- package/dist/src/cli/commands/validate-plugins.d.ts +41 -0
- package/dist/src/cli/commands/validate-plugins.d.ts.map +1 -0
- package/dist/src/cli/commands/validate-plugins.js +171 -0
- package/dist/src/cli/commands/validate-plugins.js.map +1 -0
- package/dist/src/cli/helpers/github/increment-profile-selector.d.ts +47 -0
- package/dist/src/cli/helpers/github/increment-profile-selector.d.ts.map +1 -0
- package/dist/src/cli/helpers/github/increment-profile-selector.js +186 -0
- package/dist/src/cli/helpers/github/increment-profile-selector.js.map +1 -0
- package/dist/src/cli/helpers/github/profile-manager.d.ts +119 -0
- package/dist/src/cli/helpers/github/profile-manager.d.ts.map +1 -0
- package/dist/src/cli/helpers/github/profile-manager.js +311 -0
- package/dist/src/cli/helpers/github/profile-manager.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/ado.d.ts +57 -0
- package/dist/src/cli/helpers/issue-tracker/ado.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/ado.js +243 -0
- package/dist/src/cli/helpers/issue-tracker/ado.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/github-multi-repo.d.ts +86 -0
- package/dist/src/cli/helpers/issue-tracker/github-multi-repo.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/github-multi-repo.js +417 -0
- package/dist/src/cli/helpers/issue-tracker/github-multi-repo.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/github.d.ts +80 -0
- package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/github.js +324 -0
- package/dist/src/cli/helpers/issue-tracker/github.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/index.d.ts +22 -0
- package/dist/src/cli/helpers/issue-tracker/index.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/index.js +575 -0
- package/dist/src/cli/helpers/issue-tracker/index.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/jira.d.ts +61 -0
- package/dist/src/cli/helpers/issue-tracker/jira.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/jira.js +404 -0
- package/dist/src/cli/helpers/issue-tracker/jira.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/types.d.ts +108 -0
- package/dist/src/cli/helpers/issue-tracker/types.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/types.js +16 -0
- package/dist/src/cli/helpers/issue-tracker/types.js.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/utils.d.ts +120 -0
- package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/utils.js +293 -0
- package/dist/src/cli/helpers/issue-tracker/utils.js.map +1 -0
- package/dist/src/core/agent-model-manager.d.ts +52 -0
- package/dist/src/core/agent-model-manager.d.ts.map +1 -0
- package/dist/src/core/agent-model-manager.js +120 -0
- package/dist/src/core/agent-model-manager.js.map +1 -0
- package/dist/src/core/brownfield/analyzer.d.ts +86 -0
- package/dist/src/core/brownfield/analyzer.d.ts.map +1 -0
- package/dist/src/core/brownfield/analyzer.js +365 -0
- package/dist/src/core/brownfield/analyzer.js.map +1 -0
- package/dist/src/core/brownfield/importer.d.ts +76 -0
- package/dist/src/core/brownfield/importer.d.ts.map +1 -0
- package/dist/src/core/brownfield/importer.js +287 -0
- package/dist/src/core/brownfield/importer.js.map +1 -0
- package/dist/src/core/comment-builder.d.ts +57 -0
- package/dist/src/core/comment-builder.d.ts.map +1 -0
- package/dist/src/core/comment-builder.js +239 -0
- package/dist/src/core/comment-builder.js.map +1 -0
- package/dist/src/core/config-manager.d.ts +47 -0
- package/dist/src/core/config-manager.d.ts.map +1 -0
- package/dist/src/core/config-manager.js +136 -0
- package/dist/src/core/config-manager.js.map +1 -0
- package/dist/src/core/cost-tracker.d.ts +108 -0
- package/dist/src/core/cost-tracker.d.ts.map +1 -0
- package/dist/src/core/cost-tracker.js +281 -0
- package/dist/src/core/cost-tracker.js.map +1 -0
- package/dist/src/core/credentials-manager.d.ts +107 -0
- package/dist/src/core/credentials-manager.d.ts.map +1 -0
- package/dist/src/core/credentials-manager.js +457 -0
- package/dist/src/core/credentials-manager.js.map +1 -0
- package/dist/src/core/i18n/language-detector.d.ts +29 -0
- package/dist/src/core/i18n/language-detector.d.ts.map +1 -0
- package/dist/src/core/i18n/language-detector.js +143 -0
- package/dist/src/core/i18n/language-detector.js.map +1 -0
- package/dist/src/core/i18n/language-manager.d.ts +101 -0
- package/dist/src/core/i18n/language-manager.d.ts.map +1 -0
- package/dist/src/core/i18n/language-manager.js +232 -0
- package/dist/src/core/i18n/language-manager.js.map +1 -0
- package/dist/src/core/i18n/language-registry.d.ts +44 -0
- package/dist/src/core/i18n/language-registry.d.ts.map +1 -0
- package/dist/src/core/i18n/language-registry.js +234 -0
- package/dist/src/core/i18n/language-registry.js.map +1 -0
- package/dist/src/core/i18n/locale-manager.d.ts +62 -0
- package/dist/src/core/i18n/locale-manager.d.ts.map +1 -0
- package/dist/src/core/i18n/locale-manager.js +137 -0
- package/dist/src/core/i18n/locale-manager.js.map +1 -0
- package/dist/src/core/i18n/system-prompt-injector.d.ts +33 -0
- package/dist/src/core/i18n/system-prompt-injector.d.ts.map +1 -0
- package/dist/src/core/i18n/system-prompt-injector.js +131 -0
- package/dist/src/core/i18n/system-prompt-injector.js.map +1 -0
- package/dist/src/core/i18n/types.d.ts +151 -0
- package/dist/src/core/i18n/types.d.ts.map +1 -0
- package/dist/src/core/i18n/types.js +11 -0
- package/dist/src/core/i18n/types.js.map +1 -0
- package/dist/src/core/increment/active-increment-manager.d.ts +79 -0
- package/dist/src/core/increment/active-increment-manager.d.ts.map +1 -0
- package/dist/src/core/increment/active-increment-manager.js +153 -0
- package/dist/src/core/increment/active-increment-manager.js.map +1 -0
- package/dist/src/core/increment/discipline-checker.d.ts +60 -0
- package/dist/src/core/increment/discipline-checker.d.ts.map +1 -0
- package/dist/src/core/increment/discipline-checker.js +274 -0
- package/dist/src/core/increment/discipline-checker.js.map +1 -0
- package/dist/src/core/increment/limits.d.ts +68 -0
- package/dist/src/core/increment/limits.d.ts.map +1 -0
- package/dist/src/core/increment/limits.js +224 -0
- package/dist/src/core/increment/limits.js.map +1 -0
- package/dist/src/core/increment/metadata-manager.d.ts +116 -0
- package/dist/src/core/increment/metadata-manager.d.ts.map +1 -0
- package/dist/src/core/increment/metadata-manager.js +335 -0
- package/dist/src/core/increment/metadata-manager.js.map +1 -0
- package/dist/src/core/increment/metadata-validator.d.ts +33 -0
- package/dist/src/core/increment/metadata-validator.d.ts.map +1 -0
- package/dist/src/core/increment/metadata-validator.js +147 -0
- package/dist/src/core/increment/metadata-validator.js.map +1 -0
- package/dist/src/core/increment/status-commands.d.ts +43 -0
- package/dist/src/core/increment/status-commands.d.ts.map +1 -0
- package/dist/src/core/increment/status-commands.js +277 -0
- package/dist/src/core/increment/status-commands.js.map +1 -0
- package/dist/src/core/increment/types.d.ts +88 -0
- package/dist/src/core/increment/types.d.ts.map +1 -0
- package/dist/src/core/increment/types.js +8 -0
- package/dist/src/core/increment/types.js.map +1 -0
- package/dist/src/core/increment-status.d.ts +72 -0
- package/dist/src/core/increment-status.d.ts.map +1 -0
- package/dist/src/core/increment-status.js +227 -0
- package/dist/src/core/increment-status.js.map +1 -0
- package/dist/src/core/model-selector.d.ts +57 -0
- package/dist/src/core/model-selector.d.ts.map +1 -0
- package/dist/src/core/model-selector.js +115 -0
- package/dist/src/core/model-selector.js.map +1 -0
- package/dist/src/core/phase-detector.d.ts +62 -0
- package/dist/src/core/phase-detector.d.ts.map +1 -0
- package/dist/src/core/phase-detector.js +229 -0
- package/dist/src/core/phase-detector.js.map +1 -0
- package/dist/src/core/plugin-loader.d.ts +131 -0
- package/dist/src/core/plugin-loader.d.ts.map +1 -0
- package/dist/src/core/plugin-loader.js +421 -0
- package/dist/src/core/plugin-loader.js.map +1 -0
- package/dist/src/core/project-manager.d.ts +122 -0
- package/dist/src/core/project-manager.d.ts.map +1 -0
- package/dist/src/core/project-manager.js +539 -0
- package/dist/src/core/project-manager.js.map +1 -0
- package/dist/src/core/project-structure-detector.d.ts +92 -0
- package/dist/src/core/project-structure-detector.d.ts.map +1 -0
- package/dist/src/core/project-structure-detector.js +289 -0
- package/dist/src/core/project-structure-detector.js.map +1 -0
- package/dist/src/core/qa/qa-runner.d.ts +16 -0
- package/dist/src/core/qa/qa-runner.d.ts.map +1 -0
- package/dist/src/core/qa/qa-runner.js +422 -0
- package/dist/src/core/qa/qa-runner.js.map +1 -0
- package/dist/src/core/qa/quality-gate-decider.d.ts +53 -0
- package/dist/src/core/qa/quality-gate-decider.d.ts.map +1 -0
- package/dist/src/core/qa/quality-gate-decider.js +268 -0
- package/dist/src/core/qa/quality-gate-decider.js.map +1 -0
- package/dist/src/core/qa/risk-calculator.d.ts +126 -0
- package/dist/src/core/qa/risk-calculator.d.ts.map +1 -0
- package/dist/src/core/qa/risk-calculator.js +247 -0
- package/dist/src/core/qa/risk-calculator.js.map +1 -0
- package/dist/src/core/qa/types.d.ts +315 -0
- package/dist/src/core/qa/types.d.ts.map +1 -0
- package/dist/src/core/qa/types.js +8 -0
- package/dist/src/core/qa/types.js.map +1 -0
- package/dist/src/core/repo-structure/github-validator.d.ts +75 -0
- package/dist/src/core/repo-structure/github-validator.d.ts.map +1 -0
- package/dist/src/core/repo-structure/github-validator.js +166 -0
- package/dist/src/core/repo-structure/github-validator.js.map +1 -0
- package/dist/src/core/repo-structure/prompt-consolidator.d.ts +70 -0
- package/dist/src/core/repo-structure/prompt-consolidator.d.ts.map +1 -0
- package/dist/src/core/repo-structure/prompt-consolidator.js +180 -0
- package/dist/src/core/repo-structure/prompt-consolidator.js.map +1 -0
- package/dist/src/core/repo-structure/repo-id-generator.d.ts +79 -0
- package/dist/src/core/repo-structure/repo-id-generator.d.ts.map +1 -0
- package/dist/src/core/repo-structure/repo-id-generator.js +135 -0
- package/dist/src/core/repo-structure/repo-id-generator.js.map +1 -0
- package/dist/src/core/repo-structure/repo-structure-manager.d.ts +105 -0
- package/dist/src/core/repo-structure/repo-structure-manager.d.ts.map +1 -0
- package/dist/src/core/repo-structure/repo-structure-manager.js +878 -0
- package/dist/src/core/repo-structure/repo-structure-manager.js.map +1 -0
- package/dist/src/core/repo-structure/setup-state-manager.d.ts +125 -0
- package/dist/src/core/repo-structure/setup-state-manager.d.ts.map +1 -0
- package/dist/src/core/repo-structure/setup-state-manager.js +233 -0
- package/dist/src/core/repo-structure/setup-state-manager.js.map +1 -0
- package/dist/src/core/repo-structure/setup-summary.d.ts +36 -0
- package/dist/src/core/repo-structure/setup-summary.d.ts.map +1 -0
- package/dist/src/core/repo-structure/setup-summary.js +190 -0
- package/dist/src/core/repo-structure/setup-summary.js.map +1 -0
- package/dist/src/core/rfc-generator-v2.d.ts +149 -0
- package/dist/src/core/rfc-generator-v2.d.ts.map +1 -0
- package/dist/src/core/rfc-generator-v2.js +399 -0
- package/dist/src/core/rfc-generator-v2.js.map +1 -0
- package/dist/src/core/spec-content-sync.d.ts +78 -0
- package/dist/src/core/spec-content-sync.d.ts.map +1 -0
- package/dist/src/core/spec-content-sync.js +222 -0
- package/dist/src/core/spec-content-sync.js.map +1 -0
- package/dist/src/core/spec-task-mapper.d.ts +71 -0
- package/dist/src/core/spec-task-mapper.d.ts.map +1 -0
- package/dist/src/core/spec-task-mapper.js +208 -0
- package/dist/src/core/spec-task-mapper.js.map +1 -0
- package/dist/src/core/specs/spec-metadata-manager.d.ts +72 -0
- package/dist/src/core/specs/spec-metadata-manager.d.ts.map +1 -0
- package/dist/src/core/specs/spec-metadata-manager.js +364 -0
- package/dist/src/core/specs/spec-metadata-manager.js.map +1 -0
- package/dist/src/core/specs/spec-parser.d.ts +66 -0
- package/dist/src/core/specs/spec-parser.d.ts.map +1 -0
- package/dist/src/core/specs/spec-parser.js +276 -0
- package/dist/src/core/specs/spec-parser.js.map +1 -0
- package/dist/src/core/status-line/status-line-manager.d.ts +62 -0
- package/dist/src/core/status-line/status-line-manager.d.ts.map +1 -0
- package/dist/src/core/status-line/status-line-manager.js +169 -0
- package/dist/src/core/status-line/status-line-manager.js.map +1 -0
- package/dist/src/core/status-line/types.d.ts +50 -0
- package/dist/src/core/status-line/types.d.ts.map +1 -0
- package/dist/src/core/status-line/types.js +17 -0
- package/dist/src/core/status-line/types.js.map +1 -0
- package/dist/src/core/sync/bidirectional-engine.d.ts +110 -0
- package/dist/src/core/sync/bidirectional-engine.d.ts.map +1 -0
- package/dist/src/core/sync/bidirectional-engine.js +356 -0
- package/dist/src/core/sync/bidirectional-engine.js.map +1 -0
- package/dist/src/core/sync/folder-mapper.d.ts +71 -0
- package/dist/src/core/sync/folder-mapper.d.ts.map +1 -0
- package/dist/src/core/sync/folder-mapper.js +203 -0
- package/dist/src/core/sync/folder-mapper.js.map +1 -0
- package/dist/src/core/sync/profile-manager.d.ts +72 -0
- package/dist/src/core/sync/profile-manager.d.ts.map +1 -0
- package/dist/src/core/sync/profile-manager.js +338 -0
- package/dist/src/core/sync/profile-manager.js.map +1 -0
- package/dist/src/core/sync/profile-selector.d.ts +52 -0
- package/dist/src/core/sync/profile-selector.d.ts.map +1 -0
- package/dist/src/core/sync/profile-selector.js +179 -0
- package/dist/src/core/sync/profile-selector.js.map +1 -0
- package/dist/src/core/sync/profile-validator.d.ts +52 -0
- package/dist/src/core/sync/profile-validator.d.ts.map +1 -0
- package/dist/src/core/sync/profile-validator.js +170 -0
- package/dist/src/core/sync/profile-validator.js.map +1 -0
- package/dist/src/core/sync/project-context.d.ts +81 -0
- package/dist/src/core/sync/project-context.d.ts.map +1 -0
- package/dist/src/core/sync/project-context.js +354 -0
- package/dist/src/core/sync/project-context.js.map +1 -0
- package/dist/src/core/sync/rate-limiter.d.ts +116 -0
- package/dist/src/core/sync/rate-limiter.d.ts.map +1 -0
- package/dist/src/core/sync/rate-limiter.js +308 -0
- package/dist/src/core/sync/rate-limiter.js.map +1 -0
- package/dist/src/core/sync/time-range-selector.d.ts +48 -0
- package/dist/src/core/sync/time-range-selector.d.ts.map +1 -0
- package/dist/src/core/sync/time-range-selector.js +224 -0
- package/dist/src/core/sync/time-range-selector.js.map +1 -0
- package/dist/src/core/types/config.d.ts +90 -0
- package/dist/src/core/types/config.d.ts.map +1 -0
- package/dist/src/core/types/config.js +44 -0
- package/dist/src/core/types/config.js.map +1 -0
- package/dist/src/core/types/increment-metadata.d.ts +120 -0
- package/dist/src/core/types/increment-metadata.d.ts.map +1 -0
- package/dist/src/core/types/increment-metadata.js +138 -0
- package/dist/src/core/types/increment-metadata.js.map +1 -0
- package/dist/src/core/types/plugin.d.ts +283 -0
- package/dist/src/core/types/plugin.d.ts.map +1 -0
- package/dist/src/core/types/plugin.js +49 -0
- package/dist/src/core/types/plugin.js.map +1 -0
- package/dist/src/core/types/spec-metadata.d.ts +229 -0
- package/dist/src/core/types/spec-metadata.d.ts.map +1 -0
- package/dist/src/core/types/spec-metadata.js +14 -0
- package/dist/src/core/types/spec-metadata.js.map +1 -0
- package/dist/src/core/types/sync-profile.d.ts +349 -0
- package/dist/src/core/types/sync-profile.d.ts.map +1 -0
- package/dist/src/core/types/sync-profile.js +79 -0
- package/dist/src/core/types/sync-profile.js.map +1 -0
- package/dist/src/hooks/lib/git-diff-analyzer.d.ts +89 -0
- package/dist/src/hooks/lib/git-diff-analyzer.d.ts.map +1 -0
- package/dist/src/hooks/lib/git-diff-analyzer.js +226 -0
- package/dist/src/hooks/lib/git-diff-analyzer.js.map +1 -0
- package/dist/src/hooks/lib/invoke-translator-skill.d.ts +60 -0
- package/dist/src/hooks/lib/invoke-translator-skill.d.ts.map +1 -0
- package/dist/src/hooks/lib/invoke-translator-skill.js +201 -0
- package/dist/src/hooks/lib/invoke-translator-skill.js.map +1 -0
- package/dist/src/hooks/lib/prepare-reflection-context.d.ts +42 -0
- package/dist/src/hooks/lib/prepare-reflection-context.d.ts.map +1 -0
- package/dist/src/hooks/lib/prepare-reflection-context.js +123 -0
- package/dist/src/hooks/lib/prepare-reflection-context.js.map +1 -0
- package/dist/src/hooks/lib/reflection-config-loader.d.ts +45 -0
- package/dist/src/hooks/lib/reflection-config-loader.d.ts.map +1 -0
- package/dist/src/hooks/lib/reflection-config-loader.js +132 -0
- package/dist/src/hooks/lib/reflection-config-loader.js.map +1 -0
- package/dist/src/hooks/lib/reflection-parser.d.ts +33 -0
- package/dist/src/hooks/lib/reflection-parser.d.ts.map +1 -0
- package/dist/src/hooks/lib/reflection-parser.js +419 -0
- package/dist/src/hooks/lib/reflection-parser.js.map +1 -0
- package/dist/src/hooks/lib/reflection-prompt-builder.d.ts +56 -0
- package/dist/src/hooks/lib/reflection-prompt-builder.d.ts.map +1 -0
- package/dist/src/hooks/lib/reflection-prompt-builder.js +239 -0
- package/dist/src/hooks/lib/reflection-prompt-builder.js.map +1 -0
- package/dist/src/hooks/lib/reflection-storage.d.ts +64 -0
- package/dist/src/hooks/lib/reflection-storage.d.ts.map +1 -0
- package/dist/src/hooks/lib/reflection-storage.js +305 -0
- package/dist/src/hooks/lib/reflection-storage.js.map +1 -0
- package/dist/src/hooks/lib/run-self-reflection.d.ts +43 -0
- package/dist/src/hooks/lib/run-self-reflection.d.ts.map +1 -0
- package/dist/src/hooks/lib/run-self-reflection.js +203 -0
- package/dist/src/hooks/lib/run-self-reflection.js.map +1 -0
- package/dist/src/hooks/lib/sync-living-docs.d.ts +27 -0
- package/dist/src/hooks/lib/sync-living-docs.d.ts.map +1 -0
- package/dist/src/hooks/lib/sync-living-docs.js +116 -0
- package/dist/src/hooks/lib/sync-living-docs.js.map +1 -0
- package/dist/src/hooks/lib/translate-file.d.ts +59 -0
- package/dist/src/hooks/lib/translate-file.d.ts.map +1 -0
- package/dist/src/hooks/lib/translate-file.js +350 -0
- package/dist/src/hooks/lib/translate-file.js.map +1 -0
- package/dist/src/hooks/lib/translate-living-docs.d.ts +13 -0
- package/dist/src/hooks/lib/translate-living-docs.d.ts.map +1 -0
- package/dist/src/hooks/lib/translate-living-docs.js +175 -0
- package/dist/src/hooks/lib/translate-living-docs.js.map +1 -0
- package/dist/src/hooks/lib/types/reflection-types.d.ts +164 -0
- package/dist/src/hooks/lib/types/reflection-types.d.ts.map +1 -0
- package/dist/src/hooks/lib/types/reflection-types.js +73 -0
- package/dist/src/hooks/lib/types/reflection-types.js.map +1 -0
- package/dist/src/hooks/lib/update-tasks-md.d.ts +29 -0
- package/dist/src/hooks/lib/update-tasks-md.d.ts.map +1 -0
- package/dist/src/hooks/lib/update-tasks-md.js +203 -0
- package/dist/src/hooks/lib/update-tasks-md.js.map +1 -0
- package/dist/src/integrations/ado/ado-client.d.ts +127 -0
- package/dist/src/integrations/ado/ado-client.d.ts.map +1 -0
- package/dist/src/integrations/ado/ado-client.js +416 -0
- package/dist/src/integrations/ado/ado-client.js.map +1 -0
- package/dist/src/integrations/jira/jira-client.d.ts +139 -0
- package/dist/src/integrations/jira/jira-client.d.ts.map +1 -0
- package/dist/src/integrations/jira/jira-client.js +386 -0
- package/dist/src/integrations/jira/jira-client.js.map +1 -0
- package/dist/src/integrations/jira/jira-incremental-mapper.d.ts +75 -0
- package/dist/src/integrations/jira/jira-incremental-mapper.d.ts.map +1 -0
- package/dist/src/integrations/jira/jira-incremental-mapper.js +474 -0
- package/dist/src/integrations/jira/jira-incremental-mapper.js.map +1 -0
- package/dist/src/integrations/jira/jira-mapper.d.ts +105 -0
- package/dist/src/integrations/jira/jira-mapper.d.ts.map +1 -0
- package/dist/src/integrations/jira/jira-mapper.js +494 -0
- package/dist/src/integrations/jira/jira-mapper.js.map +1 -0
- package/dist/src/metrics/calculators/change-failure-rate.d.ts +22 -0
- package/dist/src/metrics/calculators/change-failure-rate.d.ts.map +1 -0
- package/dist/src/metrics/calculators/change-failure-rate.js +70 -0
- package/dist/src/metrics/calculators/change-failure-rate.js.map +1 -0
- package/dist/src/metrics/calculators/deployment-frequency.d.ts +20 -0
- package/dist/src/metrics/calculators/deployment-frequency.d.ts.map +1 -0
- package/dist/src/metrics/calculators/deployment-frequency.js +61 -0
- package/dist/src/metrics/calculators/deployment-frequency.js.map +1 -0
- package/dist/src/metrics/calculators/lead-time.d.ts +22 -0
- package/dist/src/metrics/calculators/lead-time.d.ts.map +1 -0
- package/dist/src/metrics/calculators/lead-time.js +82 -0
- package/dist/src/metrics/calculators/lead-time.js.map +1 -0
- package/dist/src/metrics/calculators/mttr.d.ts +21 -0
- package/dist/src/metrics/calculators/mttr.d.ts.map +1 -0
- package/dist/src/metrics/calculators/mttr.js +60 -0
- package/dist/src/metrics/calculators/mttr.js.map +1 -0
- package/dist/src/metrics/dora-calculator.d.ts +28 -0
- package/dist/src/metrics/dora-calculator.d.ts.map +1 -0
- package/dist/src/metrics/dora-calculator.js +117 -0
- package/dist/src/metrics/dora-calculator.js.map +1 -0
- package/dist/src/metrics/github-client.d.ts +51 -0
- package/dist/src/metrics/github-client.d.ts.map +1 -0
- package/dist/src/metrics/github-client.js +133 -0
- package/dist/src/metrics/github-client.js.map +1 -0
- package/dist/src/metrics/report-generator.d.ts +17 -0
- package/dist/src/metrics/report-generator.d.ts.map +1 -0
- package/dist/src/metrics/report-generator.js +403 -0
- package/dist/src/metrics/report-generator.js.map +1 -0
- package/dist/src/metrics/types.d.ts +112 -0
- package/dist/src/metrics/types.d.ts.map +1 -0
- package/dist/src/metrics/types.js +10 -0
- package/dist/src/metrics/types.js.map +1 -0
- package/dist/src/metrics/utils/percentile.d.ts +25 -0
- package/dist/src/metrics/utils/percentile.d.ts.map +1 -0
- package/dist/src/metrics/utils/percentile.js +46 -0
- package/dist/src/metrics/utils/percentile.js.map +1 -0
- package/dist/src/metrics/utils/tier-classifier.d.ts +61 -0
- package/dist/src/metrics/utils/tier-classifier.d.ts.map +1 -0
- package/dist/src/metrics/utils/tier-classifier.js +100 -0
- package/dist/src/metrics/utils/tier-classifier.js.map +1 -0
- package/dist/src/testing/test-generator.d.ts +117 -0
- package/dist/src/testing/test-generator.d.ts.map +1 -0
- package/dist/src/testing/test-generator.js +370 -0
- package/dist/src/testing/test-generator.js.map +1 -0
- package/dist/src/types/cost-tracking.d.ts +43 -0
- package/dist/src/types/cost-tracking.d.ts.map +1 -0
- package/dist/src/types/cost-tracking.js +8 -0
- package/dist/src/types/cost-tracking.js.map +1 -0
- package/dist/src/types/model-selection.d.ts +53 -0
- package/dist/src/types/model-selection.d.ts.map +1 -0
- package/dist/src/types/model-selection.js +12 -0
- package/dist/src/types/model-selection.js.map +1 -0
- package/dist/src/utils/agents-md-compiler.d.ts +68 -0
- package/dist/src/utils/agents-md-compiler.d.ts.map +1 -0
- package/dist/src/utils/agents-md-compiler.js +420 -0
- package/dist/src/utils/agents-md-compiler.js.map +1 -0
- package/dist/src/utils/auth-helpers.d.ts +58 -0
- package/dist/src/utils/auth-helpers.d.ts.map +1 -0
- package/dist/src/utils/auth-helpers.js +108 -0
- package/dist/src/utils/auth-helpers.js.map +1 -0
- package/dist/src/utils/auto-install.d.ts +47 -0
- package/dist/src/utils/auto-install.d.ts.map +1 -0
- package/dist/src/utils/auto-install.js +211 -0
- package/dist/src/utils/auto-install.js.map +1 -0
- package/dist/src/utils/claude-cli-detector.d.ts +75 -0
- package/dist/src/utils/claude-cli-detector.d.ts.map +1 -0
- package/dist/src/utils/claude-cli-detector.js +285 -0
- package/dist/src/utils/claude-cli-detector.js.map +1 -0
- package/dist/src/utils/cost-reporter.d.ts +58 -0
- package/dist/src/utils/cost-reporter.d.ts.map +1 -0
- package/dist/src/utils/cost-reporter.js +224 -0
- package/dist/src/utils/cost-reporter.js.map +1 -0
- package/dist/src/utils/docs-preview/config-generator.d.ts +46 -0
- package/dist/src/utils/docs-preview/config-generator.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/config-generator.js +377 -0
- package/dist/src/utils/docs-preview/config-generator.js.map +1 -0
- package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +38 -0
- package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/docusaurus-setup.js +177 -0
- package/dist/src/utils/docs-preview/docusaurus-setup.js.map +1 -0
- package/dist/src/utils/docs-preview/index.d.ts +7 -0
- package/dist/src/utils/docs-preview/index.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/index.js +7 -0
- package/dist/src/utils/docs-preview/index.js.map +1 -0
- package/dist/src/utils/docs-preview/package-installer.d.ts +42 -0
- package/dist/src/utils/docs-preview/package-installer.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/package-installer.js +182 -0
- package/dist/src/utils/docs-preview/package-installer.js.map +1 -0
- package/dist/src/utils/docs-preview/server-manager.d.ts +30 -0
- package/dist/src/utils/docs-preview/server-manager.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/server-manager.js +212 -0
- package/dist/src/utils/docs-preview/server-manager.js.map +1 -0
- package/dist/src/utils/docs-preview/sidebar-builder.d.ts +32 -0
- package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/sidebar-builder.js +202 -0
- package/dist/src/utils/docs-preview/sidebar-builder.js.map +1 -0
- package/dist/src/utils/docs-preview/types.d.ts +57 -0
- package/dist/src/utils/docs-preview/types.d.ts.map +1 -0
- package/dist/src/utils/docs-preview/types.js +2 -0
- package/dist/src/utils/docs-preview/types.js.map +1 -0
- package/dist/src/utils/env-file-generator.d.ts +54 -0
- package/dist/src/utils/env-file-generator.d.ts.map +1 -0
- package/dist/src/utils/env-file-generator.js +196 -0
- package/dist/src/utils/env-file-generator.js.map +1 -0
- package/dist/src/utils/env-file.d.ts +88 -0
- package/dist/src/utils/env-file.d.ts.map +1 -0
- package/dist/src/utils/env-file.js +180 -0
- package/dist/src/utils/env-file.js.map +1 -0
- package/dist/src/utils/env-multi-project-parser.d.ts +220 -0
- package/dist/src/utils/env-multi-project-parser.d.ts.map +1 -0
- package/dist/src/utils/env-multi-project-parser.js +401 -0
- package/dist/src/utils/env-multi-project-parser.js.map +1 -0
- package/dist/src/utils/esm-helpers.d.ts +50 -0
- package/dist/src/utils/esm-helpers.d.ts.map +1 -0
- package/dist/src/utils/esm-helpers.js +57 -0
- package/dist/src/utils/esm-helpers.js.map +1 -0
- package/dist/src/utils/execFileNoThrow.d.ts +99 -0
- package/dist/src/utils/execFileNoThrow.d.ts.map +1 -0
- package/dist/src/utils/execFileNoThrow.js +137 -0
- package/dist/src/utils/execFileNoThrow.js.map +1 -0
- package/dist/src/utils/external-resource-validator.d.ts +194 -0
- package/dist/src/utils/external-resource-validator.d.ts.map +1 -0
- package/dist/src/utils/external-resource-validator.js +953 -0
- package/dist/src/utils/external-resource-validator.js.map +1 -0
- package/dist/src/utils/generate-skills-index.d.ts +24 -0
- package/dist/src/utils/generate-skills-index.d.ts.map +1 -0
- package/dist/src/utils/generate-skills-index.js +410 -0
- package/dist/src/utils/generate-skills-index.js.map +1 -0
- package/dist/src/utils/git-detector.d.ts +84 -0
- package/dist/src/utils/git-detector.d.ts.map +1 -0
- package/dist/src/utils/git-detector.js +233 -0
- package/dist/src/utils/git-detector.js.map +1 -0
- package/dist/src/utils/git-utils.d.ts +74 -0
- package/dist/src/utils/git-utils.d.ts.map +1 -0
- package/dist/src/utils/git-utils.js +272 -0
- package/dist/src/utils/git-utils.js.map +1 -0
- package/dist/src/utils/model-selection.d.ts +75 -0
- package/dist/src/utils/model-selection.d.ts.map +1 -0
- package/dist/src/utils/model-selection.js +204 -0
- package/dist/src/utils/model-selection.js.map +1 -0
- package/dist/src/utils/plugin-validator.d.ts +161 -0
- package/dist/src/utils/plugin-validator.d.ts.map +1 -0
- package/dist/src/utils/plugin-validator.js +558 -0
- package/dist/src/utils/plugin-validator.js.map +1 -0
- package/dist/src/utils/pricing-constants.d.ts +70 -0
- package/dist/src/utils/pricing-constants.d.ts.map +1 -0
- package/dist/src/utils/pricing-constants.js +71 -0
- package/dist/src/utils/pricing-constants.js.map +1 -0
- package/dist/src/utils/project-detection.d.ts +141 -0
- package/dist/src/utils/project-detection.d.ts.map +1 -0
- package/dist/src/utils/project-detection.js +321 -0
- package/dist/src/utils/project-detection.js.map +1 -0
- package/dist/src/utils/project-mapper.d.ts +92 -0
- package/dist/src/utils/project-mapper.d.ts.map +1 -0
- package/dist/src/utils/project-mapper.js +276 -0
- package/dist/src/utils/project-mapper.js.map +1 -0
- package/dist/src/utils/spec-splitter.d.ts +75 -0
- package/dist/src/utils/spec-splitter.d.ts.map +1 -0
- package/dist/src/utils/spec-splitter.js +332 -0
- package/dist/src/utils/spec-splitter.js.map +1 -0
- package/dist/src/utils/string-utils.d.ts +40 -0
- package/dist/src/utils/string-utils.d.ts.map +1 -0
- package/dist/src/utils/string-utils.js +58 -0
- package/dist/src/utils/string-utils.js.map +1 -0
- package/dist/src/utils/translation.d.ts +187 -0
- package/dist/src/utils/translation.d.ts.map +1 -0
- package/dist/src/utils/translation.js +414 -0
- package/dist/src/utils/translation.js.map +1 -0
- package/dist/utils/git-utils.d.ts +74 -0
- package/dist/utils/git-utils.d.ts.map +1 -0
- package/dist/utils/git-utils.js +272 -0
- package/dist/utils/git-utils.js.map +1 -0
- package/package.json +3 -2
- package/plugins/specweave/hooks/lib/sync-spec-content.sh +149 -0
- package/plugins/specweave/hooks/post-increment-planning.sh +37 -1
- package/plugins/specweave/lib/hooks/git-diff-analyzer.js +213 -129
- package/plugins/specweave/lib/hooks/invoke-translator-skill.js +192 -146
- package/plugins/specweave/lib/hooks/prepare-reflection-context.js +116 -103
- package/plugins/specweave/lib/hooks/reflection-config-loader.js +125 -85
- package/plugins/specweave/lib/hooks/reflection-parser.js +385 -267
- package/plugins/specweave/lib/hooks/reflection-prompt-builder.js +226 -169
- package/plugins/specweave/lib/hooks/reflection-storage.js +297 -223
- package/plugins/specweave/lib/hooks/run-self-reflection.js +191 -120
- package/plugins/specweave/lib/hooks/sync-living-docs.js +129 -87
- package/plugins/specweave/lib/hooks/translate-file.js +300 -239
- package/plugins/specweave/lib/hooks/translate-living-docs.js +144 -88
- package/plugins/specweave/lib/hooks/types/reflection-types.js +72 -57
- package/plugins/specweave/lib/hooks/update-tasks-md.js +179 -117
- package/plugins/specweave-ado/agents/ado-multi-project-mapper/AGENT.md +521 -0
- package/plugins/specweave-ado/agents/ado-sync-judge/AGENT.md +418 -0
- package/plugins/specweave-ado/hooks/post-living-docs-update.sh +353 -0
- package/plugins/specweave-ado/hooks/post-task-completion.sh +22 -0
- package/plugins/specweave-ado/lib/ado-board-resolver.js +205 -135
- package/plugins/specweave-ado/lib/ado-client-v2.d.ts +15 -5
- package/plugins/specweave-ado/lib/ado-client-v2.d.ts.map +1 -1
- package/plugins/specweave-ado/lib/ado-client-v2.js +449 -406
- package/plugins/specweave-ado/lib/ado-client-v2.js.map +1 -1
- package/plugins/specweave-ado/lib/ado-client-v2.ts +43 -51
- package/plugins/specweave-ado/lib/ado-hierarchical-sync.js +335 -223
- package/plugins/specweave-ado/lib/ado-project-detector.js +469 -0
- package/plugins/specweave-ado/lib/ado-project-detector.ts +510 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.d.js +0 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.d.ts +38 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.d.ts.map +1 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.js +210 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.js.map +1 -0
- package/plugins/specweave-ado/lib/ado-spec-commit-sync.ts +288 -0
- package/plugins/specweave-ado/lib/ado-spec-content-sync.js +205 -0
- package/plugins/specweave-ado/lib/ado-spec-content-sync.ts +313 -0
- package/plugins/specweave-ado/lib/ado-spec-sync.js +414 -380
- package/plugins/specweave-ado/lib/conflict-resolver.js +297 -0
- package/plugins/specweave-ado/lib/conflict-resolver.ts +443 -0
- package/plugins/specweave-ado/lib/project-selector.js +196 -168
- package/plugins/specweave-ado/skills/ado-multi-project/SKILL.md +541 -0
- package/plugins/specweave-ado/skills/ado-resource-validator/SKILL.md +880 -0
- package/plugins/specweave-github/hooks/post-task-completion.sh +22 -0
- package/plugins/specweave-github/lib/cli-sync-increment-changes.js +20 -9
- package/plugins/specweave-github/lib/github-board-resolver.js +115 -69
- package/plugins/specweave-github/lib/github-client-v2.js +389 -400
- package/plugins/specweave-github/lib/github-client-v2.js.map +1 -1
- package/plugins/specweave-github/lib/github-client-v2.ts +13 -13
- package/plugins/specweave-github/lib/github-client.js +280 -246
- package/plugins/specweave-github/lib/github-hierarchical-sync.js +251 -168
- package/plugins/specweave-github/lib/github-issue-updater.js +4 -4
- package/plugins/specweave-github/lib/github-issue-updater.ts +4 -4
- package/plugins/specweave-github/lib/github-spec-commit-sync.d.js +0 -0
- package/plugins/specweave-github/lib/github-spec-commit-sync.d.ts +37 -0
- package/plugins/specweave-github/lib/github-spec-commit-sync.d.ts.map +1 -0
- package/plugins/specweave-github/lib/github-spec-commit-sync.js +209 -0
- package/plugins/specweave-github/lib/github-spec-commit-sync.js.map +1 -0
- package/plugins/specweave-github/lib/github-spec-commit-sync.ts +285 -0
- package/plugins/specweave-github/lib/github-spec-content-sync.js +169 -0
- package/plugins/specweave-github/lib/github-spec-content-sync.ts +255 -0
- package/plugins/specweave-github/lib/github-spec-sync.js +420 -379
- package/plugins/specweave-github/lib/github-sync-bidirectional.js +2 -2
- package/plugins/specweave-github/lib/github-sync-bidirectional.ts +2 -2
- package/plugins/specweave-github/lib/github-sync-increment-changes.js +4 -4
- package/plugins/specweave-github/lib/github-sync-increment-changes.ts +4 -4
- package/plugins/specweave-github/lib/index.js +10 -11
- package/plugins/specweave-github/lib/repo-selector.js +201 -174
- package/plugins/specweave-github/lib/subtask-sync.js +125 -132
- package/plugins/specweave-github/lib/task-parser.js +207 -191
- package/plugins/specweave-github/lib/task-sync.js +296 -344
- package/plugins/specweave-github/lib/types.js +5 -0
- package/plugins/specweave-jira/hooks/post-task-completion.sh +22 -0
- package/plugins/specweave-jira/lib/jira-board-resolver.js +79 -50
- package/plugins/specweave-jira/lib/jira-hierarchical-sync.js +191 -119
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.d.js +0 -0
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.d.ts +43 -0
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.d.ts.map +1 -0
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.js +282 -0
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.js.map +1 -0
- package/plugins/specweave-jira/lib/jira-spec-commit-sync.ts +368 -0
- package/plugins/specweave-jira/lib/jira-spec-content-sync.js +260 -0
- package/plugins/specweave-jira/lib/jira-spec-content-sync.ts +367 -0
- package/plugins/specweave-jira/lib/jira-spec-sync.js +405 -366
- package/plugins/specweave-jira/lib/project-selector.js +201 -172
- package/plugins/specweave-jira/lib/reorganization-detector.js +237 -202
- package/plugins/specweave-jira/lib/setup-wizard.js +204 -162
- package/plugins/specweave-mobile/.claude-plugin/plugin.json +25 -0
- package/plugins/specweave-mobile/README.md +337 -0
- package/plugins/specweave-mobile/agents/mobile-architect/AGENT.md +642 -0
- package/plugins/specweave-mobile/skills/device-testing/SKILL.md +609 -0
- package/plugins/specweave-mobile/skills/expo-workflow/SKILL.md +440 -0
- package/plugins/specweave-mobile/skills/metro-bundler/SKILL.md +614 -0
- package/plugins/specweave-mobile/skills/mobile-debugging/SKILL.md +536 -0
- package/plugins/specweave-mobile/skills/native-modules/SKILL.md +573 -0
- package/plugins/specweave-mobile/skills/performance-optimization/SKILL.md +550 -0
- package/plugins/specweave-mobile/skills/react-native-setup/SKILL.md +216 -0
- package/plugins/specweave-release/.claude-plugin/plugin.json +41 -0
- package/plugins/specweave-release/IMPLEMENTATION.md +449 -0
- package/plugins/specweave-release/README.md +509 -0
- package/plugins/specweave-release/agents/release-manager/AGENT.md +672 -0
- package/plugins/specweave-release/commands/specweave-release-align.md +505 -0
- package/plugins/specweave-release/commands/specweave-release-init.md +430 -0
- package/plugins/specweave-release/commands/specweave-release-platform.md +439 -0
- package/plugins/specweave-release/commands/specweave-release-rc.md +495 -0
- package/plugins/specweave-release/hooks/hooks.json +15 -0
- package/plugins/specweave-release/hooks/post-task-completion.sh +110 -0
- package/plugins/specweave-release/lib/dashboard-generator.js +232 -0
- package/plugins/specweave-release/lib/dashboard-generator.ts +294 -0
- package/plugins/specweave-release/lib/dora-tracker.js +200 -0
- package/plugins/specweave-release/lib/dora-tracker.ts +361 -0
- package/plugins/specweave-release/skills/rc-manager/SKILL.md +660 -0
- package/plugins/specweave-release/skills/release-coordinator/SKILL.md +535 -0
- package/plugins/specweave-release/skills/release-strategy-advisor/SKILL.md +473 -0
- package/plugins/specweave-release/skills/version-aligner/SKILL.md +579 -0
- package/src/templates/CLAUDE.md.template +24 -0
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conflict Resolver for Living Docs Synchronization
|
|
3
|
+
*
|
|
4
|
+
* CRITICAL PRINCIPLE: External tool status ALWAYS wins in conflicts!
|
|
5
|
+
* This ensures that QA and stakeholder decisions in external tools
|
|
6
|
+
* take precedence over local development status.
|
|
7
|
+
*/
|
|
8
|
+
import * as fs from 'fs-extra';
|
|
9
|
+
import * as path from 'path';
|
|
10
|
+
import * as yaml from 'yaml';
|
|
11
|
+
// ============================================================================
|
|
12
|
+
// Status Mapping
|
|
13
|
+
// ============================================================================
|
|
14
|
+
const STATUS_MAPPING = {
|
|
15
|
+
ado: {
|
|
16
|
+
'New': 'draft',
|
|
17
|
+
'Active': 'in-progress',
|
|
18
|
+
'Resolved': 'implemented',
|
|
19
|
+
'Closed': 'complete',
|
|
20
|
+
'In Review': 'in-qa',
|
|
21
|
+
'In QA': 'in-qa',
|
|
22
|
+
'Blocked': 'blocked',
|
|
23
|
+
'Removed': 'cancelled'
|
|
24
|
+
},
|
|
25
|
+
jira: {
|
|
26
|
+
'To Do': 'draft',
|
|
27
|
+
'In Progress': 'in-progress',
|
|
28
|
+
'Code Review': 'implemented',
|
|
29
|
+
'In Review': 'implemented',
|
|
30
|
+
'QA': 'in-qa',
|
|
31
|
+
'Testing': 'in-qa',
|
|
32
|
+
'Done': 'complete',
|
|
33
|
+
'Closed': 'complete',
|
|
34
|
+
'Blocked': 'blocked',
|
|
35
|
+
'Cancelled': 'cancelled'
|
|
36
|
+
},
|
|
37
|
+
github: {
|
|
38
|
+
'open': 'in-progress',
|
|
39
|
+
'closed': 'complete'
|
|
40
|
+
}
|
|
41
|
+
};
|
|
42
|
+
const REVERSE_STATUS_MAPPING = {
|
|
43
|
+
ado: {
|
|
44
|
+
'draft': 'New',
|
|
45
|
+
'in-progress': 'Active',
|
|
46
|
+
'implemented': 'Resolved',
|
|
47
|
+
'in-qa': 'In QA',
|
|
48
|
+
'complete': 'Closed',
|
|
49
|
+
'blocked': 'Blocked',
|
|
50
|
+
'cancelled': 'Removed'
|
|
51
|
+
},
|
|
52
|
+
jira: {
|
|
53
|
+
'draft': 'To Do',
|
|
54
|
+
'in-progress': 'In Progress',
|
|
55
|
+
'implemented': 'Code Review',
|
|
56
|
+
'in-qa': 'QA',
|
|
57
|
+
'complete': 'Done',
|
|
58
|
+
'blocked': 'Blocked',
|
|
59
|
+
'cancelled': 'Cancelled'
|
|
60
|
+
},
|
|
61
|
+
github: {
|
|
62
|
+
'draft': 'open',
|
|
63
|
+
'in-progress': 'open',
|
|
64
|
+
'implemented': 'open',
|
|
65
|
+
'in-qa': 'open',
|
|
66
|
+
'complete': 'closed',
|
|
67
|
+
'blocked': 'open',
|
|
68
|
+
'cancelled': 'closed'
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
// ============================================================================
|
|
72
|
+
// Conflict Resolver Class
|
|
73
|
+
// ============================================================================
|
|
74
|
+
export class ConflictResolver {
|
|
75
|
+
constructor() {
|
|
76
|
+
this.resolutionLog = [];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Map external status to local SpecWeave status
|
|
80
|
+
*/
|
|
81
|
+
mapExternalStatus(tool, externalStatus) {
|
|
82
|
+
const mapping = STATUS_MAPPING[tool];
|
|
83
|
+
return mapping[externalStatus] || 'unknown';
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Map local status to external tool status
|
|
87
|
+
*/
|
|
88
|
+
mapLocalStatus(tool, localStatus) {
|
|
89
|
+
const mapping = REVERSE_STATUS_MAPPING[tool];
|
|
90
|
+
return mapping[localStatus] || 'Active';
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* CRITICAL: Resolve status conflict - EXTERNAL ALWAYS WINS
|
|
94
|
+
*/
|
|
95
|
+
resolveStatusConflict(localStatus, externalStatus) {
|
|
96
|
+
const resolution = {
|
|
97
|
+
field: 'status',
|
|
98
|
+
localValue: localStatus,
|
|
99
|
+
externalValue: externalStatus.status,
|
|
100
|
+
resolution: 'external', // ALWAYS external for status
|
|
101
|
+
resolvedValue: externalStatus.mappedStatus,
|
|
102
|
+
reason: 'External tool reflects QA and stakeholder decisions',
|
|
103
|
+
timestamp: new Date().toISOString()
|
|
104
|
+
};
|
|
105
|
+
// Log the resolution
|
|
106
|
+
console.log(`š Status Conflict Detected:`);
|
|
107
|
+
console.log(` Local: ${localStatus}`);
|
|
108
|
+
console.log(` External: ${externalStatus.status} (${externalStatus.tool})`);
|
|
109
|
+
console.log(` ā
Resolution: EXTERNAL WINS - ${externalStatus.mappedStatus}`);
|
|
110
|
+
this.resolutionLog.push(resolution);
|
|
111
|
+
return resolution;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Resolve priority conflict - EXTERNAL WINS
|
|
115
|
+
*/
|
|
116
|
+
resolvePriorityConflict(localPriority, externalPriority) {
|
|
117
|
+
const resolution = {
|
|
118
|
+
field: 'priority',
|
|
119
|
+
localValue: localPriority,
|
|
120
|
+
externalValue: externalPriority,
|
|
121
|
+
resolution: 'external',
|
|
122
|
+
resolvedValue: externalPriority || localPriority,
|
|
123
|
+
reason: 'External tool reflects stakeholder prioritization',
|
|
124
|
+
timestamp: new Date().toISOString()
|
|
125
|
+
};
|
|
126
|
+
if (localPriority !== externalPriority && externalPriority) {
|
|
127
|
+
console.log(`š Priority Conflict Detected:`);
|
|
128
|
+
console.log(` Local: ${localPriority}`);
|
|
129
|
+
console.log(` External: ${externalPriority}`);
|
|
130
|
+
console.log(` ā
Resolution: EXTERNAL WINS - ${externalPriority}`);
|
|
131
|
+
this.resolutionLog.push(resolution);
|
|
132
|
+
}
|
|
133
|
+
return resolution;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Apply conflict resolutions to spec
|
|
137
|
+
*/
|
|
138
|
+
async applyResolutions(specPath, resolutions) {
|
|
139
|
+
const content = await fs.readFile(specPath, 'utf-8');
|
|
140
|
+
const lines = content.split('\n');
|
|
141
|
+
let inFrontmatter = false;
|
|
142
|
+
let frontmatterEnd = -1;
|
|
143
|
+
// Find frontmatter boundaries
|
|
144
|
+
for (let i = 0; i < lines.length; i++) {
|
|
145
|
+
if (lines[i] === '---') {
|
|
146
|
+
if (!inFrontmatter) {
|
|
147
|
+
inFrontmatter = true;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
frontmatterEnd = i;
|
|
151
|
+
break;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
// Apply resolutions
|
|
156
|
+
for (const resolution of resolutions) {
|
|
157
|
+
if (resolution.field === 'status') {
|
|
158
|
+
// Update status in frontmatter
|
|
159
|
+
for (let i = 1; i < frontmatterEnd; i++) {
|
|
160
|
+
if (lines[i].startsWith('status:')) {
|
|
161
|
+
lines[i] = `status: ${resolution.resolvedValue}`;
|
|
162
|
+
console.log(`ā
Applied status resolution: ${resolution.resolvedValue}`);
|
|
163
|
+
break;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
// Add sync metadata
|
|
167
|
+
const syncTimestamp = new Date().toISOString();
|
|
168
|
+
let syncedAtFound = false;
|
|
169
|
+
for (let i = 1; i < frontmatterEnd; i++) {
|
|
170
|
+
if (lines[i].includes('syncedAt:')) {
|
|
171
|
+
lines[i] = ` syncedAt: "${syncTimestamp}"`;
|
|
172
|
+
syncedAtFound = true;
|
|
173
|
+
break;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
if (!syncedAtFound) {
|
|
177
|
+
// Add syncedAt after externalLinks
|
|
178
|
+
for (let i = 1; i < frontmatterEnd; i++) {
|
|
179
|
+
if (lines[i].includes('externalLinks:')) {
|
|
180
|
+
// Find the external tool section
|
|
181
|
+
for (let j = i + 1; j < frontmatterEnd; j++) {
|
|
182
|
+
if (lines[j].includes('ado:') || lines[j].includes('jira:') || lines[j].includes('github:')) {
|
|
183
|
+
// Insert after the URL line
|
|
184
|
+
for (let k = j + 1; k < frontmatterEnd; k++) {
|
|
185
|
+
if (lines[k].includes('Url:')) {
|
|
186
|
+
lines.splice(k + 1, 0, ` syncedAt: "${syncTimestamp}"`);
|
|
187
|
+
frontmatterEnd++; // Adjust for inserted line
|
|
188
|
+
syncedAtFound = true;
|
|
189
|
+
break;
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
if (syncedAtFound)
|
|
193
|
+
break;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
if (syncedAtFound)
|
|
197
|
+
break;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
else if (resolution.field === 'priority' && resolution.resolvedValue) {
|
|
203
|
+
// Update priority in frontmatter
|
|
204
|
+
for (let i = 1; i < frontmatterEnd; i++) {
|
|
205
|
+
if (lines[i].startsWith('priority:')) {
|
|
206
|
+
lines[i] = `priority: ${resolution.resolvedValue}`;
|
|
207
|
+
console.log(`ā
Applied priority resolution: ${resolution.resolvedValue}`);
|
|
208
|
+
break;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
// Write updated content
|
|
214
|
+
await fs.writeFile(specPath, lines.join('\n'));
|
|
215
|
+
console.log(`ā
Resolutions applied to ${path.basename(specPath)}`);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Validate that external status wins in implementation
|
|
219
|
+
*/
|
|
220
|
+
validateImplementation(implementationCode) {
|
|
221
|
+
const violations = [];
|
|
222
|
+
// Check for incorrect patterns
|
|
223
|
+
const incorrectPatterns = [
|
|
224
|
+
{
|
|
225
|
+
pattern: /if.*conflict.*\{[^}]*spec\.status\s*=\s*localStatus/,
|
|
226
|
+
message: 'Local status should never win in conflicts'
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
pattern: /resolution\s*:\s*['"]local['"]/,
|
|
230
|
+
message: 'Resolution should be "external" for status conflicts'
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
pattern: /prefer.*local.*status/i,
|
|
234
|
+
message: 'Should prefer external status'
|
|
235
|
+
}
|
|
236
|
+
];
|
|
237
|
+
for (const { pattern, message } of incorrectPatterns) {
|
|
238
|
+
if (pattern.test(implementationCode)) {
|
|
239
|
+
violations.push(message);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
// Check for correct patterns
|
|
243
|
+
const requiredPatterns = [
|
|
244
|
+
{
|
|
245
|
+
pattern: /external.*wins|EXTERNAL.*WINS|externalStatus.*applied/i,
|
|
246
|
+
message: 'Missing confirmation that external wins'
|
|
247
|
+
}
|
|
248
|
+
];
|
|
249
|
+
for (const { pattern, message } of requiredPatterns) {
|
|
250
|
+
if (!pattern.test(implementationCode)) {
|
|
251
|
+
violations.push(message);
|
|
252
|
+
}
|
|
253
|
+
}
|
|
254
|
+
return {
|
|
255
|
+
valid: violations.length === 0,
|
|
256
|
+
violations
|
|
257
|
+
};
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Get resolution history
|
|
261
|
+
*/
|
|
262
|
+
getResolutionLog() {
|
|
263
|
+
return this.resolutionLog;
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Generate resolution report
|
|
267
|
+
*/
|
|
268
|
+
generateReport() {
|
|
269
|
+
const report = [];
|
|
270
|
+
report.push('# Conflict Resolution Report');
|
|
271
|
+
report.push(`\n**Generated**: ${new Date().toISOString()}`);
|
|
272
|
+
report.push(`**Total Resolutions**: ${this.resolutionLog.length}`);
|
|
273
|
+
report.push('\n## Resolutions\n');
|
|
274
|
+
for (const resolution of this.resolutionLog) {
|
|
275
|
+
report.push(`### ${resolution.field}`);
|
|
276
|
+
report.push(`- **Local Value**: ${resolution.localValue}`);
|
|
277
|
+
report.push(`- **External Value**: ${resolution.externalValue}`);
|
|
278
|
+
report.push(`- **Resolution**: ${resolution.resolution.toUpperCase()} WINS`);
|
|
279
|
+
report.push(`- **Resolved To**: ${resolution.resolvedValue}`);
|
|
280
|
+
report.push(`- **Reason**: ${resolution.reason}`);
|
|
281
|
+
report.push(`- **Time**: ${resolution.timestamp}\n`);
|
|
282
|
+
}
|
|
283
|
+
report.push('## Validation');
|
|
284
|
+
report.push('ā
All conflicts resolved with external tool priority');
|
|
285
|
+
return report.join('\n');
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
// ============================================================================
|
|
289
|
+
// Helper Functions
|
|
290
|
+
// ============================================================================
|
|
291
|
+
/**
|
|
292
|
+
* Load spec metadata from file
|
|
293
|
+
*/
|
|
294
|
+
export async function loadSpecMetadata(specPath) {
|
|
295
|
+
const content = await fs.readFile(specPath, 'utf-8');
|
|
296
|
+
const frontmatterMatch = content.match(/^---\n([\s\S]*?)\n---/);
|
|
297
|
+
if (!frontmatterMatch) {
|
|
298
|
+
throw new Error(`No frontmatter found in ${specPath}`);
|
|
299
|
+
}
|
|
300
|
+
return yaml.parse(frontmatterMatch[1]);
|
|
301
|
+
}
|
|
302
|
+
/**
|
|
303
|
+
* Perform bidirectional sync with conflict resolution
|
|
304
|
+
*/
|
|
305
|
+
export async function performBidirectionalSync(specPath, externalStatus) {
|
|
306
|
+
const resolver = new ConflictResolver();
|
|
307
|
+
const spec = await loadSpecMetadata(specPath);
|
|
308
|
+
const resolutions = [];
|
|
309
|
+
// Check for status conflict
|
|
310
|
+
if (spec.status !== externalStatus.mappedStatus) {
|
|
311
|
+
const statusResolution = resolver.resolveStatusConflict(spec.status, externalStatus);
|
|
312
|
+
resolutions.push(statusResolution);
|
|
313
|
+
}
|
|
314
|
+
// Apply resolutions if any conflicts found
|
|
315
|
+
if (resolutions.length > 0) {
|
|
316
|
+
await resolver.applyResolutions(specPath, resolutions);
|
|
317
|
+
// Generate and save report
|
|
318
|
+
const report = resolver.generateReport();
|
|
319
|
+
const reportPath = specPath.replace('.md', '-sync-report.md');
|
|
320
|
+
await fs.writeFile(reportPath, report);
|
|
321
|
+
console.log(`š Sync report saved to ${path.basename(reportPath)}`);
|
|
322
|
+
}
|
|
323
|
+
else {
|
|
324
|
+
console.log('ā
No conflicts detected - spec in sync with external tool');
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
// ============================================================================
|
|
328
|
+
// Export for testing
|
|
329
|
+
// ============================================================================
|
|
330
|
+
export default ConflictResolver;
|
|
331
|
+
//# sourceMappingURL=conflict-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conflict-resolver.js","sourceRoot":"","sources":["../../../../plugins/specweave-ado/lib/conflict-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ADO Project Selector with Pagination
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Fetches all ADO projects via API
|
|
6
|
+
* - Interactive multi-select with search
|
|
7
|
+
* - Manual project name entry (comma-separated)
|
|
8
|
+
* - Handles large project lists (50+ projects)
|
|
9
|
+
* - Validates project names
|
|
10
|
+
*/
|
|
11
|
+
import { AdoClient } from '../../../src/integrations/ado/ado-client.js';
|
|
12
|
+
export interface ProjectSelectionResult {
|
|
13
|
+
selectedNames: string[];
|
|
14
|
+
method: 'interactive' | 'manual' | 'all';
|
|
15
|
+
}
|
|
16
|
+
export interface ProjectSelectorOptions {
|
|
17
|
+
/** Allow manual entry of project names */
|
|
18
|
+
allowManualEntry?: boolean;
|
|
19
|
+
/** Allow "Select All" option */
|
|
20
|
+
allowSelectAll?: boolean;
|
|
21
|
+
/** Pre-select these project names */
|
|
22
|
+
preSelected?: string[];
|
|
23
|
+
/** Minimum projects to select (0 = optional) */
|
|
24
|
+
minSelection?: number;
|
|
25
|
+
/** Maximum projects to select (undefined = unlimited) */
|
|
26
|
+
maxSelection?: number;
|
|
27
|
+
/** Page size for pagination */
|
|
28
|
+
pageSize?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Fetch all ADO projects from API
|
|
32
|
+
*/
|
|
33
|
+
export declare function fetchAllAdoProjects(client: AdoClient): Promise<any[]>;
|
|
34
|
+
/**
|
|
35
|
+
* Interactive project selector with search and pagination
|
|
36
|
+
*/
|
|
37
|
+
export declare function selectAdoProjects(client: AdoClient, options?: ProjectSelectorOptions): Promise<ProjectSelectionResult>;
|
|
38
|
+
/**
|
|
39
|
+
* Quick project selector - select single project
|
|
40
|
+
*/
|
|
41
|
+
export declare function selectSingleAdoProject(client: AdoClient, message?: string): Promise<string>;
|
|
42
|
+
//# sourceMappingURL=project-selector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-selector.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-ado/lib/project-selector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAC;AAMxE,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE,aAAa,GAAG,QAAQ,GAAG,KAAK,CAAC;CAC1C;AAED,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,gCAAgC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,qCAAqC;IACrC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAEvB,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yDAAyD;IACzD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,GAAG,EAAE,CAAC,CAahB;AAMD;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,SAAS,EACjB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,sBAAsB,CAAC,CAuEjC;AAyJD;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,EACjB,OAAO,GAAE,MAAuC,GAC/C,OAAO,CAAC,MAAM,CAAC,CASjB"}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ADO Project Selector with Pagination
|
|
3
|
+
*
|
|
4
|
+
* Features:
|
|
5
|
+
* - Fetches all ADO projects via API
|
|
6
|
+
* - Interactive multi-select with search
|
|
7
|
+
* - Manual project name entry (comma-separated)
|
|
8
|
+
* - Handles large project lists (50+ projects)
|
|
9
|
+
* - Validates project names
|
|
10
|
+
*/
|
|
11
|
+
import inquirer from 'inquirer';
|
|
12
|
+
// ============================================================================
|
|
13
|
+
// ADO Project Fetching
|
|
14
|
+
// ============================================================================
|
|
15
|
+
/**
|
|
16
|
+
* Fetch all ADO projects from API
|
|
17
|
+
*/
|
|
18
|
+
export async function fetchAllAdoProjects(client) {
|
|
19
|
+
console.log('š Fetching Azure DevOps projects...');
|
|
20
|
+
try {
|
|
21
|
+
const projects = await client.getProjects();
|
|
22
|
+
console.log(`ā
Found ${projects.length} Azure DevOps projects\n`);
|
|
23
|
+
return projects;
|
|
24
|
+
}
|
|
25
|
+
catch (error) {
|
|
26
|
+
console.error('ā Failed to fetch ADO projects:', error.message);
|
|
27
|
+
throw error;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
// ============================================================================
|
|
31
|
+
// Interactive Project Selection
|
|
32
|
+
// ============================================================================
|
|
33
|
+
/**
|
|
34
|
+
* Interactive project selector with search and pagination
|
|
35
|
+
*/
|
|
36
|
+
export async function selectAdoProjects(client, options = {}) {
|
|
37
|
+
const { allowManualEntry = true, allowSelectAll = true, preSelected = [], minSelection = 1, maxSelection, pageSize = 15, } = options;
|
|
38
|
+
// Fetch all projects
|
|
39
|
+
const allProjects = await fetchAllAdoProjects(client);
|
|
40
|
+
if (allProjects.length === 0) {
|
|
41
|
+
console.log('ā ļø No Azure DevOps projects found');
|
|
42
|
+
return {
|
|
43
|
+
selectedNames: [],
|
|
44
|
+
method: 'interactive',
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
// Show project overview
|
|
48
|
+
console.log('š Available Azure DevOps Projects:\n');
|
|
49
|
+
console.log(` Total: ${allProjects.length} projects\n`);
|
|
50
|
+
// Decide selection method
|
|
51
|
+
const { selectionMethod } = await inquirer.prompt([
|
|
52
|
+
{
|
|
53
|
+
type: 'list',
|
|
54
|
+
name: 'selectionMethod',
|
|
55
|
+
message: 'How would you like to select projects?',
|
|
56
|
+
choices: [
|
|
57
|
+
{
|
|
58
|
+
name: `š Interactive (browse and select from ${allProjects.length} projects)`,
|
|
59
|
+
value: 'interactive',
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: 'āļø Manual entry (type project names)',
|
|
63
|
+
value: 'manual',
|
|
64
|
+
},
|
|
65
|
+
...(allowSelectAll
|
|
66
|
+
? [
|
|
67
|
+
{
|
|
68
|
+
name: `⨠Select all (${allProjects.length} projects)`,
|
|
69
|
+
value: 'all',
|
|
70
|
+
},
|
|
71
|
+
]
|
|
72
|
+
: []),
|
|
73
|
+
],
|
|
74
|
+
},
|
|
75
|
+
]);
|
|
76
|
+
if (selectionMethod === 'all') {
|
|
77
|
+
return {
|
|
78
|
+
selectedNames: allProjects.map((p) => p.name),
|
|
79
|
+
method: 'all',
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (selectionMethod === 'manual') {
|
|
83
|
+
return await manualProjectEntry(allProjects, minSelection, maxSelection);
|
|
84
|
+
}
|
|
85
|
+
// Interactive selection
|
|
86
|
+
return await interactiveProjectSelection(allProjects, preSelected, minSelection, maxSelection, pageSize);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Interactive project selection with checkbox
|
|
90
|
+
*/
|
|
91
|
+
async function interactiveProjectSelection(allProjects, preSelected, minSelection, maxSelection, pageSize) {
|
|
92
|
+
console.log('š” Use <space> to select, <a> to toggle all, <i> to invert\n');
|
|
93
|
+
const choices = allProjects.map((p) => ({
|
|
94
|
+
name: formatProjectChoice(p),
|
|
95
|
+
value: p.name,
|
|
96
|
+
checked: preSelected.includes(p.name),
|
|
97
|
+
}));
|
|
98
|
+
// Add manual entry option at the end
|
|
99
|
+
choices.push(new inquirer.Separator(), {
|
|
100
|
+
name: 'āļø Enter project names manually instead',
|
|
101
|
+
value: '__MANUAL__',
|
|
102
|
+
checked: false,
|
|
103
|
+
});
|
|
104
|
+
const { selectedNames } = await inquirer.prompt([
|
|
105
|
+
{
|
|
106
|
+
type: 'checkbox',
|
|
107
|
+
name: 'selectedNames',
|
|
108
|
+
message: `Select Azure DevOps projects (${minSelection}${maxSelection ? `-${maxSelection}` : '+'} required):`,
|
|
109
|
+
choices,
|
|
110
|
+
pageSize,
|
|
111
|
+
loop: false,
|
|
112
|
+
validate: (selected) => {
|
|
113
|
+
const actualSelected = selected.filter((k) => k !== '__MANUAL__');
|
|
114
|
+
if (actualSelected.length < minSelection) {
|
|
115
|
+
return `Please select at least ${minSelection} project(s)`;
|
|
116
|
+
}
|
|
117
|
+
if (maxSelection && actualSelected.length > maxSelection) {
|
|
118
|
+
return `Please select at most ${maxSelection} project(s)`;
|
|
119
|
+
}
|
|
120
|
+
return true;
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
]);
|
|
124
|
+
// Check if user chose manual entry
|
|
125
|
+
if (selectedNames.includes('__MANUAL__')) {
|
|
126
|
+
return await manualProjectEntry(allProjects, minSelection, maxSelection);
|
|
127
|
+
}
|
|
128
|
+
console.log(`\nā
Selected ${selectedNames.length} projects: ${selectedNames.join(', ')}\n`);
|
|
129
|
+
return {
|
|
130
|
+
selectedNames,
|
|
131
|
+
method: 'interactive',
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Manual project name entry (comma-separated)
|
|
136
|
+
*/
|
|
137
|
+
async function manualProjectEntry(allProjects, minSelection, maxSelection) {
|
|
138
|
+
console.log('\nš Enter project names manually\n');
|
|
139
|
+
console.log('š” Format: Comma-separated project names (e.g., AI Meme Generator,Project 2,Project 3)\n');
|
|
140
|
+
if (allProjects.length > 0) {
|
|
141
|
+
console.log('Available project names:');
|
|
142
|
+
console.log(allProjects
|
|
143
|
+
.map((p) => p.name)
|
|
144
|
+
.join(', ')
|
|
145
|
+
.substring(0, 100) + (allProjects.length > 20 ? '...' : ''));
|
|
146
|
+
console.log('');
|
|
147
|
+
}
|
|
148
|
+
const { manualNames } = await inquirer.prompt([
|
|
149
|
+
{
|
|
150
|
+
type: 'input',
|
|
151
|
+
name: 'manualNames',
|
|
152
|
+
message: 'Project names:',
|
|
153
|
+
validate: (input) => {
|
|
154
|
+
if (!input.trim()) {
|
|
155
|
+
return 'Please enter at least one project name';
|
|
156
|
+
}
|
|
157
|
+
const names = input
|
|
158
|
+
.split(',')
|
|
159
|
+
.map((n) => n.trim())
|
|
160
|
+
.filter((n) => n.length > 0);
|
|
161
|
+
if (names.length < minSelection) {
|
|
162
|
+
return `Please enter at least ${minSelection} project name(s)`;
|
|
163
|
+
}
|
|
164
|
+
if (maxSelection && names.length > maxSelection) {
|
|
165
|
+
return `Please enter at most ${maxSelection} project name(s)`;
|
|
166
|
+
}
|
|
167
|
+
return true;
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
]);
|
|
171
|
+
const selectedNames = manualNames
|
|
172
|
+
.split(',')
|
|
173
|
+
.map((n) => n.trim())
|
|
174
|
+
.filter((n) => n.length > 0);
|
|
175
|
+
// Warn about unknown projects
|
|
176
|
+
const knownNames = allProjects.map((p) => p.name);
|
|
177
|
+
const unknownNames = selectedNames.filter((n) => !knownNames.includes(n));
|
|
178
|
+
if (unknownNames.length > 0) {
|
|
179
|
+
console.log(`\nā ļø Unknown project names (will be used anyway): ${unknownNames.join(', ')}`);
|
|
180
|
+
console.log(' Make sure these projects exist in your Azure DevOps organization.\n');
|
|
181
|
+
}
|
|
182
|
+
console.log(`ā
Selected ${selectedNames.length} projects: ${selectedNames.join(', ')}\n`);
|
|
183
|
+
return {
|
|
184
|
+
selectedNames,
|
|
185
|
+
method: 'manual',
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
// ============================================================================
|
|
189
|
+
// Helpers
|
|
190
|
+
// ============================================================================
|
|
191
|
+
/**
|
|
192
|
+
* Format project choice for display
|
|
193
|
+
*/
|
|
194
|
+
function formatProjectChoice(project) {
|
|
195
|
+
const visibility = project.visibility || 'private';
|
|
196
|
+
const state = project.state || 'wellFormed';
|
|
197
|
+
return `${project.name.padEnd(30)} - ${project.description || 'No description'} (${visibility}, ${state})`;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Quick project selector - select single project
|
|
201
|
+
*/
|
|
202
|
+
export async function selectSingleAdoProject(client, message = 'Select Azure DevOps project:') {
|
|
203
|
+
const result = await selectAdoProjects(client, {
|
|
204
|
+
allowManualEntry: true,
|
|
205
|
+
allowSelectAll: false,
|
|
206
|
+
minSelection: 1,
|
|
207
|
+
maxSelection: 1,
|
|
208
|
+
});
|
|
209
|
+
return result.selectedNames[0];
|
|
210
|
+
}
|
|
211
|
+
//# sourceMappingURL=project-selector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-selector.js","sourceRoot":"","sources":["../../../../plugins/specweave-ado/lib/project-selector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* CLI wrapper for syncing increment changes to GitHub
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js <incrementId> <changedFile>
|
|
7
|
+
*
|
|
8
|
+
* Example:
|
|
9
|
+
* node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js 0015-hierarchical-sync spec.md
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=cli-sync-increment-changes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-sync-increment-changes.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/cli-sync-increment-changes.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* CLI wrapper for syncing increment changes to GitHub
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js <incrementId> <changedFile>
|
|
7
|
+
*
|
|
8
|
+
* Example:
|
|
9
|
+
* node dist/plugins/specweave-github/lib/cli-sync-increment-changes.js 0015-hierarchical-sync spec.md
|
|
10
|
+
*/
|
|
11
|
+
import { syncIncrementChanges } from './github-sync-increment-changes.js';
|
|
12
|
+
const incrementId = process.argv[2];
|
|
13
|
+
const changedFile = process.argv[3];
|
|
14
|
+
if (!incrementId || !changedFile) {
|
|
15
|
+
console.error('ā Usage: cli-sync-increment-changes <incrementId> <changedFile>');
|
|
16
|
+
console.error(' Example: cli-sync-increment-changes 0015-hierarchical-sync spec.md');
|
|
17
|
+
process.exit(1);
|
|
18
|
+
}
|
|
19
|
+
if (!['spec.md', 'plan.md', 'tasks.md'].includes(changedFile)) {
|
|
20
|
+
console.error(`ā Invalid file: ${changedFile}`);
|
|
21
|
+
console.error(' Must be one of: spec.md, plan.md, tasks.md');
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
syncIncrementChanges(incrementId, changedFile).catch((error) => {
|
|
25
|
+
console.error('ā Fatal error:', error);
|
|
26
|
+
// Don't exit with error code - best-effort sync
|
|
27
|
+
});
|
|
28
|
+
//# sourceMappingURL=cli-sync-increment-changes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-sync-increment-changes.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/cli-sync-increment-changes.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAuC,CAAC;AAE1E,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,EAAE,CAAC;IACjC,OAAO,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACjF,OAAO,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;IACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,IAAI,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;IAC9D,OAAO,CAAC,KAAK,CAAC,mBAAmB,WAAW,EAAE,CAAC,CAAC;IAChD,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,oBAAoB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IAC7D,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACvC,gDAAgD;AAClD,CAAC,CAAC,CAAC"}
|