anvil-dev-framework 0.1.6

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 (190) hide show
  1. package/README.md +719 -0
  2. package/VERSION +1 -0
  3. package/docs/ANVIL-REPO-IMPLEMENTATION-PLAN.md +441 -0
  4. package/docs/FIRST-SKILL-TUTORIAL.md +408 -0
  5. package/docs/INSTALLATION-RETRO-NOTES.md +458 -0
  6. package/docs/INSTALLATION.md +984 -0
  7. package/docs/anvil-hud.md +469 -0
  8. package/docs/anvil-init.md +255 -0
  9. package/docs/anvil-state.md +210 -0
  10. package/docs/boris-cherny-ralph-wiggum-insights.md +608 -0
  11. package/docs/command-reference.md +2022 -0
  12. package/docs/hooks-tts.md +368 -0
  13. package/docs/implementation-guide.md +810 -0
  14. package/docs/linear-github-integration.md +247 -0
  15. package/docs/local-issues.md +677 -0
  16. package/docs/patterns/README.md +419 -0
  17. package/docs/planning-responsibilities.md +139 -0
  18. package/docs/session-workflow.md +573 -0
  19. package/docs/simplification-plan-template.md +297 -0
  20. package/docs/simplification-principles.md +129 -0
  21. package/docs/specifications/CCS-RALPH-INTEGRATION-DESIGN.md +633 -0
  22. package/docs/specifications/CCS-RESEARCH-REPORT.md +169 -0
  23. package/docs/specifications/PLAN-ANV-verification-ralph-wiggum.md +403 -0
  24. package/docs/specifications/PLAN-parallel-tracks-anvil-memory-ccs.md +494 -0
  25. package/docs/specifications/SPEC-ANV-VRW/component-01-verify.md +208 -0
  26. package/docs/specifications/SPEC-ANV-VRW/component-02-stop-gate.md +226 -0
  27. package/docs/specifications/SPEC-ANV-VRW/component-03-posttooluse.md +209 -0
  28. package/docs/specifications/SPEC-ANV-VRW/component-04-ralph-wiggum.md +604 -0
  29. package/docs/specifications/SPEC-ANV-VRW/component-05-atomic-actions.md +311 -0
  30. package/docs/specifications/SPEC-ANV-VRW/component-06-verify-subagent.md +264 -0
  31. package/docs/specifications/SPEC-ANV-VRW/component-07-claude-md.md +363 -0
  32. package/docs/specifications/SPEC-ANV-VRW/index.md +182 -0
  33. package/docs/specifications/SPEC-ANV-anvil-memory.md +573 -0
  34. package/docs/specifications/SPEC-ANV-context-checkpoints.md +781 -0
  35. package/docs/specifications/SPEC-ANV-verification-ralph-wiggum.md +789 -0
  36. package/docs/sync.md +122 -0
  37. package/global/CLAUDE.md +140 -0
  38. package/global/agents/verify-app.md +164 -0
  39. package/global/commands/anvil-settings.md +527 -0
  40. package/global/commands/anvil-sync.md +121 -0
  41. package/global/commands/change.md +197 -0
  42. package/global/commands/clarify.md +252 -0
  43. package/global/commands/cleanup.md +292 -0
  44. package/global/commands/commit-push-pr.md +207 -0
  45. package/global/commands/decay-review.md +127 -0
  46. package/global/commands/discover.md +158 -0
  47. package/global/commands/doc-coverage.md +122 -0
  48. package/global/commands/evidence.md +307 -0
  49. package/global/commands/explore.md +121 -0
  50. package/global/commands/force-exit.md +135 -0
  51. package/global/commands/handoff.md +191 -0
  52. package/global/commands/healthcheck.md +302 -0
  53. package/global/commands/hud.md +84 -0
  54. package/global/commands/insights.md +319 -0
  55. package/global/commands/linear-setup.md +184 -0
  56. package/global/commands/lint-fix.md +198 -0
  57. package/global/commands/orient.md +510 -0
  58. package/global/commands/plan.md +228 -0
  59. package/global/commands/ralph.md +346 -0
  60. package/global/commands/ready.md +182 -0
  61. package/global/commands/release.md +305 -0
  62. package/global/commands/retro.md +96 -0
  63. package/global/commands/shard.md +166 -0
  64. package/global/commands/spec.md +227 -0
  65. package/global/commands/sprint.md +184 -0
  66. package/global/commands/tasks.md +228 -0
  67. package/global/commands/test-and-commit.md +151 -0
  68. package/global/commands/validate.md +132 -0
  69. package/global/commands/verify.md +251 -0
  70. package/global/commands/weekly-review.md +156 -0
  71. package/global/hooks/__pycache__/ralph_context_monitor.cpython-314.pyc +0 -0
  72. package/global/hooks/__pycache__/statusline_agent_sync.cpython-314.pyc +0 -0
  73. package/global/hooks/anvil_memory_observe.ts +322 -0
  74. package/global/hooks/anvil_memory_session.ts +166 -0
  75. package/global/hooks/anvil_memory_stop.ts +187 -0
  76. package/global/hooks/parse_transcript.py +116 -0
  77. package/global/hooks/post_merge_cleanup.sh +132 -0
  78. package/global/hooks/post_tool_format.sh +215 -0
  79. package/global/hooks/ralph_context_monitor.py +240 -0
  80. package/global/hooks/ralph_stop.sh +502 -0
  81. package/global/hooks/statusline.sh +1110 -0
  82. package/global/hooks/statusline_agent_sync.py +224 -0
  83. package/global/hooks/stop_gate.sh +250 -0
  84. package/global/lib/.claude/anvil-state.json +21 -0
  85. package/global/lib/__pycache__/agent_registry.cpython-314.pyc +0 -0
  86. package/global/lib/__pycache__/claim_service.cpython-314.pyc +0 -0
  87. package/global/lib/__pycache__/coderabbit_service.cpython-314.pyc +0 -0
  88. package/global/lib/__pycache__/config_service.cpython-314.pyc +0 -0
  89. package/global/lib/__pycache__/coordination_service.cpython-314.pyc +0 -0
  90. package/global/lib/__pycache__/doc_coverage_service.cpython-314.pyc +0 -0
  91. package/global/lib/__pycache__/gate_logger.cpython-314.pyc +0 -0
  92. package/global/lib/__pycache__/github_service.cpython-314.pyc +0 -0
  93. package/global/lib/__pycache__/hygiene_service.cpython-314.pyc +0 -0
  94. package/global/lib/__pycache__/issue_models.cpython-314.pyc +0 -0
  95. package/global/lib/__pycache__/issue_provider.cpython-314.pyc +0 -0
  96. package/global/lib/__pycache__/linear_data_service.cpython-314.pyc +0 -0
  97. package/global/lib/__pycache__/linear_provider.cpython-314.pyc +0 -0
  98. package/global/lib/__pycache__/local_provider.cpython-314.pyc +0 -0
  99. package/global/lib/__pycache__/quality_service.cpython-314.pyc +0 -0
  100. package/global/lib/__pycache__/ralph_state.cpython-314.pyc +0 -0
  101. package/global/lib/__pycache__/state_manager.cpython-314.pyc +0 -0
  102. package/global/lib/__pycache__/transcript_parser.cpython-314.pyc +0 -0
  103. package/global/lib/__pycache__/verification_runner.cpython-314.pyc +0 -0
  104. package/global/lib/__pycache__/verify_iteration.cpython-314.pyc +0 -0
  105. package/global/lib/__pycache__/verify_subagent.cpython-314.pyc +0 -0
  106. package/global/lib/agent_registry.py +995 -0
  107. package/global/lib/anvil-state.sh +435 -0
  108. package/global/lib/claim_service.py +515 -0
  109. package/global/lib/coderabbit_service.py +314 -0
  110. package/global/lib/config_service.py +423 -0
  111. package/global/lib/coordination_service.py +331 -0
  112. package/global/lib/doc_coverage_service.py +1305 -0
  113. package/global/lib/gate_logger.py +316 -0
  114. package/global/lib/github_service.py +310 -0
  115. package/global/lib/handoff_generator.py +775 -0
  116. package/global/lib/hygiene_service.py +712 -0
  117. package/global/lib/issue_models.py +257 -0
  118. package/global/lib/issue_provider.py +339 -0
  119. package/global/lib/linear_data_service.py +210 -0
  120. package/global/lib/linear_provider.py +987 -0
  121. package/global/lib/linear_provider.py.backup +671 -0
  122. package/global/lib/local_provider.py +486 -0
  123. package/global/lib/orient_fast.py +457 -0
  124. package/global/lib/quality_service.py +470 -0
  125. package/global/lib/ralph_prompt_generator.py +563 -0
  126. package/global/lib/ralph_state.py +1202 -0
  127. package/global/lib/state_manager.py +417 -0
  128. package/global/lib/transcript_parser.py +597 -0
  129. package/global/lib/verification_runner.py +557 -0
  130. package/global/lib/verify_iteration.py +490 -0
  131. package/global/lib/verify_subagent.py +250 -0
  132. package/global/skills/README.md +155 -0
  133. package/global/skills/quality-gates/SKILL.md +252 -0
  134. package/global/skills/skill-template/SKILL.md +109 -0
  135. package/global/skills/testing-strategies/SKILL.md +337 -0
  136. package/global/templates/CHANGE-template.md +105 -0
  137. package/global/templates/HANDOFF-template.md +63 -0
  138. package/global/templates/PLAN-template.md +111 -0
  139. package/global/templates/SPEC-template.md +93 -0
  140. package/global/templates/ralph/PROMPT.md.template +89 -0
  141. package/global/templates/ralph/fix_plan.md.template +31 -0
  142. package/global/templates/ralph/progress.txt.template +23 -0
  143. package/global/tests/__pycache__/test_doc_coverage.cpython-314.pyc +0 -0
  144. package/global/tests/test_doc_coverage.py +520 -0
  145. package/global/tests/test_issue_models.py +299 -0
  146. package/global/tests/test_local_provider.py +323 -0
  147. package/global/tools/README.md +178 -0
  148. package/global/tools/__pycache__/anvil-hud.cpython-314.pyc +0 -0
  149. package/global/tools/anvil-hud.py +3622 -0
  150. package/global/tools/anvil-hud.py.bak +3318 -0
  151. package/global/tools/anvil-issue.py +432 -0
  152. package/global/tools/anvil-memory/CLAUDE.md +49 -0
  153. package/global/tools/anvil-memory/README.md +42 -0
  154. package/global/tools/anvil-memory/bun.lock +25 -0
  155. package/global/tools/anvil-memory/bunfig.toml +9 -0
  156. package/global/tools/anvil-memory/package.json +23 -0
  157. package/global/tools/anvil-memory/src/__tests__/ccs/context-monitor.test.ts +535 -0
  158. package/global/tools/anvil-memory/src/__tests__/ccs/edge-cases.test.ts +645 -0
  159. package/global/tools/anvil-memory/src/__tests__/ccs/fixtures.ts +363 -0
  160. package/global/tools/anvil-memory/src/__tests__/ccs/index.ts +8 -0
  161. package/global/tools/anvil-memory/src/__tests__/ccs/integration.test.ts +417 -0
  162. package/global/tools/anvil-memory/src/__tests__/ccs/prompt-generator.test.ts +571 -0
  163. package/global/tools/anvil-memory/src/__tests__/ccs/ralph-stop.test.ts +440 -0
  164. package/global/tools/anvil-memory/src/__tests__/ccs/test-utils.ts +252 -0
  165. package/global/tools/anvil-memory/src/__tests__/commands.test.ts +657 -0
  166. package/global/tools/anvil-memory/src/__tests__/db.test.ts +641 -0
  167. package/global/tools/anvil-memory/src/__tests__/hooks.test.ts +272 -0
  168. package/global/tools/anvil-memory/src/__tests__/performance.test.ts +427 -0
  169. package/global/tools/anvil-memory/src/__tests__/test-utils.ts +113 -0
  170. package/global/tools/anvil-memory/src/commands/checkpoint.ts +197 -0
  171. package/global/tools/anvil-memory/src/commands/get.ts +115 -0
  172. package/global/tools/anvil-memory/src/commands/init.ts +94 -0
  173. package/global/tools/anvil-memory/src/commands/observe.ts +163 -0
  174. package/global/tools/anvil-memory/src/commands/search.ts +112 -0
  175. package/global/tools/anvil-memory/src/db.ts +638 -0
  176. package/global/tools/anvil-memory/src/index.ts +205 -0
  177. package/global/tools/anvil-memory/src/types.ts +122 -0
  178. package/global/tools/anvil-memory/tsconfig.json +29 -0
  179. package/global/tools/ralph-loop.sh +359 -0
  180. package/package.json +45 -0
  181. package/scripts/anvil +822 -0
  182. package/scripts/extract_patterns.py +222 -0
  183. package/scripts/init-project.sh +541 -0
  184. package/scripts/install.sh +229 -0
  185. package/scripts/postinstall.js +41 -0
  186. package/scripts/rollback.sh +188 -0
  187. package/scripts/sync.sh +623 -0
  188. package/scripts/test-statusline.sh +248 -0
  189. package/scripts/update_claude_md.py +224 -0
  190. package/scripts/verify.sh +255 -0
