agileflow 4.0.0-alpha.2 → 4.0.0-alpha.21

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 (372) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/content/plugins/accessibility/plugin.yaml +14 -0
  3. package/content/plugins/accessibility/skills/agileflow-accessibility/SKILL.md +392 -0
  4. package/content/plugins/accessibility/skills/agileflow-accessibility/references/aria-patterns.md +528 -0
  5. package/content/plugins/accessibility/skills/agileflow-accessibility/references/testing-checklist.md +457 -0
  6. package/content/plugins/accessibility/skills/agileflow-accessibility/references/wcag-guide.md +683 -0
  7. package/content/plugins/accessibility/skills/agileflow-accessibility/workflows/audit-page.md +310 -0
  8. package/content/plugins/accessibility/skills/agileflow-accessibility/workflows/implement-accessible-component.md +479 -0
  9. package/content/plugins/ads/agents/ads-audit-budget.md +185 -0
  10. package/content/plugins/ads/agents/ads-audit-compliance.md +171 -0
  11. package/content/plugins/ads/agents/ads-audit-creative.md +168 -0
  12. package/content/plugins/ads/agents/ads-audit-google.md +227 -0
  13. package/content/plugins/ads/agents/ads-audit-meta.md +184 -0
  14. package/content/plugins/ads/agents/ads-audit-tracking.md +205 -0
  15. package/content/plugins/ads/agents/ads-consensus.md +410 -0
  16. package/content/plugins/ads/agents/ads-generate.md +152 -0
  17. package/content/plugins/ads/agents/ads-performance-tracker.md +212 -0
  18. package/content/plugins/ads/plugin.yaml +23 -4
  19. package/content/plugins/ads/skills/agileflow-ads/SKILL.md +218 -0
  20. package/content/plugins/ads/skills/agileflow-ads/references/ad-copy-formula-guide.md +131 -0
  21. package/content/plugins/ads/skills/agileflow-ads/references/audience-targeting-guide.md +137 -0
  22. package/content/plugins/ads/skills/agileflow-ads/references/bid-strategy-guide.md +115 -0
  23. package/content/plugins/ads/skills/agileflow-ads/references/platform-benchmarks.md +100 -0
  24. package/content/plugins/ads/skills/agileflow-ads/workflows/audit.md +118 -0
  25. package/content/plugins/ads/skills/agileflow-ads/workflows/generate.md +84 -0
  26. package/content/plugins/audit/agents/a11y-analyzer-aria.md +173 -0
  27. package/content/plugins/audit/agents/a11y-analyzer-forms.md +173 -0
  28. package/content/plugins/audit/agents/a11y-analyzer-keyboard.md +183 -0
  29. package/content/plugins/audit/agents/a11y-analyzer-semantic.md +169 -0
  30. package/content/plugins/audit/agents/a11y-analyzer-visual.md +172 -0
  31. package/content/plugins/audit/agents/a11y-consensus.md +249 -0
  32. package/content/plugins/audit/agents/accessibility.md +558 -0
  33. package/content/plugins/audit/agents/api-quality-analyzer-conventions.md +156 -0
  34. package/content/plugins/audit/agents/api-quality-analyzer-docs.md +184 -0
  35. package/content/plugins/audit/agents/api-quality-analyzer-errors.md +191 -0
  36. package/content/plugins/audit/agents/api-quality-analyzer-pagination.md +179 -0
  37. package/content/plugins/audit/agents/api-quality-analyzer-versioning.md +150 -0
  38. package/content/plugins/audit/agents/api-quality-consensus.md +217 -0
  39. package/content/plugins/audit/agents/api-validator.md +191 -0
  40. package/content/plugins/audit/agents/arch-analyzer-circular.md +156 -0
  41. package/content/plugins/audit/agents/arch-analyzer-complexity.md +193 -0
  42. package/content/plugins/audit/agents/arch-analyzer-coupling.md +152 -0
  43. package/content/plugins/audit/agents/arch-analyzer-layering.md +160 -0
  44. package/content/plugins/audit/agents/arch-analyzer-patterns.md +210 -0
  45. package/content/plugins/audit/agents/arch-consensus.md +228 -0
  46. package/content/plugins/audit/agents/browser-qa.md +342 -0
  47. package/content/plugins/audit/agents/code-reviewer.md +298 -0
  48. package/content/plugins/audit/agents/completeness-analyzer-api.md +199 -0
  49. package/content/plugins/audit/agents/completeness-analyzer-conditional.md +211 -0
  50. package/content/plugins/audit/agents/completeness-analyzer-handlers.md +166 -0
  51. package/content/plugins/audit/agents/completeness-analyzer-imports.md +165 -0
  52. package/content/plugins/audit/agents/completeness-analyzer-routes.md +190 -0
  53. package/content/plugins/audit/agents/completeness-analyzer-state.md +196 -0
  54. package/content/plugins/audit/agents/completeness-analyzer-stubs.md +206 -0
  55. package/content/plugins/audit/agents/completeness-consensus.md +295 -0
  56. package/content/plugins/audit/agents/error-analyzer.md +213 -0
  57. package/content/plugins/audit/agents/flow-analyzer-authorization.md +182 -0
  58. package/content/plugins/audit/agents/flow-analyzer-discovery.md +174 -0
  59. package/content/plugins/audit/agents/flow-analyzer-errors.md +186 -0
  60. package/content/plugins/audit/agents/flow-analyzer-feedback.md +185 -0
  61. package/content/plugins/audit/agents/flow-analyzer-navigation.md +177 -0
  62. package/content/plugins/audit/agents/flow-analyzer-persistence.md +193 -0
  63. package/content/plugins/audit/agents/flow-analyzer-wiring.md +169 -0
  64. package/content/plugins/audit/agents/flow-consensus.md +237 -0
  65. package/content/plugins/audit/agents/legal-analyzer-a11y.md +114 -0
  66. package/content/plugins/audit/agents/legal-analyzer-ai.md +121 -0
  67. package/content/plugins/audit/agents/legal-analyzer-consumer.md +114 -0
  68. package/content/plugins/audit/agents/legal-analyzer-content.md +117 -0
  69. package/content/plugins/audit/agents/legal-analyzer-international.md +119 -0
  70. package/content/plugins/audit/agents/legal-analyzer-licensing.md +119 -0
  71. package/content/plugins/audit/agents/legal-analyzer-privacy.md +112 -0
  72. package/content/plugins/audit/agents/legal-analyzer-security.md +116 -0
  73. package/content/plugins/audit/agents/legal-analyzer-terms.md +115 -0
  74. package/content/plugins/audit/agents/legal-consensus.md +250 -0
  75. package/content/plugins/audit/agents/logic-analyzer-edge.md +179 -0
  76. package/content/plugins/audit/agents/logic-analyzer-flow.md +264 -0
  77. package/content/plugins/audit/agents/logic-analyzer-invariant.md +215 -0
  78. package/content/plugins/audit/agents/logic-analyzer-race.md +280 -0
  79. package/content/plugins/audit/agents/logic-analyzer-type.md +227 -0
  80. package/content/plugins/audit/agents/logic-consensus.md +259 -0
  81. package/content/plugins/audit/agents/perf-analyzer-assets.md +182 -0
  82. package/content/plugins/audit/agents/perf-analyzer-bundle.md +173 -0
  83. package/content/plugins/audit/agents/perf-analyzer-caching.md +170 -0
  84. package/content/plugins/audit/agents/perf-analyzer-compute.md +173 -0
  85. package/content/plugins/audit/agents/perf-analyzer-memory.md +193 -0
  86. package/content/plugins/audit/agents/perf-analyzer-network.md +165 -0
  87. package/content/plugins/audit/agents/perf-analyzer-queries.md +162 -0
  88. package/content/plugins/audit/agents/perf-analyzer-rendering.md +168 -0
  89. package/content/plugins/audit/agents/perf-consensus.md +287 -0
  90. package/content/plugins/audit/agents/qa.md +820 -0
  91. package/content/plugins/audit/agents/quality-analyzer-comments.md +159 -0
  92. package/content/plugins/audit/agents/quality-analyzer-duplication.md +184 -0
  93. package/content/plugins/audit/agents/quality-analyzer-naming.md +160 -0
  94. package/content/plugins/audit/agents/quality-consensus.md +241 -0
  95. package/content/plugins/audit/agents/schema-validator.md +473 -0
  96. package/content/plugins/audit/agents/security-analyzer-api.md +210 -0
  97. package/content/plugins/audit/agents/security-analyzer-auth.md +169 -0
  98. package/content/plugins/audit/agents/security-analyzer-authz.md +180 -0
  99. package/content/plugins/audit/agents/security-analyzer-deps.md +153 -0
  100. package/content/plugins/audit/agents/security-analyzer-infra.md +184 -0
  101. package/content/plugins/audit/agents/security-analyzer-injection.md +155 -0
  102. package/content/plugins/audit/agents/security-analyzer-input.md +201 -0
  103. package/content/plugins/audit/agents/security-analyzer-secrets.md +183 -0
  104. package/content/plugins/audit/agents/security-consensus.md +283 -0
  105. package/content/plugins/audit/agents/test-analyzer-assertions.md +188 -0
  106. package/content/plugins/audit/agents/test-analyzer-coverage.md +189 -0
  107. package/content/plugins/audit/agents/test-analyzer-fragility.md +193 -0
  108. package/content/plugins/audit/agents/test-analyzer-integration.md +161 -0
  109. package/content/plugins/audit/agents/test-analyzer-maintenance.md +180 -0
  110. package/content/plugins/audit/agents/test-analyzer-mocking.md +188 -0
  111. package/content/plugins/audit/agents/test-analyzer-patterns.md +196 -0
  112. package/content/plugins/audit/agents/test-analyzer-structure.md +184 -0
  113. package/content/plugins/audit/agents/test-consensus.md +301 -0
  114. package/content/plugins/audit/agents/testing.md +561 -0
  115. package/content/plugins/audit/agents/ui-validator.md +344 -0
  116. package/content/plugins/audit/plugin.yaml +186 -5
  117. package/content/plugins/audit/skills/agileflow-audit/SKILL.md +113 -0
  118. package/content/plugins/audit/skills/agileflow-audit/references/audit-depth-guide.md +151 -0
  119. package/content/plugins/audit/skills/agileflow-audit/references/dependency-risk-guide.md +139 -0
  120. package/content/plugins/audit/skills/agileflow-audit/references/owasp-top10.md +120 -0
  121. package/content/plugins/audit/skills/agileflow-audit/references/performance-budget-guide.md +143 -0
  122. package/content/plugins/audit/skills/agileflow-audit/references/wcag-criteria.md +117 -0
  123. package/content/plugins/audit/skills/agileflow-audit/workflows/run-audit.md +52 -0
  124. package/content/plugins/audit/skills/agileflow-audit/workflows/tdd.md +66 -0
  125. package/content/plugins/core/agents/adr-writer.md +521 -0
  126. package/content/plugins/core/agents/epic-planner.md +520 -0
  127. package/content/plugins/core/agents/mentor.md +709 -0
  128. package/content/plugins/core/agents/orchestrator.md +776 -0
  129. package/content/plugins/core/agents/team-coordinator.md +334 -0
  130. package/content/plugins/core/agents/team-lead.md +181 -0
  131. package/content/plugins/core/agents/workspace-orchestrator.md +146 -0
  132. package/content/plugins/core/hooks/context-loader.js +31 -4
  133. package/content/plugins/core/hooks/damage-control-bash.js +10 -2
  134. package/content/plugins/core/hooks/damage-control-edit.js +4 -1
  135. package/content/plugins/core/hooks/damage-control-patterns.yaml +1 -1
  136. package/content/plugins/core/hooks/damage-control-write.js +4 -1
  137. package/content/plugins/core/hooks/{pre-compact-state.js → post-compact-state.js} +25 -8
  138. package/content/plugins/core/hooks/preferences-injector.js +352 -0
  139. package/content/plugins/core/plugin.yaml +24 -28
  140. package/content/plugins/core/skills/agileflow-adr/SKILL.md +34 -8
  141. package/content/plugins/core/skills/agileflow-adr/references/madr-format-guide.md +86 -0
  142. package/content/plugins/core/skills/agileflow-adr/workflows/write-adr.md +57 -0
  143. package/content/plugins/core/skills/agileflow-babysit-mentor/SKILL.md +94 -27
  144. package/content/plugins/core/skills/agileflow-babysit-mentor/references/mentor-decision-guide.md +81 -0
  145. package/content/plugins/core/skills/agileflow-babysit-mentor/workflows/mentor-session.md +79 -0
  146. package/content/plugins/core/skills/agileflow-epic-planner/SKILL.md +37 -7
  147. package/content/plugins/core/skills/agileflow-epic-planner/references/epic-sizing-guide.md +81 -0
  148. package/content/plugins/core/skills/agileflow-epic-planner/workflows/plan-epic.md +55 -0
  149. package/content/plugins/core/skills/agileflow-status-updater/SKILL.md +36 -20
  150. package/content/plugins/core/skills/agileflow-status-updater/references/status-transitions.md +89 -0
  151. package/content/plugins/core/skills/agileflow-status-updater/workflows/update-status.md +56 -0
  152. package/content/plugins/core/skills/agileflow-story-writer/SKILL.md +39 -114
  153. package/content/plugins/core/skills/agileflow-story-writer/references/estimation-reference.md +36 -0
  154. package/content/plugins/core/skills/agileflow-story-writer/references/story-template.md +92 -0
  155. package/content/plugins/core/skills/agileflow-story-writer/workflows/write-story.md +138 -0
  156. package/content/plugins/council/agents/council-advocate.md +223 -0
  157. package/content/plugins/council/agents/council-analyst.md +278 -0
  158. package/content/plugins/council/agents/council-compounder.md +204 -0
  159. package/content/plugins/council/agents/council-contrarian.md +217 -0
  160. package/content/plugins/council/agents/council-moonshot.md +217 -0
  161. package/content/plugins/council/agents/council-optimist.md +185 -0
  162. package/content/plugins/council/agents/council-revenue.md +200 -0
  163. package/content/plugins/council/agents/council-technical.md +218 -0
  164. package/content/plugins/council/agents/multi-expert.md +334 -0
  165. package/content/plugins/council/plugin.yaml +23 -4
  166. package/content/plugins/council/skills/agileflow-council/SKILL.md +102 -0
  167. package/content/plugins/council/skills/agileflow-council/references/decision-log-template.md +109 -0
  168. package/content/plugins/council/skills/agileflow-council/references/perspective-guide.md +104 -0
  169. package/content/plugins/council/skills/agileflow-council/references/when-to-convene-guide.md +112 -0
  170. package/content/plugins/council/skills/agileflow-council/workflows/convene.md +73 -0
  171. package/content/plugins/council/skills/agileflow-council/workflows/multi-expert.md +75 -0
  172. package/content/plugins/database/plugin.yaml +14 -0
  173. package/content/plugins/database/skills/agileflow-database/SKILL.md +284 -0
  174. package/content/plugins/database/skills/agileflow-database/references/indexing-guide.md +313 -0
  175. package/content/plugins/database/skills/agileflow-database/references/migration-guide.md +328 -0
  176. package/content/plugins/database/skills/agileflow-database/references/schema-design-guide.md +467 -0
  177. package/content/plugins/database/skills/agileflow-database/workflows/design-schema.md +213 -0
  178. package/content/plugins/database/skills/agileflow-database/workflows/optimize-query.md +253 -0
  179. package/content/plugins/debugging/plugin.yaml +14 -0
  180. package/content/plugins/debugging/skills/agileflow-debug/SKILL.md +236 -0
  181. package/content/plugins/debugging/skills/agileflow-debug/references/common-patterns.md +350 -0
  182. package/content/plugins/debugging/skills/agileflow-debug/references/debugging-strategies.md +328 -0
  183. package/content/plugins/debugging/skills/agileflow-debug/workflows/debug-issue.md +187 -0
  184. package/content/plugins/debugging/skills/agileflow-debug/workflows/reproduce-bug.md +194 -0
  185. package/content/plugins/delivery/agents/ci.md +547 -0
  186. package/content/plugins/delivery/agents/devops.md +789 -0
  187. package/content/plugins/delivery/plugin.yaml +19 -0
  188. package/content/plugins/delivery/skills/agileflow-delivery/SKILL.md +111 -0
  189. package/content/plugins/delivery/skills/agileflow-delivery/references/changelog-format-guide.md +133 -0
  190. package/content/plugins/delivery/skills/agileflow-delivery/references/ci-pipeline-guide.md +158 -0
  191. package/content/plugins/delivery/skills/agileflow-delivery/references/pr-checklist-guide.md +133 -0
  192. package/content/plugins/delivery/skills/agileflow-delivery/references/release-checklist.md +142 -0
  193. package/content/plugins/delivery/skills/agileflow-delivery/workflows/changelog.md +72 -0
  194. package/content/plugins/delivery/skills/agileflow-delivery/workflows/deploy.md +74 -0
  195. package/content/plugins/delivery/skills/agileflow-delivery/workflows/pr.md +75 -0
  196. package/content/plugins/docs/agents/documentation.md +544 -0
  197. package/content/plugins/docs/agents/readme-updater.md +640 -0
  198. package/content/plugins/docs/plugin.yaml +19 -0
  199. package/content/plugins/docs/skills/agileflow-docs/SKILL.md +106 -0
  200. package/content/plugins/docs/skills/agileflow-docs/references/api-doc-template.md +167 -0
  201. package/content/plugins/docs/skills/agileflow-docs/references/doc-types-guide.md +141 -0
  202. package/content/plugins/docs/skills/agileflow-docs/references/readme-template.md +156 -0
  203. package/content/plugins/docs/skills/agileflow-docs/workflows/readme-sync.md +57 -0
  204. package/content/plugins/docs/skills/agileflow-docs/workflows/sync.md +64 -0
  205. package/content/plugins/engineering/agents/api.md +718 -0
  206. package/content/plugins/engineering/agents/codebase-query.md +285 -0
  207. package/content/plugins/engineering/agents/compliance.md +559 -0
  208. package/content/plugins/engineering/agents/database.md +644 -0
  209. package/content/plugins/engineering/agents/integrations.md +644 -0
  210. package/content/plugins/engineering/agents/mobile.md +552 -0
  211. package/content/plugins/engineering/agents/monitoring.md +585 -0
  212. package/content/plugins/engineering/agents/performance.md +529 -0
  213. package/content/plugins/engineering/agents/refactor.md +592 -0
  214. package/content/plugins/engineering/agents/security.md +524 -0
  215. package/content/plugins/engineering/agents/ui.md +1336 -0
  216. package/content/plugins/engineering/plugin.yaml +37 -0
  217. package/content/plugins/engineering/skills/agileflow-engineering/SKILL.md +127 -0
  218. package/content/plugins/engineering/skills/agileflow-engineering/references/code-review-guide.md +126 -0
  219. package/content/plugins/engineering/skills/agileflow-engineering/references/domain-routing-guide.md +89 -0
  220. package/content/plugins/engineering/skills/agileflow-engineering/references/refactoring-guide.md +136 -0
  221. package/content/plugins/engineering/skills/agileflow-engineering/workflows/diagnose.md +63 -0
  222. package/content/plugins/engineering/skills/agileflow-engineering/workflows/impact.md +60 -0
  223. package/content/plugins/ideation/agents/brainstorm-analyzer-features.md +179 -0
  224. package/content/plugins/ideation/agents/brainstorm-analyzer-growth.md +169 -0
  225. package/content/plugins/ideation/agents/brainstorm-analyzer-integration.md +181 -0
  226. package/content/plugins/ideation/agents/brainstorm-analyzer-market.md +150 -0
  227. package/content/plugins/ideation/agents/brainstorm-analyzer-ux.md +180 -0
  228. package/content/plugins/ideation/agents/brainstorm-consensus.md +245 -0
  229. package/content/plugins/ideation/agents/design.md +568 -0
  230. package/content/plugins/ideation/agents/product.md +582 -0
  231. package/content/plugins/ideation/plugin.yaml +31 -0
  232. package/content/plugins/ideation/skills/agileflow-ideation/SKILL.md +109 -0
  233. package/content/plugins/ideation/skills/agileflow-ideation/references/brainstorm-techniques.md +138 -0
  234. package/content/plugins/ideation/skills/agileflow-ideation/references/competitive-analysis-template.md +148 -0
  235. package/content/plugins/ideation/skills/agileflow-ideation/references/feature-prioritization-guide.md +147 -0
  236. package/content/plugins/ideation/skills/agileflow-ideation/references/user-story-patterns.md +152 -0
  237. package/content/plugins/ideation/skills/agileflow-ideation/workflows/features.md +65 -0
  238. package/content/plugins/ideation/skills/agileflow-ideation/workflows/ideate.md +54 -0
  239. package/content/plugins/migration/agents/datamigration.md +757 -0
  240. package/content/plugins/migration/plugin.yaml +17 -0
  241. package/content/plugins/migration/skills/agileflow-migration/SKILL.md +106 -0
  242. package/content/plugins/migration/skills/agileflow-migration/references/data-validation-checklist.md +154 -0
  243. package/content/plugins/migration/skills/agileflow-migration/references/migration-patterns.md +209 -0
  244. package/content/plugins/migration/skills/agileflow-migration/references/rollback-playbook.md +171 -0
  245. package/content/plugins/migration/skills/agileflow-migration/references/version-compatibility-matrix.md +155 -0
  246. package/content/plugins/migration/skills/agileflow-migration/workflows/plan.md +73 -0
  247. package/content/plugins/migration/skills/agileflow-migration/workflows/validate.md +71 -0
  248. package/content/plugins/performance/plugin.yaml +14 -0
  249. package/content/plugins/performance/skills/agileflow-performance/SKILL.md +224 -0
  250. package/content/plugins/performance/skills/agileflow-performance/references/optimization-patterns.md +554 -0
  251. package/content/plugins/performance/skills/agileflow-performance/references/profiling-guide.md +383 -0
  252. package/content/plugins/performance/skills/agileflow-performance/references/web-vitals-guide.md +360 -0
  253. package/content/plugins/performance/skills/agileflow-performance/workflows/improve-web-vitals.md +344 -0
  254. package/content/plugins/performance/skills/agileflow-performance/workflows/profile-and-fix.md +254 -0
  255. package/content/plugins/planning/agents/analytics.md +670 -0
  256. package/content/plugins/planning/agents/rlm-subcore.md +215 -0
  257. package/content/plugins/planning/plugin.yaml +19 -0
  258. package/content/plugins/planning/skills/agileflow-planning/SKILL.md +111 -0
  259. package/content/plugins/planning/skills/agileflow-planning/references/estimation-guide.md +114 -0
  260. package/content/plugins/planning/skills/agileflow-planning/references/rpi-workflow.md +119 -0
  261. package/content/plugins/planning/skills/agileflow-planning/references/sprint-planning-guide.md +145 -0
  262. package/content/plugins/planning/skills/agileflow-planning/workflows/impact.md +63 -0
  263. package/content/plugins/planning/skills/agileflow-planning/workflows/rpi.md +104 -0
  264. package/content/plugins/psychology/plugin.yaml +14 -0
  265. package/content/plugins/psychology/skills/agileflow-retention/SKILL.md +252 -0
  266. package/content/plugins/psychology/skills/agileflow-retention/references/competitor-analysis.md +240 -0
  267. package/content/plugins/psychology/skills/agileflow-retention/references/psychology-models.md +349 -0
  268. package/content/plugins/psychology/skills/agileflow-retention/references/retention-patterns.md +279 -0
  269. package/content/plugins/psychology/skills/agileflow-retention/workflows/design-retention-feature.md +287 -0
  270. package/content/plugins/psychology/skills/agileflow-retention/workflows/retention-audit.md +259 -0
  271. package/content/plugins/refactoring/plugin.yaml +14 -0
  272. package/content/plugins/refactoring/skills/agileflow-refactor/SKILL.md +235 -0
  273. package/content/plugins/refactoring/skills/agileflow-refactor/references/refactoring-patterns.md +405 -0
  274. package/content/plugins/refactoring/skills/agileflow-refactor/references/safety-checks.md +177 -0
  275. package/content/plugins/refactoring/skills/agileflow-refactor/workflows/extract-module.md +226 -0
  276. package/content/plugins/refactoring/skills/agileflow-refactor/workflows/safe-refactor.md +169 -0
  277. package/content/plugins/research/agents/research.md +503 -0
  278. package/content/plugins/research/plugin.yaml +17 -0
  279. package/content/plugins/research/skills/agileflow-research/SKILL.md +110 -0
  280. package/content/plugins/research/skills/agileflow-research/references/knowledge-decay-guide.md +121 -0
  281. package/content/plugins/research/skills/agileflow-research/references/research-prompt-guide.md +141 -0
  282. package/content/plugins/research/skills/agileflow-research/references/synthesis-template.md +154 -0
  283. package/content/plugins/research/skills/agileflow-research/workflows/analyze.md +60 -0
  284. package/content/plugins/research/skills/agileflow-research/workflows/ask.md +64 -0
  285. package/content/plugins/research/skills/agileflow-research/workflows/import.md +66 -0
  286. package/content/plugins/research/skills/agileflow-research/workflows/synthesize.md +66 -0
  287. package/content/plugins/reviews/plugin.yaml +14 -0
  288. package/content/plugins/reviews/skills/agileflow-pr-reviewer/SKILL.md +241 -0
  289. package/content/plugins/reviews/skills/agileflow-pr-reviewer/references/review-checklist.md +200 -0
  290. package/content/plugins/reviews/skills/agileflow-pr-reviewer/references/security-patterns.md +328 -0
  291. package/content/plugins/reviews/skills/agileflow-pr-reviewer/workflows/review-pr.md +153 -0
  292. package/content/plugins/reviews/skills/agileflow-pr-reviewer/workflows/security-review.md +177 -0
  293. package/content/plugins/seo/agents/seo-analyzer-content.md +169 -0
  294. package/content/plugins/seo/agents/seo-analyzer-images.md +198 -0
  295. package/content/plugins/seo/agents/seo-analyzer-performance.md +217 -0
  296. package/content/plugins/seo/agents/seo-analyzer-schema.md +184 -0
  297. package/content/plugins/seo/agents/seo-analyzer-sitemap.md +177 -0
  298. package/content/plugins/seo/agents/seo-analyzer-technical.md +151 -0
  299. package/content/plugins/seo/agents/seo-consensus.md +304 -0
  300. package/content/plugins/seo/plugin.yaml +19 -4
  301. package/content/plugins/seo/skills/agileflow-seo/SKILL.md +188 -0
  302. package/content/plugins/seo/skills/agileflow-seo/references/cwv-thresholds.md +110 -0
  303. package/content/plugins/seo/skills/agileflow-seo/references/eeat-framework.md +144 -0
  304. package/content/plugins/seo/skills/agileflow-seo/references/keyword-research-guide.md +125 -0
  305. package/content/plugins/seo/skills/agileflow-seo/references/schema-types.md +139 -0
  306. package/content/plugins/seo/skills/agileflow-seo/references/technical-seo-checklist.md +139 -0
  307. package/content/plugins/seo/skills/agileflow-seo/workflows/audit.md +98 -0
  308. package/content/plugins/seo/skills/agileflow-seo/workflows/page.md +118 -0
  309. package/content/plugins/testing/plugin.yaml +16 -0
  310. package/content/plugins/testing/skills/agileflow-test-writer/SKILL.md +260 -0
  311. package/content/plugins/testing/skills/agileflow-test-writer/references/coverage-targets.md +239 -0
  312. package/content/plugins/testing/skills/agileflow-test-writer/references/test-patterns.md +420 -0
  313. package/content/plugins/testing/skills/agileflow-test-writer/workflows/add-coverage.md +154 -0
  314. package/content/plugins/testing/skills/agileflow-test-writer/workflows/write-tests-from-ac.md +225 -0
  315. package/package.json +2 -2
  316. package/src/cli/commands/doctor.js +818 -30
  317. package/src/cli/commands/hook.js +17 -14
  318. package/src/cli/commands/launch.js +1454 -0
  319. package/src/cli/commands/learn.js +149 -0
  320. package/src/cli/commands/plugins.js +113 -0
  321. package/src/cli/commands/setup.js +455 -110
  322. package/src/cli/commands/skills.js +324 -0
  323. package/src/cli/commands/status.js +8 -10
  324. package/src/cli/commands/update.js +76 -15
  325. package/src/cli/index.js +90 -26
  326. package/src/cli/wizard/babysit-mode-picker.js +192 -0
  327. package/src/cli/wizard/behaviors-picker.js +208 -54
  328. package/src/cli/wizard/ide-picker.js +40 -28
  329. package/src/cli/wizard/install-scope-picker.js +57 -0
  330. package/src/cli/wizard/launch-alias-picker.js +50 -0
  331. package/src/cli/wizard/launch-cli-picker.js +129 -0
  332. package/src/cli/wizard/launch-tmux-picker.js +133 -0
  333. package/src/cli/wizard/learnings-picker.js +40 -0
  334. package/src/cli/wizard/plugin-picker.js +47 -16
  335. package/src/lib/brand.js +116 -0
  336. package/src/lib/errors.js +120 -0
  337. package/src/lib/path-check.js +39 -0
  338. package/src/runtime/config/defaults.js +22 -17
  339. package/src/runtime/config/loader.js +77 -8
  340. package/src/runtime/config/schema.json +43 -16
  341. package/src/runtime/config/writer.js +3 -1
  342. package/src/runtime/ide/babysit-skill.js +202 -0
  343. package/src/runtime/ide/capabilities.js +84 -29
  344. package/src/runtime/ide/claude-code-content.js +177 -0
  345. package/src/runtime/ide/claude-code-settings.js +67 -29
  346. package/src/runtime/ide/claude-code-skills.js +47 -32
  347. package/src/runtime/ide/codex-config.js +295 -0
  348. package/src/runtime/installer/install.js +252 -24
  349. package/src/runtime/launch/alias-installer.js +191 -0
  350. package/src/runtime/launch/cli-resume.js +244 -0
  351. package/src/runtime/launch/closed-windows.js +338 -0
  352. package/src/runtime/launch/defaults.js +66 -0
  353. package/src/runtime/launch/detect-clis.js +69 -0
  354. package/src/runtime/launch/doctor.js +464 -0
  355. package/src/runtime/launch/exec-wrapper.js +114 -0
  356. package/src/runtime/launch/parallel-session.js +247 -0
  357. package/src/runtime/launch/prefs.js +211 -0
  358. package/src/runtime/launch/project-prefs.js +234 -0
  359. package/src/runtime/launch/resolve-cli.js +56 -0
  360. package/src/runtime/launch/restore.js +152 -0
  361. package/src/runtime/launch/schema.json +75 -0
  362. package/src/runtime/launch/session-lifecycle.js +313 -0
  363. package/src/runtime/launch/session-registry.js +401 -0
  364. package/src/runtime/launch/spawn.js +103 -0
  365. package/src/runtime/launch/tabs.js +350 -0
  366. package/src/runtime/launch/tmux.js +764 -0
  367. package/src/runtime/launch/worktree.js +260 -0
  368. package/src/runtime/plugins/registry.js +16 -11
  369. package/src/runtime/plugins/validator.js +57 -43
  370. package/src/runtime/skills/learnings.js +308 -0
  371. package/content/plugins/core/hooks/babysit-mentor-injector.js +0 -55
  372. package/src/cli/wizard/personalization.js +0 -64
