@sienklogic/plan-build-run 2.0.0 → 2.0.2

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 (233) hide show
  1. package/CHANGELOG.md +56 -56
  2. package/CLAUDE.md +149 -149
  3. package/LICENSE +21 -21
  4. package/README.md +247 -247
  5. package/dashboard/bin/cli.js +25 -25
  6. package/dashboard/package.json +34 -34
  7. package/dashboard/public/css/layout.css +406 -406
  8. package/dashboard/public/css/status-colors.css +98 -98
  9. package/dashboard/public/js/htmx-title.js +5 -5
  10. package/dashboard/public/js/sidebar-toggle.js +20 -20
  11. package/dashboard/src/app.js +78 -78
  12. package/dashboard/src/middleware/errorHandler.js +52 -52
  13. package/dashboard/src/middleware/notFoundHandler.js +9 -9
  14. package/dashboard/src/repositories/planning.repository.js +128 -128
  15. package/dashboard/src/routes/events.routes.js +40 -40
  16. package/dashboard/src/routes/index.routes.js +31 -31
  17. package/dashboard/src/routes/pages.routes.js +245 -195
  18. package/dashboard/src/server.js +42 -42
  19. package/dashboard/src/services/dashboard.service.js +222 -222
  20. package/dashboard/src/services/phase.service.js +220 -167
  21. package/dashboard/src/services/project.service.js +57 -57
  22. package/dashboard/src/services/roadmap.service.js +171 -171
  23. package/dashboard/src/services/sse.service.js +58 -58
  24. package/dashboard/src/services/todo.service.js +254 -254
  25. package/dashboard/src/services/watcher.service.js +48 -48
  26. package/dashboard/src/views/coming-soon.ejs +11 -11
  27. package/dashboard/src/views/error.ejs +13 -13
  28. package/dashboard/src/views/index.ejs +5 -5
  29. package/dashboard/src/views/layout.ejs +1 -1
  30. package/dashboard/src/views/partials/dashboard-content.ejs +77 -77
  31. package/dashboard/src/views/partials/footer.ejs +3 -3
  32. package/dashboard/src/views/partials/head.ejs +21 -21
  33. package/dashboard/src/views/partials/header.ejs +12 -12
  34. package/dashboard/src/views/partials/layout-bottom.ejs +15 -15
  35. package/dashboard/src/views/partials/layout-top.ejs +8 -8
  36. package/dashboard/src/views/partials/phase-content.ejs +188 -181
  37. package/dashboard/src/views/partials/phase-doc-content.ejs +38 -0
  38. package/dashboard/src/views/partials/phases-content.ejs +117 -117
  39. package/dashboard/src/views/partials/roadmap-content.ejs +142 -142
  40. package/dashboard/src/views/partials/sidebar.ejs +38 -38
  41. package/dashboard/src/views/partials/todo-create-content.ejs +53 -53
  42. package/dashboard/src/views/partials/todo-detail-content.ejs +38 -38
  43. package/dashboard/src/views/partials/todos-content.ejs +53 -53
  44. package/dashboard/src/views/phase-detail.ejs +5 -5
  45. package/dashboard/src/views/phase-doc.ejs +5 -0
  46. package/dashboard/src/views/phases.ejs +5 -5
  47. package/dashboard/src/views/roadmap.ejs +5 -5
  48. package/dashboard/src/views/todo-create.ejs +5 -5
  49. package/dashboard/src/views/todo-detail.ejs +5 -5
  50. package/dashboard/src/views/todos.ejs +5 -5
  51. package/package.json +57 -57
  52. package/plugins/cursor-pbr/.cursor-plugin/plugin.json +22 -0
  53. package/plugins/cursor-pbr/agents/.gitkeep +0 -0
  54. package/plugins/cursor-pbr/assets/.gitkeep +0 -0
  55. package/plugins/cursor-pbr/hooks/hooks.json +11 -0
  56. package/plugins/cursor-pbr/references/.gitkeep +0 -0
  57. package/plugins/cursor-pbr/rules/.gitkeep +0 -0
  58. package/plugins/cursor-pbr/skills/.gitkeep +0 -0
  59. package/plugins/cursor-pbr/templates/.gitkeep +0 -0
  60. package/plugins/pbr/.claude-plugin/plugin.json +13 -13
  61. package/plugins/pbr/UI-CONSISTENCY-GAPS.md +61 -61
  62. package/plugins/pbr/agents/codebase-mapper.md +279 -271
  63. package/plugins/pbr/agents/debugger.md +281 -281
  64. package/plugins/pbr/agents/executor.md +428 -407
  65. package/plugins/pbr/agents/general.md +164 -164
  66. package/plugins/pbr/agents/integration-checker.md +169 -141
  67. package/plugins/pbr/agents/plan-checker.md +296 -280
  68. package/plugins/pbr/agents/planner.md +358 -358
  69. package/plugins/pbr/agents/researcher.md +363 -363
  70. package/plugins/pbr/agents/synthesizer.md +230 -230
  71. package/plugins/pbr/agents/verifier.md +489 -454
  72. package/plugins/pbr/commands/begin.md +5 -5
  73. package/plugins/pbr/commands/build.md +5 -5
  74. package/plugins/pbr/commands/config.md +5 -5
  75. package/plugins/pbr/commands/continue.md +5 -5
  76. package/plugins/pbr/commands/debug.md +5 -5
  77. package/plugins/pbr/commands/discuss.md +5 -5
  78. package/plugins/pbr/commands/explore.md +5 -5
  79. package/plugins/pbr/commands/health.md +5 -5
  80. package/plugins/pbr/commands/help.md +5 -5
  81. package/plugins/pbr/commands/import.md +5 -5
  82. package/plugins/pbr/commands/milestone.md +5 -5
  83. package/plugins/pbr/commands/note.md +5 -5
  84. package/plugins/pbr/commands/pause.md +5 -5
  85. package/plugins/pbr/commands/plan.md +5 -5
  86. package/plugins/pbr/commands/quick.md +5 -5
  87. package/plugins/pbr/commands/resume.md +5 -5
  88. package/plugins/pbr/commands/review.md +5 -5
  89. package/plugins/pbr/commands/scan.md +5 -5
  90. package/plugins/pbr/commands/setup.md +5 -5
  91. package/plugins/pbr/commands/status.md +5 -5
  92. package/plugins/pbr/commands/todo.md +5 -5
  93. package/plugins/pbr/contexts/dev.md +27 -27
  94. package/plugins/pbr/contexts/research.md +28 -28
  95. package/plugins/pbr/contexts/review.md +36 -36
  96. package/plugins/pbr/hooks/hooks.json +183 -183
  97. package/plugins/pbr/references/agent-anti-patterns.md +24 -24
  98. package/plugins/pbr/references/agent-interactions.md +134 -134
  99. package/plugins/pbr/references/agent-teams.md +54 -54
  100. package/plugins/pbr/references/checkpoints.md +157 -157
  101. package/plugins/pbr/references/common-bug-patterns.md +13 -13
  102. package/plugins/pbr/references/config-reference.md +441 -0
  103. package/plugins/pbr/references/continuation-format.md +212 -212
  104. package/plugins/pbr/references/deviation-rules.md +112 -112
  105. package/plugins/pbr/references/git-integration.md +226 -226
  106. package/plugins/pbr/references/integration-patterns.md +117 -117
  107. package/plugins/pbr/references/model-profiles.md +99 -99
  108. package/plugins/pbr/references/model-selection.md +31 -31
  109. package/plugins/pbr/references/pbr-rules.md +193 -193
  110. package/plugins/pbr/references/plan-authoring.md +181 -181
  111. package/plugins/pbr/references/plan-format.md +287 -283
  112. package/plugins/pbr/references/planning-config.md +213 -213
  113. package/plugins/pbr/references/questioning.md +214 -214
  114. package/plugins/pbr/references/reading-verification.md +127 -127
  115. package/plugins/pbr/references/stub-patterns.md +160 -160
  116. package/plugins/pbr/references/subagent-coordination.md +119 -119
  117. package/plugins/pbr/references/ui-formatting.md +461 -399
  118. package/plugins/pbr/references/verification-patterns.md +198 -198
  119. package/plugins/pbr/references/wave-execution.md +95 -95
  120. package/plugins/pbr/scripts/auto-continue.js +80 -80
  121. package/plugins/pbr/scripts/check-dangerous-commands.js +136 -136
  122. package/plugins/pbr/scripts/check-doc-sprawl.js +102 -102
  123. package/plugins/pbr/scripts/check-phase-boundary.js +196 -196
  124. package/plugins/pbr/scripts/check-plan-format.js +270 -270
  125. package/plugins/pbr/scripts/check-roadmap-sync.js +322 -252
  126. package/plugins/pbr/scripts/check-skill-workflow.js +262 -262
  127. package/plugins/pbr/scripts/check-state-sync.js +476 -476
  128. package/plugins/pbr/scripts/check-subagent-output.js +144 -144
  129. package/plugins/pbr/scripts/config-schema.json +251 -251
  130. package/plugins/pbr/scripts/context-budget-check.js +287 -287
  131. package/plugins/pbr/scripts/event-handler.js +151 -151
  132. package/plugins/pbr/scripts/event-logger.js +92 -92
  133. package/plugins/pbr/scripts/hook-logger.js +80 -76
  134. package/plugins/pbr/scripts/hooks-schema.json +79 -79
  135. package/plugins/pbr/scripts/log-subagent.js +164 -152
  136. package/plugins/pbr/scripts/log-tool-failure.js +88 -88
  137. package/plugins/pbr/scripts/pbr-tools.js +1378 -1301
  138. package/plugins/pbr/scripts/post-write-dispatch.js +66 -66
  139. package/plugins/pbr/scripts/post-write-quality.js +207 -207
  140. package/plugins/pbr/scripts/pre-bash-dispatch.js +86 -56
  141. package/plugins/pbr/scripts/pre-write-dispatch.js +97 -62
  142. package/plugins/pbr/scripts/progress-tracker.js +281 -228
  143. package/plugins/pbr/scripts/run-hook.js +92 -0
  144. package/plugins/pbr/scripts/session-cleanup.js +254 -254
  145. package/plugins/pbr/scripts/status-line.js +288 -285
  146. package/plugins/pbr/scripts/suggest-compact.js +119 -119
  147. package/plugins/pbr/scripts/task-completed.js +45 -45
  148. package/plugins/pbr/scripts/track-context-budget.js +149 -119
  149. package/plugins/pbr/scripts/validate-commit.js +200 -200
  150. package/plugins/pbr/scripts/validate-plugin-structure.js +183 -172
  151. package/plugins/pbr/scripts/validate-task.js +106 -0
  152. package/plugins/pbr/skills/begin/SKILL.md +594 -545
  153. package/plugins/pbr/skills/begin/templates/PROJECT.md.tmpl +33 -33
  154. package/plugins/pbr/skills/begin/templates/REQUIREMENTS.md.tmpl +18 -18
  155. package/plugins/pbr/skills/begin/templates/STATE.md.tmpl +49 -49
  156. package/plugins/pbr/skills/begin/templates/config.json.tmpl +64 -63
  157. package/plugins/pbr/skills/begin/templates/researcher-prompt.md.tmpl +19 -19
  158. package/plugins/pbr/skills/begin/templates/roadmap-prompt.md.tmpl +30 -30
  159. package/plugins/pbr/skills/begin/templates/synthesis-prompt.md.tmpl +16 -16
  160. package/plugins/pbr/skills/build/SKILL.md +943 -962
  161. package/plugins/pbr/skills/config/SKILL.md +256 -241
  162. package/plugins/pbr/skills/continue/SKILL.md +164 -127
  163. package/plugins/pbr/skills/debug/SKILL.md +515 -489
  164. package/plugins/pbr/skills/debug/templates/continuation-prompt.md.tmpl +16 -16
  165. package/plugins/pbr/skills/debug/templates/initial-investigation-prompt.md.tmpl +27 -27
  166. package/plugins/pbr/skills/discuss/SKILL.md +347 -338
  167. package/plugins/pbr/skills/discuss/templates/CONTEXT.md.tmpl +61 -61
  168. package/plugins/pbr/skills/discuss/templates/decision-categories.md +9 -9
  169. package/plugins/pbr/skills/explore/SKILL.md +378 -362
  170. package/plugins/pbr/skills/health/SKILL.md +221 -186
  171. package/plugins/pbr/skills/health/templates/check-pattern.md.tmpl +30 -30
  172. package/plugins/pbr/skills/health/templates/output-format.md.tmpl +63 -63
  173. package/plugins/pbr/skills/help/SKILL.md +155 -140
  174. package/plugins/pbr/skills/import/SKILL.md +504 -490
  175. package/plugins/pbr/skills/milestone/SKILL.md +704 -673
  176. package/plugins/pbr/skills/milestone/templates/audit-report.md.tmpl +48 -48
  177. package/plugins/pbr/skills/milestone/templates/stats-file.md.tmpl +30 -30
  178. package/plugins/pbr/skills/note/SKILL.md +231 -212
  179. package/plugins/pbr/skills/pause/SKILL.md +249 -235
  180. package/plugins/pbr/skills/pause/templates/continue-here.md.tmpl +71 -71
  181. package/plugins/pbr/skills/plan/SKILL.md +685 -628
  182. package/plugins/pbr/skills/plan/decimal-phase-calc.md +98 -98
  183. package/plugins/pbr/skills/plan/templates/checker-prompt.md.tmpl +21 -21
  184. package/plugins/pbr/skills/plan/templates/gap-closure-prompt.md.tmpl +32 -32
  185. package/plugins/pbr/skills/plan/templates/planner-prompt.md.tmpl +38 -38
  186. package/plugins/pbr/skills/plan/templates/researcher-prompt.md.tmpl +19 -19
  187. package/plugins/pbr/skills/plan/templates/revision-prompt.md.tmpl +23 -23
  188. package/plugins/pbr/skills/quick/SKILL.md +354 -335
  189. package/plugins/pbr/skills/resume/SKILL.md +402 -388
  190. package/plugins/pbr/skills/review/SKILL.md +686 -652
  191. package/plugins/pbr/skills/review/templates/debugger-prompt.md.tmpl +60 -60
  192. package/plugins/pbr/skills/review/templates/gap-planner-prompt.md.tmpl +40 -40
  193. package/plugins/pbr/skills/review/templates/verifier-prompt.md.tmpl +115 -115
  194. package/plugins/pbr/skills/scan/SKILL.md +304 -269
  195. package/plugins/pbr/skills/scan/templates/mapper-prompt.md.tmpl +201 -201
  196. package/plugins/pbr/skills/setup/SKILL.md +253 -227
  197. package/plugins/pbr/skills/shared/commit-planning-docs.md +35 -35
  198. package/plugins/pbr/skills/shared/config-loading.md +102 -102
  199. package/plugins/pbr/skills/shared/context-budget.md +40 -40
  200. package/plugins/pbr/skills/shared/context-loader-task.md +86 -86
  201. package/plugins/pbr/skills/shared/digest-select.md +79 -79
  202. package/plugins/pbr/skills/shared/domain-probes.md +125 -125
  203. package/plugins/pbr/skills/shared/error-reporting.md +79 -79
  204. package/plugins/pbr/skills/shared/gate-prompts.md +388 -388
  205. package/plugins/pbr/skills/shared/phase-argument-parsing.md +45 -45
  206. package/plugins/pbr/skills/shared/progress-display.md +53 -53
  207. package/plugins/pbr/skills/shared/revision-loop.md +81 -81
  208. package/plugins/pbr/skills/shared/state-loading.md +62 -62
  209. package/plugins/pbr/skills/shared/state-update.md +161 -161
  210. package/plugins/pbr/skills/shared/universal-anti-patterns.md +33 -33
  211. package/plugins/pbr/skills/status/SKILL.md +367 -353
  212. package/plugins/pbr/skills/todo/SKILL.md +198 -181
  213. package/plugins/pbr/templates/CONTEXT.md.tmpl +52 -52
  214. package/plugins/pbr/templates/INTEGRATION-REPORT.md.tmpl +151 -151
  215. package/plugins/pbr/templates/RESEARCH-SUMMARY.md.tmpl +97 -97
  216. package/plugins/pbr/templates/ROADMAP.md.tmpl +40 -40
  217. package/plugins/pbr/templates/SUMMARY.md.tmpl +81 -81
  218. package/plugins/pbr/templates/VERIFICATION-DETAIL.md.tmpl +116 -116
  219. package/plugins/pbr/templates/codebase/ARCHITECTURE.md.tmpl +98 -98
  220. package/plugins/pbr/templates/codebase/CONCERNS.md.tmpl +93 -93
  221. package/plugins/pbr/templates/codebase/CONVENTIONS.md.tmpl +104 -104
  222. package/plugins/pbr/templates/codebase/INTEGRATIONS.md.tmpl +78 -78
  223. package/plugins/pbr/templates/codebase/STACK.md.tmpl +78 -78
  224. package/plugins/pbr/templates/codebase/STRUCTURE.md.tmpl +80 -80
  225. package/plugins/pbr/templates/codebase/TESTING.md.tmpl +107 -107
  226. package/plugins/pbr/templates/continue-here.md.tmpl +73 -73
  227. package/plugins/pbr/templates/prompt-partials/phase-project-context.md.tmpl +37 -37
  228. package/plugins/pbr/templates/research/ARCHITECTURE.md.tmpl +124 -124
  229. package/plugins/pbr/templates/research/STACK.md.tmpl +71 -71
  230. package/plugins/pbr/templates/research/SUMMARY.md.tmpl +112 -112
  231. package/plugins/pbr/templates/research-outputs/phase-research.md.tmpl +81 -81
  232. package/plugins/pbr/templates/research-outputs/project-research.md.tmpl +99 -99
  233. package/plugins/pbr/templates/research-outputs/synthesis.md.tmpl +36 -36
