specweave 0.26.2 → 0.26.4

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.
Files changed (113) hide show
  1. package/CLAUDE.md +172 -1413
  2. package/dist/src/cli/commands/plan/plan-orchestrator.js +2 -2
  3. package/dist/src/cli/commands/plan/plan-orchestrator.js.map +1 -1
  4. package/dist/src/cli/helpers/issue-tracker/github-multi-repo.d.ts.map +1 -1
  5. package/dist/src/cli/helpers/issue-tracker/github-multi-repo.js +147 -55
  6. package/dist/src/cli/helpers/issue-tracker/github-multi-repo.js.map +1 -1
  7. package/dist/src/core/increment/completion-validator.d.ts +4 -0
  8. package/dist/src/core/increment/completion-validator.d.ts.map +1 -1
  9. package/dist/src/core/increment/completion-validator.js +36 -0
  10. package/dist/src/core/increment/completion-validator.js.map +1 -1
  11. package/dist/src/core/living-docs/living-docs-sync.d.ts.map +1 -1
  12. package/dist/src/core/living-docs/living-docs-sync.js +47 -13
  13. package/dist/src/core/living-docs/living-docs-sync.js.map +1 -1
  14. package/dist/src/core/us-sync-throttle.d.ts +113 -0
  15. package/dist/src/core/us-sync-throttle.d.ts.map +1 -0
  16. package/dist/src/core/us-sync-throttle.js +195 -0
  17. package/dist/src/core/us-sync-throttle.js.map +1 -0
  18. package/dist/src/utils/external-tool-drift-detector.d.ts +76 -0
  19. package/dist/src/utils/external-tool-drift-detector.d.ts.map +1 -0
  20. package/dist/src/utils/external-tool-drift-detector.js +235 -0
  21. package/dist/src/utils/external-tool-drift-detector.js.map +1 -0
  22. package/package.json +4 -4
  23. package/plugins/specweave/hooks/post-task-completion.sh +6 -6
  24. package/plugins/specweave/hooks/pre-increment-start.sh +6 -1
  25. package/plugins/specweave/lib/hooks/us-completion-orchestrator.js +62 -89
  26. package/plugins/specweave/lib/hooks/us-completion-orchestrator.ts +215 -0
  27. package/plugins/specweave-ado/lib/ado-multi-project-sync.js +0 -1
  28. package/plugins/specweave-jira/lib/enhanced-jira-sync.js +3 -3
  29. package/plugins/specweave-release/hooks/post-task-completion.sh +5 -1
  30. package/plugins/specweave/agents/pm/AGENT.md.bak +0 -1893
  31. package/plugins/specweave/hooks/docs-changed.sh.backup +0 -79
  32. package/plugins/specweave/hooks/human-input-required.sh.backup +0 -75
  33. package/plugins/specweave/hooks/lib/migrate-increment-work.sh.bak +0 -245
  34. package/plugins/specweave/hooks/lib/sync-spec-content.sh.bak +0 -149
  35. package/plugins/specweave/hooks/lib/validate-spec-status.sh.bak +0 -163
  36. package/plugins/specweave/hooks/post-first-increment.sh.backup +0 -61
  37. package/plugins/specweave/hooks/post-first-increment.sh.bak +0 -61
  38. package/plugins/specweave/hooks/post-increment-change.sh.backup +0 -98
  39. package/plugins/specweave/hooks/post-increment-completion.sh.backup +0 -231
  40. package/plugins/specweave/hooks/post-increment-planning.sh.backup +0 -1048
  41. package/plugins/specweave/hooks/post-increment-status-change.sh.backup +0 -147
  42. package/plugins/specweave/hooks/post-spec-update.sh.backup +0 -158
  43. package/plugins/specweave/hooks/post-spec-update.sh.bak +0 -158
  44. package/plugins/specweave/hooks/post-user-story-complete.sh.backup +0 -179
  45. package/plugins/specweave/hooks/post-user-story-complete.sh.bak +0 -179
  46. package/plugins/specweave/hooks/pre-command-deduplication.sh.backup +0 -83
  47. package/plugins/specweave/hooks/pre-command-deduplication.sh.bak +0 -83
  48. package/plugins/specweave/hooks/pre-implementation.sh.backup +0 -67
  49. package/plugins/specweave/hooks/pre-task-completion.sh.backup +0 -194
  50. package/plugins/specweave/hooks/pre-tool-use.sh.backup +0 -133
  51. package/plugins/specweave/hooks/user-prompt-submit.sh.backup +0 -386
  52. package/plugins/specweave/hooks/user-prompt-submit.sh.bak +0 -386
  53. package/plugins/specweave/lib/hooks/auto-transition.js.bak +0 -50
  54. package/plugins/specweave/lib/hooks/auto-transition.ts.bak +0 -84
  55. package/plugins/specweave/lib/hooks/git-diff-analyzer.d.js.bak +0 -0
  56. package/plugins/specweave/lib/hooks/git-diff-analyzer.d.ts.bak +0 -89
  57. package/plugins/specweave/lib/hooks/git-diff-analyzer.js.bak +0 -142
  58. package/plugins/specweave/lib/hooks/git-diff-analyzer.ts.bak +0 -269
  59. package/plugins/specweave/lib/hooks/invoke-translator-skill.d.js.bak +0 -0
  60. package/plugins/specweave/lib/hooks/invoke-translator-skill.d.ts.bak +0 -60
  61. package/plugins/specweave/lib/hooks/invoke-translator-skill.js.bak +0 -155
  62. package/plugins/specweave/lib/hooks/invoke-translator-skill.ts.bak +0 -264
  63. package/plugins/specweave/lib/hooks/prepare-reflection-context.d.js.bak +0 -0
  64. package/plugins/specweave/lib/hooks/prepare-reflection-context.d.ts.bak +0 -42
  65. package/plugins/specweave/lib/hooks/prepare-reflection-context.js.bak +0 -110
  66. package/plugins/specweave/lib/hooks/prepare-reflection-context.ts.bak +0 -178
  67. package/plugins/specweave/lib/hooks/reflection-config-loader.d.js.bak +0 -0
  68. package/plugins/specweave/lib/hooks/reflection-config-loader.d.ts.bak +0 -45
  69. package/plugins/specweave/lib/hooks/reflection-config-loader.js.bak +0 -92
  70. package/plugins/specweave/lib/hooks/reflection-config-loader.ts.bak +0 -156
  71. package/plugins/specweave/lib/hooks/reflection-parser.d.js.bak +0 -0
  72. package/plugins/specweave/lib/hooks/reflection-parser.d.ts.bak +0 -33
  73. package/plugins/specweave/lib/hooks/reflection-parser.js.bak +0 -301
  74. package/plugins/specweave/lib/hooks/reflection-parser.ts.bak +0 -484
  75. package/plugins/specweave/lib/hooks/reflection-prompt-builder.d.js.bak +0 -0
  76. package/plugins/specweave/lib/hooks/reflection-prompt-builder.d.ts.bak +0 -56
  77. package/plugins/specweave/lib/hooks/reflection-prompt-builder.js.bak +0 -182
  78. package/plugins/specweave/lib/hooks/reflection-prompt-builder.ts.bak +0 -306
  79. package/plugins/specweave/lib/hooks/reflection-storage.d.js.bak +0 -0
  80. package/plugins/specweave/lib/hooks/reflection-storage.d.ts.bak +0 -64
  81. package/plugins/specweave/lib/hooks/reflection-storage.js.bak +0 -231
  82. package/plugins/specweave/lib/hooks/reflection-storage.ts.bak +0 -369
  83. package/plugins/specweave/lib/hooks/run-self-reflection.d.js.bak +0 -0
  84. package/plugins/specweave/lib/hooks/run-self-reflection.d.ts.bak +0 -43
  85. package/plugins/specweave/lib/hooks/run-self-reflection.js.bak +0 -132
  86. package/plugins/specweave/lib/hooks/run-self-reflection.ts.bak +0 -258
  87. package/plugins/specweave/lib/hooks/sync-cache.js.bak +0 -294
  88. package/plugins/specweave/lib/hooks/sync-living-docs.d.js.bak +0 -1
  89. package/plugins/specweave/lib/hooks/sync-living-docs.d.ts.bak +0 -27
  90. package/plugins/specweave/lib/hooks/sync-living-docs.js.bak +0 -339
  91. package/plugins/specweave/lib/hooks/sync-us-tasks.js.bak +0 -476
  92. package/plugins/specweave/lib/hooks/translate-file.d.js.bak +0 -0
  93. package/plugins/specweave/lib/hooks/translate-file.d.ts.bak +0 -59
  94. package/plugins/specweave/lib/hooks/translate-file.js.bak +0 -289
  95. package/plugins/specweave/lib/hooks/translate-file.ts.bak +0 -428
  96. package/plugins/specweave/lib/hooks/translate-living-docs.d.js.bak +0 -0
  97. package/plugins/specweave/lib/hooks/translate-living-docs.d.ts.bak +0 -13
  98. package/plugins/specweave/lib/hooks/translate-living-docs.js.bak +0 -119
  99. package/plugins/specweave/lib/hooks/translate-living-docs.ts.bak +0 -224
  100. package/plugins/specweave/lib/hooks/update-ac-status.js.bak +0 -51
  101. package/plugins/specweave/lib/hooks/update-ac-status.ts.bak +0 -103
  102. package/plugins/specweave/lib/hooks/update-tasks-md.d.js.bak +0 -1
  103. package/plugins/specweave/lib/hooks/update-tasks-md.d.ts.bak +0 -29
  104. package/plugins/specweave/lib/hooks/update-tasks-md.js.bak +0 -296
  105. package/plugins/specweave/lib/hooks/update-tasks-md.ts.bak +0 -489
  106. package/plugins/specweave-ado/hooks/post-living-docs-update.sh.backup +0 -353
  107. package/plugins/specweave-ado/hooks/post-task-completion.sh.backup +0 -172
  108. package/plugins/specweave-ado/lib/enhanced-ado-sync.js +0 -170
  109. package/plugins/specweave-github/hooks/.specweave/logs/hooks-debug.log +0 -904
  110. package/plugins/specweave-github/hooks/post-task-completion.sh.backup +0 -258
  111. package/plugins/specweave-jira/hooks/post-task-completion.sh.backup +0 -172
  112. package/plugins/specweave-release/hooks/.specweave/logs/dora-tracking.log +0 -738
  113. package/plugins/specweave-release/hooks/post-task-completion.sh.backup +0 -110