@@ -0,0 +1,14 @@
1
+ id: reviews
2
+ name: PR Reviews
3
+ description: Structured pull request review covering security, logic, tests, and style.
4
+ version: 1.0.0
5
+ enabledByDefault: false
6
+ cannotDisable: false
7
+ depends: []
8
+ provides:
9
+ skills:
10
+ - id: agileflow-pr-reviewer
11
+ dir: skills/agileflow-pr-reviewer
12
+ agents: []
13
+ hooks: []
14
+ templates: []
@@ -0,0 +1,241 @@
1
+ ---
2
+ name: agileflow-pr-reviewer
3
+ version: 1.0.0
4
+ category: agileflow/reviews
5
+ description: |
6
+ Use when the user wants a structured review of a pull request, diff,
7
+ or code change. Covers security vulnerabilities, logic correctness,
8
+ test coverage gaps, API contract changes, breaking changes, and
9
+ code style. Produces a prioritised findings list and a final
10
+ recommendation: Approve, Request Changes, or Needs Discussion.
11
+ triggers:
12
+ keywords:
13
+ - review this pr
14
+ - review my changes
15
+ - code review
16
+ - pr review
17
+ - check my code
18
+ - review this diff
19
+ - look at my code
20
+ - review before merge
21
+ - review this branch
22
+ - give me feedback on
23
+ priority: 50
24
+ exclude:
25
+ - review this document (not a code review)
26
+ - performance review (HR context)
27
+ - design review
28
+ provides:
29
+ agents: []
30
+ learns:
31
+ enabled: true
32
+ file: _learnings/pr-reviewer.yaml
33
+ maxEntries: 50
34
+ depends:
35
+ skills: []
36
+ plugins: [core]
37
+ ---
38
+
39
+ # AgileFlow PR Reviewer
40
+
41
+ Systematic pull request review covering security, correctness, test coverage, API contracts, and style — with a prioritised findings list and a clear merge recommendation.
42
+
43
+ ## When this skill activates
44
+
45
+ - User shares a diff, PR URL, branch name, or pastes code and asks for review
46
+ - User says "review before I merge", "check this", or "give me feedback"
47
+ - User wants a structured second opinion on their changes
48
+ - User is implementing security-sensitive changes (auth, payment, file upload, SQL queries)
49
+
50
+ ## Opening discovery flow
51
+
52
+ **When invoked without a diff, ask once to gather what's needed.**
53
+
54
+ ```xml
55
+ <invoke name="AskUserQuestion">
56
+ <parameter name="questions">[
57
+ {
58
+ "question": "What would you like me to review?",
59
+ "header": "Review source",
60
+ "multiSelect": false,
61
+ "options": [
62
+ {"label": "Paste the diff or changed files here (Recommended)", "description": "Copy from 'git diff' or paste the files you changed — I'll read them directly"},
63
+ {"label": "I'll give you the file paths — read them from disk", "description": "Tell me which files changed and I'll read them and the originals"},
64
+ {"label": "GitHub PR URL", "description": "Paste the PR URL and I'll fetch the diff via gh CLI"},
65
+ {"label": "Current staged changes", "description": "I'll run 'git diff --staged' to see what's about to be committed"}
66
+ ]
67
+ },
68
+ {
69
+ "question": "What kind of review do you need?",
70
+ "header": "Review focus",
71
+ "multiSelect": true,
72
+ "options": [
73
+ {"label": "Full review — security + logic + tests + style (Recommended)", "description": "Comprehensive check across all dimensions"},
74
+ {"label": "Security focus — OWASP top 10, injection, auth", "description": "Use for auth changes, API endpoints, file uploads, queries"},
75
+ {"label": "Logic and correctness", "description": "Race conditions, null handling, off-by-one errors, incorrect assumptions"},
76
+ {"label": "Test coverage", "description": "Are the right paths tested? Are assertions meaningful?"},
77
+ {"label": "API contract / breaking changes", "description": "Will this break existing consumers? Is the contract preserved?"}
78
+ ]
79
+ }
80
+ ]</parameter>
81
+ </invoke>
82
+ ```
83
+
84
+ ## Review dimensions
85
+
86
+ Run all dimensions for a full review, or the selected subset for a focused review.
87
+
88
+ ### 1. Security
89
+
90
+ See `references/security-patterns.md` for the full checklist. Quick scan:
91
+
92
+ - [ ] SQL injection / NoSQL injection (raw queries with user input)
93
+ - [ ] Command injection (`exec`, `shell`, `subprocess` with user input)
94
+ - [ ] Path traversal (`../../../etc/passwd`)
95
+ - [ ] XSS (unsanitised user input rendered to HTML)
96
+ - [ ] Insecure direct object reference (access control by user-controlled ID)
97
+ - [ ] Authentication bypass (auth checks that can be skipped)
98
+ - [ ] Sensitive data in logs, errors, or URLs
99
+ - [ ] Hardcoded secrets or credentials
100
+ - [ ] Cryptography: weak algorithms (MD5, SHA1 for passwords), improper key handling
101
+ - [ ] CSRF on state-changing endpoints
102
+ - [ ] Mass assignment (binding user input directly to DB models)
103
+
104
+ ### 2. Logic and correctness
105
+
106
+ - [ ] Off-by-one errors in loops and index access
107
+ - [ ] Null / undefined handling — does the code assume a value exists?
108
+ - [ ] Race conditions — shared mutable state accessed concurrently
109
+ - [ ] Error handling — are errors caught, logged, and propagated correctly?
110
+ - [ ] Edge cases — empty collections, zero values, max values, unicode strings
111
+ - [ ] Assumptions about data types — implicit type coercion, integer overflow
112
+ - [ ] Conditional logic coverage — are all branches reachable and correct?
113
+ - [ ] Async correctness — missing await, fire-and-forget, unhandled rejections
114
+
115
+ ### 3. Test coverage
116
+
117
+ - [ ] Do the tests cover the new code paths?
118
+ - [ ] Are there tests for the sad paths and edge cases?
119
+ - [ ] Are assertions meaningful (not just `toBeTruthy`)?
120
+ - [ ] Are mocks correct — do they mock at the boundary?
121
+ - [ ] Would these tests catch a realistic regression?
122
+
123
+ ### 4. API contract and breaking changes
124
+
125
+ - [ ] Does this change any public API endpoint signatures?
126
+ - [ ] Are new required fields added to existing responses?
127
+ - [ ] Are existing fields removed or renamed?
128
+ - [ ] Is backward compatibility maintained for API consumers?
129
+ - [ ] Are database migrations backward compatible (additive, not destructive)?
130
+ - [ ] Are event schemas or message formats preserved?
131
+
132
+ ### 5. Code quality and style
133
+
134
+ - [ ] Is the code readable and self-documenting?
135
+ - [ ] Are variable and function names clear and consistent?
136
+ - [ ] Is there duplication that should be extracted?
137
+ - [ ] Are there comments explaining why (not what)?
138
+ - [ ] Is the change within a reasonable size (< 400 LOC diff; flag if larger)?
139
+ - [ ] Does it follow the project's established patterns?
140
+
141
+ ## Findings format
142
+
143
+ Report each finding with a severity and actionable recommendation:
144
+
145
+ ```
146
+ [P0] SECURITY — SQL Injection risk in user search
147
+ File: src/repositories/user-repo.js, line 47
148
+ Issue: User input interpolated directly into SQL query string
149
+ Fix: Use parameterised query: db.query('SELECT * FROM users WHERE email = $1', [email])
150
+ Reference: OWASP A03:2021 - Injection
151
+
152
+ [P1] LOGIC — Missing null check before property access
153
+ File: src/services/order-service.js, line 112
154
+ Issue: order.customer.email accessed without checking if customer is null
155
+ Fix: Add guard: if (!order.customer) throw new OrderError('Customer not found')
156
+
157
+ [P2] TESTS — No test for the refund failure path
158
+ File: tests/order.test.js
159
+ Issue: The error branch on line 89 of order-service.js has no test
160
+ Fix: Add test: 'throws RefundError when payment gateway returns 402'
161
+
162
+ [P3] STYLE — Magic number should be a named constant
163
+ File: src/pricing/calculator.js, line 23
164
+ Issue: 0.15 used directly — unclear if this is a tax rate or discount
165
+ Fix: const DEFAULT_TAX_RATE = 0.15;
166
+ ```
167
+
168
+ ## Severity levels
169
+
170
+ | Level | Meaning | Action required before merge |
171
+ | -------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------ |
172
+ | **P0** | Security vulnerability or data corruption risk | Block merge — must fix |
173
+ | **P1** | Logic error that will cause incorrect behaviour or crashes | Strong recommendation to fix before merge |
174
+ | **P2** | Missing test coverage for important path | Fix before merge on critical features; acceptable on minor changes |
175
+ | **P3** | Code quality / style — won't cause a bug but makes code harder to maintain | Fix at author's discretion |
176
+ | **NOTE** | Observation, question, or suggestion with no required action | Informational only |
177
+
178
+ ## Final recommendation
179
+
180
+ End every review with one of:
181
+
182
+ - **APPROVE** — No P0/P1 issues; P2/P3 are optional
183
+ - **REQUEST CHANGES** — One or more P0 or P1 issues must be addressed
184
+ - **NEEDS DISCUSSION** — Design concern that requires a conversation before code changes make sense
185
+
186
+ ```
187
+ ─────────────────────────────────────
188
+ REVIEW SUMMARY
189
+ ─────────────────────────────────────
190
+ Files reviewed: 8 | Lines changed: +247 / -89
191
+ Findings: 1 P0, 2 P1, 3 P2, 1 P3
192
+
193
+ VERDICT: REQUEST CHANGES
194
+
195
+ Must fix before merge:
196
+ 1. [P0] SQL injection in user-repo.js:47
197
+ 2. [P1] Null dereference in order-service.js:112
198
+ 3. [P1] Auth check missing on DELETE /api/users/:id
199
+
200
+ Nice to have:
201
+ 4. [P2] No test for refund failure path
202
+ 5. [P3] Magic numbers should be constants
203
+
204
+ After addressing P0 and P1, this is ready to merge.
205
+ ─────────────────────────────────────
206
+ ```
207
+
208
+ ## Self-improving learnings
209
+
210
+ `_learnings/pr-reviewer.yaml` records:
211
+
212
+ - Team's severity thresholds (e.g. P2 test coverage is a blocker on this team)
213
+ - Recurring patterns to watch for in this codebase
214
+ - Preferred fix patterns when issues are found
215
+ - Merge criteria the team has established
216
+
217
+ ## Integration
218
+
219
+ - **agileflow-audit** — use audit for pre-release sweeps or milestone quality gates; use pr-reviewer for individual PR merge gates; they're complementary not duplicates
220
+ - **agileflow-debug** — when the reviewer finds a bug, hand off to debug for root cause analysis rather than patching inline
221
+ - **agileflow-refactor** — when the review surfaces structural problems (long files, poor naming, deep coupling), route a follow-up story to refactor
222
+ - **agileflow-test-writer** — when review finds missing test coverage, spawn test-writer to fill the gaps before approving the merge
223
+ - **agileflow-accessibility** — when review touches UI components or interactive elements, accessibility check is part of the review criteria
224
+ - **agileflow-performance** — when review touches query paths, rendering logic, or data processing, flag for performance review alongside the code review
225
+ - **agileflow-docs** — if the PR changes public APIs or exports, verify docs were updated; pr-reviewer flags the gap, docs fills it
226
+ - **agileflow-delivery** — pr-reviewer is a delivery gate; delivery orchestrates the overall release, pr-reviewer is one of its quality checkpoints
227
+ - **agileflow-security** — invoke agileflow-audit with security dimension for auth changes, permission logic, or data handling code that warrants deeper security review
228
+
229
+ ## References
230
+
231
+ | File | When to load |
232
+ | --------------------------------- | ---------------------------------------------------------------------------- |
233
+ | `references/review-checklist.md` | Full review — comprehensive checklist across all dimensions |
234
+ | `references/security-patterns.md` | Security-focused review — OWASP patterns, injection, auth issues to scan for |
235
+
236
+ ## Workflows
237
+
238
+ | File | When to follow |
239
+ | ------------------------------ | ----------------------------------------------------------------------- |
240
+ | `workflows/review-pr.md` | Standard PR review — all dimensions, produces findings + recommendation |
241
+ | `workflows/security-review.md` | Security-focused review for auth changes, API endpoints, data handling |
@@ -0,0 +1,200 @@
1
+ # PR Review Checklist
2
+
3
+ **Load this when:** running a full review across all dimensions. Work through each section that is applicable to the change.
4
+
5
+ ---
6
+
7
+ ## Before you start: scope the review
8
+
9
+ Read the PR description (or ask for it). Understand:
10
+
11
+ 1. **What is this change trying to do?** (feature, bugfix, refactor, chore)
12
+ 2. **What is the blast radius?** (one file, one service, cross-service, database schema)
13
+ 3. **What is the risk level?** (new endpoint, auth change, data migration, trivial copy change)
14
+
15
+ Higher blast radius and risk = more thorough review needed.
16
+
17
+ ---
18
+
19
+ ## Section 1: Security
20
+
21
+ Work through these for any change that handles user input, auth, database queries, or file operations.
22
+
23
+ ### Input handling
24
+
25
+ - [ ] All user input is validated before use (type, length, format, range)
26
+ - [ ] No raw SQL constructed by concatenating user input
27
+ - [ ] No shell commands built from user input (`exec`, `spawn`, `subprocess`)
28
+ - [ ] File paths from user input are sanitised (no `..` traversal)
29
+ - [ ] HTML output is escaped (no raw `innerHTML = userInput`)
30
+ - [ ] JSON parsed safely (no `eval()` on untrusted input)
31
+
32
+ ### Authentication and authorisation
33
+
34
+ - [ ] Every state-changing endpoint has an auth check
35
+ - [ ] Auth checks happen before expensive operations (not just before the response)
36
+ - [ ] User can only access their own resources (no IDOR — Insecure Direct Object Reference)
37
+ - [ ] Role checks are server-side (not just hidden in the UI)
38
+ - [ ] Session tokens are invalidated on logout
39
+ - [ ] Password reset tokens are single-use and time-limited
40
+
41
+ ### Data handling
42
+
43
+ - [ ] No sensitive data (passwords, tokens, PII) logged to application logs
44
+ - [ ] No sensitive data returned in error messages
45
+ - [ ] No hardcoded credentials, API keys, or secrets in source code
46
+ - [ ] Passwords hashed with bcrypt/argon2 (not MD5, SHA1, or SHA256 alone)
47
+ - [ ] Tokens generated with cryptographically secure randomness
48
+
49
+ ### Transport and headers
50
+
51
+ - [ ] HTTPS enforced (no plain HTTP fallback for sensitive operations)
52
+ - [ ] CSRF protection on state-changing form submissions
53
+ - [ ] Sensitive cookies have `HttpOnly`, `Secure`, and `SameSite` attributes
54
+
55
+ ---
56
+
57
+ ## Section 2: Logic and correctness
58
+
59
+ ### Null and undefined handling
60
+
61
+ - [ ] No property access on a value that could be null/undefined
62
+ - [ ] All function return values checked when they can return null/undefined/error
63
+ - [ ] Optional chaining (`?.`) or explicit null checks before deep access
64
+ - [ ] Array access guarded when index might be out of bounds
65
+
66
+ ### Async and concurrency
67
+
68
+ - [ ] All Promises are awaited or properly handled with `.catch()`
69
+ - [ ] No fire-and-forget async calls that silently fail
70
+ - [ ] No shared mutable state modified concurrently without locks
71
+ - [ ] No race condition between a read and a subsequent write
72
+ - [ ] Database transactions used when multiple writes must be atomic
73
+
74
+ ### Error handling
75
+
76
+ - [ ] All error paths handled explicitly (not just the happy path)
77
+ - [ ] Errors are logged with enough context to diagnose (not just `console.error(err)`)
78
+ - [ ] User-facing errors are generic (not leaking stack traces or internal details)
79
+ - [ ] Errors propagate to the caller or are handled — not silently swallowed
80
+ - [ ] Retry logic present for transient failures (network, DB connection)
81
+
82
+ ### Edge cases
83
+
84
+ - [ ] Behaviour with empty input (empty string, empty array, zero) is correct
85
+ - [ ] Behaviour at boundaries is correct (first/last item, min/max value, midnight)
86
+ - [ ] Unicode strings handled correctly (emojis, RTL text, special characters)
87
+ - [ ] Large inputs don't cause OOM or performance collapse
88
+ - [ ] Pagination / cursors work correctly on empty result sets
89
+
90
+ ### Business logic
91
+
92
+ - [ ] The change matches the acceptance criteria / ticket requirements
93
+ - [ ] No "off-by-one" errors in loops, date calculations, or index slicing
94
+ - [ ] No implicit assumptions about data ordering (unless ordering is guaranteed)
95
+ - [ ] State transitions are valid (e.g. can't move from COMPLETED back to PENDING)
96
+
97
+ ---
98
+
99
+ ## Section 3: Test coverage
100
+
101
+ ### Coverage
102
+
103
+ - [ ] New code paths have corresponding tests
104
+ - [ ] Tests cover both the happy path and at least one sad path
105
+ - [ ] Edge cases (null, empty, boundary values) have tests
106
+ - [ ] Security-sensitive paths have explicit tests for unauthorised access
107
+
108
+ ### Test quality
109
+
110
+ - [ ] Each test has at least one meaningful assertion (not just `toBeDefined()`)
111
+ - [ ] Assertions are specific: `toBe(200)` not `toBeTruthy()`
112
+ - [ ] Mocks are placed at the correct boundary (external deps only)
113
+ - [ ] Tests don't depend on each other's state
114
+ - [ ] Tests use descriptive names: `'returns 404 when user not found'` not `'test2'`
115
+
116
+ ### Test fragility
117
+
118
+ - [ ] No fixed dates or time-sensitive assertions without fake timers
119
+ - [ ] No hardcoded IDs or database sequences
120
+ - [ ] No tests that rely on test execution order
121
+ - [ ] No tests with `setTimeout` / `sleep` — use fake timers
122
+
123
+ ---
124
+
125
+ ## Section 4: API contracts and breaking changes
126
+
127
+ ### HTTP API
128
+
129
+ - [ ] No required fields removed from request or response schemas
130
+ - [ ] No fields renamed without a deprecation path
131
+ - [ ] No HTTP status codes changed (e.g. 200 → 204 can break consumers)
132
+ - [ ] New required request fields have defaults or a migration path for callers
133
+ - [ ] Error response format consistent with existing endpoints
134
+
135
+ ### Database schema
136
+
137
+ - [ ] Migrations are additive (add column, add table) — not destructive
138
+ - [ ] `NOT NULL` columns have defaults or are added to empty tables
139
+ - [ ] No column renames without code + data migration
140
+ - [ ] Indexes added for new query patterns
141
+ - [ ] Down migration exists (or impossibility noted)
142
+
143
+ ### Events / messages
144
+
145
+ - [ ] Event/message schema changes are backward compatible
146
+ - [ ] Consumers won't break if a new field is added
147
+ - [ ] No event type renames without a transition period
148
+
149
+ ---
150
+
151
+ ## Section 5: Performance
152
+
153
+ - [ ] No N+1 queries (loop that issues a DB query per iteration)
154
+ - [ ] Large result sets are paginated — no `SELECT *` without `LIMIT`
155
+ - [ ] Expensive operations aren't synchronous on the request thread (use queues)
156
+ - [ ] Caches are invalidated correctly when underlying data changes
157
+ - [ ] No unnecessary database round-trips (can be combined into one query)
158
+ - [ ] Indexes exist for new filtering/sorting patterns
159
+
160
+ ---
161
+
162
+ ## Section 6: Code quality
163
+
164
+ ### Readability
165
+
166
+ - [ ] Variable and function names clearly express intent
167
+ - [ ] Functions do one thing (single responsibility)
168
+ - [ ] Complex logic has a comment explaining _why_ (not _what_)
169
+ - [ ] No dead code (commented-out blocks, unused variables, unreachable branches)
170
+
171
+ ### Duplication
172
+
173
+ - [ ] No copy-paste of code that already exists elsewhere
174
+ - [ ] New utility functions placed in a shared location if used in >1 place
175
+ - [ ] Constants defined once, not repeated as magic numbers/strings
176
+
177
+ ### Change size
178
+
179
+ - [ ] PR is reviewable (< 400 LOC diff as a guideline)
180
+ - [ ] If larger: is it a mechanical change (rename, format)? Is it justified?
181
+ - [ ] Each PR does one thing (not a feature + refactor + chore bundled together)
182
+
183
+ ---
184
+
185
+ ## Section 7: Documentation
186
+
187
+ - [ ] New public functions/methods have JSDoc / docstrings
188
+ - [ ] README updated if setup instructions changed
189
+ - [ ] API documentation updated if endpoint signatures changed
190
+ - [ ] Migration guide added if there are breaking changes
191
+ - [ ] `CHANGELOG.md` entry added if this is a user-facing change
192
+
193
+ ---
194
+
195
+ ## Checklist usage
196
+
197
+ For a standard review: work through Sections 1–4 for every PR.
198
+ For a security review: focus on Section 1, run `workflows/security-review.md`.
199
+ For a performance review: focus on Section 5.
200
+ For a refactor-only PR: focus on Sections 2, 3, 4, 6.