@@ -1,151 +1,151 @@
1
- <!-- Source: agents/integration-checker.md | Purpose: Output format for cross-phase integration verification reports -->
2
-
3
- ```markdown
4
- # Integration Verification Report
5
-
6
- > Verified: {date}
7
- > Phases checked: {comma-separated list of phase IDs}
8
- > Status: **{INTEGRATED | GAPS_FOUND}**
9
-
10
- ## Phase Dependency Graph
11
-
12
- ```
13
- Phase 01 (Setup) ──provides──→ Phase 02 (Auth)
14
- Phase 01 (Setup) ──provides──→ Phase 03 (Core)
15
- Phase 02 (Auth) ──provides──→ Phase 03 (Core)
16
- Phase 02 (Auth) ──provides──→ Phase 04 (Frontend)
17
- Phase 03 (Core) ──provides──→ Phase 04 (Frontend)
18
- ```
19
-
20
- ## 1. Export/Import Wiring
21
-
22
- ### Export Status Summary
23
-
24
- | Phase | Total Exports | Consumed | Orphaned | Unused Imports | Mismatched |
25
- |-------|--------------|----------|----------|---------------|------------|
26
- | 01 | {n} | {n} | {n} | {n} | {n} |
27
- | 02 | {n} | {n} | {n} | {n} | {n} |
28
-
29
- ### Detailed Export Map
30
-
31
- | Export | Source Phase | Source File:Line | Consumer(s) | Status |
32
- |--------|------------|-----------------|-------------|--------|
33
- | DatabaseConnection | 01 | src/db/conn.ts:5 | Phase 02, 03 | CONSUMED |
34
- | ConfigLoader | 01 | src/config/index.ts:12 | Phase 03 | CONSUMED |
35
- | ThemeProvider | 04 | src/theme/provider.tsx:8 | - | ORPHANED |
36
-
37
- ### Orphaned Exports (created but never used)
38
-
39
- | Export | Phase | File | Line | Likely Intended Consumer |
40
- |--------|-------|------|------|------------------------|
41
- | {name} | {phase} | {file} | {line} | {best guess or "unknown"} |
42
-
43
- ### Unused Imports (imported but symbol never called)
44
-
45
- | File | Imported Symbol | Source Module | Line |
46
- |------|----------------|--------------|------|
47
- | {file} | {symbol} | {module} | {line} |
48
-
49
- ## 2. API Coverage
50
-
51
- ### Route Coverage Matrix
52
-
53
- | Route | Method | Handler | Frontend Caller | Auth | Status |
54
- |-------|--------|---------|----------------|------|--------|
55
- | /api/users | GET | users.ts:12 | UserList.tsx:34 | YES | COVERED |
56
- | /api/users/:id | DELETE | users.ts:45 | - | YES | NO_CALLER |
57
- | /api/settings | PUT | - | Settings.tsx:22 | - | NO_HANDLER |
58
-
59
- ### Uncovered Routes (backend exists, no frontend caller)
60
-
61
- | Route | Method | Handler | Possible Reason |
62
- |-------|--------|---------|----------------|
63
- | {route} | {method} | {file:line} | {guess: future feature, admin only, etc.} |
64
-
65
- ### Missing Handlers (frontend calls, no backend route)
66
-
67
- | Frontend File | Calls | Expected Route | Expected Method |
68
- |--------------|-------|---------------|----------------|
69
- | {file} | fetch('/api/X') | /api/X | GET |
70
-
71
- ## 3. Auth Protection
72
-
73
- ### Route Protection Summary
74
-
75
- | Category | Total | Protected | Unprotected | Status |
76
- |----------|-------|-----------|-------------|--------|
77
- | API Routes | {n} | {n} | {n} | {OK/ISSUES} |
78
- | Pages | {n} | {n} | {n} | {OK/ISSUES} |
79
- | Public Routes | {n} | - | {n} | OK |
80
-
81
- ### Unprotected Routes (SECURITY ISSUES)
82
-
83
- | Route | Method | Handler | Should Protect | Evidence |
84
- |-------|--------|---------|---------------|----------|
85
- | {route} | {method} | {file:line} | YES | No auth middleware in chain |
86
-
87
- ### Auth Flow Completeness
88
-
89
- | Step | Status | Evidence |
90
- |------|--------|----------|
91
- | Login form exists | {YES/NO} | {file:line} |
92
- | Auth API called | {YES/NO} | {file:line} |
93
- | Token/session created | {YES/NO} | {file:line} |
94
- | Token sent with requests | {YES/NO} | {file:line} |
95
- | Auth middleware applied | {YES/NO} | {file:line} |
96
- | Unauthorized redirect | {YES/NO} | {file:line} |
97
-
98
- ## 4. End-to-End Flows
99
-
100
- ### Flow 1: {Flow Name} - {STATUS}
101
-
102
- | Step | Description | Component | Exists | Connected to Next | Evidence |
103
- |------|------------|-----------|--------|-------------------|----------|
104
- | 1 | {step desc} | {file} | YES | YES | import at L12, call at L45 |
105
- | 2 | {step desc} | {file} | YES | NO | handler exists but not called |
106
- | 3 | {step desc} | - | NO | - | File not found |
107
-
108
- **Break point**: {If BROKEN, where exactly the chain breaks}
109
- **Impact**: {What user action fails because of this break}
110
-
111
- ### Flow 2: {Flow Name} - {STATUS}
112
- ...
113
-
114
- ## 5. Integration Issues Summary
115
-
116
- ### Critical Issues (system cannot function)
117
-
118
- 1. **{Issue}**: {description with evidence}
119
- - Impact: {what breaks}
120
- - Fix: {recommended action}
121
-
122
- ### Warnings (partial functionality)
123
-
124
- 1. **{Issue}**: {description with evidence}
125
- - Impact: {what's degraded}
126
- - Fix: {recommended action}
127
-
128
- ### Info (cleanup opportunities)
129
-
130
- 1. **{Issue}**: {description}
131
- - Fix: {recommended action}
132
-
133
- ## 6. Integration Score
134
-
135
- | Category | Items Checked | Passed | Failed | Score |
136
- |----------|--------------|--------|--------|-------|
137
- | Export wiring | {n} | {n} | {n} | {%} |
138
- | API coverage | {n} | {n} | {n} | {%} |
139
- | Auth protection | {n} | {n} | {n} | {%} |
140
- | E2E flows | {n} | {n} | {n} | {%} |
141
- | **Overall** | {n} | {n} | {n} | **{%}** |
142
-
143
- ## Recommendations
144
-
145
- {Prioritized list of actions to fix integration issues}
146
-
147
- 1. **[CRITICAL]** {Most important fix}
148
- 2. **[CRITICAL]** {Second most important}
149
- 3. **[WARNING]** {Important but not blocking}
150
- 4. ...
151
- ```
1
+ <!-- Source: agents/integration-checker.md | Purpose: Output format for cross-phase integration verification reports -->
2
+
3
+ ```markdown
4
+ # Integration Verification Report
5
+
6
+ > Verified: {date}
7
+ > Phases checked: {comma-separated list of phase IDs}
8
+ > Status: **{INTEGRATED | GAPS_FOUND}**
9
+
10
+ ## Phase Dependency Graph
11
+
12
+ ```
13
+ Phase 01 (Setup) ──provides──→ Phase 02 (Auth)
14
+ Phase 01 (Setup) ──provides──→ Phase 03 (Core)
15
+ Phase 02 (Auth) ──provides──→ Phase 03 (Core)
16
+ Phase 02 (Auth) ──provides──→ Phase 04 (Frontend)
17
+ Phase 03 (Core) ──provides──→ Phase 04 (Frontend)
18
+ ```
19
+
20
+ ## 1. Export/Import Wiring
21
+
22
+ ### Export Status Summary
23
+
24
+ | Phase | Total Exports | Consumed | Orphaned | Unused Imports | Mismatched |
25
+ |-------|--------------|----------|----------|---------------|------------|
26
+ | 01 | {n} | {n} | {n} | {n} | {n} |
27
+ | 02 | {n} | {n} | {n} | {n} | {n} |
28
+
29
+ ### Detailed Export Map
30
+
31
+ | Export | Source Phase | Source File:Line | Consumer(s) | Status |
32
+ |--------|------------|-----------------|-------------|--------|
33
+ | DatabaseConnection | 01 | src/db/conn.ts:5 | Phase 02, 03 | CONSUMED |
34
+ | ConfigLoader | 01 | src/config/index.ts:12 | Phase 03 | CONSUMED |
35
+ | ThemeProvider | 04 | src/theme/provider.tsx:8 | - | ORPHANED |
36
+
37
+ ### Orphaned Exports (created but never used)
38
+
39
+ | Export | Phase | File | Line | Likely Intended Consumer |
40
+ |--------|-------|------|------|------------------------|
41
+ | {name} | {phase} | {file} | {line} | {best guess or "unknown"} |
42
+
43
+ ### Unused Imports (imported but symbol never called)
44
+
45
+ | File | Imported Symbol | Source Module | Line |
46
+ |------|----------------|--------------|------|
47
+ | {file} | {symbol} | {module} | {line} |
48
+
49
+ ## 2. API Coverage
50
+
51
+ ### Route Coverage Matrix
52
+
53
+ | Route | Method | Handler | Frontend Caller | Auth | Status |
54
+ |-------|--------|---------|----------------|------|--------|
55
+ | /api/users | GET | users.ts:12 | UserList.tsx:34 | YES | COVERED |
56
+ | /api/users/:id | DELETE | users.ts:45 | - | YES | NO_CALLER |
57
+ | /api/settings | PUT | - | Settings.tsx:22 | - | NO_HANDLER |
58
+
59
+ ### Uncovered Routes (backend exists, no frontend caller)
60
+
61
+ | Route | Method | Handler | Possible Reason |
62
+ |-------|--------|---------|----------------|
63
+ | {route} | {method} | {file:line} | {guess: future feature, admin only, etc.} |
64
+
65
+ ### Missing Handlers (frontend calls, no backend route)
66
+
67
+ | Frontend File | Calls | Expected Route | Expected Method |
68
+ |--------------|-------|---------------|----------------|
69
+ | {file} | fetch('/api/X') | /api/X | GET |
70
+
71
+ ## 3. Auth Protection
72
+
73
+ ### Route Protection Summary
74
+
75
+ | Category | Total | Protected | Unprotected | Status |
76
+ |----------|-------|-----------|-------------|--------|
77
+ | API Routes | {n} | {n} | {n} | {OK/ISSUES} |
78
+ | Pages | {n} | {n} | {n} | {OK/ISSUES} |
79
+ | Public Routes | {n} | - | {n} | OK |
80
+
81
+ ### Unprotected Routes (SECURITY ISSUES)
82
+
83
+ | Route | Method | Handler | Should Protect | Evidence |
84
+ |-------|--------|---------|---------------|----------|
85
+ | {route} | {method} | {file:line} | YES | No auth middleware in chain |
86
+
87
+ ### Auth Flow Completeness
88
+
89
+ | Step | Status | Evidence |
90
+ |------|--------|----------|
91
+ | Login form exists | {YES/NO} | {file:line} |
92
+ | Auth API called | {YES/NO} | {file:line} |
93
+ | Token/session created | {YES/NO} | {file:line} |
94
+ | Token sent with requests | {YES/NO} | {file:line} |
95
+ | Auth middleware applied | {YES/NO} | {file:line} |
96
+ | Unauthorized redirect | {YES/NO} | {file:line} |
97
+
98
+ ## 4. End-to-End Flows
99
+
100
+ ### Flow 1: {Flow Name} - {STATUS}
101
+
102
+ | Step | Description | Component | Exists | Connected to Next | Evidence |
103
+ |------|------------|-----------|--------|-------------------|----------|
104
+ | 1 | {step desc} | {file} | YES | YES | import at L12, call at L45 |
105
+ | 2 | {step desc} | {file} | YES | NO | handler exists but not called |
106
+ | 3 | {step desc} | - | NO | - | File not found |
107
+
108
+ **Break point**: {If BROKEN, where exactly the chain breaks}
109
+ **Impact**: {What user action fails because of this break}
110
+
111
+ ### Flow 2: {Flow Name} - {STATUS}
112
+ ...
113
+
114
+ ## 5. Integration Issues Summary
115
+
116
+ ### Critical Issues (system cannot function)
117
+
118
+ 1. **{Issue}**: {description with evidence}
119
+ - Impact: {what breaks}
120
+ - Fix: {recommended action}
121
+
122
+ ### Warnings (partial functionality)
123
+
124
+ 1. **{Issue}**: {description with evidence}
125
+ - Impact: {what's degraded}
126
+ - Fix: {recommended action}
127
+
128
+ ### Info (cleanup opportunities)
129
+
130
+ 1. **{Issue}**: {description}
131
+ - Fix: {recommended action}
132
+
133
+ ## 6. Integration Score
134
+
135
+ | Category | Items Checked | Passed | Failed | Score |
136
+ |----------|--------------|--------|--------|-------|
137
+ | Export wiring | {n} | {n} | {n} | {%} |
138
+ | API coverage | {n} | {n} | {n} | {%} |
139
+ | Auth protection | {n} | {n} | {n} | {%} |
140
+ | E2E flows | {n} | {n} | {n} | {%} |
141
+ | **Overall** | {n} | {n} | {n} | **{%}** |
142
+
143
+ ## Recommendations
144
+
145
+ {Prioritized list of actions to fix integration issues}
146
+
147
+ 1. **[CRITICAL]** {Most important fix}
148
+ 2. **[CRITICAL]** {Second most important}
149
+ 3. **[WARNING]** {Important but not blocking}
150
+ 4. ...
151
+ ```
@@ -1,97 +1,97 @@
1
- # Research Summary
2
-
3
- > Synthesized: {date}
4
- > Input documents: {count}
5
- > Sources: {list of document names/paths}
6
-
7
- ## Executive Summary
8
-
9
- {3-5 sentences maximum. What was researched, the single most important conclusion, and the recommended approach. This paragraph should give a planner enough context to start planning without reading further.}
10
-
11
- ## Recommended Stack
12
-
13
- {Only include if project-level synthesis. For phase-level, skip this section.}
14
-
15
- | Layer | Choice | Version | Confidence | Alternatives | Source |
16
- |-------|--------|---------|------------|-------------|--------|
17
- | Runtime | {Node.js} | {20.x} | HIGH | {Bun, Deno} | {Doc A, Doc B} |
18
- | Framework | {Next.js} | {14.x} | HIGH | {Remix, Astro} | {Doc A} |
19
- | Database | {PostgreSQL} | {16.x} | HIGH | {MySQL} | {Doc A, Doc C} |
20
- | ORM | {Prisma} | {5.x} | MEDIUM | {Drizzle, TypeORM} | {Doc B} |
21
- | Auth | {NextAuth.js} | {5.x} | MEDIUM | {Clerk, Auth0} | {Doc A} |
22
- | Hosting | {Vercel} | - | MEDIUM | {AWS, Railway} | {Doc C} |
23
- | Testing | {Vitest} | {1.x} | HIGH | {Jest} | {Doc B} |
24
-
25
- ### Stack Rationale
26
-
27
- {Brief explanation of why this combination. 2-3 sentences.}
28
-
29
- ## Architecture Recommendations
30
-
31
- {Key architectural decisions informed by research. Use bullet points.}
32
-
33
- - **Pattern**: {Recommended pattern with rationale}
34
- - **Data flow**: {How data should move through the system}
35
- - **Separation**: {How to organize the code}
36
- - **State**: {How to manage state}
37
-
38
- ## Key Patterns
39
-
40
- {Patterns to follow during implementation.}
41
-
42
- | Pattern | When to Use | Example |
43
- |---------|------------|---------|
44
- | {Repository} | {Database access} | {Brief code hint} |
45
- | {Middleware} | {Auth, logging, validation} | {Brief code hint} |
46
- | {DTO validation} | {API input/output} | {Zod schemas} |
47
-
48
- ## Pitfalls & Warnings
49
-
50
- {Ranked by severity. These are the things most likely to cause problems.}
51
-
52
- | # | Pitfall | Severity | Source | Mitigation |
53
- |---|---------|----------|--------|------------|
54
- | 1 | {Most critical pitfall} | CRITICAL | {Doc A} | {How to avoid} |
55
- | 2 | {Second pitfall} | HIGH | {Doc B, Doc C} | {How to avoid} |
56
- | 3 | {Third pitfall} | MEDIUM | {Doc A} | {How to avoid} |
57
-
58
- ## Contradictions Resolved
59
-
60
- {Where input documents disagreed and how it was resolved.}
61
-
62
- | Topic | Position A | Position B | Resolution | Basis |
63
- |-------|-----------|-----------|------------|-------|
64
- | {Database} | PostgreSQL (Doc A, C) | MongoDB (Doc B) | PostgreSQL | Majority + S2 source |
65
- | {Auth} | JWT (Doc A, B) | Sessions (Doc C) | JWT | Majority + better for API |
66
-
67
- {If any contradictions could not be resolved:}
68
-
69
- ### Unresolved: {Topic}
70
-
71
- **Options**: {A} vs {B}
72
- **Trade-offs**: {A is better for X, B is better for Y}
73
- **Recommendation**: {best guess} `[NEEDS DECISION]`
74
-
75
- ## Open Questions
76
-
77
- {Things that none of the research documents could definitively answer.}
78
-
79
- 1. {Question} -- Impact: {what planning/implementation is blocked by this}
80
- 2. {Question} -- Impact: {what planning/implementation is blocked by this}
81
-
82
- ## Additional Notes
83
-
84
- {P3 (Nice to Know) items. Brief bullet points only.}
85
-
86
- - {Performance tip from Doc A}
87
- - {Future consideration from Doc C}
88
- - {Alternative approach worth noting from Doc B}
89
-
90
- ## Sources
91
-
92
- {Consolidated source list from all input documents.}
93
-
94
- | # | Document | Key Contribution | Confidence |
95
- |---|----------|-----------------|------------|
96
- | 1 | {path/name} | {what it contributed} | {overall confidence} |
97
- | 2 | {path/name} | {what it contributed} | {overall confidence} |
1
+ # Research Summary
2
+
3
+ > Synthesized: {date}
4
+ > Input documents: {count}
5
+ > Sources: {list of document names/paths}
6
+
7
+ ## Executive Summary
8
+
9
+ {3-5 sentences maximum. What was researched, the single most important conclusion, and the recommended approach. This paragraph should give a planner enough context to start planning without reading further.}
10
+
11
+ ## Recommended Stack
12
+
13
+ {Only include if project-level synthesis. For phase-level, skip this section.}
14
+
15
+ | Layer | Choice | Version | Confidence | Alternatives | Source |
16
+ |-------|--------|---------|------------|-------------|--------|
17
+ | Runtime | {Node.js} | {20.x} | HIGH | {Bun, Deno} | {Doc A, Doc B} |
18
+ | Framework | {Next.js} | {14.x} | HIGH | {Remix, Astro} | {Doc A} |
19
+ | Database | {PostgreSQL} | {16.x} | HIGH | {MySQL} | {Doc A, Doc C} |
20
+ | ORM | {Prisma} | {5.x} | MEDIUM | {Drizzle, TypeORM} | {Doc B} |
21
+ | Auth | {NextAuth.js} | {5.x} | MEDIUM | {Clerk, Auth0} | {Doc A} |
22
+ | Hosting | {Vercel} | - | MEDIUM | {AWS, Railway} | {Doc C} |
23
+ | Testing | {Vitest} | {1.x} | HIGH | {Jest} | {Doc B} |
24
+
25
+ ### Stack Rationale
26
+
27
+ {Brief explanation of why this combination. 2-3 sentences.}
28
+
29
+ ## Architecture Recommendations
30
+
31
+ {Key architectural decisions informed by research. Use bullet points.}
32
+
33
+ - **Pattern**: {Recommended pattern with rationale}
34
+ - **Data flow**: {How data should move through the system}
35
+ - **Separation**: {How to organize the code}
36
+ - **State**: {How to manage state}
37
+
38
+ ## Key Patterns
39
+
40
+ {Patterns to follow during implementation.}
41
+
42
+ | Pattern | When to Use | Example |
43
+ |---------|------------|---------|
44
+ | {Repository} | {Database access} | {Brief code hint} |
45
+ | {Middleware} | {Auth, logging, validation} | {Brief code hint} |
46
+ | {DTO validation} | {API input/output} | {Zod schemas} |
47
+
48
+ ## Pitfalls & Warnings
49
+
50
+ {Ranked by severity. These are the things most likely to cause problems.}
51
+
52
+ | # | Pitfall | Severity | Source | Mitigation |
53
+ |---|---------|----------|--------|------------|
54
+ | 1 | {Most critical pitfall} | CRITICAL | {Doc A} | {How to avoid} |
55
+ | 2 | {Second pitfall} | HIGH | {Doc B, Doc C} | {How to avoid} |
56
+ | 3 | {Third pitfall} | MEDIUM | {Doc A} | {How to avoid} |
57
+
58
+ ## Contradictions Resolved
59
+
60
+ {Where input documents disagreed and how it was resolved.}
61
+
62
+ | Topic | Position A | Position B | Resolution | Basis |
63
+ |-------|-----------|-----------|------------|-------|
64
+ | {Database} | PostgreSQL (Doc A, C) | MongoDB (Doc B) | PostgreSQL | Majority + S2 source |
65
+ | {Auth} | JWT (Doc A, B) | Sessions (Doc C) | JWT | Majority + better for API |
66
+
67
+ {If any contradictions could not be resolved:}
68
+
69
+ ### Unresolved: {Topic}
70
+
71
+ **Options**: {A} vs {B}
72
+ **Trade-offs**: {A is better for X, B is better for Y}
73
+ **Recommendation**: {best guess} `[NEEDS DECISION]`
74
+
75
+ ## Open Questions
76
+
77
+ {Things that none of the research documents could definitively answer.}
78
+
79
+ 1. {Question} -- Impact: {what planning/implementation is blocked by this}
80
+ 2. {Question} -- Impact: {what planning/implementation is blocked by this}
81
+
82
+ ## Additional Notes
83
+
84
+ {P3 (Nice to Know) items. Brief bullet points only.}
85
+
86
+ - {Performance tip from Doc A}
87
+ - {Future consideration from Doc C}
88
+ - {Alternative approach worth noting from Doc B}
89
+
90
+ ## Sources
91
+
92
+ {Consolidated source list from all input documents.}
93
+
94
+ | # | Document | Key Contribution | Confidence |
95
+ |---|----------|-----------------|------------|
96
+ | 1 | {path/name} | {what it contributed} | {overall confidence} |
97
+ | 2 | {path/name} | {what it contributed} | {overall confidence} |
@@ -1,40 +1,40 @@
1
- # Project Roadmap
2
-
3
- > Generated: {date}
4
- > Total phases: {n}
5
- > Estimated plans: {n}
6
-
7
- ## Phase Overview
8
-
9
- | Phase | Name | Goal | Plans | Wave | Status |
10
- |-------|------|------|-------|------|--------|
11
- | 01 | Project Setup | Development environment ready | 2 | 1 | pending |
12
- | 02 | Authentication | Users can sign in | 3 | 1 | pending |
13
- | 03 | Core Models | Data layer complete | 4 | 2 | pending |
14
- | ... | ... | ... | ... | ... | ... |
15
-
16
- ## Dependency Graph
17
-
18
- ```
19
- Phase 01 ──→ Phase 02 ──→ Phase 04
20
- └──→ Phase 03 ──→ Phase 05
21
- └──→ Phase 04
22
- ```
23
-
24
- ## Phase Details
25
-
26
- ### Phase 01: Project Setup
27
-
28
- **Goal**: {goal statement}
29
- **Must-Haves**:
30
- - {truth 1}
31
- - {truth 2}
32
-
33
- **Planned Plans**:
34
- 1. {plan name} (Wave 1, autonomous)
35
- 2. {plan name} (Wave 1, autonomous)
36
-
37
- **Dependencies**: None (starting phase)
38
-
39
- ### Phase 02: Authentication
40
- ...
1
+ # Project Roadmap
2
+
3
+ > Generated: {date}
4
+ > Total phases: {n}
5
+ > Estimated plans: {n}
6
+
7
+ ## Phase Overview
8
+
9
+ | Phase | Name | Goal | Plans | Wave | Status |
10
+ |-------|------|------|-------|------|--------|
11
+ | 01 | Project Setup | Development environment ready | 2 | 1 | pending |
12
+ | 02 | Authentication | Users can sign in | 3 | 1 | pending |
13
+ | 03 | Core Models | Data layer complete | 4 | 2 | pending |
14
+ | ... | ... | ... | ... | ... | ... |
15
+
16
+ ## Dependency Graph
17
+
18
+ ```
19
+ Phase 01 ──→ Phase 02 ──→ Phase 04
20
+ └──→ Phase 03 ──→ Phase 05
21
+ └──→ Phase 04
22
+ ```
23
+
24
+ ## Phase Details
25
+
26
+ ### Phase 01: Project Setup
27
+
28
+ **Goal**: {goal statement}
29
+ **Must-Haves**:
30
+ - {truth 1}
31
+ - {truth 2}
32
+
33
+ **Planned Plans**:
34
+ 1. {plan name} (Wave 1, autonomous)
35
+ 2. {plan name} (Wave 1, autonomous)
36
+
37
+ **Dependencies**: None (starting phase)
38
+
39
+ ### Phase 02: Authentication
40
+ ...