specweave 0.11.0 → 0.12.1
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 +1 -1
- package/CLAUDE.md +131 -144
- package/README.md +48 -21
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +21 -70
- package/dist/cli/commands/init.js.map +1 -1
- 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/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/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/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 +116 -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 +124 -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 +382 -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 +257 -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/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/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 +10 -0
- package/dist/plugins/specweave-github/lib/github-client.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/github-client.js +24 -0
- package/dist/plugins/specweave-github/lib/github-client.js.map +1 -1
- 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/index.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/index.js.map +1 -1
- 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.map +1 -1
- package/dist/plugins/specweave-github/lib/subtask-sync.js.map +1 -1
- package/dist/plugins/specweave-github/lib/task-parser.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/task-parser.js.map +1 -1
- package/dist/plugins/specweave-github/lib/task-sync.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/task-sync.js.map +1 -1
- package/dist/plugins/specweave-github/lib/types.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/types.js.map +1 -1
- 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/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/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/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 +9 -0
- package/dist/src/cli/commands/init.d.ts.map +1 -0
- package/dist/src/cli/commands/init.js +1205 -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 +350 -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.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/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/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.d.ts +65 -0
- package/dist/src/cli/helpers/issue-tracker/github.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/github.js +426 -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 +314 -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 +107 -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 +112 -0
- package/dist/src/cli/helpers/issue-tracker/utils.d.ts.map +1 -0
- package/dist/src/cli/helpers/issue-tracker/utils.js +247 -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/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/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 +114 -0
- package/dist/src/core/increment/metadata-manager.d.ts.map +1 -0
- package/dist/src/core/increment/metadata-manager.js +320 -0
- package/dist/src/core/increment/metadata-manager.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-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 +127 -0
- package/dist/src/core/project-manager.d.ts.map +1 -0
- package/dist/src/core/project-manager.js +524 -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 +404 -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/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/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 +168 -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 +225 -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 +37 -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/sync-profile.d.ts +403 -0
- package/dist/src/core/types/sync-profile.d.ts.map +1 -0
- package/dist/src/core/types/sync-profile.js +55 -0
- package/dist/src/core/types/sync-profile.js.map +1 -0
- package/dist/src/hooks/lib/types/reflection-types.d.ts +125 -0
- package/dist/src/hooks/lib/types/reflection-types.d.ts.map +1 -0
- package/dist/src/hooks/lib/types/reflection-types.js +54 -0
- package/dist/src/hooks/lib/types/reflection-types.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.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 +403 -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 +102 -0
- package/dist/src/utils/external-resource-validator.d.ts.map +1 -0
- package/dist/src/utils/external-resource-validator.js +400 -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/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/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/external-resource-validator.d.ts.map +1 -1
- package/dist/utils/external-resource-validator.js +101 -59
- package/dist/utils/external-resource-validator.js.map +1 -1
- package/dist/utils/plugin-validator.d.ts.map +1 -1
- package/dist/utils/plugin-validator.js +0 -7
- package/dist/utils/plugin-validator.js.map +1 -1
- package/package.json +3 -2
- package/plugins/specweave/agents/reflective-reviewer/AGENT.md +535 -0
- package/plugins/specweave/hooks/post-first-increment.sh +10 -28
- package/plugins/specweave/hooks/post-increment-change.sh +94 -0
- package/plugins/specweave/hooks/post-increment-planning.sh +261 -1
- package/plugins/specweave/hooks/post-increment-status-change.sh +143 -0
- package/plugins/specweave/hooks/post-task-completion.sh +26 -0
- package/plugins/specweave/lib/hooks/git-diff-analyzer.ts +269 -0
- package/plugins/specweave/lib/hooks/invoke-translator-skill.ts +264 -0
- package/plugins/specweave/lib/hooks/prepare-reflection-context.ts +178 -0
- package/plugins/specweave/lib/hooks/reflection-config-loader.ts +156 -0
- package/plugins/specweave/lib/hooks/reflection-parser.ts +484 -0
- package/plugins/specweave/lib/hooks/reflection-prompt-builder.ts +306 -0
- package/plugins/specweave/lib/hooks/reflection-storage.ts +369 -0
- package/plugins/specweave/lib/hooks/run-self-reflection.ts +258 -0
- package/plugins/specweave/lib/hooks/sync-living-docs.ts +188 -0
- package/plugins/specweave/lib/hooks/translate-file.ts +428 -0
- package/plugins/specweave/lib/hooks/translate-living-docs.ts +224 -0
- package/plugins/specweave/lib/hooks/types/reflection-types.ts +193 -0
- package/plugins/specweave/lib/hooks/update-tasks-md.ts +256 -0
- package/plugins/specweave/skills/SKILLS-INDEX.md +2 -2
- package/plugins/specweave/skills/increment-planner/SKILL.md +8 -0
- package/plugins/specweave/skills/plugin-expert/SKILL.md +0 -4
- package/plugins/specweave/skills/plugin-installer/SKILL.md +19 -21
- package/plugins/specweave/skills/plugin-validator/SKILL.md +0 -1
- package/plugins/specweave/skills/project-kickstarter/SKILL.md +3 -3
- package/plugins/specweave/skills/spec-generator/SKILL.md +3 -3
- package/plugins/specweave-docs-preview/.claude-plugin/plugin.json +21 -0
- package/plugins/specweave-docs-preview/commands/build.md +489 -0
- package/plugins/specweave-docs-preview/commands/preview.md +330 -0
- package/plugins/specweave-docs-preview/skills/docs-preview/SKILL.md +386 -0
- package/plugins/specweave-github/commands/specweave-github-sync-from.md +147 -0
- package/plugins/specweave-github/lib/cli-sync-increment-changes.ts +33 -0
- package/plugins/specweave-github/lib/github-issue-updater.ts +449 -0
- package/plugins/specweave-github/lib/github-sync-bidirectional.ts +342 -0
- package/plugins/specweave-github/lib/github-sync-increment-changes.ts +380 -0
- package/src/templates/AGENTS.md.template +55 -9
- package/plugins/specweave/skills/translator/SKILL.md.bak +0 -172
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SpecWeave Configuration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for .specweave/config.json configuration file.
|
|
5
|
+
*/
|
|
6
|
+
import { SupportedLanguage, TranslationConfig } from '../i18n/types.js';
|
|
7
|
+
import { PluginConfig } from './plugin.js';
|
|
8
|
+
import { IncrementType } from './increment-metadata.js';
|
|
9
|
+
/**
|
|
10
|
+
* WIP Limits Configuration (v0.7.0+ Simplified)
|
|
11
|
+
*
|
|
12
|
+
* Philosophy: Default to 1 active increment (maximum focus)
|
|
13
|
+
* Allow 2 only for emergencies (hotfix interrupt)
|
|
14
|
+
* Never >2 (hard cap enforced)
|
|
15
|
+
*/
|
|
16
|
+
export interface LimitsConfig {
|
|
17
|
+
/** Maximum active increments at any time (default: 1 for focus) */
|
|
18
|
+
maxActiveIncrements?: number;
|
|
19
|
+
/** Absolute maximum active increments, never exceeded (default: 2) */
|
|
20
|
+
hardCap?: number;
|
|
21
|
+
/** Allow 2nd active increment for hotfix/bug emergencies (default: true) */
|
|
22
|
+
allowEmergencyInterrupt?: boolean;
|
|
23
|
+
/** Increment type-specific behaviors */
|
|
24
|
+
typeBehaviors?: {
|
|
25
|
+
/** Types that can interrupt existing work (emergency scenarios) */
|
|
26
|
+
canInterrupt?: (IncrementType | string)[];
|
|
27
|
+
/** Auto-abandon increments after N days of inactivity */
|
|
28
|
+
autoAbandonDays?: {
|
|
29
|
+
/** Days before experiment auto-abandons (default: 14) */
|
|
30
|
+
experiment?: number;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
/** Staleness warning thresholds */
|
|
34
|
+
staleness?: {
|
|
35
|
+
/** Warn if paused for more than N days */
|
|
36
|
+
paused?: number;
|
|
37
|
+
/** Warn if active for more than N days */
|
|
38
|
+
active?: number;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Project metadata
|
|
43
|
+
*/
|
|
44
|
+
export interface ProjectMetadata {
|
|
45
|
+
/** Project name */
|
|
46
|
+
name?: string;
|
|
47
|
+
/** Project version (semver) */
|
|
48
|
+
version?: string;
|
|
49
|
+
/** Project description */
|
|
50
|
+
description?: string;
|
|
51
|
+
/** Technology stack */
|
|
52
|
+
techStack?: string[];
|
|
53
|
+
/** Team name */
|
|
54
|
+
team?: string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Adapter configuration
|
|
58
|
+
*/
|
|
59
|
+
export interface AdapterConfig {
|
|
60
|
+
/** Default adapter to use (claude, cursor, generic) */
|
|
61
|
+
default?: 'claude' | 'cursor' | 'generic';
|
|
62
|
+
/** Additional adapter settings */
|
|
63
|
+
[key: string]: any;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Complete SpecWeave Configuration
|
|
67
|
+
*
|
|
68
|
+
* Represents the structure of .specweave/config.json
|
|
69
|
+
*/
|
|
70
|
+
export interface SpecweaveConfig {
|
|
71
|
+
/** Plugin configuration */
|
|
72
|
+
plugins?: PluginConfig;
|
|
73
|
+
/** Project metadata */
|
|
74
|
+
project?: ProjectMetadata;
|
|
75
|
+
/** Adapter configuration */
|
|
76
|
+
adapters?: AdapterConfig;
|
|
77
|
+
/** Primary language for generated content and CLI */
|
|
78
|
+
language?: SupportedLanguage;
|
|
79
|
+
/** Translation settings for multilingual support */
|
|
80
|
+
translation?: TranslationConfig;
|
|
81
|
+
/** WIP limits configuration */
|
|
82
|
+
limits?: LimitsConfig;
|
|
83
|
+
/** Allow additional properties */
|
|
84
|
+
[key: string]: any;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Default configuration values
|
|
88
|
+
*/
|
|
89
|
+
export declare const DEFAULT_CONFIG: Partial<SpecweaveConfig>;
|
|
90
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/core/types/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4EAA4E;IAC5E,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,wCAAwC;IACxC,aAAa,CAAC,EAAE;QACd,mEAAmE;QACnE,YAAY,CAAC,EAAE,CAAC,aAAa,GAAG,MAAM,CAAC,EAAE,CAAC;QAE1C,yDAAyD;QACzD,eAAe,CAAC,EAAE;YAChB,yDAAyD;YACzD,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;KACH,CAAC;IAEF,mCAAmC;IACnC,SAAS,CAAC,EAAE;QACV,0CAA0C;QAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB,0CAA0C;QAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,mBAAmB;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,+BAA+B;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IAErB,gBAAgB;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAE1C,kCAAkC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,2BAA2B;IAC3B,OAAO,CAAC,EAAE,YAAY,CAAC;IAEvB,uBAAuB;IACvB,OAAO,CAAC,EAAE,eAAe,CAAC;IAE1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,aAAa,CAAC;IAEzB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,oDAAoD;IACpD,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAEhC,+BAA+B;IAC/B,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,kCAAkC;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,CAAC,eAAe,CA0BnD,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SpecWeave Configuration Types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for .specweave/config.json configuration file.
|
|
5
|
+
*/
|
|
6
|
+
import { IncrementType } from './increment-metadata.js';
|
|
7
|
+
/**
|
|
8
|
+
* Default configuration values
|
|
9
|
+
*/
|
|
10
|
+
export const DEFAULT_CONFIG = {
|
|
11
|
+
language: 'en',
|
|
12
|
+
translation: {
|
|
13
|
+
languages: ['en'],
|
|
14
|
+
primary: 'en',
|
|
15
|
+
method: 'auto',
|
|
16
|
+
preserveFrameworkTerms: true,
|
|
17
|
+
},
|
|
18
|
+
adapters: {
|
|
19
|
+
default: 'claude',
|
|
20
|
+
},
|
|
21
|
+
limits: {
|
|
22
|
+
maxActiveIncrements: 1, // v0.7.0+: 1 active increment (maximum focus)
|
|
23
|
+
hardCap: 2, // Emergency ceiling (never >2)
|
|
24
|
+
allowEmergencyInterrupt: true, // Allow hotfix/bug to interrupt
|
|
25
|
+
typeBehaviors: {
|
|
26
|
+
canInterrupt: [IncrementType.HOTFIX, IncrementType.BUG], // Only emergencies can interrupt
|
|
27
|
+
autoAbandonDays: {
|
|
28
|
+
experiment: 14, // Auto-abandon stale experiments
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
staleness: {
|
|
32
|
+
paused: 7, // Warn if paused >7 days
|
|
33
|
+
active: 30, // Warn if active >30 days
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/core/types/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAoGxD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAA6B;IACtD,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE;QACX,SAAS,EAAE,CAAC,IAAI,CAAC;QACjB,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,MAAM;QACd,sBAAsB,EAAE,IAAI;KAC7B;IACD,QAAQ,EAAE;QACR,OAAO,EAAE,QAAQ;KAClB;IACD,MAAM,EAAE;QACN,mBAAmB,EAAE,CAAC,EAAS,8CAA8C;QAC7E,OAAO,EAAE,CAAC,EAAqB,+BAA+B;QAC9D,uBAAuB,EAAE,IAAI,EAAE,gCAAgC;QAC/D,aAAa,EAAE;YACb,YAAY,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,iCAAiC;YAC1F,eAAe,EAAE;gBACf,UAAU,EAAE,EAAE,EAAa,iCAAiC;aAC7D;SACF;QACD,SAAS,EAAE;YACT,MAAM,EAAE,CAAC,EAAoB,yBAAyB;YACtD,MAAM,EAAE,EAAE,EAAmB,0BAA0B;SACxD;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Increment Metadata Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the schema for increment metadata tracking (status, type, timestamps).
|
|
5
|
+
* Part of increment 0007: Smart Status Management
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Increment status enum
|
|
9
|
+
* Tracks the lifecycle state of an increment
|
|
10
|
+
*/
|
|
11
|
+
export declare enum IncrementStatus {
|
|
12
|
+
/** Currently being worked on */
|
|
13
|
+
ACTIVE = "active",
|
|
14
|
+
/** Temporarily stopped (blocked by external dependency, deprioritized) */
|
|
15
|
+
PAUSED = "paused",
|
|
16
|
+
/** All tasks complete, increment finished */
|
|
17
|
+
COMPLETED = "completed",
|
|
18
|
+
/** Work abandoned (requirements changed, obsolete, etc.) */
|
|
19
|
+
ABANDONED = "abandoned"
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Increment type enum
|
|
23
|
+
* Determines rules and limits applied to the increment
|
|
24
|
+
*/
|
|
25
|
+
export declare enum IncrementType {
|
|
26
|
+
/** Critical production fix (bypasses all limits) */
|
|
27
|
+
HOTFIX = "hotfix",
|
|
28
|
+
/** Standard feature development (limit: 2 active) */
|
|
29
|
+
FEATURE = "feature",
|
|
30
|
+
/** Production bug fix with SRE investigation (unlimited, urgent) */
|
|
31
|
+
BUG = "bug",
|
|
32
|
+
/** Change request from stakeholders (limit: 2 active) */
|
|
33
|
+
CHANGE_REQUEST = "change-request",
|
|
34
|
+
/** Code improvement (limit: 1 active) */
|
|
35
|
+
REFACTOR = "refactor",
|
|
36
|
+
/** POC/spike work (unlimited, auto-abandon after 14 days) */
|
|
37
|
+
EXPERIMENT = "experiment"
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Increment metadata schema
|
|
41
|
+
* Stored in .specweave/increments/{id}/metadata.json
|
|
42
|
+
*/
|
|
43
|
+
export interface IncrementMetadata {
|
|
44
|
+
/** Increment ID (e.g., "0007-smart-increment-discipline") */
|
|
45
|
+
id: string;
|
|
46
|
+
/** Current status */
|
|
47
|
+
status: IncrementStatus;
|
|
48
|
+
/** Increment type */
|
|
49
|
+
type: IncrementType;
|
|
50
|
+
/** Creation timestamp (ISO 8601) */
|
|
51
|
+
created: string;
|
|
52
|
+
/** Last activity timestamp (ISO 8601) */
|
|
53
|
+
lastActivity: string;
|
|
54
|
+
/** Reason for pausing (only if status = paused) */
|
|
55
|
+
pausedReason?: string;
|
|
56
|
+
/** Timestamp when paused (ISO 8601) */
|
|
57
|
+
pausedAt?: string;
|
|
58
|
+
/** Reason for abandoning (only if status = abandoned) */
|
|
59
|
+
abandonedReason?: string;
|
|
60
|
+
/** Timestamp when abandoned (ISO 8601) */
|
|
61
|
+
abandonedAt?: string;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Increment metadata with additional computed fields
|
|
65
|
+
* Used for rich status displays
|
|
66
|
+
*/
|
|
67
|
+
export interface IncrementMetadataExtended extends IncrementMetadata {
|
|
68
|
+
/** Progress percentage (0-100) */
|
|
69
|
+
progress?: number;
|
|
70
|
+
/** Number of completed tasks */
|
|
71
|
+
completedTasks?: number;
|
|
72
|
+
/** Total number of tasks */
|
|
73
|
+
totalTasks?: number;
|
|
74
|
+
/** Age in days since creation */
|
|
75
|
+
ageInDays?: number;
|
|
76
|
+
/** Days since paused (if paused) */
|
|
77
|
+
daysPaused?: number;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Valid status transitions
|
|
81
|
+
* Enforces increment lifecycle rules
|
|
82
|
+
*/
|
|
83
|
+
export declare const VALID_TRANSITIONS: Record<IncrementStatus, IncrementStatus[]>;
|
|
84
|
+
/**
|
|
85
|
+
* Type-based limits
|
|
86
|
+
* Maximum active increments per type
|
|
87
|
+
*
|
|
88
|
+
* null = unlimited (no limit enforcement)
|
|
89
|
+
* User can configure per-project in .specweave/config.json
|
|
90
|
+
*/
|
|
91
|
+
export declare const TYPE_LIMITS: Record<IncrementType, number | null>;
|
|
92
|
+
/**
|
|
93
|
+
* Staleness thresholds (days)
|
|
94
|
+
* When to warn about stale increments
|
|
95
|
+
*/
|
|
96
|
+
export declare const STALENESS_THRESHOLDS: {
|
|
97
|
+
/** Warn if paused for more than this many days */
|
|
98
|
+
PAUSED: number;
|
|
99
|
+
/** Warn if active for more than this many days */
|
|
100
|
+
ACTIVE: number;
|
|
101
|
+
/** Auto-abandon experiments after this many days */
|
|
102
|
+
EXPERIMENT: number;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Default metadata for new increments
|
|
106
|
+
*/
|
|
107
|
+
export declare function createDefaultMetadata(id: string, type?: IncrementType): IncrementMetadata;
|
|
108
|
+
/**
|
|
109
|
+
* Check if status transition is valid
|
|
110
|
+
*/
|
|
111
|
+
export declare function isValidTransition(from: IncrementStatus, to: IncrementStatus): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Check if increment is stale (paused too long or active too long)
|
|
114
|
+
*/
|
|
115
|
+
export declare function isStale(metadata: IncrementMetadata): boolean;
|
|
116
|
+
/**
|
|
117
|
+
* Check if increment should be auto-abandoned (experiments only)
|
|
118
|
+
*/
|
|
119
|
+
export declare function shouldAutoAbandon(metadata: IncrementMetadata): boolean;
|
|
120
|
+
//# sourceMappingURL=increment-metadata.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"increment-metadata.d.ts","sourceRoot":"","sources":["../../../../src/core/types/increment-metadata.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,oBAAY,eAAe;IACzB,gCAAgC;IAChC,MAAM,WAAW;IAEjB,0EAA0E;IAC1E,MAAM,WAAW;IAEjB,6CAA6C;IAC7C,SAAS,cAAc;IAEvB,4DAA4D;IAC5D,SAAS,cAAc;CACxB;AAED;;;GAGG;AACH,oBAAY,aAAa;IACvB,oDAAoD;IACpD,MAAM,WAAW;IAEjB,qDAAqD;IACrD,OAAO,YAAY;IAEnB,oEAAoE;IACpE,GAAG,QAAQ;IAEX,yDAAyD;IACzD,cAAc,mBAAmB;IAEjC,yCAAyC;IACzC,QAAQ,aAAa;IAErB,6DAA6D;IAC7D,UAAU,eAAe;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,6DAA6D;IAC7D,EAAE,EAAE,MAAM,CAAC;IAEX,qBAAqB;IACrB,MAAM,EAAE,eAAe,CAAC;IAExB,qBAAqB;IACrB,IAAI,EAAE,aAAa,CAAC;IAEpB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAEhB,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IAErB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,0CAA0C;IAC1C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAClE,kCAAkC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,gCAAgC;IAChC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,4BAA4B;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,eAAe,EAAE,eAAe,EAAE,CAgBxE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAO5D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oBAAoB;IAC/B,kDAAkD;;IAGlD,kDAAkD;;IAGlD,oDAAoD;;CAErD,CAAC;AAEF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,GAAE,aAAqC,GAAG,iBAAiB,CAUhH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,EAAE,EAAE,eAAe,GAAG,OAAO,CAGrF;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAgB5D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAUtE"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Increment Metadata Types
|
|
3
|
+
*
|
|
4
|
+
* Defines the schema for increment metadata tracking (status, type, timestamps).
|
|
5
|
+
* Part of increment 0007: Smart Status Management
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Increment status enum
|
|
9
|
+
* Tracks the lifecycle state of an increment
|
|
10
|
+
*/
|
|
11
|
+
export var IncrementStatus;
|
|
12
|
+
(function (IncrementStatus) {
|
|
13
|
+
/** Currently being worked on */
|
|
14
|
+
IncrementStatus["ACTIVE"] = "active";
|
|
15
|
+
/** Temporarily stopped (blocked by external dependency, deprioritized) */
|
|
16
|
+
IncrementStatus["PAUSED"] = "paused";
|
|
17
|
+
/** All tasks complete, increment finished */
|
|
18
|
+
IncrementStatus["COMPLETED"] = "completed";
|
|
19
|
+
/** Work abandoned (requirements changed, obsolete, etc.) */
|
|
20
|
+
IncrementStatus["ABANDONED"] = "abandoned";
|
|
21
|
+
})(IncrementStatus || (IncrementStatus = {}));
|
|
22
|
+
/**
|
|
23
|
+
* Increment type enum
|
|
24
|
+
* Determines rules and limits applied to the increment
|
|
25
|
+
*/
|
|
26
|
+
export var IncrementType;
|
|
27
|
+
(function (IncrementType) {
|
|
28
|
+
/** Critical production fix (bypasses all limits) */
|
|
29
|
+
IncrementType["HOTFIX"] = "hotfix";
|
|
30
|
+
/** Standard feature development (limit: 2 active) */
|
|
31
|
+
IncrementType["FEATURE"] = "feature";
|
|
32
|
+
/** Production bug fix with SRE investigation (unlimited, urgent) */
|
|
33
|
+
IncrementType["BUG"] = "bug";
|
|
34
|
+
/** Change request from stakeholders (limit: 2 active) */
|
|
35
|
+
IncrementType["CHANGE_REQUEST"] = "change-request";
|
|
36
|
+
/** Code improvement (limit: 1 active) */
|
|
37
|
+
IncrementType["REFACTOR"] = "refactor";
|
|
38
|
+
/** POC/spike work (unlimited, auto-abandon after 14 days) */
|
|
39
|
+
IncrementType["EXPERIMENT"] = "experiment";
|
|
40
|
+
})(IncrementType || (IncrementType = {}));
|
|
41
|
+
/**
|
|
42
|
+
* Valid status transitions
|
|
43
|
+
* Enforces increment lifecycle rules
|
|
44
|
+
*/
|
|
45
|
+
export const VALID_TRANSITIONS = {
|
|
46
|
+
[IncrementStatus.ACTIVE]: [
|
|
47
|
+
IncrementStatus.PAUSED,
|
|
48
|
+
IncrementStatus.COMPLETED,
|
|
49
|
+
IncrementStatus.ABANDONED
|
|
50
|
+
],
|
|
51
|
+
[IncrementStatus.PAUSED]: [
|
|
52
|
+
IncrementStatus.ACTIVE,
|
|
53
|
+
IncrementStatus.ABANDONED
|
|
54
|
+
],
|
|
55
|
+
[IncrementStatus.COMPLETED]: [
|
|
56
|
+
// Completed is terminal (cannot transition out)
|
|
57
|
+
],
|
|
58
|
+
[IncrementStatus.ABANDONED]: [
|
|
59
|
+
IncrementStatus.ACTIVE // Can un-abandon if needed (rare)
|
|
60
|
+
]
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Type-based limits
|
|
64
|
+
* Maximum active increments per type
|
|
65
|
+
*
|
|
66
|
+
* null = unlimited (no limit enforcement)
|
|
67
|
+
* User can configure per-project in .specweave/config.json
|
|
68
|
+
*/
|
|
69
|
+
export const TYPE_LIMITS = {
|
|
70
|
+
[IncrementType.HOTFIX]: null, // Unlimited (emergency work)
|
|
71
|
+
[IncrementType.FEATURE]: 2, // Max 2 active (context switching cost)
|
|
72
|
+
[IncrementType.BUG]: null, // Unlimited (production issues)
|
|
73
|
+
[IncrementType.CHANGE_REQUEST]: 2, // Max 2 active (stakeholder-driven)
|
|
74
|
+
[IncrementType.REFACTOR]: 1, // Max 1 active (needs focus)
|
|
75
|
+
[IncrementType.EXPERIMENT]: null // Unlimited (exploratory work)
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Staleness thresholds (days)
|
|
79
|
+
* When to warn about stale increments
|
|
80
|
+
*/
|
|
81
|
+
export const STALENESS_THRESHOLDS = {
|
|
82
|
+
/** Warn if paused for more than this many days */
|
|
83
|
+
PAUSED: 7,
|
|
84
|
+
/** Warn if active for more than this many days */
|
|
85
|
+
ACTIVE: 30,
|
|
86
|
+
/** Auto-abandon experiments after this many days */
|
|
87
|
+
EXPERIMENT: 14
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Default metadata for new increments
|
|
91
|
+
*/
|
|
92
|
+
export function createDefaultMetadata(id, type = IncrementType.FEATURE) {
|
|
93
|
+
const now = new Date().toISOString();
|
|
94
|
+
return {
|
|
95
|
+
id,
|
|
96
|
+
status: IncrementStatus.ACTIVE,
|
|
97
|
+
type,
|
|
98
|
+
created: now,
|
|
99
|
+
lastActivity: now
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Check if status transition is valid
|
|
104
|
+
*/
|
|
105
|
+
export function isValidTransition(from, to) {
|
|
106
|
+
const allowedTransitions = VALID_TRANSITIONS[from];
|
|
107
|
+
return allowedTransitions.includes(to);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Check if increment is stale (paused too long or active too long)
|
|
111
|
+
*/
|
|
112
|
+
export function isStale(metadata) {
|
|
113
|
+
const now = new Date();
|
|
114
|
+
if (metadata.status === IncrementStatus.PAUSED && metadata.pausedAt) {
|
|
115
|
+
const pausedDate = new Date(metadata.pausedAt);
|
|
116
|
+
const daysPaused = (now.getTime() - pausedDate.getTime()) / (1000 * 60 * 60 * 24);
|
|
117
|
+
return daysPaused > STALENESS_THRESHOLDS.PAUSED;
|
|
118
|
+
}
|
|
119
|
+
if (metadata.status === IncrementStatus.ACTIVE) {
|
|
120
|
+
const createdDate = new Date(metadata.created);
|
|
121
|
+
const daysActive = (now.getTime() - createdDate.getTime()) / (1000 * 60 * 60 * 24);
|
|
122
|
+
return daysActive > STALENESS_THRESHOLDS.ACTIVE;
|
|
123
|
+
}
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Check if increment should be auto-abandoned (experiments only)
|
|
128
|
+
*/
|
|
129
|
+
export function shouldAutoAbandon(metadata) {
|
|
130
|
+
if (metadata.type !== IncrementType.EXPERIMENT) {
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
const now = new Date();
|
|
134
|
+
const lastActivityDate = new Date(metadata.lastActivity);
|
|
135
|
+
const daysSinceActivity = (now.getTime() - lastActivityDate.getTime()) / (1000 * 60 * 60 * 24);
|
|
136
|
+
return daysSinceActivity > STALENESS_THRESHOLDS.EXPERIMENT;
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=increment-metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"increment-metadata.js","sourceRoot":"","sources":["../../../../src/core/types/increment-metadata.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Plugin System Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* Defines interfaces and types for Claude Code's native plugin architecture.
|
|
5
|
+
* Follows Claude's official plugin.json schema (Anthropic standards).
|
|
6
|
+
*
|
|
7
|
+
* @module core/types/plugin
|
|
8
|
+
* @version 0.6.1
|
|
9
|
+
* @see https://docs.claude.com/en/docs/claude-code/plugins
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Claude Plugin Manifest - Official plugin.json format
|
|
13
|
+
*
|
|
14
|
+
* Loaded from .claude-plugin/plugin.json in each plugin directory.
|
|
15
|
+
* Follows Claude's official schema (NOT SpecWeave custom format).
|
|
16
|
+
*
|
|
17
|
+
* @see https://github.com/anthropics/claude-code/blob/main/.claude-plugin/marketplace.json
|
|
18
|
+
*/
|
|
19
|
+
export interface PluginManifest {
|
|
20
|
+
/** Plugin name (e.g., "specweave-github") */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Human-readable description */
|
|
23
|
+
description: string;
|
|
24
|
+
/** Semantic version (e.g., "1.0.0") */
|
|
25
|
+
version: string;
|
|
26
|
+
/** Plugin author (required by Claude) */
|
|
27
|
+
author: {
|
|
28
|
+
/** Author name */
|
|
29
|
+
name: string;
|
|
30
|
+
/** Author email (optional) */
|
|
31
|
+
email?: string;
|
|
32
|
+
/** Author URL (optional) */
|
|
33
|
+
url?: string;
|
|
34
|
+
};
|
|
35
|
+
/** Plugin homepage (optional) */
|
|
36
|
+
homepage?: string;
|
|
37
|
+
/** Repository info (optional) */
|
|
38
|
+
repository?: {
|
|
39
|
+
/** Repository type (e.g., "git") */
|
|
40
|
+
type: string;
|
|
41
|
+
/** Repository URL */
|
|
42
|
+
url: string;
|
|
43
|
+
};
|
|
44
|
+
/** Keywords for discoverability (optional) */
|
|
45
|
+
keywords?: string[];
|
|
46
|
+
/** Plugin dependencies (SpecWeave format - object with plugins array) */
|
|
47
|
+
dependencies?: {
|
|
48
|
+
/** List of required plugin names */
|
|
49
|
+
plugins?: string[];
|
|
50
|
+
};
|
|
51
|
+
/** License information (SpecWeave extension) */
|
|
52
|
+
license?: string;
|
|
53
|
+
/** Required SpecWeave core version (SpecWeave extension) */
|
|
54
|
+
specweave_core_version?: string;
|
|
55
|
+
/** Components provided by plugin (SpecWeave extension) - arrays of component names */
|
|
56
|
+
provides?: {
|
|
57
|
+
/** List of skill names */
|
|
58
|
+
skills?: string[];
|
|
59
|
+
/** List of agent names */
|
|
60
|
+
agents?: string[];
|
|
61
|
+
/** List of command names */
|
|
62
|
+
commands?: string[];
|
|
63
|
+
/** List of hook names */
|
|
64
|
+
hooks?: string[];
|
|
65
|
+
};
|
|
66
|
+
/** Nested plugins or plugin list (SpecWeave extension) */
|
|
67
|
+
plugins?: string[];
|
|
68
|
+
/** Auto-detection rules (SpecWeave extension) */
|
|
69
|
+
auto_detect?: {
|
|
70
|
+
/** File patterns to detect (e.g., ".git/config") */
|
|
71
|
+
files?: string[];
|
|
72
|
+
/** Package.json dependencies to check */
|
|
73
|
+
packages?: string[];
|
|
74
|
+
/** Environment variables to check (was env_vars) */
|
|
75
|
+
env?: string[];
|
|
76
|
+
/** Legacy name for env */
|
|
77
|
+
env_vars?: string[];
|
|
78
|
+
/** Git remotes to check (e.g., "github.com") */
|
|
79
|
+
git_remotes?: string[];
|
|
80
|
+
/** Legacy name for git_remotes */
|
|
81
|
+
git_remote_pattern?: string;
|
|
82
|
+
};
|
|
83
|
+
/** Plugin triggers (SpecWeave extension) */
|
|
84
|
+
triggers?: string[];
|
|
85
|
+
/** Credits and acknowledgments (SpecWeave extension) */
|
|
86
|
+
credits?: {
|
|
87
|
+
/** Original author (was original_author) */
|
|
88
|
+
author?: string;
|
|
89
|
+
/** Legacy name for author */
|
|
90
|
+
original_author?: string;
|
|
91
|
+
/** Contributors */
|
|
92
|
+
contributors?: string[];
|
|
93
|
+
/** Inspiration or based on (was based_on) */
|
|
94
|
+
inspiration?: string;
|
|
95
|
+
/** Legacy name for inspiration */
|
|
96
|
+
based_on?: string;
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Skill - Auto-activating capability
|
|
101
|
+
*/
|
|
102
|
+
export interface Skill {
|
|
103
|
+
/** Skill name (unique within plugin) */
|
|
104
|
+
name: string;
|
|
105
|
+
/** Path to SKILL.md file */
|
|
106
|
+
path: string;
|
|
107
|
+
/** Description from SKILL.md frontmatter */
|
|
108
|
+
description: string;
|
|
109
|
+
/** Test cases for this skill */
|
|
110
|
+
testCases?: TestCase[];
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Agent - Specialized role with isolated context
|
|
114
|
+
*/
|
|
115
|
+
export interface Agent {
|
|
116
|
+
/** Agent name (unique within plugin) */
|
|
117
|
+
name: string;
|
|
118
|
+
/** Path to AGENT.md file */
|
|
119
|
+
path: string;
|
|
120
|
+
/** System prompt from AGENT.md */
|
|
121
|
+
systemPrompt: string;
|
|
122
|
+
/** Agent capabilities */
|
|
123
|
+
capabilities: string[];
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Command - Slash command (e.g., /specweave.github.sync)
|
|
127
|
+
*/
|
|
128
|
+
export interface Command {
|
|
129
|
+
/** Command name (e.g., "github-sync") */
|
|
130
|
+
name: string;
|
|
131
|
+
/** Path to command.md file */
|
|
132
|
+
path: string;
|
|
133
|
+
/** Description of what the command does */
|
|
134
|
+
description: string;
|
|
135
|
+
/** Command prompt/template */
|
|
136
|
+
prompt: string;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Test Case - YAML-based test case for skills
|
|
140
|
+
*/
|
|
141
|
+
export interface TestCase {
|
|
142
|
+
/** Test case ID (e.g., "TC-001") */
|
|
143
|
+
id: string;
|
|
144
|
+
/** Test description */
|
|
145
|
+
description: string;
|
|
146
|
+
/** Input for the skill */
|
|
147
|
+
input: string;
|
|
148
|
+
/** Expected output pattern */
|
|
149
|
+
expected: string;
|
|
150
|
+
/** Path to test case file */
|
|
151
|
+
path: string;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Plugin - Complete plugin with all components loaded
|
|
155
|
+
*/
|
|
156
|
+
export interface Plugin {
|
|
157
|
+
/** Plugin manifest (metadata) */
|
|
158
|
+
manifest: PluginManifest;
|
|
159
|
+
/** Absolute path to plugin directory */
|
|
160
|
+
path: string;
|
|
161
|
+
/** Skills provided by this plugin */
|
|
162
|
+
skills: Skill[];
|
|
163
|
+
/** Agents provided by this plugin */
|
|
164
|
+
agents: Agent[];
|
|
165
|
+
/** Commands provided by this plugin */
|
|
166
|
+
commands: Command[];
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Plugin Info - Lightweight plugin metadata (for listing)
|
|
170
|
+
*/
|
|
171
|
+
export interface PluginInfo {
|
|
172
|
+
/** Plugin name */
|
|
173
|
+
name: string;
|
|
174
|
+
/** Plugin version */
|
|
175
|
+
version: string;
|
|
176
|
+
/** Description */
|
|
177
|
+
description: string;
|
|
178
|
+
/** Path to plugin directory */
|
|
179
|
+
path: string;
|
|
180
|
+
/** Is this plugin currently enabled? */
|
|
181
|
+
enabled: boolean;
|
|
182
|
+
/** Skill count */
|
|
183
|
+
skillCount: number;
|
|
184
|
+
/** Agent count */
|
|
185
|
+
agentCount: number;
|
|
186
|
+
/** Command count */
|
|
187
|
+
commandCount: number;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Validation Result - Result of manifest validation
|
|
191
|
+
*/
|
|
192
|
+
export interface ValidationResult {
|
|
193
|
+
/** Is the manifest valid? */
|
|
194
|
+
valid: boolean;
|
|
195
|
+
/** Validation errors (if any) */
|
|
196
|
+
errors: string[];
|
|
197
|
+
/** Warnings (non-fatal issues) */
|
|
198
|
+
warnings: string[];
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Detection Result - Result of plugin auto-detection
|
|
202
|
+
*/
|
|
203
|
+
export interface DetectionResult {
|
|
204
|
+
/** Detected plugin name */
|
|
205
|
+
pluginName: string;
|
|
206
|
+
/** Detection confidence (0-1) */
|
|
207
|
+
confidence: number;
|
|
208
|
+
/** Reason for detection */
|
|
209
|
+
reason: string;
|
|
210
|
+
/** What triggered detection (file, package, env var, etc.) */
|
|
211
|
+
trigger: string;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Plugin Config - User's plugin configuration
|
|
215
|
+
*
|
|
216
|
+
* Stored in .specweave/config.yaml
|
|
217
|
+
*/
|
|
218
|
+
export interface PluginConfig {
|
|
219
|
+
/** List of enabled plugin names */
|
|
220
|
+
enabled: string[];
|
|
221
|
+
/** Plugin-specific settings */
|
|
222
|
+
settings?: {
|
|
223
|
+
[pluginName: string]: Record<string, any>;
|
|
224
|
+
};
|
|
225
|
+
}
|
|
226
|
+
/**
|
|
227
|
+
* Plugin Load Options - Options for loading a plugin
|
|
228
|
+
*/
|
|
229
|
+
export interface PluginLoadOptions {
|
|
230
|
+
/** Force reload even if already loaded */
|
|
231
|
+
force?: boolean;
|
|
232
|
+
/** Skip dependency checking */
|
|
233
|
+
skipDependencies?: boolean;
|
|
234
|
+
/** Validate plugin integrity */
|
|
235
|
+
validate?: boolean;
|
|
236
|
+
}
|
|
237
|
+
/**
|
|
238
|
+
* Plugin Unload Options - Options for unloading a plugin
|
|
239
|
+
*/
|
|
240
|
+
export interface PluginUnloadOptions {
|
|
241
|
+
/** Remove plugin files (vs. just marking as disabled) */
|
|
242
|
+
remove?: boolean;
|
|
243
|
+
/** Force unload even if other plugins depend on it */
|
|
244
|
+
force?: boolean;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Plugin Dependency - Dependency information
|
|
248
|
+
*/
|
|
249
|
+
export interface PluginDependency {
|
|
250
|
+
/** Plugin name */
|
|
251
|
+
name: string;
|
|
252
|
+
/** Version requirement (e.g., ">=1.0.0") */
|
|
253
|
+
version?: string;
|
|
254
|
+
/** Is this dependency optional? */
|
|
255
|
+
optional?: boolean;
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Plugin Error - Custom error for plugin operations
|
|
259
|
+
*/
|
|
260
|
+
export declare class PluginError extends Error {
|
|
261
|
+
pluginName?: string;
|
|
262
|
+
code?: string;
|
|
263
|
+
constructor(message: string, pluginName?: string, code?: string);
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Plugin Manifest Validation Error
|
|
267
|
+
*/
|
|
268
|
+
export declare class ManifestValidationError extends PluginError {
|
|
269
|
+
constructor(message: string, pluginName?: string);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Plugin Not Found Error
|
|
273
|
+
*/
|
|
274
|
+
export declare class PluginNotFoundError extends PluginError {
|
|
275
|
+
constructor(pluginName: string);
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* Plugin Dependency Error
|
|
279
|
+
*/
|
|
280
|
+
export declare class PluginDependencyError extends PluginError {
|
|
281
|
+
constructor(message: string, pluginName?: string);
|
|
282
|
+
}
|
|
283
|
+
//# sourceMappingURL=plugin.d.ts.map
|