@@ -0,0 +1,251 @@
1
+ # /verify - Verification Feedback Loop
2
+
3
+ > Run verification suite with automatic iteration on failure. This is the highest-impact technique from Boris Cherny's methodology.
4
+
5
+ ## When to Use
6
+ - After implementing a feature or fix
7
+ - Before committing changes
8
+ - When tests, lint, or types are failing
9
+ - As part of any completion workflow
10
+
11
+ ## Why This Matters
12
+ > Boris Cherny: "Verification is #1... 2-3x quality improvement"
13
+
14
+ Traditional workflow: Code → Commit → Find errors later
15
+ Verification workflow: Code → Verify → Fix → Verify → Commit clean
16
+
17
+ The iteration loop catches issues immediately, reducing rework.
18
+
19
+ ## Arguments
20
+ - (none) - Run full verification suite
21
+ - `--test-only` - Run tests only, skip lint/types
22
+ - `--lint-only` - Run lint only
23
+ - `--quick` - Skip type checking (faster iteration)
24
+ - `--max N` - Override max iterations (default: 3)
25
+
26
+ ## Execution Steps
27
+
28
+ ### Step 1: Run Verification Suite
29
+ Execute all configured verification commands in order:
30
+
31
+ ```bash
32
+ # Detect project type and run appropriate commands
33
+ # Node.js projects
34
+ npm test
35
+ npm run lint
36
+ npm run typecheck
37
+
38
+ # Python projects
39
+ pytest
40
+ ruff check .
41
+ mypy .
42
+
43
+ # Or custom commands from .claude/settings.yaml
44
+ ```
45
+
46
+ ### Step 2: Analyze Results
47
+ **If ALL pass:**
48
+ ```
49
+ ✅ Verification passed
50
+ Tests: 47 passed
51
+ Lint: clean
52
+ Types: clean
53
+
54
+ Ready for commit.
55
+ ```
56
+
57
+ **If ANY fail:**
58
+ ```
59
+ ❌ Verification failed - 3 test failures
60
+
61
+ Analyzing failures...
62
+ - src/auth/login.test.ts:45 - Expected 200, got 401
63
+ - src/auth/login.test.ts:67 - Timeout after 5000ms
64
+ - src/utils/format.test.ts:12 - undefined is not a function
65
+ ```
66
+
67
+ ### Step 3: Iterate on Failures (max 3 times)
68
+ For each failing file:
69
+ 1. **Re-read** the failing file to get current state
70
+ 2. **Analyze** the specific error message and location
71
+ 3. **Apply** a targeted fix (minimal change)
72
+ 4. **Re-run** only the failing command
73
+ 5. **Repeat** until pass or max iterations reached
74
+
75
+ ```
76
+ Attempting fix (iteration 1/3)...
77
+ → Reading src/auth/login.test.ts
78
+ → Issue: Mock not returning expected status
79
+ → Fix: Update mock return value
80
+ → Re-running tests...
81
+
82
+ Attempting fix (iteration 2/3)...
83
+ → Reading src/utils/format.test.ts
84
+ → Issue: Function renamed but test not updated
85
+ → Fix: Update test to use new function name
86
+ → Re-running tests...
87
+
88
+ ✅ Verification passed after 2 iterations
89
+ ```
90
+
91
+ ### Step 4: Report Final State
92
+
93
+ **Success:**
94
+ ```
95
+ ✅ Verification passed
96
+ Iterations: 2
97
+ Tests: 47 passed
98
+ Lint: clean
99
+ Types: clean
100
+
101
+ All checks passed. Ready for commit.
102
+ ```
103
+
104
+ **Failure after max iterations:**
105
+ ```
106
+ ⚠️ Verification failed after 3 attempts
107
+
108
+ Remaining issues:
109
+ 1. src/auth/login.test.ts:67 - Timeout (may need mock adjustment)
110
+ 2. Integration test requires live database
111
+
112
+ These issues need manual intervention.
113
+ Suggested actions:
114
+ - Review timeout configuration
115
+ - Check if test requires external dependencies
116
+ ```
117
+
118
+ ## Configuration
119
+
120
+ Project-specific settings in `.claude/settings.yaml`:
121
+
122
+ ```yaml
123
+ verification:
124
+ commands:
125
+ test: "npm test" # or "pytest", "cargo test"
126
+ lint: "npm run lint" # or "ruff check .", "cargo clippy"
127
+ types: "npm run typecheck" # or "mypy .", "cargo check"
128
+ max_iterations: 3
129
+ required_for_completion: true
130
+ timeout_seconds: 300
131
+ ```
132
+
133
+ ## Detecting Project Type
134
+
135
+ If no config exists, auto-detect:
136
+
137
+ | File Exists | Project Type | Commands |
138
+ |-------------|--------------|----------|
139
+ | `package.json` | Node.js | npm test, npm run lint, npm run typecheck |
140
+ | `pyproject.toml` | Python | pytest, ruff check, mypy |
141
+ | `Cargo.toml` | Rust | cargo test, cargo clippy, cargo check |
142
+ | `go.mod` | Go | go test ./..., golangci-lint run |
143
+
144
+ ## Anti-Patterns
145
+
146
+ | Don't | Do Instead |
147
+ |-------|------------|
148
+ | ❌ Make broad changes during fix | ✅ Make minimal, targeted fixes |
149
+ | ❌ Continue past max iterations | ✅ Escalate and ask for help |
150
+ | ❌ Ignore failing checks | ✅ Address every failure |
151
+ | ❌ Change unrelated code | ✅ Only fix the specific error |
152
+ | ❌ Skip verification to save time | ✅ Always verify before commit |
153
+ | ❌ Commit with failing tests | ✅ Fix all issues first |
154
+
155
+ ## Examples
156
+
157
+ ### Basic Usage
158
+ ```
159
+ User: /verify
160
+
161
+ Claude: Running verification suite...
162
+ ✅ Verification passed
163
+ Tests: 47 passed
164
+ Lint: clean
165
+ Types: clean
166
+ ```
167
+
168
+ ### With Failures
169
+ ```
170
+ User: /verify
171
+
172
+ Claude: Running verification suite...
173
+ ❌ 2 test failures detected
174
+
175
+ Attempting fix (iteration 1/3)...
176
+ → Fixed missing mock in auth.test.ts
177
+
178
+ Re-running tests...
179
+ ✅ Verification passed after 1 iteration
180
+ ```
181
+
182
+ ### Quick Mode
183
+ ```
184
+ User: /verify --quick
185
+
186
+ Claude: Running quick verification (no type check)...
187
+ ✅ Tests: 47 passed
188
+ ✅ Lint: clean
189
+ ⏭️ Types: skipped (--quick mode)
190
+ ```
191
+
192
+ ### Max Iterations Exceeded
193
+ ```
194
+ User: /verify
195
+
196
+ Claude: Running verification suite...
197
+ ❌ Test failure detected
198
+
199
+ Attempting fix (iteration 1/3)... failed
200
+ Attempting fix (iteration 2/3)... failed
201
+ Attempting fix (iteration 3/3)... failed
202
+
203
+ ⚠️ Could not fix automatically after 3 attempts.
204
+
205
+ Issue: Integration test requires database connection
206
+ File: src/db/connection.test.ts:34
207
+
208
+ This needs manual review. Possible causes:
209
+ - Missing test database setup
210
+ - Environment variable not set
211
+ - Network connectivity issue
212
+ ```
213
+
214
+ ## State File
215
+
216
+ Verification state is persisted at `.claude/verification-state.json`:
217
+
218
+ ```json
219
+ {
220
+ "last_run": "2026-01-04T14:30:00Z",
221
+ "status": "passed",
222
+ "iterations": 2,
223
+ "results": {
224
+ "tests": { "passed": true, "count": 47 },
225
+ "lint": { "passed": true, "errors": 0 },
226
+ "types": { "passed": true, "errors": 0 }
227
+ }
228
+ }
229
+ ```
230
+
231
+ This state is used by:
232
+ - Stop hook gate (block exit if verification required)
233
+ - Ralph Wiggum mode (track iteration progress)
234
+ - Statusline (show verification status)
235
+
236
+ ## Integration Points
237
+
238
+ | Component | Integration |
239
+ |-----------|-------------|
240
+ | Stop Hook Gate | Reads verification state to allow/block exit |
241
+ | Ralph Wiggum Mode | Uses verify as completion gate |
242
+ | `/evidence` | Captures verification output as proof |
243
+ | Statusline | Shows pass/fail indicator |
244
+
245
+ ## Key Behaviors
246
+
247
+ 1. **Always run all checks** - Don't skip steps even if early ones fail
248
+ 2. **Parse errors precisely** - Extract file paths and line numbers
249
+ 3. **Fix targeted** - Minimal changes to address specific errors
250
+ 4. **Track iterations** - Know when to stop and escalate
251
+ 5. **Report clearly** - User should always know current state
@@ -0,0 +1,156 @@
1
+ # /weekly-review - Generate Analytics and Recommendations
2
+
3
+ > Weekly review of development process with metrics and improvement suggestions.
4
+
5
+ ## When to Use
6
+ - End of each week (Friday recommended)
7
+ - Before sprint planning
8
+ - When process feels inefficient
9
+ - Monthly/quarterly reviews
10
+
11
+ ## Execution Steps
12
+
13
+ ### Step 1: Gather Week's Data
14
+
15
+ **From Linear**:
16
+ - Issues completed this week
17
+ - Issues created this week
18
+ - Current backlog size
19
+ - Blocked issues
20
+ - Average cycle time
21
+
22
+ **From Git**:
23
+ ```bash
24
+ # Commits this week
25
+ git log --oneline --since="7 days ago"
26
+
27
+ # Files changed
28
+ git diff --stat HEAD~7..HEAD 2>/dev/null || git log --stat --since="7 days ago"
29
+
30
+ # PRs merged (if using GitHub)
31
+ gh pr list --state merged --search "merged:>=$(date -v-7d +%Y-%m-%d)"
32
+ ```
33
+
34
+ **From Handoffs**:
35
+ - Sessions this week
36
+ - Context switches
37
+ - Discovered work filed
38
+
39
+ ### Step 2: Calculate Metrics
40
+
41
+ | Metric | Calculation |
42
+ |--------|-------------|
43
+ | Velocity | Issues completed / week |
44
+ | Throughput | PRs merged / week |
45
+ | Cycle Time | Avg days from start to done |
46
+ | Discovery Rate | Discovered issues / planned issues |
47
+ | Block Rate | % of time spent blocked |
48
+
49
+ ### Step 3: Analyze Patterns
50
+
51
+ Look for:
52
+ - Repeated blockers
53
+ - Scope creep patterns
54
+ - Quality issues (reverts, hotfixes)
55
+ - Estimation accuracy
56
+ - Context switch frequency
57
+
58
+ ### Step 4: Generate Weekly Report
59
+
60
+ Output:
61
+ ```markdown
62
+ ## Weekly Review: [Week of Date]
63
+
64
+ ### Velocity Metrics
65
+ | Metric | This Week | Last Week | Trend |
66
+ |--------|-----------|-----------|-------|
67
+ | Issues Completed | 8 | 6 | ↑ |
68
+ | PRs Merged | 5 | 4 | ↑ |
69
+ | Commits | 23 | 18 | ↑ |
70
+ | Discovered Issues | 3 | 5 | ↓ |
71
+
72
+ ### Cycle Time
73
+ | Stage | Avg Time |
74
+ |-------|----------|
75
+ | Todo → In Progress | 1.2 days |
76
+ | In Progress → Review | 2.3 days |
77
+ | Review → Done | 0.5 days |
78
+ | **Total** | **4.0 days** |
79
+
80
+ ### Quality Indicators
81
+ | Indicator | Count |
82
+ |-----------|-------|
83
+ | Reverts | 0 |
84
+ | Hotfixes | 1 |
85
+ | Failed CI | 3 |
86
+ | CodeRabbit Issues | 12 |
87
+
88
+ ### Backlog Health
89
+ - **Active Issues**: 42 (target: <50) ✅
90
+ - **Blocked Issues**: 5 (12%)
91
+ - **Oldest Issue**: 14 days (ENG-89)
92
+
93
+ ### Session Analysis
94
+ - **Sessions**: 8
95
+ - **Avg Session Length**: 2.5 hours
96
+ - **Context Switches**: 4
97
+ - **Handoffs Created**: 6
98
+
99
+ ### Wins This Week 🎉
100
+ 1. [Significant accomplishment]
101
+ 2. [Significant accomplishment]
102
+
103
+ ### Challenges
104
+ 1. [Challenge encountered]
105
+ 2. [Challenge encountered]
106
+
107
+ ### Patterns Observed
108
+ - [Pattern 1]: [Observation and impact]
109
+ - [Pattern 2]: [Observation and impact]
110
+
111
+ ### Recommendations
112
+ 1. **[Area]**: [Specific recommendation]
113
+ 2. **[Area]**: [Specific recommendation]
114
+ 3. **[Area]**: [Specific recommendation]
115
+
116
+ ### Focus for Next Week
117
+ 1. [Priority 1]
118
+ 2. [Priority 2]
119
+ 3. [Priority 3]
120
+
121
+ ---
122
+ *Review generated: [timestamp]*
123
+ ```
124
+
125
+ ### Step 5: Archive Report
126
+ Save to: `.claude/analytics/weekly-[YYYY-WW].md`
127
+
128
+ ## Metrics Reference
129
+
130
+ ### Health Indicators
131
+
132
+ | Metric | Healthy | Warning | Critical |
133
+ |--------|---------|---------|----------|
134
+ | Active Issues | <50 | 50-75 | >75 |
135
+ | Blocked % | <10% | 10-25% | >25% |
136
+ | Cycle Time | <5 days | 5-10 days | >10 days |
137
+ | Discovery Rate | <30% | 30-50% | >50% |
138
+ | Reverts/week | 0 | 1-2 | >2 |
139
+
140
+ ### Trend Indicators
141
+ - ↑ Improving
142
+ - → Stable
143
+ - ↓ Declining
144
+
145
+ ## Key Behaviors
146
+ - Consistent weekly cadence
147
+ - Compare to previous weeks
148
+ - Actionable recommendations
149
+ - Celebrate wins
150
+ - Be honest about challenges
151
+
152
+ ## Integration Points
153
+ - Follows: Week's work
154
+ - Precedes: Sprint planning
155
+ - Creates: `.claude/analytics/weekly-*.md`
156
+ - Triggers: `/decay-review` for cleanup