specweave 0.21.2 → 0.21.3
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.md +232 -5
- package/dist/plugins/specweave-github/lib/IssueStateManager.d.ts +98 -0
- package/dist/plugins/specweave-github/lib/IssueStateManager.d.ts.map +1 -0
- package/dist/plugins/specweave-github/lib/IssueStateManager.js +146 -0
- package/dist/plugins/specweave-github/lib/IssueStateManager.js.map +1 -0
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.d.ts.map +1 -1
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.js +6 -0
- package/dist/plugins/specweave-github/lib/user-story-issue-builder.js.map +1 -1
- package/dist/src/cli/commands/check-hooks.d.ts +11 -0
- package/dist/src/cli/commands/check-hooks.d.ts.map +1 -0
- package/dist/src/cli/commands/check-hooks.js +144 -0
- package/dist/src/cli/commands/check-hooks.js.map +1 -0
- package/dist/src/cli/commands/cicd-monitor.js +3 -3
- package/dist/src/cli/commands/cicd-monitor.js.map +1 -1
- package/dist/src/cli/commands/import-docs.js +2 -2
- package/dist/src/cli/commands/import-docs.js.map +1 -1
- package/dist/src/cli/commands/init-multiproject.js +4 -4
- package/dist/src/cli/commands/init-multiproject.js.map +1 -1
- package/dist/src/cli/commands/migrate-to-multiproject.js +3 -3
- package/dist/src/cli/commands/migrate-to-multiproject.js.map +1 -1
- package/dist/src/cli/commands/plan/agent-invoker.d.ts +79 -0
- package/dist/src/cli/commands/plan/agent-invoker.d.ts.map +1 -0
- package/dist/src/cli/commands/plan/agent-invoker.js +383 -0
- package/dist/src/cli/commands/plan/agent-invoker.js.map +1 -0
- package/dist/src/cli/commands/plan/increment-detector.d.ts +27 -0
- package/dist/src/cli/commands/plan/increment-detector.d.ts.map +1 -0
- package/dist/src/cli/commands/plan/increment-detector.js +159 -0
- package/dist/src/cli/commands/plan/increment-detector.js.map +1 -0
- package/dist/src/cli/commands/plan/plan-orchestrator.d.ts +45 -0
- package/dist/src/cli/commands/plan/plan-orchestrator.d.ts.map +1 -0
- package/dist/src/cli/commands/plan/plan-orchestrator.js +229 -0
- package/dist/src/cli/commands/plan/plan-orchestrator.js.map +1 -0
- package/dist/src/cli/commands/plan/plan-validator.d.ts +36 -0
- package/dist/src/cli/commands/plan/plan-validator.d.ts.map +1 -0
- package/dist/src/cli/commands/plan/plan-validator.js +174 -0
- package/dist/src/cli/commands/plan/plan-validator.js.map +1 -0
- package/dist/src/cli/commands/plan/types.d.ts +170 -0
- package/dist/src/cli/commands/plan/types.d.ts.map +1 -0
- package/dist/src/cli/commands/plan/types.js +42 -0
- package/dist/src/cli/commands/plan/types.js.map +1 -0
- package/dist/src/cli/commands/plan-command.d.ts +16 -0
- package/dist/src/cli/commands/plan-command.d.ts.map +1 -0
- package/dist/src/cli/commands/plan-command.js +127 -0
- package/dist/src/cli/commands/plan-command.js.map +1 -0
- package/dist/src/cli/commands/switch-project.js +3 -3
- package/dist/src/cli/commands/switch-project.js.map +1 -1
- package/dist/src/cli/commands/validate-parent-repo.js +1 -1
- package/dist/src/cli/commands/validate-parent-repo.js.map +1 -1
- package/dist/src/config/ConfigManager.d.ts +69 -0
- package/dist/src/config/ConfigManager.d.ts.map +1 -0
- package/dist/src/config/ConfigManager.js +130 -0
- package/dist/src/config/ConfigManager.js.map +1 -0
- package/dist/src/config/types.d.ts +1357 -0
- package/dist/src/config/types.d.ts.map +1 -0
- package/dist/src/config/types.js +67 -0
- package/dist/src/config/types.js.map +1 -0
- package/dist/src/core/brownfield/importer.d.ts +1 -1
- package/dist/src/core/brownfield/importer.d.ts.map +1 -1
- package/dist/src/core/brownfield/importer.js +3 -3
- package/dist/src/core/brownfield/importer.js.map +1 -1
- package/dist/src/core/cicd/config-loader.d.ts +1 -1
- package/dist/src/core/cicd/config-loader.d.ts.map +1 -1
- package/dist/src/core/cicd/index.d.ts +6 -6
- package/dist/src/core/cicd/index.d.ts.map +1 -1
- package/dist/src/core/cicd/index.js +6 -6
- package/dist/src/core/cicd/index.js.map +1 -1
- package/dist/src/core/cicd/monitor-service.d.ts +3 -3
- package/dist/src/core/cicd/monitor-service.d.ts.map +1 -1
- package/dist/src/core/cicd/monitor-service.js +3 -3
- package/dist/src/core/cicd/monitor-service.js.map +1 -1
- package/dist/src/core/cicd/notifier.d.ts +1 -1
- package/dist/src/core/cicd/notifier.d.ts.map +1 -1
- package/dist/src/core/cicd/state-manager.d.ts +1 -1
- package/dist/src/core/cicd/state-manager.d.ts.map +1 -1
- package/dist/src/core/cicd/state-manager.js +1 -1
- package/dist/src/core/cicd/state-manager.js.map +1 -1
- package/dist/src/core/cicd/workflow-monitor.d.ts +1 -1
- package/dist/src/core/cicd/workflow-monitor.d.ts.map +1 -1
- package/dist/src/core/cicd/workflow-monitor.js +1 -1
- package/dist/src/core/cicd/workflow-monitor.js.map +1 -1
- package/dist/src/core/cost-tracker.d.ts +2 -2
- package/dist/src/core/cost-tracker.d.ts.map +1 -1
- package/dist/src/core/cost-tracker.js +1 -1
- package/dist/src/core/cost-tracker.js.map +1 -1
- package/dist/src/core/hooks/HealthReporter.d.ts +55 -0
- package/dist/src/core/hooks/HealthReporter.d.ts.map +1 -0
- package/dist/src/core/hooks/HealthReporter.js +268 -0
- package/dist/src/core/hooks/HealthReporter.js.map +1 -0
- package/dist/src/core/hooks/HookAutoFixer.d.ts +41 -0
- package/dist/src/core/hooks/HookAutoFixer.d.ts.map +1 -0
- package/dist/src/core/hooks/HookAutoFixer.js +222 -0
- package/dist/src/core/hooks/HookAutoFixer.js.map +1 -0
- package/dist/src/core/hooks/HookExecutor.d.ts +57 -0
- package/dist/src/core/hooks/HookExecutor.d.ts.map +1 -0
- package/dist/src/core/hooks/HookExecutor.js +287 -0
- package/dist/src/core/hooks/HookExecutor.js.map +1 -0
- package/dist/src/core/hooks/HookHealthChecker.d.ts +51 -0
- package/dist/src/core/hooks/HookHealthChecker.d.ts.map +1 -0
- package/dist/src/core/hooks/HookHealthChecker.js +212 -0
- package/dist/src/core/hooks/HookHealthChecker.js.map +1 -0
- package/dist/src/core/hooks/HookScanner.d.ts +65 -0
- package/dist/src/core/hooks/HookScanner.d.ts.map +1 -0
- package/dist/src/core/hooks/HookScanner.js +214 -0
- package/dist/src/core/hooks/HookScanner.js.map +1 -0
- package/dist/src/core/hooks/types.d.ts +281 -0
- package/dist/src/core/hooks/types.d.ts.map +1 -0
- package/dist/src/core/hooks/types.js +10 -0
- package/dist/src/core/hooks/types.js.map +1 -0
- package/dist/src/core/iac/index.d.ts +10 -0
- package/dist/src/core/iac/index.d.ts.map +1 -0
- package/dist/src/core/iac/index.js +11 -0
- package/dist/src/core/iac/index.js.map +1 -0
- package/dist/src/core/iac/template-engine.d.ts +77 -0
- package/dist/src/core/iac/template-engine.d.ts.map +1 -0
- package/dist/src/core/iac/template-engine.js +182 -0
- package/dist/src/core/iac/template-engine.js.map +1 -0
- package/dist/src/core/increment/ac-status-manager.d.ts +115 -0
- package/dist/src/core/increment/ac-status-manager.d.ts.map +1 -0
- package/dist/src/core/increment/ac-status-manager.js +343 -0
- package/dist/src/core/increment/ac-status-manager.js.map +1 -0
- package/dist/src/core/increment/auto-transition-manager.d.ts +60 -0
- package/dist/src/core/increment/auto-transition-manager.d.ts.map +1 -0
- package/dist/src/core/increment/auto-transition-manager.js +192 -0
- package/dist/src/core/increment/auto-transition-manager.js.map +1 -0
- package/dist/src/core/increment/limits.d.ts +1 -1
- package/dist/src/core/increment/limits.d.ts.map +1 -1
- package/dist/src/core/increment/limits.js +2 -2
- package/dist/src/core/increment/limits.js.map +1 -1
- package/dist/src/core/increment/spec-sync-manager.d.ts +177 -0
- package/dist/src/core/increment/spec-sync-manager.d.ts.map +1 -0
- package/dist/src/core/increment/spec-sync-manager.js +496 -0
- package/dist/src/core/increment/spec-sync-manager.js.map +1 -0
- package/dist/src/core/increment/status-auto-transition.d.ts +46 -0
- package/dist/src/core/increment/status-auto-transition.d.ts.map +1 -0
- package/dist/src/core/increment/status-auto-transition.js +178 -0
- package/dist/src/core/increment/status-auto-transition.js.map +1 -0
- package/dist/src/core/increment/task-state-manager.d.ts +75 -0
- package/dist/src/core/increment/task-state-manager.d.ts.map +1 -0
- package/dist/src/core/increment/task-state-manager.js +117 -0
- package/dist/src/core/increment/task-state-manager.js.map +1 -0
- package/dist/src/core/living-docs/CodeValidator.d.ts +68 -0
- package/dist/src/core/living-docs/CodeValidator.d.ts.map +1 -0
- package/dist/src/core/living-docs/CodeValidator.js +160 -0
- package/dist/src/core/living-docs/CodeValidator.js.map +1 -0
- package/dist/src/core/living-docs/CompletionPropagator.d.ts +84 -0
- package/dist/src/core/living-docs/CompletionPropagator.d.ts.map +1 -0
- package/dist/src/core/living-docs/CompletionPropagator.js +205 -0
- package/dist/src/core/living-docs/CompletionPropagator.js.map +1 -0
- package/dist/src/core/living-docs/ProjectDetector.d.ts +29 -0
- package/dist/src/core/living-docs/ProjectDetector.d.ts.map +1 -0
- package/dist/src/core/living-docs/ProjectDetector.js +94 -0
- package/dist/src/core/living-docs/ProjectDetector.js.map +1 -0
- package/dist/src/core/living-docs/SpecDistributor.d.ts +55 -0
- package/dist/src/core/living-docs/SpecDistributor.d.ts.map +1 -0
- package/dist/src/core/living-docs/SpecDistributor.js +216 -0
- package/dist/src/core/living-docs/SpecDistributor.js.map +1 -0
- package/dist/src/core/living-docs/ThreeLayerSyncManager.d.ts +116 -0
- package/dist/src/core/living-docs/ThreeLayerSyncManager.d.ts.map +1 -0
- package/dist/src/core/living-docs/ThreeLayerSyncManager.js +356 -0
- package/dist/src/core/living-docs/ThreeLayerSyncManager.js.map +1 -0
- package/dist/src/core/living-docs/hierarchy-mapper.d.ts.map +1 -1
- package/dist/src/core/living-docs/hierarchy-mapper.js +2 -1
- package/dist/src/core/living-docs/hierarchy-mapper.js.map +1 -1
- package/dist/src/core/living-docs/index.d.ts +1 -1
- package/dist/src/core/living-docs/index.d.ts.map +1 -1
- package/dist/src/core/living-docs/index.js +5 -1
- package/dist/src/core/living-docs/index.js.map +1 -1
- package/dist/src/core/living-docs/types.d.ts +70 -300
- package/dist/src/core/living-docs/types.d.ts.map +1 -1
- package/dist/src/core/living-docs/types.js +2 -10
- package/dist/src/core/living-docs/types.js.map +1 -1
- package/dist/src/core/project-manager.d.ts +1 -1
- package/dist/src/core/project-manager.d.ts.map +1 -1
- package/dist/src/core/project-manager.js +2 -2
- package/dist/src/core/project-manager.js.map +1 -1
- package/dist/src/core/qa/quality-gate-decider.d.ts +1 -1
- package/dist/src/core/qa/quality-gate-decider.d.ts.map +1 -1
- package/dist/src/core/qa/risk-calculator.d.ts +1 -1
- package/dist/src/core/qa/risk-calculator.d.ts.map +1 -1
- package/dist/src/core/repo-structure/setup-summary.d.ts +1 -1
- package/dist/src/core/repo-structure/setup-summary.d.ts.map +1 -1
- package/dist/src/core/rfc-generator-v2.d.ts +1 -1
- package/dist/src/core/rfc-generator-v2.d.ts.map +1 -1
- package/dist/src/core/rfc-generator-v2.js +1 -1
- package/dist/src/core/rfc-generator-v2.js.map +1 -1
- package/dist/src/core/serverless/context-detector.d.ts +12 -0
- package/dist/src/core/serverless/context-detector.d.ts.map +1 -0
- package/dist/src/core/serverless/context-detector.js +213 -0
- package/dist/src/core/serverless/context-detector.js.map +1 -0
- package/dist/src/core/serverless/cost-comparison.d.ts +73 -0
- package/dist/src/core/serverless/cost-comparison.d.ts.map +1 -0
- package/dist/src/core/serverless/cost-comparison.js +198 -0
- package/dist/src/core/serverless/cost-comparison.js.map +1 -0
- package/dist/src/core/serverless/cost-estimator.d.ts +69 -0
- package/dist/src/core/serverless/cost-estimator.d.ts.map +1 -0
- package/dist/src/core/serverless/cost-estimator.js +127 -0
- package/dist/src/core/serverless/cost-estimator.js.map +1 -0
- package/dist/src/core/serverless/cost-optimizer.d.ts +57 -0
- package/dist/src/core/serverless/cost-optimizer.d.ts.map +1 -0
- package/dist/src/core/serverless/cost-optimizer.js +221 -0
- package/dist/src/core/serverless/cost-optimizer.js.map +1 -0
- package/dist/src/core/serverless/index.d.ts +20 -0
- package/dist/src/core/serverless/index.d.ts.map +1 -0
- package/dist/src/core/serverless/index.js +26 -0
- package/dist/src/core/serverless/index.js.map +1 -0
- package/dist/src/core/serverless/learning-path-recommender.d.ts +152 -0
- package/dist/src/core/serverless/learning-path-recommender.d.ts.map +1 -0
- package/dist/src/core/serverless/learning-path-recommender.js +389 -0
- package/dist/src/core/serverless/learning-path-recommender.js.map +1 -0
- package/dist/src/core/serverless/platform-data-loader.d.ts +22 -0
- package/dist/src/core/serverless/platform-data-loader.d.ts.map +1 -0
- package/dist/src/core/serverless/platform-data-loader.js +49 -0
- package/dist/src/core/serverless/platform-data-loader.js.map +1 -0
- package/dist/src/core/serverless/platform-selector.d.ts +20 -0
- package/dist/src/core/serverless/platform-selector.d.ts.map +1 -0
- package/dist/src/core/serverless/platform-selector.js +279 -0
- package/dist/src/core/serverless/platform-selector.js.map +1 -0
- package/dist/src/core/serverless/recommendation-formatter.d.ts +24 -0
- package/dist/src/core/serverless/recommendation-formatter.d.ts.map +1 -0
- package/dist/src/core/serverless/recommendation-formatter.js +70 -0
- package/dist/src/core/serverless/recommendation-formatter.js.map +1 -0
- package/dist/src/core/serverless/suitability-analyzer.d.ts +22 -0
- package/dist/src/core/serverless/suitability-analyzer.d.ts.map +1 -0
- package/dist/src/core/serverless/suitability-analyzer.js +262 -0
- package/dist/src/core/serverless/suitability-analyzer.js.map +1 -0
- package/dist/src/core/serverless/types.d.ts +96 -0
- package/dist/src/core/serverless/types.d.ts.map +1 -0
- package/dist/src/core/serverless/types.js +5 -0
- package/dist/src/core/serverless/types.js.map +1 -0
- package/dist/src/core/sync/bidirectional-engine.d.ts +1 -1
- package/dist/src/core/sync/bidirectional-engine.d.ts.map +1 -1
- package/dist/src/core/sync/enhanced-content-builder.d.ts +1 -1
- package/dist/src/core/sync/enhanced-content-builder.d.ts.map +1 -1
- package/dist/src/core/sync/profile-manager.d.ts +1 -1
- package/dist/src/core/sync/profile-manager.d.ts.map +1 -1
- package/dist/src/core/sync/profile-selector.d.ts +1 -1
- package/dist/src/core/sync/profile-selector.d.ts.map +1 -1
- package/dist/src/core/sync/profile-selector.js +1 -1
- package/dist/src/core/sync/profile-selector.js.map +1 -1
- package/dist/src/core/sync/project-context.d.ts +1 -1
- package/dist/src/core/sync/project-context.d.ts.map +1 -1
- package/dist/src/core/sync/rate-limiter.d.ts +1 -1
- package/dist/src/core/sync/rate-limiter.d.ts.map +1 -1
- package/dist/src/core/sync/status-sync-engine.d.ts +2 -2
- package/dist/src/core/sync/status-sync-engine.d.ts.map +1 -1
- package/dist/src/core/sync/status-sync-engine.js +2 -2
- package/dist/src/core/sync/status-sync-engine.js.map +1 -1
- package/dist/src/core/sync/time-range-selector.d.ts +1 -1
- package/dist/src/core/sync/time-range-selector.d.ts.map +1 -1
- package/dist/src/core/sync/time-range-selector.js +1 -1
- package/dist/src/core/sync/time-range-selector.js.map +1 -1
- package/dist/src/core/types/increment-metadata.d.ts +27 -0
- package/dist/src/core/types/increment-metadata.d.ts.map +1 -1
- package/dist/src/core/types/increment-metadata.js +45 -1
- package/dist/src/core/types/increment-metadata.js.map +1 -1
- package/dist/src/core/types/sync-profile.d.ts +2 -0
- package/dist/src/core/types/sync-profile.d.ts.map +1 -1
- package/dist/src/core/types/sync-profile.js.map +1 -1
- package/dist/src/core/validation/increment-structure-validator.d.ts +47 -0
- package/dist/src/core/validation/increment-structure-validator.d.ts.map +1 -0
- package/dist/src/core/validation/increment-structure-validator.js +187 -0
- package/dist/src/core/validation/increment-structure-validator.js.map +1 -0
- package/dist/src/core/validation/three-file-validator.d.ts +82 -0
- package/dist/src/core/validation/three-file-validator.d.ts.map +1 -0
- package/dist/src/core/validation/three-file-validator.js +320 -0
- package/dist/src/core/validation/three-file-validator.js.map +1 -0
- package/dist/src/core/workflow/phase-detector.d.ts +103 -0
- package/dist/src/core/workflow/phase-detector.d.ts.map +1 -0
- package/dist/src/core/workflow/phase-detector.js +704 -0
- package/dist/src/core/workflow/phase-detector.js.map +1 -0
- package/dist/src/core/workflow/types.d.ts +153 -0
- package/dist/src/core/workflow/types.d.ts.map +1 -0
- package/dist/src/core/workflow/types.js +47 -0
- package/dist/src/core/workflow/types.js.map +1 -0
- package/dist/src/init/InitFlow.d.ts +37 -0
- package/dist/src/init/InitFlow.d.ts.map +1 -0
- package/dist/src/init/InitFlow.js +209 -0
- package/dist/src/init/InitFlow.js.map +1 -0
- package/dist/src/init/architecture/ArchitectureDecisionEngine.d.ts +107 -0
- package/dist/src/init/architecture/ArchitectureDecisionEngine.d.ts.map +1 -0
- package/dist/src/init/architecture/ArchitectureDecisionEngine.js +405 -0
- package/dist/src/init/architecture/ArchitectureDecisionEngine.js.map +1 -0
- package/dist/src/init/architecture/CloudCreditsDatabase.d.ts +11 -0
- package/dist/src/init/architecture/CloudCreditsDatabase.d.ts.map +1 -0
- package/dist/src/init/architecture/CloudCreditsDatabase.js +92 -0
- package/dist/src/init/architecture/CloudCreditsDatabase.js.map +1 -0
- package/dist/src/init/architecture/types.d.ts +251 -0
- package/dist/src/init/architecture/types.d.ts.map +1 -0
- package/dist/src/init/architecture/types.js +54 -0
- package/dist/src/init/architecture/types.js.map +1 -0
- package/dist/src/init/compliance/ComplianceDetector.d.ts +17 -0
- package/dist/src/init/compliance/ComplianceDetector.d.ts.map +1 -0
- package/dist/src/init/compliance/ComplianceDetector.js +64 -0
- package/dist/src/init/compliance/ComplianceDetector.js.map +1 -0
- package/dist/src/init/compliance/standards-database.d.ts +48 -0
- package/dist/src/init/compliance/standards-database.d.ts.map +1 -0
- package/dist/src/init/compliance/standards-database.js +506 -0
- package/dist/src/init/compliance/standards-database.js.map +1 -0
- package/dist/src/init/compliance/types.d.ts +91 -0
- package/dist/src/init/compliance/types.d.ts.map +1 -0
- package/dist/src/init/compliance/types.js +43 -0
- package/dist/src/init/compliance/types.js.map +1 -0
- package/dist/src/init/repo/GitHubAPIClient.d.ts +51 -0
- package/dist/src/init/repo/GitHubAPIClient.d.ts.map +1 -0
- package/dist/src/init/repo/GitHubAPIClient.js +144 -0
- package/dist/src/init/repo/GitHubAPIClient.js.map +1 -0
- package/dist/src/init/repo/RepositorySelector.d.ts +45 -0
- package/dist/src/init/repo/RepositorySelector.d.ts.map +1 -0
- package/dist/src/init/repo/RepositorySelector.js +106 -0
- package/dist/src/init/repo/RepositorySelector.js.map +1 -0
- package/dist/src/init/repo/types.d.ts +95 -0
- package/dist/src/init/repo/types.d.ts.map +1 -0
- package/dist/src/init/repo/types.js +25 -0
- package/dist/src/init/repo/types.js.map +1 -0
- package/dist/src/init/research/CompetitorAnalyzer.d.ts +79 -0
- package/dist/src/init/research/CompetitorAnalyzer.d.ts.map +1 -0
- package/dist/src/init/research/CompetitorAnalyzer.js +265 -0
- package/dist/src/init/research/CompetitorAnalyzer.js.map +1 -0
- package/dist/src/init/research/MarketDetector.d.ts +62 -0
- package/dist/src/init/research/MarketDetector.d.ts.map +1 -0
- package/dist/src/init/research/MarketDetector.js +247 -0
- package/dist/src/init/research/MarketDetector.js.map +1 -0
- package/dist/src/init/research/OpportunityScorer.d.ts +58 -0
- package/dist/src/init/research/OpportunityScorer.d.ts.map +1 -0
- package/dist/src/init/research/OpportunityScorer.js +194 -0
- package/dist/src/init/research/OpportunityScorer.js.map +1 -0
- package/dist/src/init/research/QuestionGenerator.d.ts +68 -0
- package/dist/src/init/research/QuestionGenerator.d.ts.map +1 -0
- package/dist/src/init/research/QuestionGenerator.js +244 -0
- package/dist/src/init/research/QuestionGenerator.js.map +1 -0
- package/dist/src/init/research/ReportGenerator.d.ts +36 -0
- package/dist/src/init/research/ReportGenerator.d.ts.map +1 -0
- package/dist/src/init/research/ReportGenerator.js +125 -0
- package/dist/src/init/research/ReportGenerator.js.map +1 -0
- package/dist/src/init/research/VisionAnalyzer.d.ts +129 -0
- package/dist/src/init/research/VisionAnalyzer.d.ts.map +1 -0
- package/dist/src/init/research/VisionAnalyzer.js +212 -0
- package/dist/src/init/research/VisionAnalyzer.js.map +1 -0
- package/dist/src/init/research/keyword-extractor.d.ts +78 -0
- package/dist/src/init/research/keyword-extractor.d.ts.map +1 -0
- package/dist/src/init/research/keyword-extractor.js +230 -0
- package/dist/src/init/research/keyword-extractor.js.map +1 -0
- package/dist/src/init/research/src/config/ConfigManager.d.ts +14 -0
- package/dist/src/init/research/src/config/ConfigManager.d.ts.map +1 -0
- package/dist/src/init/research/src/config/ConfigManager.js +45 -0
- package/dist/src/init/research/src/config/ConfigManager.js.map +1 -0
- package/dist/src/init/research/src/config/types.d.ts +102 -0
- package/dist/src/init/research/src/config/types.d.ts.map +1 -0
- package/dist/src/init/research/src/config/types.js +24 -0
- package/dist/src/init/research/src/config/types.js.map +1 -0
- package/dist/src/init/research/types.d.ts +183 -0
- package/dist/src/init/research/types.d.ts.map +1 -0
- package/dist/src/init/research/types.js +65 -0
- package/dist/src/init/research/types.js.map +1 -0
- package/dist/src/init/team/ServerlessSavingsCalculator.d.ts +136 -0
- package/dist/src/init/team/ServerlessSavingsCalculator.d.ts.map +1 -0
- package/dist/src/init/team/ServerlessSavingsCalculator.js +360 -0
- package/dist/src/init/team/ServerlessSavingsCalculator.js.map +1 -0
- package/dist/src/init/team/TeamRecommender.d.ts +122 -0
- package/dist/src/init/team/TeamRecommender.d.ts.map +1 -0
- package/dist/src/init/team/TeamRecommender.js +405 -0
- package/dist/src/init/team/TeamRecommender.js.map +1 -0
- package/dist/src/init/team/types.d.ts +95 -0
- package/dist/src/init/team/types.d.ts.map +1 -0
- package/dist/src/init/team/types.js +23 -0
- package/dist/src/init/team/types.js.map +1 -0
- package/dist/src/integrations/jira/jira-mapper.d.ts +1 -1
- package/dist/src/integrations/jira/jira-mapper.d.ts.map +1 -1
- package/dist/src/types/cost-tracking.d.ts +1 -1
- package/dist/src/types/cost-tracking.d.ts.map +1 -1
- package/dist/src/utils/cost-reporter.d.ts +2 -2
- package/dist/src/utils/cost-reporter.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/config-generator.d.ts +1 -1
- package/dist/src/utils/docs-preview/config-generator.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/config-generator.js +1 -1
- package/dist/src/utils/docs-preview/docusaurus-setup.d.ts +1 -1
- package/dist/src/utils/docs-preview/docusaurus-setup.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/docusaurus-setup.js +4 -4
- package/dist/src/utils/docs-preview/docusaurus-setup.js.map +1 -1
- package/dist/src/utils/docs-preview/index.d.ts +6 -6
- package/dist/src/utils/docs-preview/index.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/index.js +6 -6
- package/dist/src/utils/docs-preview/index.js.map +1 -1
- package/dist/src/utils/docs-preview/package-installer.d.ts +1 -1
- package/dist/src/utils/docs-preview/package-installer.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/package-installer.js +1 -1
- package/dist/src/utils/docs-preview/package-installer.js.map +1 -1
- package/dist/src/utils/docs-preview/server-manager.d.ts +1 -1
- package/dist/src/utils/docs-preview/server-manager.d.ts.map +1 -1
- package/dist/src/utils/docs-preview/server-manager.js +1 -1
- package/dist/src/utils/docs-preview/server-manager.js.map +1 -1
- package/dist/src/utils/docs-preview/sidebar-builder.d.ts +1 -1
- package/dist/src/utils/docs-preview/sidebar-builder.d.ts.map +1 -1
- package/dist/src/utils/generate-skills-index.d.ts +1 -1
- package/dist/src/utils/generate-skills-index.js +1 -1
- package/dist/src/utils/project-detection.js +1 -1
- package/dist/src/utils/project-detection.js.map +1 -1
- package/package.json +9 -3
- package/plugins/specweave/agents/architect/AGENT.md +605 -0
- package/plugins/specweave/agents/infrastructure/AGENT.md +760 -0
- package/plugins/specweave/agents/pm/AGENT.md +14 -13
- package/plugins/specweave/commands/specweave-check-hooks.md +186 -0
- package/plugins/specweave/commands/specweave-plan.md +151 -0
- package/plugins/specweave/commands/specweave-sync-acs.md +342 -0
- package/plugins/specweave/commands/specweave-validate.md +60 -11
- package/plugins/specweave/hooks/lib/update-status-line.sh +8 -4
- package/plugins/specweave/hooks/post-increment-change.sh +4 -0
- package/plugins/specweave/hooks/post-increment-completion.sh +7 -1
- package/plugins/specweave/hooks/post-increment-planning.sh +4 -0
- package/plugins/specweave/hooks/post-increment-status-change.sh +4 -0
- package/plugins/specweave/hooks/user-prompt-submit.sh +78 -0
- package/plugins/specweave/iac-templates/aws-lambda/README.md.hbs +280 -0
- package/plugins/specweave/iac-templates/aws-lambda/defaults.json +118 -0
- package/plugins/specweave/iac-templates/aws-lambda/environments/dev.defaults.json +46 -0
- package/plugins/specweave/iac-templates/aws-lambda/environments/prod.defaults.json +67 -0
- package/plugins/specweave/iac-templates/aws-lambda/environments/staging.defaults.json +47 -0
- package/plugins/specweave/iac-templates/aws-lambda/main.tf.hbs +241 -0
- package/plugins/specweave/iac-templates/aws-lambda/outputs.tf.hbs +61 -0
- package/plugins/specweave/iac-templates/aws-lambda/provider.tf.hbs +15 -0
- package/plugins/specweave/iac-templates/aws-lambda/variables.tf.hbs +88 -0
- package/plugins/specweave/iac-templates/azure-functions/README.md.hbs +315 -0
- package/plugins/specweave/iac-templates/azure-functions/defaults.json +65 -0
- package/plugins/specweave/iac-templates/azure-functions/environments/dev.defaults.json +30 -0
- package/plugins/specweave/iac-templates/azure-functions/environments/prod.defaults.json +34 -0
- package/plugins/specweave/iac-templates/azure-functions/environments/staging.defaults.json +31 -0
- package/plugins/specweave/iac-templates/azure-functions/iam.tf.hbs +34 -0
- package/plugins/specweave/iac-templates/azure-functions/main.tf.hbs +247 -0
- package/plugins/specweave/iac-templates/azure-functions/outputs.tf.hbs +72 -0
- package/plugins/specweave/iac-templates/azure-functions/provider.tf.hbs +14 -0
- package/plugins/specweave/iac-templates/azure-functions/variables.tf.hbs +64 -0
- package/plugins/specweave/iac-templates/firebase/README.md.hbs +487 -0
- package/plugins/specweave/iac-templates/firebase/defaults.json +55 -0
- package/plugins/specweave/iac-templates/firebase/environments/dev.defaults.json +44 -0
- package/plugins/specweave/iac-templates/firebase/environments/prod.defaults.json +52 -0
- package/plugins/specweave/iac-templates/firebase/environments/staging.defaults.json +43 -0
- package/plugins/specweave/iac-templates/firebase/iam.tf.hbs +75 -0
- package/plugins/specweave/iac-templates/firebase/main.tf.hbs +297 -0
- package/plugins/specweave/iac-templates/firebase/outputs.tf.hbs +67 -0
- package/plugins/specweave/iac-templates/firebase/provider.tf.hbs +26 -0
- package/plugins/specweave/iac-templates/firebase/variables.tf.hbs +68 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/README.md.hbs +330 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/defaults.json +69 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/environments/dev.defaults.json +33 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/environments/prod.defaults.json +40 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/environments/staging.defaults.json +33 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/iam.tf.hbs +54 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/main.tf.hbs +211 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/outputs.tf.hbs +44 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/provider.tf.hbs +14 -0
- package/plugins/specweave/iac-templates/gcp-cloud-functions/variables.tf.hbs +82 -0
- package/plugins/specweave/iac-templates/supabase/README.md.hbs +534 -0
- package/plugins/specweave/iac-templates/supabase/defaults.json +69 -0
- package/plugins/specweave/iac-templates/supabase/environments/dev.defaults.json +55 -0
- package/plugins/specweave/iac-templates/supabase/environments/prod.defaults.json +75 -0
- package/plugins/specweave/iac-templates/supabase/environments/staging.defaults.json +54 -0
- package/plugins/specweave/iac-templates/supabase/iam.tf.hbs +146 -0
- package/plugins/specweave/iac-templates/supabase/main.tf.hbs +310 -0
- package/plugins/specweave/iac-templates/supabase/outputs.tf.hbs +74 -0
- package/plugins/specweave/iac-templates/supabase/provider.tf.hbs +19 -0
- package/plugins/specweave/iac-templates/supabase/variables.tf.hbs +78 -0
- package/plugins/specweave/knowledge-base/serverless/FRESHNESS.md +69 -0
- package/plugins/specweave/knowledge-base/serverless/learning-paths.json +865 -0
- package/plugins/specweave/knowledge-base/serverless/platforms/aws-lambda.json +41 -0
- package/plugins/specweave/knowledge-base/serverless/platforms/azure-functions.json +41 -0
- package/plugins/specweave/knowledge-base/serverless/platforms/firebase.json +46 -0
- package/plugins/specweave/knowledge-base/serverless/platforms/gcp-cloud-functions.json +41 -0
- package/plugins/specweave/knowledge-base/serverless/platforms/supabase.json +41 -0
- package/plugins/specweave/knowledge-base/serverless/schema.json +155 -0
- package/plugins/specweave/lib/hooks/auto-transition.js +50 -0
- package/plugins/specweave/lib/hooks/auto-transition.ts +84 -0
- package/plugins/specweave/lib/hooks/invoke-translator-skill.js +1 -1
- package/plugins/specweave/lib/hooks/invoke-translator-skill.ts +1 -1
- package/plugins/specweave/lib/hooks/sync-living-docs.js +4 -31
- package/plugins/specweave/lib/hooks/{sync-living-docs.ts → sync-living-docs.ts.DISABLED} +9 -48
- package/plugins/specweave/lib/hooks/translate-file.js +1 -1
- package/plugins/specweave/lib/hooks/translate-file.ts +1 -1
- package/plugins/specweave/lib/hooks/update-ac-status.js +24 -75
- package/plugins/specweave/lib/hooks/update-ac-status.ts +46 -135
- package/plugins/specweave/lib/hooks/update-tasks-md.js +115 -3
- package/plugins/specweave/lib/hooks/update-tasks-md.ts +182 -10
- package/plugins/specweave/lib/utils/validate-dev-setup.sh +133 -0
- package/plugins/specweave/skills/increment-planner/SKILL.md +25 -15
- package/plugins/specweave/skills/serverless-recommender/SKILL.md +368 -0
- package/plugins/specweave/templates/iac/aws-lambda/templates/iam.tf.hbs +137 -0
- package/plugins/specweave/templates/iac/aws-lambda/templates/main.tf.hbs +216 -0
- package/plugins/specweave-github/lib/IssueStateManager.js +117 -0
- package/plugins/specweave-github/lib/IssueStateManager.ts +231 -0
- package/plugins/specweave-github/lib/user-story-issue-builder.js +7 -0
- package/plugins/specweave-github/lib/user-story-issue-builder.ts +11 -0
- package/plugins/specweave-ui/.mcp.json +0 -10
- package/plugins/specweave-ui/README.md +26 -26
- package/plugins/specweave-ui/skills/browser-automation/SKILL.md +31 -18
- package/src/templates/tasks.md.template +51 -33
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts +0 -89
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js +0 -226
- package/dist/plugins/specweave/lib/hooks/git-diff-analyzer.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts +0 -60
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js +0 -201
- package/dist/plugins/specweave/lib/hooks/invoke-translator-skill.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts +0 -42
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js +0 -123
- package/dist/plugins/specweave/lib/hooks/prepare-reflection-context.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts +0 -45
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js +0 -132
- package/dist/plugins/specweave/lib/hooks/reflection-config-loader.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts +0 -33
- package/dist/plugins/specweave/lib/hooks/reflection-parser.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-parser.js +0 -419
- package/dist/plugins/specweave/lib/hooks/reflection-parser.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts +0 -56
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js +0 -239
- package/dist/plugins/specweave/lib/hooks/reflection-prompt-builder.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts +0 -64
- package/dist/plugins/specweave/lib/hooks/reflection-storage.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/reflection-storage.js +0 -305
- package/dist/plugins/specweave/lib/hooks/reflection-storage.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts +0 -43
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.js +0 -203
- package/dist/plugins/specweave/lib/hooks/run-self-reflection.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts +0 -32
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.js +0 -405
- package/dist/plugins/specweave/lib/hooks/sync-living-docs.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/translate-file.d.ts +0 -59
- package/dist/plugins/specweave/lib/hooks/translate-file.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/translate-file.js +0 -350
- package/dist/plugins/specweave/lib/hooks/translate-file.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts +0 -13
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.js +0 -175
- package/dist/plugins/specweave/lib/hooks/translate-living-docs.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts +0 -164
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.js +0 -73
- package/dist/plugins/specweave/lib/hooks/types/reflection-types.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/update-ac-status.d.ts +0 -21
- package/dist/plugins/specweave/lib/hooks/update-ac-status.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/update-ac-status.js +0 -162
- package/dist/plugins/specweave/lib/hooks/update-ac-status.js.map +0 -1
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts +0 -29
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.d.ts.map +0 -1
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.js +0 -203
- package/dist/plugins/specweave/lib/hooks/update-tasks-md.js.map +0 -1
- package/dist/src/core/living-docs/spec-distributor.d.ts +0 -180
- package/dist/src/core/living-docs/spec-distributor.d.ts.map +0 -1
- package/dist/src/core/living-docs/spec-distributor.js +0 -1840
- package/dist/src/core/living-docs/spec-distributor.js.map +0 -1
package/CLAUDE.md
CHANGED
|
@@ -340,20 +340,247 @@ GitHub Issue (Checkable task list for stakeholders)
|
|
|
340
340
|
|
|
341
341
|
## Build & Test
|
|
342
342
|
|
|
343
|
+
### Build Commands
|
|
344
|
+
|
|
343
345
|
```bash
|
|
344
|
-
#
|
|
345
|
-
npm run build
|
|
346
|
+
# ALWAYS use clean build during development (prevents TS5055 errors)
|
|
347
|
+
npm run rebuild # Clean + build (RECOMMENDED)
|
|
348
|
+
|
|
349
|
+
# Or manual steps:
|
|
350
|
+
npm run clean # Remove dist/ folder
|
|
351
|
+
npm run build # Compile TypeScript
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
### Testing
|
|
346
355
|
|
|
347
|
-
|
|
356
|
+
```bash
|
|
348
357
|
npm test # Unit tests
|
|
358
|
+
npm run test:integration # Integration tests (includes build verification)
|
|
349
359
|
npm run test:e2e # E2E tests (Playwright)
|
|
350
|
-
npm run test:integration # Integration tests
|
|
351
360
|
```
|
|
352
361
|
|
|
353
|
-
|
|
362
|
+
### Build Health Checks
|
|
363
|
+
|
|
364
|
+
**CRITICAL**: TypeScript ES Modules require specific practices:
|
|
365
|
+
|
|
366
|
+
1. **Always Import with .js Extensions**:
|
|
367
|
+
```typescript
|
|
368
|
+
// ❌ WRONG (will break at runtime):
|
|
369
|
+
import { foo } from './bar';
|
|
370
|
+
|
|
371
|
+
// ✅ CORRECT:
|
|
372
|
+
import { foo } from './bar.js';
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
2. **Fix Missing Extensions**:
|
|
376
|
+
```bash
|
|
377
|
+
# Auto-fix all missing .js extensions:
|
|
378
|
+
node scripts/fix-js-extensions.js
|
|
379
|
+
|
|
380
|
+
# Preview changes first:
|
|
381
|
+
node scripts/fix-js-extensions.js --dry-run
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
3. **Verify Build is Clean**:
|
|
385
|
+
```bash
|
|
386
|
+
# Check for polluted dist/ (TS5055 indicator):
|
|
387
|
+
find dist/src -name "*.ts" -not -name "*.d.ts"
|
|
388
|
+
# Should return NOTHING
|
|
389
|
+
|
|
390
|
+
# If files found, clean rebuild:
|
|
391
|
+
npm run rebuild
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
4. **Test Hook Execution**:
|
|
395
|
+
```bash
|
|
396
|
+
# Hooks must import correctly at runtime:
|
|
397
|
+
node plugins/specweave/lib/hooks/update-ac-status.js 0001
|
|
398
|
+
# Should execute without "Cannot find module" errors
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
5. **Install Git Hooks** (RECOMMENDED):
|
|
402
|
+
```bash
|
|
403
|
+
bash scripts/install-git-hooks.sh
|
|
404
|
+
# Verifies build health before every commit
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
### Common Build Errors & Fixes
|
|
408
|
+
|
|
409
|
+
**Error: TS5055 - Cannot write file (would overwrite input)**
|
|
410
|
+
```bash
|
|
411
|
+
# Cause: dist/ polluted with .ts source files
|
|
412
|
+
# Fix:
|
|
413
|
+
npm run clean && npm run build
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
**Error: Cannot find module 'src/...' (hook execution)**
|
|
417
|
+
```bash
|
|
418
|
+
# Cause: Hooks importing from src/ instead of dist/src/
|
|
419
|
+
# OR: Missing .js extensions in imports
|
|
420
|
+
# Fix:
|
|
421
|
+
node scripts/fix-js-extensions.js
|
|
422
|
+
npm run rebuild
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
**Error: Module import without .js extension**
|
|
426
|
+
```bash
|
|
427
|
+
# Cause: TypeScript ES modules REQUIRE .js in relative imports
|
|
428
|
+
# Fix:
|
|
429
|
+
node scripts/fix-js-extensions.js
|
|
430
|
+
```
|
|
431
|
+
|
|
432
|
+
### Build Architecture
|
|
433
|
+
|
|
434
|
+
SpecWeave uses **dual compilation**:
|
|
435
|
+
- `tsc`: Compiles `src/` → `dist/src/` (source files)
|
|
436
|
+
- `esbuild`: Compiles `plugins/**/lib/hooks/*.ts` → in-place `.js` (hooks only)
|
|
437
|
+
|
|
438
|
+
**Why?** Hooks must import from `dist/src/` (compiled), but TypeScript would try to compile them before `dist/` exists (chicken-and-egg). Solution: Exclude hooks from `tsconfig.json`, compile separately with esbuild.
|
|
439
|
+
|
|
440
|
+
### Increment Scripts vs Hooks
|
|
441
|
+
|
|
442
|
+
**CRITICAL DISTINCTION**: Increment scripts and hooks have different purposes and import patterns.
|
|
443
|
+
|
|
444
|
+
**Hooks** (`plugins/**/lib/hooks/*.ts`):
|
|
445
|
+
- **Purpose**: Production runtime executables (called by shell scripts)
|
|
446
|
+
- **Execution**: `#!/usr/bin/env node` (JavaScript runtime)
|
|
447
|
+
- **Imports**: MUST use `dist/src/` (compiled JavaScript)
|
|
448
|
+
- **Compilation**: esbuild (separate from main build)
|
|
449
|
+
- **Example**:
|
|
450
|
+
```typescript
|
|
451
|
+
#!/usr/bin/env node
|
|
452
|
+
import { ACStatusManager } from '../../../../dist/src/core/increment/ac-status-manager.js';
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
**Increment Scripts** (`.specweave/increments/####/scripts/*.ts`):
|
|
456
|
+
- **Purpose**: Development utilities (one-off tasks, migrations, analysis)
|
|
457
|
+
- **Execution**: `#!/usr/bin/env tsx` (TypeScript runtime with ESM support)
|
|
458
|
+
- **Imports**: MUST use `src/` (TypeScript source, NOT compiled)
|
|
459
|
+
- **Compilation**: None (tsx transpiles on-the-fly)
|
|
460
|
+
- **Example**:
|
|
461
|
+
```typescript
|
|
462
|
+
#!/usr/bin/env tsx
|
|
463
|
+
import { ACStatusManager } from '../../../../src/core/increment/ac-status-manager.js';
|
|
464
|
+
```
|
|
465
|
+
|
|
466
|
+
**Why Different Patterns?**
|
|
467
|
+
|
|
468
|
+
| Aspect | Hooks (dist/) | Increment Scripts (src/) |
|
|
469
|
+
|--------|---------------|-------------------------|
|
|
470
|
+
| **Context** | Production runtime | Development only |
|
|
471
|
+
| **Tooling** | Node.js only | TypeScript tooling (tsx) |
|
|
472
|
+
| **Build dependency** | Yes (requires dist/) | No (live source code) |
|
|
473
|
+
| **Live reload** | No (must rebuild) | Yes (tsx auto-transpiles) |
|
|
474
|
+
| **Purpose** | Permanent infrastructure | Temporary dev utilities |
|
|
475
|
+
|
|
476
|
+
**Common Mistake**: Copying hook import patterns to increment scripts.
|
|
477
|
+
|
|
478
|
+
```typescript
|
|
479
|
+
// ❌ WRONG (increment script importing from dist/):
|
|
480
|
+
#!/usr/bin/env tsx
|
|
481
|
+
import { ACStatusManager } from '../../../../dist/src/core/...';
|
|
482
|
+
// Issues:
|
|
483
|
+
// - Requires npm run build before execution
|
|
484
|
+
// - Stale code if src/ changes without rebuild
|
|
485
|
+
// - Semantic confusion (TS runtime + JS imports)
|
|
486
|
+
|
|
487
|
+
// ✅ CORRECT (increment script importing from src/):
|
|
488
|
+
#!/usr/bin/env tsx
|
|
489
|
+
import { ACStatusManager } from '../../../../src/core/...';
|
|
490
|
+
// Benefits:
|
|
491
|
+
// - No build dependency
|
|
492
|
+
// - Always uses latest source code
|
|
493
|
+
// - Clear dev script pattern
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
**Note**: Use `tsx` (not `ts-node`) for increment scripts - it has better ESM + TypeScript support.
|
|
497
|
+
|
|
498
|
+
### Running Increment Scripts
|
|
499
|
+
|
|
500
|
+
**CRITICAL**: Increment scripts use `#!/usr/bin/env tsx` shebang, which assumes tsx is in your PATH. This often fails in development environments.
|
|
501
|
+
|
|
502
|
+
**Recommended Execution Method** (Always Works):
|
|
503
|
+
```bash
|
|
504
|
+
# ✅ Use npx - finds tsx in node_modules/.bin/ automatically
|
|
505
|
+
npx tsx .specweave/increments/####/scripts/script-name.ts
|
|
506
|
+
|
|
507
|
+
# Example:
|
|
508
|
+
npx tsx .specweave/increments/0037-project-specific-tasks/scripts/validate-task-consistency.ts
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
**Why npx?**
|
|
512
|
+
- ✅ Works without global tsx installation
|
|
513
|
+
- ✅ Uses project's tsx version (consistent across team)
|
|
514
|
+
- ✅ No PATH configuration needed
|
|
515
|
+
- ✅ Same behavior in CI/CD and local dev
|
|
516
|
+
|
|
517
|
+
**Alternative Methods** (Less Recommended):
|
|
518
|
+
```bash
|
|
519
|
+
# Option 1: Direct execution (requires global tsx)
|
|
520
|
+
chmod +x script.ts
|
|
521
|
+
./script.ts
|
|
522
|
+
# ❌ Fails if tsx not globally installed
|
|
523
|
+
|
|
524
|
+
# Option 2: Install tsx globally (not recommended for teams)
|
|
525
|
+
npm install -g tsx
|
|
526
|
+
./script.ts
|
|
527
|
+
# ❌ Every contributor must install globally
|
|
528
|
+
# ❌ Version inconsistencies across team
|
|
529
|
+
|
|
530
|
+
# Option 3: Full path
|
|
531
|
+
./node_modules/.bin/tsx script.ts
|
|
532
|
+
# ✅ Works, but verbose
|
|
533
|
+
```
|
|
534
|
+
|
|
535
|
+
**Troubleshooting "command not found: tsx" (Exit Code 127)**:
|
|
536
|
+
|
|
537
|
+
This error means tsx isn't in your shell's PATH.
|
|
538
|
+
|
|
539
|
+
**Root Cause**:
|
|
540
|
+
- tsx is a **dev dependency** (installed in `node_modules/`)
|
|
541
|
+
- Shell can't find commands in `node_modules/.bin/` automatically
|
|
542
|
+
- npm scripts add `node_modules/.bin/` to PATH, but direct shell execution doesn't
|
|
543
|
+
|
|
544
|
+
**Fix**:
|
|
545
|
+
```bash
|
|
546
|
+
# Instead of:
|
|
547
|
+
tsx script.ts # ❌ Fails with error 127
|
|
548
|
+
|
|
549
|
+
# Use:
|
|
550
|
+
npx tsx script.ts # ✅ Always works
|
|
551
|
+
```
|
|
552
|
+
|
|
553
|
+
**Why This Happens "Sometimes"**:
|
|
554
|
+
- **npm scripts**: Work (PATH includes node_modules/.bin/)
|
|
555
|
+
- **Direct shell**: Fails (PATH doesn't include node_modules/.bin/)
|
|
556
|
+
- **Global tsx installed**: Works (tsx in system PATH)
|
|
557
|
+
- **CI/CD**: Depends on environment setup
|
|
558
|
+
|
|
559
|
+
**Execution Context Comparison**:
|
|
560
|
+
|
|
561
|
+
| Method | tsx in PATH? | Works? |
|
|
562
|
+
|--------|--------------|--------|
|
|
563
|
+
| `npm run script` | ✅ Yes (npm adds it) | ✅ Yes |
|
|
564
|
+
| `./script.ts` | ❌ No (unless global) | ❌ Usually fails |
|
|
565
|
+
| `tsx script.ts` | ❌ No (unless global) | ❌ Usually fails |
|
|
566
|
+
| `npx tsx script.ts` | ✅ Yes (npx finds it) | ✅ Always works |
|
|
567
|
+
|
|
568
|
+
**Best Practice for Contributors**:
|
|
569
|
+
- **Creating scripts**: Use `#!/usr/bin/env tsx` shebang (conventional)
|
|
570
|
+
- **Running scripts**: Always use `npx tsx script.ts` (reliable)
|
|
571
|
+
- **Documentation**: Show npx execution method in examples
|
|
572
|
+
|
|
573
|
+
### Coverage Requirements
|
|
574
|
+
|
|
354
575
|
- Critical paths: 90%+
|
|
355
576
|
- Overall: 80%+
|
|
356
577
|
|
|
578
|
+
### Related Documentation
|
|
579
|
+
|
|
580
|
+
- Build process details: `.github/CONTRIBUTING.md` → "Build Process & Best Practices"
|
|
581
|
+
- Ultrathink analysis: `.specweave/increments/0039/reports/HOOK-IMPORT-ERROR-ULTRATHINK-ANALYSIS.md`
|
|
582
|
+
- Build verification tests: `tests/integration/build/build-verification.test.ts`
|
|
583
|
+
|
|
357
584
|
---
|
|
358
585
|
|
|
359
586
|
## Common Tasks
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Issue State Manager - Auto-update GitHub issue state based on progress
|
|
3
|
+
*
|
|
4
|
+
* Rules:
|
|
5
|
+
* - 0% complete → State = open
|
|
6
|
+
* - 1-99% complete → State = open, label = in-progress
|
|
7
|
+
* - 100% complete → State = closed
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Issue state
|
|
11
|
+
*/
|
|
12
|
+
export type IssueState = 'open' | 'closed';
|
|
13
|
+
/**
|
|
14
|
+
* State change result
|
|
15
|
+
*/
|
|
16
|
+
export interface StateChangeResult {
|
|
17
|
+
/** Previous state */
|
|
18
|
+
previousState: IssueState;
|
|
19
|
+
/** New state */
|
|
20
|
+
newState: IssueState;
|
|
21
|
+
/** State changed */
|
|
22
|
+
changed: boolean;
|
|
23
|
+
/** Labels added */
|
|
24
|
+
labelsAdded: string[];
|
|
25
|
+
/** Labels removed */
|
|
26
|
+
labelsRemoved: string[];
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Progress info
|
|
30
|
+
*/
|
|
31
|
+
export interface ProgressInfo {
|
|
32
|
+
/** Total ACs */
|
|
33
|
+
totalAcs: number;
|
|
34
|
+
/** Completed ACs */
|
|
35
|
+
completedAcs: number;
|
|
36
|
+
/** AC completion percentage */
|
|
37
|
+
acPercentage: number;
|
|
38
|
+
/** Total tasks */
|
|
39
|
+
totalTasks: number;
|
|
40
|
+
/** Completed tasks */
|
|
41
|
+
completedTasks: number;
|
|
42
|
+
/** Task completion percentage */
|
|
43
|
+
taskPercentage: number;
|
|
44
|
+
/** Overall completion percentage */
|
|
45
|
+
overallPercentage: number;
|
|
46
|
+
/** Is 100% complete */
|
|
47
|
+
isComplete: boolean;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* IssueStateManager - Manages GitHub issue state
|
|
51
|
+
*/
|
|
52
|
+
export declare class IssueStateManager {
|
|
53
|
+
/**
|
|
54
|
+
* Determine issue state based on progress
|
|
55
|
+
*
|
|
56
|
+
* @param progress - Progress information
|
|
57
|
+
* @param currentState - Current issue state
|
|
58
|
+
* @returns State change result
|
|
59
|
+
*/
|
|
60
|
+
static determineState(progress: ProgressInfo, currentState: IssueState): StateChangeResult;
|
|
61
|
+
/**
|
|
62
|
+
* Calculate progress from acceptance criteria and tasks
|
|
63
|
+
*
|
|
64
|
+
* @param acs - Acceptance criteria
|
|
65
|
+
* @param tasks - Tasks
|
|
66
|
+
* @returns Progress information
|
|
67
|
+
*/
|
|
68
|
+
static calculateProgress(acs: Array<{
|
|
69
|
+
completed: boolean;
|
|
70
|
+
}>, tasks: Array<{
|
|
71
|
+
completed: boolean;
|
|
72
|
+
}>): ProgressInfo;
|
|
73
|
+
/**
|
|
74
|
+
* Format progress as markdown
|
|
75
|
+
*
|
|
76
|
+
* @param progress - Progress information
|
|
77
|
+
* @returns Markdown string
|
|
78
|
+
*/
|
|
79
|
+
static formatProgressMarkdown(progress: ProgressInfo): string;
|
|
80
|
+
/**
|
|
81
|
+
* Generate ASCII progress bar
|
|
82
|
+
*
|
|
83
|
+
* @param percentage - Completion percentage (0-100)
|
|
84
|
+
* @returns Progress bar string
|
|
85
|
+
*/
|
|
86
|
+
private static generateProgressBar;
|
|
87
|
+
/**
|
|
88
|
+
* Build GitHub CLI command to update issue state
|
|
89
|
+
*
|
|
90
|
+
* @param issueNumber - GitHub issue number
|
|
91
|
+
* @param state - New state
|
|
92
|
+
* @param labelsToAdd - Labels to add
|
|
93
|
+
* @param labelsToRemove - Labels to remove
|
|
94
|
+
* @returns gh CLI command
|
|
95
|
+
*/
|
|
96
|
+
static buildGitHubCommand(issueNumber: number, state: IssueState, labelsToAdd: string[], labelsToRemove: string[]): string;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=IssueStateManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IssueStateManager.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/IssueStateManager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,qBAAqB;IACrB,aAAa,EAAE,UAAU,CAAC;IAE1B,gBAAgB;IAChB,QAAQ,EAAE,UAAU,CAAC;IAErB,oBAAoB;IACpB,OAAO,EAAE,OAAO,CAAC;IAEjB,mBAAmB;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,qBAAqB;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IAEjB,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;IAErB,+BAA+B;IAC/B,YAAY,EAAE,MAAM,CAAC;IAErB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IAEnB,sBAAsB;IACtB,cAAc,EAAE,MAAM,CAAC;IAEvB,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IAEvB,oCAAoC;IACpC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,uBAAuB;IACvB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,cAAc,CACnB,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,UAAU,GACvB,iBAAiB;IA8BpB;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CACtB,GAAG,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,EAClC,KAAK,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,GACnC,YAAY;IA8Bf;;;;;OAKG;IACH,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM;IAyB7D;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAUlC;;;;;;;;OAQG;IACH,MAAM,CAAC,kBAAkB,CACvB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,UAAU,EACjB,WAAW,EAAE,MAAM,EAAE,EACrB,cAAc,EAAE,MAAM,EAAE,GACvB,MAAM;CAsBV"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Issue State Manager - Auto-update GitHub issue state based on progress
|
|
3
|
+
*
|
|
4
|
+
* Rules:
|
|
5
|
+
* - 0% complete → State = open
|
|
6
|
+
* - 1-99% complete → State = open, label = in-progress
|
|
7
|
+
* - 100% complete → State = closed
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* IssueStateManager - Manages GitHub issue state
|
|
11
|
+
*/
|
|
12
|
+
export class IssueStateManager {
|
|
13
|
+
/**
|
|
14
|
+
* Determine issue state based on progress
|
|
15
|
+
*
|
|
16
|
+
* @param progress - Progress information
|
|
17
|
+
* @param currentState - Current issue state
|
|
18
|
+
* @returns State change result
|
|
19
|
+
*/
|
|
20
|
+
static determineState(progress, currentState) {
|
|
21
|
+
const result = {
|
|
22
|
+
previousState: currentState,
|
|
23
|
+
newState: currentState,
|
|
24
|
+
changed: false,
|
|
25
|
+
labelsAdded: [],
|
|
26
|
+
labelsRemoved: []
|
|
27
|
+
};
|
|
28
|
+
// Determine new state based on progress
|
|
29
|
+
if (progress.isComplete) {
|
|
30
|
+
// 100% complete → Close issue
|
|
31
|
+
result.newState = 'closed';
|
|
32
|
+
result.labelsRemoved.push('in-progress');
|
|
33
|
+
}
|
|
34
|
+
else if (progress.overallPercentage > 0) {
|
|
35
|
+
// 1-99% complete → Open with in-progress label
|
|
36
|
+
result.newState = 'open';
|
|
37
|
+
result.labelsAdded.push('in-progress');
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
// 0% complete → Open without in-progress label
|
|
41
|
+
result.newState = 'open';
|
|
42
|
+
result.labelsRemoved.push('in-progress');
|
|
43
|
+
}
|
|
44
|
+
// Check if state changed
|
|
45
|
+
result.changed = result.newState !== result.previousState;
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Calculate progress from acceptance criteria and tasks
|
|
50
|
+
*
|
|
51
|
+
* @param acs - Acceptance criteria
|
|
52
|
+
* @param tasks - Tasks
|
|
53
|
+
* @returns Progress information
|
|
54
|
+
*/
|
|
55
|
+
static calculateProgress(acs, tasks) {
|
|
56
|
+
const totalAcs = acs.length;
|
|
57
|
+
const completedAcs = acs.filter(ac => ac.completed).length;
|
|
58
|
+
const acPercentage = totalAcs > 0 ? Math.round((completedAcs / totalAcs) * 100) : 0;
|
|
59
|
+
const totalTasks = tasks.length;
|
|
60
|
+
const completedTasks = tasks.filter(t => t.completed).length;
|
|
61
|
+
const taskPercentage = totalTasks > 0 ? Math.round((completedTasks / totalTasks) * 100) : 0;
|
|
62
|
+
// Overall percentage: average of AC and Task percentages
|
|
63
|
+
// If no tasks, use AC percentage only
|
|
64
|
+
const overallPercentage = totalTasks > 0
|
|
65
|
+
? Math.round((acPercentage + taskPercentage) / 2)
|
|
66
|
+
: acPercentage;
|
|
67
|
+
const isComplete = totalAcs > 0 && completedAcs === totalAcs &&
|
|
68
|
+
(totalTasks === 0 || completedTasks === totalTasks);
|
|
69
|
+
return {
|
|
70
|
+
totalAcs,
|
|
71
|
+
completedAcs,
|
|
72
|
+
acPercentage,
|
|
73
|
+
totalTasks,
|
|
74
|
+
completedTasks,
|
|
75
|
+
taskPercentage,
|
|
76
|
+
overallPercentage,
|
|
77
|
+
isComplete
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Format progress as markdown
|
|
82
|
+
*
|
|
83
|
+
* @param progress - Progress information
|
|
84
|
+
* @returns Markdown string
|
|
85
|
+
*/
|
|
86
|
+
static formatProgressMarkdown(progress) {
|
|
87
|
+
const sections = [];
|
|
88
|
+
sections.push('## Progress');
|
|
89
|
+
sections.push('');
|
|
90
|
+
// AC progress
|
|
91
|
+
sections.push(`**Acceptance Criteria**: ${progress.completedAcs}/${progress.totalAcs} (${progress.acPercentage}%)`);
|
|
92
|
+
// Task progress
|
|
93
|
+
if (progress.totalTasks > 0) {
|
|
94
|
+
sections.push(`**Tasks**: ${progress.completedTasks}/${progress.totalTasks} (${progress.taskPercentage}%)`);
|
|
95
|
+
}
|
|
96
|
+
// Overall progress
|
|
97
|
+
sections.push(`**Overall**: ${progress.overallPercentage}%`);
|
|
98
|
+
// Progress bar
|
|
99
|
+
const progressBar = this.generateProgressBar(progress.overallPercentage);
|
|
100
|
+
sections.push('');
|
|
101
|
+
sections.push(progressBar);
|
|
102
|
+
return sections.join('\n');
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Generate ASCII progress bar
|
|
106
|
+
*
|
|
107
|
+
* @param percentage - Completion percentage (0-100)
|
|
108
|
+
* @returns Progress bar string
|
|
109
|
+
*/
|
|
110
|
+
static generateProgressBar(percentage) {
|
|
111
|
+
const total = 20;
|
|
112
|
+
const filled = Math.round((percentage / 100) * total);
|
|
113
|
+
const empty = total - filled;
|
|
114
|
+
const bar = '█'.repeat(filled) + '░'.repeat(empty);
|
|
115
|
+
return `\`${bar}\` ${percentage}%`;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Build GitHub CLI command to update issue state
|
|
119
|
+
*
|
|
120
|
+
* @param issueNumber - GitHub issue number
|
|
121
|
+
* @param state - New state
|
|
122
|
+
* @param labelsToAdd - Labels to add
|
|
123
|
+
* @param labelsToRemove - Labels to remove
|
|
124
|
+
* @returns gh CLI command
|
|
125
|
+
*/
|
|
126
|
+
static buildGitHubCommand(issueNumber, state, labelsToAdd, labelsToRemove) {
|
|
127
|
+
const commands = [];
|
|
128
|
+
// Update state
|
|
129
|
+
if (state === 'closed') {
|
|
130
|
+
commands.push(`gh issue close ${issueNumber}`);
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
commands.push(`gh issue reopen ${issueNumber}`);
|
|
134
|
+
}
|
|
135
|
+
// Add labels
|
|
136
|
+
if (labelsToAdd.length > 0) {
|
|
137
|
+
commands.push(`gh issue edit ${issueNumber} --add-label "${labelsToAdd.join(',')}"`);
|
|
138
|
+
}
|
|
139
|
+
// Remove labels
|
|
140
|
+
if (labelsToRemove.length > 0) {
|
|
141
|
+
commands.push(`gh issue edit ${issueNumber} --remove-label "${labelsToRemove.join(',')}"`);
|
|
142
|
+
}
|
|
143
|
+
return commands.join(' && ');
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=IssueStateManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IssueStateManager.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/IssueStateManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-story-issue-builder.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;
|
|
1
|
+
{"version":3,"file":"user-story-issue-builder.d.ts","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA+BH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,MAAM,CAAC,CAAS;gBAGtB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAU7D;;;;;;;;OAQG;IACG,cAAc,IAAI,OAAO,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAkCF;;OAEG;YACW,wBAAwB;IAWtC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAmBjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAqDjC;;;;;;;OAOG;YACW,YAAY;IAsC1B;;;;OAIG;YACW,kBAAkB;IAyFhC;;OAEG;IACH,OAAO,CAAC,SAAS;IA6KjB;;OAEG;IACH,OAAO,CAAC,WAAW;IAqBnB;;OAEG;IACH,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -16,6 +16,7 @@ import { readFile } from 'fs/promises';
|
|
|
16
16
|
import { existsSync } from 'fs';
|
|
17
17
|
import * as path from 'path';
|
|
18
18
|
import * as yaml from 'yaml';
|
|
19
|
+
import { IssueStateManager } from './IssueStateManager.js';
|
|
19
20
|
export class UserStoryIssueBuilder {
|
|
20
21
|
constructor(userStoryPath, projectRoot, featureId, repoInfo) {
|
|
21
22
|
this.userStoryPath = userStoryPath;
|
|
@@ -238,6 +239,8 @@ export class UserStoryIssueBuilder {
|
|
|
238
239
|
*/
|
|
239
240
|
buildBody(data) {
|
|
240
241
|
const sections = [];
|
|
242
|
+
// Calculate progress
|
|
243
|
+
const progress = IssueStateManager.calculateProgress(data.acceptanceCriteria, data.tasks);
|
|
241
244
|
// Header with metadata
|
|
242
245
|
sections.push(`**Feature**: ${this.featureId}`);
|
|
243
246
|
sections.push(`**Status**: ${this.capitalize(data.frontmatter.status)}`);
|
|
@@ -247,6 +250,9 @@ export class UserStoryIssueBuilder {
|
|
|
247
250
|
sections.push(`**Project**: ${data.frontmatter.project}`);
|
|
248
251
|
}
|
|
249
252
|
sections.push('');
|
|
253
|
+
// Progress section (NEW)
|
|
254
|
+
sections.push(IssueStateManager.formatProgressMarkdown(progress));
|
|
255
|
+
sections.push('');
|
|
250
256
|
// User Story statement
|
|
251
257
|
if (data.userStoryStatement) {
|
|
252
258
|
sections.push('## User Story');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"user-story-issue-builder.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"user-story-issue-builder.js","sourceRoot":"","sources":["../../../../plugins/specweave-github/lib/user-story-issue-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAgB,MAAM,wBAAwB,CAAC;AAyBzE,MAAM,OAAO,qBAAqB;IAQhC,YACE,aAAqB,EACrB,WAAmB,EACnB,SAAiB,EACjB,QAA2D;QAE3D,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,QAAQ,EAAE,KAAK,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,EAAE,IAAI,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,MAAM,IAAI,SAAS,CAAC;IAC9C,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc;QAOlB,8BAA8B;QAC9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAExE,sBAAsB;QACtB,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;QACvE,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAEnE,uBAAuB;QACvB,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,CAAC,EAAE,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC;QAE5E,sBAAsB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1B,WAAW;YACX,kBAAkB;YAClB,kBAAkB;YAClB,KAAK;YACL,WAAW;SACZ,CAAC,CAAC;QAEH,sBAAsB;QACtB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAE7C,OAAO;YACL,KAAK;YACL,IAAI;YACJ,MAAM;YACN,WAAW,EAAE,WAAW,CAAC,EAAE;SAC5B,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB;QACpC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAErD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,aAAa,4BAA4B,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAyB,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,OAAe;QAC/C,kDAAkD;QAClD,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAClC,4CAA4C,CAC7C,CAAC;QAEF,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAClC,CAAC;QAED,oCAAoC;QACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAC/E,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,OAAe;QAC/C,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAE1C,yCAAyC;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAC3B,qDAAqD,CACtD,CAAC;QAEF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QAE7B,2CAA2C;QAC3C,wBAAwB;QACxB,mDAAmD;QACnD,0CAA0C;QAC1C,YAAY;QACZ,+CAA+C;QAC/C,mDAAmD;QACnD,2DAA2D;QAC3D,uEAAuE;QACvE,MAAM,qBAAqB,GAAG,mFAAmF,CAAC;QAClH,MAAM,mBAAmB,GAAG,uEAAuE,CAAC;QAEpG,oCAAoC;QACpC,IAAI,KAAK,CAAC;QACV,IAAI,QAAQ,GAAG,KAAK,CAAC;QAErB,OAAO,CAAC,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAChE,QAAQ,GAAG,IAAI,CAAC;YAChB,QAAQ,CAAC,IAAI,CAAC;gBACZ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gCAAgC;gBAC9C,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBAC5B,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,qCAAqC;aAClE,CAAC,CAAC;QACL,CAAC;QAED,yDAAyD;QACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9D,QAAQ,CAAC,IAAI,CAAC;oBACZ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,gCAAgC;oBAC9C,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;oBAC5B,SAAS,EAAE,KAAK,CAAC,2BAA2B;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,YAAY,CACxB,gBAAwB,EACxB,WAAmB;QAEnB,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,sDAAsD;QACtD,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CACvC,+DAA+D,CAChE,CAAC;QAEF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,gEAAgE;YAChE,OAAO,CAAC,GAAG,CAAC,uCAAuC,WAAW,qCAAqC,CAAC,CAAC;YACrG,OAAO,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,YAAY,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAEnC,sEAAsE;QACtE,MAAM,WAAW,GAAG,iDAAiD,CAAC;QAEtE,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACzD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;YACnC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAElC,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,SAAS;gBAChB,SAAS,CAAC,kDAAkD;aAC7D,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,kBAAkB,CAC9B,gBAAwB,EACxB,WAAmB;QAEnB,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,wDAAwD;QACxD,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CACtC,gDAAgD,CACjD,CAAC;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAEjC,mDAAmD;QACnD,gEAAgE;QAChE,MAAM,cAAc,GAAG,WAAW,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAE9E,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAEtC,mCAAmC;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,IAAI,CAAC,WAAW,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,UAAU,CACX,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAExD,0DAA0D;QAC1D,iHAAiH;QACjH,oDAAoD;QACpD,MAAM,WAAW,GAAG,8DAA8D,CAAC;QACnF,IAAI,KAAK,CAAC;QAEV,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACzD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAE1B,kBAAkB;YAClB,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACzD,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,SAAS,CAAC,8BAA8B;YAC1C,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAEjC,6DAA6D;YAC7D,qBAAqB;YACrB,MAAM,eAAe,GAAG,MAAM;iBAC3B,KAAK,CAAC,GAAG,CAAC;iBACV,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;iBACtB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBACb,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC9C,IAAI,CAAC,OAAO;oBAAE,OAAO,KAAK,CAAC;gBAC3B,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;YAEL,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,0DAA0D;YAC1D,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;YAE/D,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE,SAAS;gBAChB,SAAS;aACV,CAAC,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,SAAS,CAAC,IAMjB;QACC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,qBAAqB;QACrB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,iBAAiB,CAClD,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,KAAK,CACX,CAAC;QAEF,uBAAuB;QACvB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAChD,QAAQ,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACzE,QAAQ,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,WAAW,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC;QACpE,0DAA0D;QAC1D,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACvE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElB,yBAAyB;QACzB,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElB,uBAAuB;QACvB,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC/B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACzC,MAAM,QAAQ,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;gBAC9C,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;YACjE,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,QAAQ;QACR,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChD,QAAQ,CAAC,IAAI,CAAC,KAAK,QAAQ,MAAM,IAAI,CAAC,EAAE,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,wCAAwC;QACxC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAC3C,oDAAoD,CACrD,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACvC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACxC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,iDAAiD;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CACzC,2DAA2D,CAC5D,CAAC;QACF,IAAI,YAAY,EAAE,CAAC;YACjB,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAElB,6CAA6C;YAC7C,IAAI,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,MAAM,OAAO,GAAG,sBAAsB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;gBAE5F,gEAAgE;gBAChE,kDAAkD;gBAClD,cAAc,GAAG,cAAc,CAAC,OAAO,CACrC,kBAAkB,EAClB,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBAClB,mDAAmD;oBACnD,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;wBAChC,OAAO,KAAK,CAAC;oBACf,CAAC;oBACD,0DAA0D;oBAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;oBAC9E,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;oBACjC,OAAO,IAAI,OAAO,mCAAmC,OAAO,IAAI,SAAS,IAAI,QAAQ,GAAG,CAAC;gBAC3F,CAAC,CACF,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YAC9B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,mDAAmD;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CACtC,gDAAgD,CACjD,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAElB,6CAA6C;YAC7C,IAAI,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,MAAM,OAAO,GAAG,sBAAsB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;gBAE5F,wEAAwE;gBACxE,sFAAsF;gBACtF,WAAW,GAAG,WAAW,CAAC,OAAO,CAC/B,6DAA6D,EAC7D,GAAG,OAAO,8BAA8B,CACzC,CAAC;gBAEF,sEAAsE;gBACtE,WAAW,GAAG,WAAW,CAAC,OAAO,CAC/B,kEAAkE,EAClE,GAAG,OAAO,0CAA0C,CACrD,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,CAAC;QAED,QAAQ;QACR,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAElB,mCAAmC;QACnC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,sBAAsB,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC;YAE5F,oBAAoB;YACpB,QAAQ,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,SAAS,KAAK,OAAO,6CAA6C,IAAI,CAAC,SAAS,cAAc,CAAC,CAAC;YAE3I,kDAAkD;YAClD,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YAC3E,QAAQ,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,OAAO,IAAI,cAAc,GAAG,CAAC,CAAC;YAE7G,yDAAyD;YACzD,MAAM,cAAc,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,mCAAmC,CAAC,CAAC;YAClF,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,WAAW,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBACtC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,WAAW,KAAK,OAAO,0BAA0B,WAAW,GAAG,CAAC,CAAC;YACtG,CAAC;QACH,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,QAAQ,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,SAAS,iDAAiD,IAAI,CAAC,SAAS,cAAc,CAAC,CAAC;YACnI,QAAQ,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACxG,CAAC;QAED,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;QAEtF,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,WAAiC;QACnD,MAAM,MAAM,GAAa,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;QAErD,mBAAmB;QACnB,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,UAAU,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC;QAED,qBAAqB;QACrB,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,oBAAoB;QACpB,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC7D,MAAM,CAAC,IAAI,CAAC,WAAW,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,GAAW;QAC5B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Check Hooks CLI Command
|
|
4
|
+
*
|
|
5
|
+
* Runs hook health check from command line.
|
|
6
|
+
* Supports various output formats and auto-fix mode.
|
|
7
|
+
*
|
|
8
|
+
* Part of increment 0037: Hook Health Check System
|
|
9
|
+
*/
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=check-hooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check-hooks.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/check-hooks.ts"],"names":[],"mappings":";AAEA;;;;;;;GAOG"}
|