@@ -1,110 +0,0 @@
1
- #!/bin/bash
2
- # Post-Increment-Completion Hook - DORA Metrics Tracking
3
- #
4
- # Fires after: /specweave:done completes
5
- # Purpose: Automatically track DORA metrics and update living docs dashboard
6
- #
7
- # Integration: plugins/specweave-release/hooks/hooks.json
8
-
9
- set -euo pipefail
10
-
11
- # Constants
12
- SPECWEAVE_ROOT="${SPECWEAVE_ROOT:-$(pwd)}"
13
- METRICS_DIR="${SPECWEAVE_ROOT}/.specweave/metrics"
14
- HISTORY_FILE="${METRICS_DIR}/dora-history.jsonl"
15
- DASHBOARD_FILE="${SPECWEAVE_ROOT}/.specweave/docs/internal/delivery/dora-dashboard.md"
16
- DORA_CALCULATOR="${SPECWEAVE_ROOT}/dist/src/metrics/dora-calculator.js"
17
- LATEST_FILE="${METRICS_DIR}/dora-latest.json"
18
-
19
- # Logging
20
- LOG_FILE="${SPECWEAVE_ROOT}/.specweave/logs/dora-tracking.log"
21
- mkdir -p "$(dirname "$LOG_FILE")"
22
-
23
- log() {
24
- echo "[$(date '+%Y-%m-%d %H:%M:%S')] $*" | tee -a "$LOG_FILE"
25
- }
26
-
27
- log "đŸŽ¯ Post-Increment-Completion Hook Triggered"
28
-
29
- # Check if DORA calculator exists
30
- if [[ ! -f "$DORA_CALCULATOR" ]]; then
31
- log "âš ī¸ DORA calculator not found at $DORA_CALCULATOR"
32
- log " Run: npm run build"
33
- exit 0 # Non-blocking
34
- fi
35
-
36
- # Check if GitHub token is available
37
- if [[ -z "${GITHUB_TOKEN:-}" ]]; then
38
- log "âš ī¸ GITHUB_TOKEN not set. DORA metrics require GitHub API access."
39
- log " Set GITHUB_TOKEN in environment or .env file"
40
- exit 0 # Non-blocking
41
- fi
42
-
43
- # Step 1: Calculate DORA metrics
44
- log "📊 Calculating DORA metrics..."
45
- if ! node "$DORA_CALCULATOR"; then
46
- log "❌ Failed to calculate DORA metrics"
47
- exit 0 # Non-blocking
48
- fi
49
-
50
- # Step 2: Append to history (JSONL format)
51
- log "💾 Appending metrics to history..."
52
- mkdir -p "$METRICS_DIR"
53
-
54
- if [[ -f "$LATEST_FILE" ]]; then
55
- cat "$LATEST_FILE" >> "$HISTORY_FILE"
56
- log " ✓ Appended to $HISTORY_FILE"
57
- else
58
- log "âš ī¸ Latest metrics file not found: $LATEST_FILE"
59
- fi
60
-
61
- # Step 3: Update living docs dashboard
62
- log "📝 Updating DORA dashboard..."
63
- DASHBOARD_GENERATOR="${SPECWEAVE_ROOT}/dist/plugins/specweave-release/lib/dashboard-generator.js"
64
-
65
- if [[ -f "$DASHBOARD_GENERATOR" ]]; then
66
- if node "$DASHBOARD_GENERATOR"; then
67
- log " ✓ Dashboard updated: $DASHBOARD_FILE"
68
- else
69
- log "âš ī¸ Failed to update dashboard"
70
- fi
71
- else
72
- log "âš ī¸ Dashboard generator not found: $DASHBOARD_GENERATOR"
73
- log " Manual dashboard update required"
74
- fi
75
-
76
- # Step 4: Check for degradation (optional)
77
- log "🔍 Checking for metric degradation..."
78
-
79
- # Calculate 30-day average and compare with current
80
- # (This would be implemented in a TypeScript utility)
81
- # For now, we'll just log a reminder
82
- log " â„šī¸ Degradation detection: Manual review recommended"
83
- log " See: $DASHBOARD_FILE for trends"
84
-
85
- # Step 5: Update main DORA metrics doc
86
- DORA_METRICS_DOC="${SPECWEAVE_ROOT}/.specweave/docs/internal/delivery/dora-metrics.md"
87
- if [[ -f "$DORA_METRICS_DOC" && -f "$LATEST_FILE" ]]; then
88
- log "📄 Updating dora-metrics.md with latest values..."
89
-
90
- # Extract current values from latest metrics
91
- # (This is a simplified version - production would use jq for proper parsing)
92
- TIMESTAMP=$(date '+%Y-%m-%d %H:%M UTC')
93
-
94
- # Update "Last Calculated" timestamp
95
- if command -v sed &> /dev/null; then
96
- sed -i.bak "s/Last Calculated: .*/Last Calculated: $TIMESTAMP/" "$DORA_METRICS_DOC" 2>/dev/null || true
97
- rm -f "${DORA_METRICS_DOC}.bak" 2>/dev/null || true
98
- log " ✓ Updated timestamp in dora-metrics.md"
99
- fi
100
- fi
101
-
102
- log "✅ DORA metrics tracking complete!"
103
- log ""
104
- log "📊 Next steps:"
105
- log " 1. Review dashboard: $DASHBOARD_FILE"
106
- log " 2. Check trends: Are metrics improving?"
107
- log " 3. Take action: Address any degradation"
108
- log ""
109
-
110
- exit 0