specweave 0.10.1 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +3 -3
- package/CLAUDE.md +184 -288
- package/README.md +48 -21
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +75 -113
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/helpers/issue-tracker/index.d.ts.map +1 -1
- package/dist/cli/helpers/issue-tracker/index.js +39 -0
- package/dist/cli/helpers/issue-tracker/index.js.map +1 -1
- package/dist/cli/helpers/issue-tracker/jira.d.ts.map +1 -1
- package/dist/cli/helpers/issue-tracker/jira.js +2 -9
- package/dist/cli/helpers/issue-tracker/jira.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/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-planning.sh +261 -1
- 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 +147 -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 +21 -92
- package/plugins/specweave/skills/plugin-expert/SKILL.md +0 -4
- package/plugins/specweave/skills/plugin-installer/SKILL.md +41 -28
- 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-ado/agents/ado-manager/AGENT.md +2 -0
- package/plugins/specweave-ado/commands/specweave-ado-sync.md +102 -9
- package/plugins/specweave-ado/skills/ado-sync/SKILL.md +7 -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/agents/github-manager/AGENT.md +14 -4
- package/plugins/specweave-github/commands/specweave-github-sync.md +60 -11
- package/plugins/specweave-github/skills/github-sync/SKILL.md +3 -1
- package/plugins/specweave-jira/agents/jira-manager/AGENT.md +18 -8
- package/plugins/specweave-jira/commands/specweave-jira-sync.md +62 -19
- package/plugins/specweave-jira/skills/jira-sync/SKILL.md +5 -3
- package/plugins/specweave/skills/translator/SKILL.md.bak +0 -172
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Reflection Engine
|
|
3
|
+
*
|
|
4
|
+
* Orchestrates the self-reflection process:
|
|
5
|
+
* 1. Load configuration
|
|
6
|
+
* 2. Get modified files
|
|
7
|
+
* 3. Build prompt
|
|
8
|
+
* 4. Invoke reflective-reviewer agent
|
|
9
|
+
* 5. Parse response
|
|
10
|
+
* 6. Store reflection
|
|
11
|
+
*
|
|
12
|
+
* @module run-self-reflection
|
|
13
|
+
*/
|
|
14
|
+
import { ReflectionContext, ReflectionExecutionResult } from './types/reflection-types';
|
|
15
|
+
/**
|
|
16
|
+
* Run self-reflection analysis
|
|
17
|
+
* Main entry point for the reflection system
|
|
18
|
+
*
|
|
19
|
+
* @param context Reflection context with increment, task, and files
|
|
20
|
+
* @returns Reflection execution result (success or error)
|
|
21
|
+
*/
|
|
22
|
+
export declare function runSelfReflection(context: ReflectionContext): Promise<ReflectionExecutionResult>;
|
|
23
|
+
/**
|
|
24
|
+
* Create reflection context from hook environment
|
|
25
|
+
* Helper function for hook integration
|
|
26
|
+
*
|
|
27
|
+
* @param incrementId Increment identifier
|
|
28
|
+
* @param taskId Task identifier
|
|
29
|
+
* @param projectRoot Project root directory (optional, auto-detected)
|
|
30
|
+
* @returns Reflection context ready for runSelfReflection
|
|
31
|
+
*/
|
|
32
|
+
export declare function createReflectionContext(incrementId: string, taskId: string, projectRoot?: string): ReflectionContext;
|
|
33
|
+
/**
|
|
34
|
+
* Run reflection with automatic context creation
|
|
35
|
+
* Convenience function for hook integration
|
|
36
|
+
*
|
|
37
|
+
* @param incrementId Increment identifier
|
|
38
|
+
* @param taskId Task identifier
|
|
39
|
+
* @param projectRoot Project root directory (optional)
|
|
40
|
+
* @returns Reflection execution result
|
|
41
|
+
*/
|
|
42
|
+
export declare function runReflectionAuto(incrementId: string, taskId: string, projectRoot?: string): Promise<ReflectionExecutionResult>;
|
|
43
|
+
//# sourceMappingURL=run-self-reflection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-self-reflection.d.ts","sourceRoot":"","sources":["../../../src/hooks/lib/run-self-reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EAG1B,MAAM,0BAA0B,CAAC;AAuFlC;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,yBAAyB,CAAC,CA2FpC;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,iBAAiB,CAanB;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,yBAAyB,CAAC,CAGpC"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core Reflection Engine
|
|
3
|
+
*
|
|
4
|
+
* Orchestrates the self-reflection process:
|
|
5
|
+
* 1. Load configuration
|
|
6
|
+
* 2. Get modified files
|
|
7
|
+
* 3. Build prompt
|
|
8
|
+
* 4. Invoke reflective-reviewer agent
|
|
9
|
+
* 5. Parse response
|
|
10
|
+
* 6. Store reflection
|
|
11
|
+
*
|
|
12
|
+
* @module run-self-reflection
|
|
13
|
+
*/
|
|
14
|
+
import { loadAndValidateReflectionConfig } from './reflection-config-loader';
|
|
15
|
+
import { getModifiedFiles, getModifiedFilesSummary } from './git-diff-analyzer';
|
|
16
|
+
import { buildReflectionPrompt, estimatePromptTokens } from './reflection-prompt-builder';
|
|
17
|
+
import { parseReflectionMarkdown, validateReflectionResult } from './reflection-parser';
|
|
18
|
+
import { saveReflection } from './reflection-storage';
|
|
19
|
+
import { ReflectionMode, ReflectionModel } from './types/reflection-types';
|
|
20
|
+
/**
|
|
21
|
+
* Check if reflection should run for the current context
|
|
22
|
+
*
|
|
23
|
+
* @param context Reflection context with config and modified files
|
|
24
|
+
* @returns True if reflection should run
|
|
25
|
+
*/
|
|
26
|
+
function shouldRunReflection(context) {
|
|
27
|
+
const { config, modifiedFiles } = context;
|
|
28
|
+
// Check if reflection is enabled
|
|
29
|
+
if (!config.enabled) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
// Check mode
|
|
33
|
+
if (config.mode === ReflectionMode.DISABLED) {
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
if (config.mode === ReflectionMode.MANUAL) {
|
|
37
|
+
// Manual mode requires explicit invocation
|
|
38
|
+
// This function is only called in auto mode, so skip
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
// Check if there are modified files to analyze
|
|
42
|
+
if (modifiedFiles.length === 0) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Estimate reflection cost based on model and prompt size
|
|
49
|
+
*
|
|
50
|
+
* @param model Reflection model (haiku, sonnet, opus)
|
|
51
|
+
* @param promptTokens Estimated prompt token count
|
|
52
|
+
* @param responseTokens Estimated response token count (default: 2000)
|
|
53
|
+
* @returns Estimated cost in USD
|
|
54
|
+
*/
|
|
55
|
+
function estimateReflectionCost(model, promptTokens, responseTokens = 2000) {
|
|
56
|
+
// Pricing per 1M tokens (as of Nov 2025)
|
|
57
|
+
const pricing = {
|
|
58
|
+
[ReflectionModel.HAIKU]: { input: 0.80, output: 4.00 },
|
|
59
|
+
[ReflectionModel.SONNET]: { input: 3.00, output: 15.00 },
|
|
60
|
+
[ReflectionModel.OPUS]: { input: 15.00, output: 75.00 }
|
|
61
|
+
};
|
|
62
|
+
const modelPricing = pricing[model];
|
|
63
|
+
const inputCost = (promptTokens / 1000000) * modelPricing.input;
|
|
64
|
+
const outputCost = (responseTokens / 1000000) * modelPricing.output;
|
|
65
|
+
return inputCost + outputCost;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Invoke reflective-reviewer agent to analyze code
|
|
69
|
+
*
|
|
70
|
+
* @param prompt Reflection prompt
|
|
71
|
+
* @param model Model to use (haiku, sonnet, opus)
|
|
72
|
+
* @returns Agent response (markdown reflection)
|
|
73
|
+
*/
|
|
74
|
+
async function invokeReflectiveReviewerAgent(prompt, model) {
|
|
75
|
+
// NOTE: This is a placeholder for agent invocation
|
|
76
|
+
// In the real implementation, this would use Claude Code's Task tool
|
|
77
|
+
// to invoke the specweave:reflective-reviewer:reflective-reviewer agent
|
|
78
|
+
//
|
|
79
|
+
// For now, we'll return a mock response to enable testing
|
|
80
|
+
// The actual implementation will be in the hook integration (T-008)
|
|
81
|
+
throw new Error('Agent invocation not implemented yet. ' +
|
|
82
|
+
'This function will be implemented in hook integration (T-008). ' +
|
|
83
|
+
'Call this from the post-task-completion hook using the Task tool.');
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Run self-reflection analysis
|
|
87
|
+
* Main entry point for the reflection system
|
|
88
|
+
*
|
|
89
|
+
* @param context Reflection context with increment, task, and files
|
|
90
|
+
* @returns Reflection execution result (success or error)
|
|
91
|
+
*/
|
|
92
|
+
export async function runSelfReflection(context) {
|
|
93
|
+
const { incrementId, taskId, modifiedFiles, config } = context;
|
|
94
|
+
const startTime = Date.now();
|
|
95
|
+
try {
|
|
96
|
+
// Step 1: Check if reflection should run
|
|
97
|
+
if (!shouldRunReflection(context)) {
|
|
98
|
+
return {
|
|
99
|
+
success: true,
|
|
100
|
+
result: undefined,
|
|
101
|
+
error: undefined
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
// Step 2: Build reflection prompt
|
|
105
|
+
const prompt = buildReflectionPrompt({
|
|
106
|
+
taskId,
|
|
107
|
+
taskName: `Task ${taskId}`, // Will be enhanced with actual task name in hook
|
|
108
|
+
modifiedFiles,
|
|
109
|
+
config,
|
|
110
|
+
incrementId,
|
|
111
|
+
includeFullDiff: false // Use simplified prompt for token efficiency
|
|
112
|
+
});
|
|
113
|
+
// Step 3: Estimate cost
|
|
114
|
+
const promptTokens = estimatePromptTokens(prompt);
|
|
115
|
+
const estimatedCost = estimateReflectionCost(config.model, promptTokens);
|
|
116
|
+
// Step 4: Invoke reflective-reviewer agent
|
|
117
|
+
const agentResponse = await invokeReflectiveReviewerAgent(prompt, config.model);
|
|
118
|
+
// Step 5: Parse response
|
|
119
|
+
const endTime = Date.now();
|
|
120
|
+
const reflectionTime = Math.round((endTime - startTime) / 1000); // seconds
|
|
121
|
+
const reflectionResult = parseReflectionMarkdown(agentResponse, `Task ${taskId}`, config.model, reflectionTime, estimatedCost);
|
|
122
|
+
// Step 6: Add file modification stats
|
|
123
|
+
const fileStats = getModifiedFilesSummary(modifiedFiles);
|
|
124
|
+
reflectionResult.filesModified = {
|
|
125
|
+
count: fileStats.count,
|
|
126
|
+
linesAdded: fileStats.linesAdded,
|
|
127
|
+
linesRemoved: fileStats.linesRemoved
|
|
128
|
+
};
|
|
129
|
+
// Step 7: Validate reflection result
|
|
130
|
+
const validation = validateReflectionResult(reflectionResult);
|
|
131
|
+
if (!validation.valid) {
|
|
132
|
+
return {
|
|
133
|
+
success: false,
|
|
134
|
+
error: {
|
|
135
|
+
message: 'Reflection validation failed',
|
|
136
|
+
code: 'VALIDATION_ERROR',
|
|
137
|
+
details: validation.errors
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
// Step 8: Store reflection (if enabled)
|
|
142
|
+
if (config.storeReflections) {
|
|
143
|
+
try {
|
|
144
|
+
saveReflection(reflectionResult, incrementId, taskId);
|
|
145
|
+
}
|
|
146
|
+
catch (storageError) {
|
|
147
|
+
// Storage failure shouldn't fail the entire reflection
|
|
148
|
+
console.warn(`Failed to store reflection: ${storageError.message}`);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// Step 9: Return success
|
|
152
|
+
return {
|
|
153
|
+
success: true,
|
|
154
|
+
result: reflectionResult
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
catch (error) {
|
|
158
|
+
// Graceful degradation: Return error but don't throw
|
|
159
|
+
return {
|
|
160
|
+
success: false,
|
|
161
|
+
error: {
|
|
162
|
+
message: error.message || 'Unknown error during reflection',
|
|
163
|
+
code: 'REFLECTION_ERROR',
|
|
164
|
+
details: error.stack
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Create reflection context from hook environment
|
|
171
|
+
* Helper function for hook integration
|
|
172
|
+
*
|
|
173
|
+
* @param incrementId Increment identifier
|
|
174
|
+
* @param taskId Task identifier
|
|
175
|
+
* @param projectRoot Project root directory (optional, auto-detected)
|
|
176
|
+
* @returns Reflection context ready for runSelfReflection
|
|
177
|
+
*/
|
|
178
|
+
export function createReflectionContext(incrementId, taskId, projectRoot) {
|
|
179
|
+
// Load and validate configuration
|
|
180
|
+
const config = loadAndValidateReflectionConfig(projectRoot);
|
|
181
|
+
// Get modified files from git
|
|
182
|
+
const modifiedFiles = getModifiedFiles(projectRoot);
|
|
183
|
+
return {
|
|
184
|
+
incrementId,
|
|
185
|
+
taskId,
|
|
186
|
+
modifiedFiles,
|
|
187
|
+
config
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Run reflection with automatic context creation
|
|
192
|
+
* Convenience function for hook integration
|
|
193
|
+
*
|
|
194
|
+
* @param incrementId Increment identifier
|
|
195
|
+
* @param taskId Task identifier
|
|
196
|
+
* @param projectRoot Project root directory (optional)
|
|
197
|
+
* @returns Reflection execution result
|
|
198
|
+
*/
|
|
199
|
+
export async function runReflectionAuto(incrementId, taskId, projectRoot) {
|
|
200
|
+
const context = createReflectionContext(incrementId, taskId, projectRoot);
|
|
201
|
+
return runSelfReflection(context);
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=run-self-reflection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-self-reflection.js","sourceRoot":"","sources":["../../../src/hooks/lib/run-self-reflection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for AI Self-Reflection System
|
|
3
|
+
* @module reflection-types
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Severity levels for identified issues
|
|
7
|
+
*/
|
|
8
|
+
export declare enum IssueSeverity {
|
|
9
|
+
CRITICAL = "CRITICAL",
|
|
10
|
+
HIGH = "HIGH",
|
|
11
|
+
MEDIUM = "MEDIUM",
|
|
12
|
+
LOW = "LOW"
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Issue categories
|
|
16
|
+
*/
|
|
17
|
+
export declare enum IssueCategory {
|
|
18
|
+
SECURITY = "SECURITY",
|
|
19
|
+
QUALITY = "QUALITY",
|
|
20
|
+
TESTING = "TESTING",
|
|
21
|
+
PERFORMANCE = "PERFORMANCE",
|
|
22
|
+
TECHNICAL_DEBT = "TECHNICAL_DEBT"
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Reflection depth modes
|
|
26
|
+
*/
|
|
27
|
+
export declare enum ReflectionDepth {
|
|
28
|
+
QUICK = "quick",// <15s, critical issues only
|
|
29
|
+
STANDARD = "standard",// <30s, full analysis (default)
|
|
30
|
+
DEEP = "deep"
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* AI model selection for reflection
|
|
34
|
+
*/
|
|
35
|
+
export declare enum ReflectionModel {
|
|
36
|
+
HAIKU = "haiku",// Fast, cheap (~$0.01/task)
|
|
37
|
+
SONNET = "sonnet",// Balanced (~$0.05/task)
|
|
38
|
+
OPUS = "opus"
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Reflection execution mode
|
|
42
|
+
*/
|
|
43
|
+
export declare enum ReflectionMode {
|
|
44
|
+
AUTO = "auto",// Automatic after task completion
|
|
45
|
+
MANUAL = "manual",// User-triggered only
|
|
46
|
+
DISABLED = "disabled"
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Issue identified during reflection
|
|
50
|
+
*/
|
|
51
|
+
export interface ReflectionIssue {
|
|
52
|
+
severity: IssueSeverity;
|
|
53
|
+
category: IssueCategory;
|
|
54
|
+
description: string;
|
|
55
|
+
impact: string;
|
|
56
|
+
recommendation: string;
|
|
57
|
+
location?: {
|
|
58
|
+
file: string;
|
|
59
|
+
line?: number;
|
|
60
|
+
snippet?: string;
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Lesson learned from task execution
|
|
65
|
+
*/
|
|
66
|
+
export interface LessonLearned {
|
|
67
|
+
whatWentWell: string[];
|
|
68
|
+
whatCouldImprove: string[];
|
|
69
|
+
forNextTime: string[];
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Quality metrics from reflection
|
|
73
|
+
*/
|
|
74
|
+
export interface ReflectionMetrics {
|
|
75
|
+
codeQuality: number;
|
|
76
|
+
security: number;
|
|
77
|
+
testCoverage?: number;
|
|
78
|
+
technicalDebt: 'LOW' | 'MEDIUM' | 'HIGH';
|
|
79
|
+
performance: 'GOOD' | 'ACCEPTABLE' | 'NEEDS_WORK';
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Complete reflection result
|
|
83
|
+
*/
|
|
84
|
+
export interface ReflectionResult {
|
|
85
|
+
taskName: string;
|
|
86
|
+
completed: string;
|
|
87
|
+
duration?: string;
|
|
88
|
+
filesModified: {
|
|
89
|
+
count: number;
|
|
90
|
+
linesAdded: number;
|
|
91
|
+
linesRemoved: number;
|
|
92
|
+
};
|
|
93
|
+
accomplishments: string[];
|
|
94
|
+
strengths: string[];
|
|
95
|
+
issues: ReflectionIssue[];
|
|
96
|
+
recommendedActions: {
|
|
97
|
+
priority1: string[];
|
|
98
|
+
priority2: string[];
|
|
99
|
+
priority3: string[];
|
|
100
|
+
};
|
|
101
|
+
lessonsLearned: LessonLearned;
|
|
102
|
+
metrics: ReflectionMetrics;
|
|
103
|
+
relatedTasks?: string[];
|
|
104
|
+
metadata: {
|
|
105
|
+
model: ReflectionModel;
|
|
106
|
+
reflectionTime: number;
|
|
107
|
+
estimatedCost: number;
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Configuration for reflection system
|
|
112
|
+
*/
|
|
113
|
+
export interface ReflectionConfig {
|
|
114
|
+
enabled: boolean;
|
|
115
|
+
mode: ReflectionMode;
|
|
116
|
+
depth: ReflectionDepth;
|
|
117
|
+
model: ReflectionModel;
|
|
118
|
+
categories: {
|
|
119
|
+
security: boolean;
|
|
120
|
+
quality: boolean;
|
|
121
|
+
testing: boolean;
|
|
122
|
+
performance: boolean;
|
|
123
|
+
technicalDebt: boolean;
|
|
124
|
+
};
|
|
125
|
+
criticalThreshold: IssueSeverity;
|
|
126
|
+
storeReflections: boolean;
|
|
127
|
+
autoCreateFollowUpTasks: boolean;
|
|
128
|
+
soundNotifications?: boolean;
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Git diff information for modified files
|
|
132
|
+
*/
|
|
133
|
+
export interface GitDiffInfo {
|
|
134
|
+
file: string;
|
|
135
|
+
linesAdded: number;
|
|
136
|
+
linesRemoved: number;
|
|
137
|
+
content: string;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Context for reflection execution
|
|
141
|
+
*/
|
|
142
|
+
export interface ReflectionContext {
|
|
143
|
+
incrementId: string;
|
|
144
|
+
taskId: string;
|
|
145
|
+
modifiedFiles: GitDiffInfo[];
|
|
146
|
+
config: ReflectionConfig;
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Reflection execution result (success or failure)
|
|
150
|
+
*/
|
|
151
|
+
export interface ReflectionExecutionResult {
|
|
152
|
+
success: boolean;
|
|
153
|
+
result?: ReflectionResult;
|
|
154
|
+
error?: {
|
|
155
|
+
message: string;
|
|
156
|
+
code: string;
|
|
157
|
+
details?: any;
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Default reflection configuration
|
|
162
|
+
*/
|
|
163
|
+
export declare const DEFAULT_REFLECTION_CONFIG: ReflectionConfig;
|
|
164
|
+
//# sourceMappingURL=reflection-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reflection-types.d.ts","sourceRoot":"","sources":["../../../../src/hooks/lib/types/reflection-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type definitions for AI Self-Reflection System
|
|
3
|
+
* @module reflection-types
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Severity levels for identified issues
|
|
7
|
+
*/
|
|
8
|
+
export var IssueSeverity;
|
|
9
|
+
(function (IssueSeverity) {
|
|
10
|
+
IssueSeverity["CRITICAL"] = "CRITICAL";
|
|
11
|
+
IssueSeverity["HIGH"] = "HIGH";
|
|
12
|
+
IssueSeverity["MEDIUM"] = "MEDIUM";
|
|
13
|
+
IssueSeverity["LOW"] = "LOW";
|
|
14
|
+
})(IssueSeverity || (IssueSeverity = {}));
|
|
15
|
+
/**
|
|
16
|
+
* Issue categories
|
|
17
|
+
*/
|
|
18
|
+
export var IssueCategory;
|
|
19
|
+
(function (IssueCategory) {
|
|
20
|
+
IssueCategory["SECURITY"] = "SECURITY";
|
|
21
|
+
IssueCategory["QUALITY"] = "QUALITY";
|
|
22
|
+
IssueCategory["TESTING"] = "TESTING";
|
|
23
|
+
IssueCategory["PERFORMANCE"] = "PERFORMANCE";
|
|
24
|
+
IssueCategory["TECHNICAL_DEBT"] = "TECHNICAL_DEBT";
|
|
25
|
+
})(IssueCategory || (IssueCategory = {}));
|
|
26
|
+
/**
|
|
27
|
+
* Reflection depth modes
|
|
28
|
+
*/
|
|
29
|
+
export var ReflectionDepth;
|
|
30
|
+
(function (ReflectionDepth) {
|
|
31
|
+
ReflectionDepth["QUICK"] = "quick";
|
|
32
|
+
ReflectionDepth["STANDARD"] = "standard";
|
|
33
|
+
ReflectionDepth["DEEP"] = "deep"; // <60s, detailed + architectural
|
|
34
|
+
})(ReflectionDepth || (ReflectionDepth = {}));
|
|
35
|
+
/**
|
|
36
|
+
* AI model selection for reflection
|
|
37
|
+
*/
|
|
38
|
+
export var ReflectionModel;
|
|
39
|
+
(function (ReflectionModel) {
|
|
40
|
+
ReflectionModel["HAIKU"] = "haiku";
|
|
41
|
+
ReflectionModel["SONNET"] = "sonnet";
|
|
42
|
+
ReflectionModel["OPUS"] = "opus"; // Deep analysis (~$0.15/task)
|
|
43
|
+
})(ReflectionModel || (ReflectionModel = {}));
|
|
44
|
+
/**
|
|
45
|
+
* Reflection execution mode
|
|
46
|
+
*/
|
|
47
|
+
export var ReflectionMode;
|
|
48
|
+
(function (ReflectionMode) {
|
|
49
|
+
ReflectionMode["AUTO"] = "auto";
|
|
50
|
+
ReflectionMode["MANUAL"] = "manual";
|
|
51
|
+
ReflectionMode["DISABLED"] = "disabled"; // Reflection disabled
|
|
52
|
+
})(ReflectionMode || (ReflectionMode = {}));
|
|
53
|
+
/**
|
|
54
|
+
* Default reflection configuration
|
|
55
|
+
*/
|
|
56
|
+
export const DEFAULT_REFLECTION_CONFIG = {
|
|
57
|
+
enabled: true,
|
|
58
|
+
mode: ReflectionMode.AUTO,
|
|
59
|
+
depth: ReflectionDepth.STANDARD,
|
|
60
|
+
model: ReflectionModel.HAIKU,
|
|
61
|
+
categories: {
|
|
62
|
+
security: true,
|
|
63
|
+
quality: true,
|
|
64
|
+
testing: true,
|
|
65
|
+
performance: true,
|
|
66
|
+
technicalDebt: true
|
|
67
|
+
},
|
|
68
|
+
criticalThreshold: IssueSeverity.MEDIUM,
|
|
69
|
+
storeReflections: true,
|
|
70
|
+
autoCreateFollowUpTasks: false,
|
|
71
|
+
soundNotifications: false
|
|
72
|
+
};
|
|
73
|
+
//# sourceMappingURL=reflection-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reflection-types.js","sourceRoot":"","sources":["../../../../src/hooks/lib/types/reflection-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,4BAAW,CAAA;AACb,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,oCAAmB,CAAA;IACnB,oCAAmB,CAAA;IACnB,4CAA2B,CAAA;IAC3B,kDAAiC,CAAA;AACnC,CAAC,EANW,aAAa,KAAb,aAAa,QAMxB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,wCAAqB,CAAA;IACrB,gCAAa,CAAA,CAAU,iCAAiC;AAC1D,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,oCAAiB,CAAA;IACjB,gCAAa,CAAA,CAAQ,8BAA8B;AACrD,CAAC,EAJW,eAAe,KAAf,eAAe,QAI1B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,+BAAa,CAAA;IACb,mCAAiB,CAAA;IACjB,uCAAqB,CAAA,CAAC,sBAAsB;AAC9C,CAAC,EAJW,cAAc,KAAd,cAAc,QAIzB;AA0HD;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAqB;IACzD,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,cAAc,CAAC,IAAI;IACzB,KAAK,EAAE,eAAe,CAAC,QAAQ;IAC/B,KAAK,EAAE,eAAe,CAAC,KAAK;IAC5B,UAAU,EAAE;QACV,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,IAAI;QACjB,aAAa,EAAE,IAAI;KACpB;IACD,iBAAiB,EAAE,aAAa,CAAC,MAAM;IACvC,gBAAgB,EAAE,IAAI;IACtB,uBAAuB,EAAE,KAAK;IAC9B,kBAAkB,EAAE,KAAK;CAC1B,CAAC"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Git Diff Analyzer
|
|
3
|
+
*
|
|
4
|
+
* Extracts modified files from git diff for reflection analysis
|
|
5
|
+
* Parses git diff output to get file changes, line counts, and content
|
|
6
|
+
*
|
|
7
|
+
* @module git-diff-analyzer
|
|
8
|
+
*/
|
|
9
|
+
import { GitDiffInfo } from './types/reflection-types';
|
|
10
|
+
/**
|
|
11
|
+
* Check if directory is a git repository
|
|
12
|
+
* @param dir Directory to check (defaults to cwd)
|
|
13
|
+
* @returns True if directory is in a git repository
|
|
14
|
+
*/
|
|
15
|
+
export declare function isGitRepository(dir?: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Get list of modified files in the working directory
|
|
18
|
+
* Includes both staged and unstaged changes
|
|
19
|
+
*
|
|
20
|
+
* @param cwd Working directory (optional, defaults to process.cwd())
|
|
21
|
+
* @returns Array of file paths relative to git root
|
|
22
|
+
*/
|
|
23
|
+
export declare function getModifiedFilesList(cwd?: string): string[];
|
|
24
|
+
/**
|
|
25
|
+
* Parse git diff numstat output to get line counts
|
|
26
|
+
* Format: <added>\t<removed>\t<filename>
|
|
27
|
+
*
|
|
28
|
+
* @param numstatOutput Output from git diff --numstat
|
|
29
|
+
* @returns Map of filename to {added, removed} counts
|
|
30
|
+
*/
|
|
31
|
+
export declare function parseNumstat(numstatOutput: string): Map<string, {
|
|
32
|
+
added: number;
|
|
33
|
+
removed: number;
|
|
34
|
+
}>;
|
|
35
|
+
/**
|
|
36
|
+
* Get diff content for a specific file
|
|
37
|
+
* @param file File path relative to git root
|
|
38
|
+
* @param cwd Working directory (optional)
|
|
39
|
+
* @returns Diff content as string
|
|
40
|
+
*/
|
|
41
|
+
export declare function getFileDiff(file: string, cwd?: string): string;
|
|
42
|
+
/**
|
|
43
|
+
* Get current file content
|
|
44
|
+
* @param file File path (can be absolute or relative to cwd)
|
|
45
|
+
* @param cwd Working directory (optional)
|
|
46
|
+
* @returns File content as string, or empty string if file doesn't exist
|
|
47
|
+
*/
|
|
48
|
+
export declare function getFileContent(file: string, cwd?: string): string;
|
|
49
|
+
/**
|
|
50
|
+
* Get modified files with diff information
|
|
51
|
+
* Main function for reflection analysis
|
|
52
|
+
*
|
|
53
|
+
* @param cwd Working directory (optional, defaults to process.cwd())
|
|
54
|
+
* @param maxFiles Maximum number of files to return (optional, defaults to 100)
|
|
55
|
+
* @returns Array of GitDiffInfo objects with file changes
|
|
56
|
+
*/
|
|
57
|
+
export declare function getModifiedFiles(cwd?: string, maxFiles?: number): GitDiffInfo[];
|
|
58
|
+
/**
|
|
59
|
+
* Get summary statistics for modified files
|
|
60
|
+
* Useful for reflection metadata
|
|
61
|
+
*
|
|
62
|
+
* @param modifiedFiles Array of GitDiffInfo objects
|
|
63
|
+
* @returns Summary with file count, total lines added/removed
|
|
64
|
+
*/
|
|
65
|
+
export declare function getModifiedFilesSummary(modifiedFiles: GitDiffInfo[]): {
|
|
66
|
+
count: number;
|
|
67
|
+
linesAdded: number;
|
|
68
|
+
linesRemoved: number;
|
|
69
|
+
totalChanges: number;
|
|
70
|
+
};
|
|
71
|
+
/**
|
|
72
|
+
* Filter files by extension
|
|
73
|
+
* Useful for focusing reflection on specific file types
|
|
74
|
+
*
|
|
75
|
+
* @param modifiedFiles Array of GitDiffInfo objects
|
|
76
|
+
* @param extensions Array of file extensions (e.g., ['.ts', '.js'])
|
|
77
|
+
* @returns Filtered array of GitDiffInfo objects
|
|
78
|
+
*/
|
|
79
|
+
export declare function filterFilesByExtension(modifiedFiles: GitDiffInfo[], extensions: string[]): GitDiffInfo[];
|
|
80
|
+
/**
|
|
81
|
+
* Exclude files matching patterns
|
|
82
|
+
* Useful for excluding generated files, test files, etc.
|
|
83
|
+
*
|
|
84
|
+
* @param modifiedFiles Array of GitDiffInfo objects
|
|
85
|
+
* @param patterns Array of glob patterns to exclude
|
|
86
|
+
* @returns Filtered array of GitDiffInfo objects
|
|
87
|
+
*/
|
|
88
|
+
export declare function excludeFilesByPattern(modifiedFiles: GitDiffInfo[], patterns: string[]): GitDiffInfo[];
|
|
89
|
+
//# sourceMappingURL=git-diff-analyzer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"git-diff-analyzer.d.ts","sourceRoot":"","sources":["../../../../../plugins/specweave/lib/hooks/git-diff-analyzer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAqBvD;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAsB,GAAG,OAAO,CAOpE;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAqB3D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAqBnG;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAY9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAajE;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,CAAC,EAAE,MAAM,EACZ,QAAQ,GAAE,MAAY,GACrB,WAAW,EAAE,CA8Cf;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,WAAW,EAAE,GAAG;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAUA;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,WAAW,EAAE,EAC5B,UAAU,EAAE,MAAM,EAAE,GACnB,WAAW,EAAE,CAKf;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,WAAW,EAAE,EAC5B,QAAQ,EAAE,MAAM,EAAE,GACjB,WAAW,EAAE,CAQf"}
|