forge-workflow 0.0.10 → 0.1.0-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (468) hide show
  1. package/.claude/rules/{greptile-review-process.md → review-process.md} +56 -41
  2. package/.claude/scripts/{greptile-resolve.sh → review-resolve.sh} +13 -3
  3. package/.cursor/rules/permissions-guidance.mdc +2 -2
  4. package/.forge/hooks/check-tdd.js +82 -5
  5. package/.forge/hooks/forge-native-hook.js +431 -0
  6. package/.forge/protected-paths.yaml +157 -0
  7. package/AGENTS.md +151 -61
  8. package/CHANGELOG.md +709 -0
  9. package/CLAUDE.md +9 -118
  10. package/QUICKSTART.md +175 -0
  11. package/README.md +275 -365
  12. package/bin/forge-cmd.js +120 -9
  13. package/bin/forge-preflight.js +26 -5
  14. package/bin/forge.js +532 -489
  15. package/docs/INDEX.md +93 -0
  16. package/docs/PROJECT_DESIGN.md +685 -0
  17. package/docs/architecture/index.md +66 -0
  18. package/docs/architecture/notes/README.md +35 -0
  19. package/docs/architecture/subsystems/README.md +46 -0
  20. package/docs/forge/TOOLCHAIN.md +670 -0
  21. package/docs/forge/VALIDATION.md +82 -0
  22. package/docs/{AGENT_INSTALL_PROMPT.md → guides/AGENT_INSTALL_PROMPT.md} +3 -3
  23. package/docs/guides/BEADS_GITHUB_SYNC.md +32 -0
  24. package/docs/{ENHANCED_ONBOARDING.md → guides/ENHANCED_ONBOARDING.md} +16 -12
  25. package/docs/guides/GREPTILE_SETUP.md +46 -0
  26. package/docs/guides/MANUAL_REVIEW_GUIDE.md +58 -0
  27. package/docs/guides/MIGRATION.md +56 -0
  28. package/docs/guides/SETUP.md +121 -0
  29. package/docs/guides/SUPPORT.md +190 -0
  30. package/docs/guides/WORKFLOW_TEMPLATES.md +74 -0
  31. package/docs/guides/memory-backends.md +183 -0
  32. package/docs/reference/ADAPTERS.md +128 -0
  33. package/docs/reference/AGENT_SKILL_PARITY.md +175 -0
  34. package/docs/reference/COMMANDS.md +214 -0
  35. package/docs/reference/DECISION_DRIFT_GUARDS.md +97 -0
  36. package/docs/{EXAMPLES.md → reference/EXAMPLES.md} +7 -5
  37. package/docs/reference/FORGE_KERNEL_STORAGE_MODEL.md +135 -0
  38. package/docs/reference/HERMES_INTEGRATION.md +118 -0
  39. package/docs/reference/INSIGHTS_RECAP.md +63 -0
  40. package/docs/reference/INSTALL.md +164 -0
  41. package/docs/reference/KERNEL_TAXONOMY_VALIDATION.md +161 -0
  42. package/docs/reference/PROTECTED_PATH_MANIFEST.md +25 -0
  43. package/docs/reference/RELEASE.md +68 -0
  44. package/docs/reference/RESEARCH_TEMPLATE.md +292 -0
  45. package/docs/{ROADMAP.md → reference/ROADMAP.md} +12 -9
  46. package/docs/reference/SKILLS.md +35 -0
  47. package/docs/reference/STATUS_BOARD.md +80 -0
  48. package/docs/reference/TEMPLATES.md +106 -0
  49. package/docs/{TOOLCHAIN.md → reference/TOOLCHAIN.md} +62 -47
  50. package/docs/reference/VALIDATION.md +82 -0
  51. package/docs/reference/agent-permissions.md +169 -0
  52. package/docs/reference/beads-to-kernel-migration-ux.md +61 -0
  53. package/docs/reference/control-plane-guarantees.md +125 -0
  54. package/docs/reference/dependency-chain.md +331 -0
  55. package/docs/reference/forge-kernel-issue-command-contract.md +161 -0
  56. package/docs/reference/forge-kernel-schema.md +72 -0
  57. package/docs/reference/kernel-conflict-evaluators.md +27 -0
  58. package/docs/reference/patch-md-format.md +77 -0
  59. package/docs/reference/protected-state-surfaces.md +59 -0
  60. package/docs/reference/shepherd.md +155 -0
  61. package/docs/reference/superpowers-analysis.md +320 -0
  62. package/docs/reference/superpowers-integration-options.md +404 -0
  63. package/docs/reference/test-environment.md +519 -0
  64. package/docs/reference/upgrade-safety.md +59 -0
  65. package/lefthook.yml +18 -0
  66. package/lib/activation/ensure-forge-home.js +135 -0
  67. package/lib/adapter-cli.js +307 -0
  68. package/lib/adapters/beads-issue-adapter.js +127 -0
  69. package/lib/adapters/beads-kernel-compat.js +1109 -0
  70. package/lib/adapters/greptile-review-adapter.js +141 -0
  71. package/lib/adapters/kernel-issue-adapter.js +101 -0
  72. package/lib/adapters/pr-state-adapter.js +484 -0
  73. package/lib/adoption-profiles.js +139 -0
  74. package/lib/agents/README.md +2 -6
  75. package/lib/agents/claude.plugin.json +3 -8
  76. package/lib/agents/codex.plugin.json +9 -1
  77. package/lib/agents/cursor.plugin.json +2 -6
  78. package/lib/agents/hermes.plugin.json +22 -0
  79. package/lib/agents-config.js +39 -1236
  80. package/lib/audit-evidence.js +282 -0
  81. package/lib/beads-detect.js +60 -0
  82. package/lib/beads-nudge.js +91 -0
  83. package/lib/beads-setup.js +121 -0
  84. package/lib/beads-sync-scaffold.js +25 -101
  85. package/lib/codex-skills.js +51 -1
  86. package/lib/commands/_aliases.js +248 -0
  87. package/lib/commands/_issue.js +780 -77
  88. package/lib/commands/_manifest.js +93 -0
  89. package/lib/commands/_registry.js +99 -34
  90. package/lib/commands/_resolve-command-opts.js +230 -0
  91. package/lib/commands/_serve-security.js +270 -0
  92. package/lib/commands/adapter.js +12 -0
  93. package/lib/commands/add.js +118 -0
  94. package/lib/commands/audit.js +70 -0
  95. package/lib/commands/blocked.js +5 -0
  96. package/lib/commands/board.js +64 -0
  97. package/lib/commands/claim.js +21 -2
  98. package/lib/commands/claims.js +7 -0
  99. package/lib/commands/clean.js +485 -75
  100. package/lib/commands/close.js +2 -2
  101. package/lib/commands/comment.js +5 -0
  102. package/lib/commands/control.js +148 -0
  103. package/lib/commands/create.js +2 -2
  104. package/lib/commands/dev.js +185 -7
  105. package/lib/commands/doc-gate.js +336 -0
  106. package/lib/commands/doctor.js +156 -0
  107. package/lib/commands/explain.js +15 -0
  108. package/lib/commands/export.js +237 -0
  109. package/lib/commands/gate.js +209 -0
  110. package/lib/commands/hooks.js +377 -0
  111. package/lib/commands/inbox.js +118 -0
  112. package/lib/commands/init.js +604 -0
  113. package/lib/commands/insights.js +79 -0
  114. package/lib/commands/issue.js +12 -1
  115. package/lib/commands/issues.js +17 -0
  116. package/lib/commands/lint.js +5 -0
  117. package/lib/commands/list.js +2 -2
  118. package/lib/commands/memory.js +81 -0
  119. package/lib/commands/merge.js +312 -0
  120. package/lib/commands/migrate.js +362 -0
  121. package/lib/commands/new.js +12 -0
  122. package/lib/commands/options.js +241 -0
  123. package/lib/commands/orient.js +13 -0
  124. package/lib/commands/orphans.js +5 -0
  125. package/lib/commands/patch.js +67 -0
  126. package/lib/commands/plan.js +481 -29
  127. package/lib/commands/pr.js +88 -0
  128. package/lib/commands/preflight.js +211 -0
  129. package/lib/commands/prime.js +13 -0
  130. package/lib/commands/push.js +135 -2
  131. package/lib/commands/ready.js +2 -2
  132. package/lib/commands/recall.js +171 -0
  133. package/lib/commands/recap.js +75 -0
  134. package/lib/commands/recommend.js +0 -1
  135. package/lib/commands/release.js +104 -0
  136. package/lib/commands/remember.js +140 -0
  137. package/lib/commands/role.js +99 -0
  138. package/lib/commands/serve.js +581 -0
  139. package/lib/commands/setup.js +900 -971
  140. package/lib/commands/shepherd.js +501 -0
  141. package/lib/commands/ship.js +59 -1
  142. package/lib/commands/show.js +2 -2
  143. package/lib/commands/stage.js +192 -0
  144. package/lib/commands/stale.js +5 -0
  145. package/lib/commands/status.js +158 -21
  146. package/lib/commands/sync.js +34 -46
  147. package/lib/commands/team.js +4 -1
  148. package/lib/commands/test.js +43 -27
  149. package/lib/commands/update.js +2 -2
  150. package/lib/commands/upgrade.js +47 -0
  151. package/lib/commands/validate.js +43 -18
  152. package/lib/commands/worktree.js +362 -99
  153. package/lib/config-writer.js +202 -0
  154. package/lib/control-plane.js +236 -0
  155. package/lib/core/runtime-graph.js +977 -0
  156. package/lib/dep-guard/keyword-ripple.js +2 -2
  157. package/lib/deprecated-sync-cleanup.js +362 -0
  158. package/lib/detect-agent.js +2 -28
  159. package/lib/detect-worktree.js +35 -9
  160. package/lib/doc-gate/declaration.js +177 -0
  161. package/lib/doc-gate/detect.js +289 -0
  162. package/lib/doc-gate/gate.js +375 -0
  163. package/lib/doc-gate/okf-config.js +128 -0
  164. package/lib/doc-gate/okf.js +429 -0
  165. package/lib/docs-command.js +1161 -6
  166. package/lib/forge-issues.js +382 -11
  167. package/lib/forge-lock.js +262 -0
  168. package/lib/gate-events.js +192 -0
  169. package/lib/global-flags.js +104 -0
  170. package/lib/greptile-match.js +7 -63
  171. package/lib/grounding/context-events.js +230 -0
  172. package/lib/grounding/read-first.js +112 -0
  173. package/lib/harness-capability-matrix.js +380 -0
  174. package/lib/hook-global-installer.js +347 -0
  175. package/lib/hook-renderer.js +541 -0
  176. package/lib/inbox.js +391 -0
  177. package/lib/insights.js +397 -0
  178. package/lib/issue-adapter.js +156 -0
  179. package/lib/issue-backend.js +145 -0
  180. package/lib/issue-render.js +220 -0
  181. package/lib/kernel/backing-issue.js +311 -0
  182. package/lib/kernel/broker.js +1218 -0
  183. package/lib/kernel/cli-broker-factory.js +130 -0
  184. package/lib/kernel/conflict-signal.js +82 -0
  185. package/lib/kernel/evaluators.js +195 -0
  186. package/lib/kernel/fs-class.js +495 -0
  187. package/lib/kernel/issue-command-contract.js +559 -0
  188. package/lib/kernel/issue-id-resolver.js +186 -0
  189. package/lib/kernel/lease-enforcer.js +158 -0
  190. package/lib/kernel/migrations.js +333 -0
  191. package/lib/kernel/owned-kernel.js +43 -0
  192. package/lib/kernel/planning-buckets-schema.js +109 -0
  193. package/lib/kernel/projection-jsonl-writer.js +450 -0
  194. package/lib/kernel/readiness-model.js +329 -0
  195. package/lib/kernel/schema.js +356 -0
  196. package/lib/kernel/sqlite-driver.js +2540 -0
  197. package/lib/kernel/taxonomy-validator.js +394 -0
  198. package/lib/lefthook-check.js +3 -2
  199. package/lib/lefthook-wiring.js +413 -0
  200. package/lib/mcp-config-renderer.js +288 -0
  201. package/lib/memory/graphiti-mcp.js +106 -0
  202. package/lib/memory/router.js +387 -0
  203. package/lib/memory/typed-api.js +102 -0
  204. package/lib/memory-digest.js +195 -0
  205. package/lib/merge-rules.js +395 -0
  206. package/lib/migrate-dry-run.js +466 -0
  207. package/lib/orientation.js +863 -0
  208. package/lib/package-manager-remediation.js +103 -0
  209. package/lib/package-root.js +381 -0
  210. package/lib/patch-intent.js +890 -0
  211. package/lib/plugin-catalog.js +3 -4
  212. package/lib/plugin-manager.js +0 -5
  213. package/lib/pr-bundle.js +186 -0
  214. package/lib/pr-monitor/auto-actions.js +175 -0
  215. package/lib/pr-monitor/differ.js +195 -0
  216. package/lib/pr-monitor/digest.js +206 -0
  217. package/lib/pr-monitor/events.js +0 -0
  218. package/lib/pr-monitor/gather.js +124 -0
  219. package/lib/pr-monitor/journal.js +299 -0
  220. package/lib/pr-monitor/monitor.js +146 -0
  221. package/lib/pr-monitor/render-sticky.js +192 -0
  222. package/lib/pr-monitor/upsert-sticky.js +169 -0
  223. package/lib/pr-monitor/watch-lifecycle.js +95 -0
  224. package/lib/pr-monitor/watch.js +247 -0
  225. package/lib/pr-pull.js +1314 -0
  226. package/lib/pr-shepherd.js +494 -0
  227. package/lib/pr-state-validator.js +59 -0
  228. package/lib/preflight/gates.js +237 -0
  229. package/lib/preflight/runner.js +116 -0
  230. package/lib/project-discovery.js +0 -53
  231. package/lib/project-memory.js +99 -497
  232. package/lib/protected-path-manifest.js +281 -0
  233. package/lib/protected-state-surfaces.js +387 -0
  234. package/lib/release-readiness.js +2105 -0
  235. package/lib/reset.js +59 -45
  236. package/lib/review-adapter.js +68 -0
  237. package/lib/rules-sync.js +260 -0
  238. package/lib/runtime-health.js +241 -20
  239. package/lib/safety-config-renderer.js +268 -0
  240. package/lib/setup-action-log.js +1 -7
  241. package/lib/setup.js +27 -65
  242. package/lib/shell-utils.js +76 -6
  243. package/lib/skills-sync.js +330 -0
  244. package/lib/smart-status/scoring.js +17 -3
  245. package/lib/status/beads-snapshot.js +45 -2
  246. package/lib/status/presenter.js +169 -18
  247. package/lib/status/snapshot.js +186 -0
  248. package/lib/sync-backend.js +202 -0
  249. package/lib/untrusted-content.js +52 -0
  250. package/lib/upgrade-safety.js +251 -0
  251. package/lib/workflow/enforce-stage.js +351 -45
  252. package/lib/workflow/stage-transition.js +115 -0
  253. package/lib/workflow/stages.js +30 -6
  254. package/lib/workflow/state-manager.js +11 -22
  255. package/lib/workflow/state.js +23 -1
  256. package/lib/workflow-profiles.js +17 -5
  257. package/package.json +37 -35
  258. package/rules/documentation.md +19 -0
  259. package/rules/kernel-tracking.md +26 -0
  260. package/rules/security.md +22 -0
  261. package/rules/tdd.md +20 -0
  262. package/rules/workflow.md +27 -0
  263. package/scripts/auto-backing-issue.js +47 -0
  264. package/scripts/beads-context.sh +81 -57
  265. package/scripts/beads-upgrade-smoke.sh +24 -3
  266. package/scripts/bootstrap-windows-tools.sh +78 -0
  267. package/scripts/branch-protection.js +2 -3
  268. package/scripts/check-agents.js +34 -137
  269. package/scripts/commitlint.js +3 -1
  270. package/scripts/conflict-detect.sh +3 -0
  271. package/scripts/dep-guard.sh +22 -3
  272. package/scripts/file-index.sh +3 -0
  273. package/scripts/forge-team/lib/claim.sh +34 -18
  274. package/scripts/forge-team/lib/dashboard.sh +61 -86
  275. package/scripts/forge-team/lib/epic.sh +99 -263
  276. package/scripts/forge-team/lib/hooks.sh +26 -28
  277. package/scripts/forge-team/lib/identity.sh +4 -4
  278. package/scripts/forge-team/lib/sync-github.sh +49 -84
  279. package/scripts/forge-team/lib/verify.sh +93 -83
  280. package/scripts/forge-team/lib/workload.sh +41 -65
  281. package/scripts/forge-team/tests/claim.test.sh +25 -19
  282. package/scripts/forge-team/tests/dashboard.test.sh +31 -46
  283. package/scripts/forge-team/tests/epic.test.sh +52 -71
  284. package/scripts/forge-team/tests/hooks.test.sh +38 -50
  285. package/scripts/forge-team/tests/identity.test.sh +3 -3
  286. package/scripts/forge-team/tests/integration.test.sh +44 -66
  287. package/scripts/forge-team/tests/sync-github.test.sh +50 -83
  288. package/scripts/forge-team/tests/verify.test.sh +37 -46
  289. package/scripts/forge-team/tests/workflow-integration.test.sh +4 -4
  290. package/scripts/forge-team/tests/workload.test.sh +32 -66
  291. package/scripts/gen-command-manifest.js +153 -0
  292. package/scripts/gen-embedded-assets.mjs +129 -0
  293. package/scripts/install.ps1 +139 -0
  294. package/scripts/install.sh +268 -0
  295. package/scripts/lib/release-asset.mjs +84 -0
  296. package/scripts/parity-check.mjs +145 -0
  297. package/scripts/parity-check.test.mjs +58 -0
  298. package/scripts/pin-agentic-workflow-images.js +112 -0
  299. package/scripts/pr-auto-actions.js +93 -0
  300. package/scripts/pr-coordinator.sh +3 -0
  301. package/scripts/pr-verdict-label.js +50 -0
  302. package/scripts/preflight-sonar.eslint.config.mjs +44 -0
  303. package/scripts/preflight.sh +21 -94
  304. package/scripts/protected-state-check.js +104 -0
  305. package/scripts/smart-status.sh +60 -57
  306. package/scripts/spikes/config-race-bench.js +111 -0
  307. package/scripts/spikes/harness-capability-matrix.js +13 -0
  308. package/scripts/spikes/patch-anchor-stability-bench.js +125 -0
  309. package/scripts/spikes/protected-path-manifest.js +20 -0
  310. package/scripts/spikes/skill-auto-invoke-parity.js +292 -0
  311. package/scripts/sync-agent-skills.js +62 -0
  312. package/scripts/sync-utils.sh +3 -0
  313. package/scripts/test-ci-shard.js +13 -6
  314. package/scripts/test.js +95 -12
  315. package/skills/claim-safety/SKILL.md +102 -0
  316. package/skills/claim-safety/evals/evals.json +46 -0
  317. package/{.github/prompts/dev.prompt.md → skills/dev/SKILL.md} +44 -50
  318. package/skills/dev/evals/evals.json +50 -0
  319. package/skills/hermes-forge/SKILL.md +185 -0
  320. package/skills/hermes-forge/evals/evals.json +46 -0
  321. package/skills/issue-basics/SKILL.md +111 -0
  322. package/skills/issue-basics/evals/evals.json +46 -0
  323. package/skills/kernel/SKILL.md +166 -0
  324. package/skills/kernel/evals/evals.json +50 -0
  325. package/skills/memory/SKILL.md +102 -0
  326. package/skills/parallel-deep-research/SKILL.md +14 -11
  327. package/skills/parallel-deep-research/evals/evals.json +11 -27
  328. package/{.github/prompts/plan.prompt.md → skills/plan/SKILL.md} +132 -157
  329. package/skills/plan/evals/evals.json +42 -0
  330. package/skills/research/SKILL.md +195 -0
  331. package/skills/research/evals/evals.json +42 -0
  332. package/{.github/prompts/review.prompt.md → skills/review/SKILL.md} +98 -62
  333. package/skills/review/evals/evals.json +42 -0
  334. package/skills/rollback/SKILL.md +110 -0
  335. package/skills/rollback/evals/evals.json +46 -0
  336. package/skills/rollback/references/methods.md +204 -0
  337. package/{.cursor/commands/rollback.md → skills/rollback/references/workflow-integration.md} +10 -284
  338. package/skills/shepherd/SKILL.md +66 -0
  339. package/skills/shepherd/evals/evals.json +42 -0
  340. package/{.github/prompts/ship.prompt.md → skills/ship/SKILL.md} +81 -45
  341. package/skills/ship/evals/evals.json +42 -0
  342. package/skills/smith/SKILL.md +142 -0
  343. package/skills/smith/evals/evals.json +46 -0
  344. package/skills/smith/references/autonomy-and-gates.md +94 -0
  345. package/{.github/prompts/sonarcloud.prompt.md → skills/sonarcloud/SKILL.md} +14 -3
  346. package/skills/sonarcloud/evals/evals.json +46 -0
  347. package/skills/sonarcloud-analysis/SKILL.md +18 -13
  348. package/skills/sonarcloud-analysis/evals/evals.json +11 -15
  349. package/{.github/prompts/status.prompt.md → skills/status/SKILL.md} +20 -10
  350. package/skills/status/evals/evals.json +50 -0
  351. package/skills/triage-ready/SKILL.md +121 -0
  352. package/skills/triage-ready/evals/evals.json +42 -0
  353. package/{.github/prompts/validate.prompt.md → skills/validate/SKILL.md} +52 -29
  354. package/skills/validate/evals/evals.json +42 -0
  355. package/skills/verify/SKILL.md +299 -0
  356. package/skills/verify/evals/evals.json +50 -0
  357. package/.claude/commands/dev.md +0 -345
  358. package/.claude/commands/plan.md +0 -566
  359. package/.claude/commands/premerge.md +0 -186
  360. package/.claude/commands/research.md +0 -42
  361. package/.claude/commands/review.md +0 -451
  362. package/.claude/commands/rollback.md +0 -721
  363. package/.claude/commands/ship.md +0 -213
  364. package/.claude/commands/sonarcloud.md +0 -152
  365. package/.claude/commands/status.md +0 -90
  366. package/.claude/commands/validate.md +0 -288
  367. package/.claude/commands/verify.md +0 -269
  368. package/.claude/rules/workflow.md +0 -121
  369. package/.cline/workflows/dev.md +0 -342
  370. package/.cline/workflows/plan.md +0 -563
  371. package/.cline/workflows/premerge.md +0 -183
  372. package/.cline/workflows/research.md +0 -39
  373. package/.cline/workflows/review.md +0 -448
  374. package/.cline/workflows/rollback.md +0 -718
  375. package/.cline/workflows/ship.md +0 -210
  376. package/.cline/workflows/sonarcloud.md +0 -146
  377. package/.cline/workflows/status.md +0 -87
  378. package/.cline/workflows/validate.md +0 -285
  379. package/.cline/workflows/verify.md +0 -266
  380. package/.codex/config.toml +0 -11
  381. package/.codex/skills/dev/SKILL.md +0 -345
  382. package/.codex/skills/plan/SKILL.md +0 -566
  383. package/.codex/skills/premerge/SKILL.md +0 -186
  384. package/.codex/skills/research/SKILL.md +0 -42
  385. package/.codex/skills/review/SKILL.md +0 -451
  386. package/.codex/skills/rollback/SKILL.md +0 -721
  387. package/.codex/skills/ship/SKILL.md +0 -213
  388. package/.codex/skills/sonarcloud/SKILL.md +0 -149
  389. package/.codex/skills/status/SKILL.md +0 -90
  390. package/.codex/skills/validate/SKILL.md +0 -288
  391. package/.codex/skills/verify/SKILL.md +0 -269
  392. package/.cursor/commands/dev.md +0 -342
  393. package/.cursor/commands/plan.md +0 -563
  394. package/.cursor/commands/premerge.md +0 -183
  395. package/.cursor/commands/research.md +0 -39
  396. package/.cursor/commands/review.md +0 -448
  397. package/.cursor/commands/ship.md +0 -210
  398. package/.cursor/commands/sonarcloud.md +0 -146
  399. package/.cursor/commands/status.md +0 -87
  400. package/.cursor/commands/validate.md +0 -285
  401. package/.cursor/commands/verify.md +0 -266
  402. package/.cursorrules +0 -149
  403. package/.github/prompts/premerge.prompt.md +0 -188
  404. package/.github/prompts/research.prompt.md +0 -44
  405. package/.github/prompts/rollback.prompt.md +0 -723
  406. package/.github/prompts/verify.prompt.md +0 -271
  407. package/.github/workflows/beads-to-github.yml +0 -89
  408. package/.github/workflows/github-to-beads.yml +0 -100
  409. package/.kilocode/workflows/dev.md +0 -346
  410. package/.kilocode/workflows/plan.md +0 -567
  411. package/.kilocode/workflows/premerge.md +0 -187
  412. package/.kilocode/workflows/research.md +0 -43
  413. package/.kilocode/workflows/review.md +0 -452
  414. package/.kilocode/workflows/rollback.md +0 -722
  415. package/.kilocode/workflows/ship.md +0 -214
  416. package/.kilocode/workflows/sonarcloud.md +0 -150
  417. package/.kilocode/workflows/status.md +0 -91
  418. package/.kilocode/workflows/validate.md +0 -289
  419. package/.kilocode/workflows/verify.md +0 -270
  420. package/.opencode/commands/dev.md +0 -345
  421. package/.opencode/commands/plan.md +0 -566
  422. package/.opencode/commands/premerge.md +0 -186
  423. package/.opencode/commands/research.md +0 -42
  424. package/.opencode/commands/review.md +0 -451
  425. package/.opencode/commands/rollback.md +0 -721
  426. package/.opencode/commands/ship.md +0 -213
  427. package/.opencode/commands/sonarcloud.md +0 -149
  428. package/.opencode/commands/status.md +0 -90
  429. package/.opencode/commands/validate.md +0 -288
  430. package/.opencode/commands/verify.md +0 -269
  431. package/.roo/commands/dev.md +0 -346
  432. package/.roo/commands/plan.md +0 -567
  433. package/.roo/commands/premerge.md +0 -187
  434. package/.roo/commands/research.md +0 -43
  435. package/.roo/commands/review.md +0 -452
  436. package/.roo/commands/rollback.md +0 -722
  437. package/.roo/commands/ship.md +0 -214
  438. package/.roo/commands/sonarcloud.md +0 -150
  439. package/.roo/commands/status.md +0 -91
  440. package/.roo/commands/validate.md +0 -289
  441. package/.roo/commands/verify.md +0 -270
  442. package/docs/BEADS_GITHUB_SYNC.md +0 -281
  443. package/docs/GREPTILE_SETUP.md +0 -400
  444. package/docs/MANUAL_REVIEW_GUIDE.md +0 -106
  445. package/docs/SETUP.md +0 -663
  446. package/docs/VALIDATION.md +0 -363
  447. package/lib/agents/cline.plugin.json +0 -29
  448. package/lib/agents/copilot.plugin.json +0 -24
  449. package/lib/agents/kilocode.plugin.json +0 -22
  450. package/lib/agents/opencode.plugin.json +0 -23
  451. package/lib/agents/roo.plugin.json +0 -30
  452. package/lib/beads-bootstrap.js +0 -225
  453. package/lib/beads-health-check.js +0 -188
  454. package/lib/commands/commands-reset.js +0 -147
  455. package/opencode.json +0 -67
  456. package/scripts/beads-context.test.js +0 -584
  457. package/scripts/github-beads-sync/comment.mjs +0 -64
  458. package/scripts/github-beads-sync/config.mjs +0 -148
  459. package/scripts/github-beads-sync/github-api.mjs +0 -131
  460. package/scripts/github-beads-sync/index.mjs +0 -356
  461. package/scripts/github-beads-sync/label-mapper.mjs +0 -54
  462. package/scripts/github-beads-sync/mapping.mjs +0 -132
  463. package/scripts/github-beads-sync/reverse-sync-cli.mjs +0 -31
  464. package/scripts/github-beads-sync/reverse-sync.mjs +0 -162
  465. package/scripts/github-beads-sync/run-bd.mjs +0 -161
  466. package/scripts/github-beads-sync/sanitize.mjs +0 -121
  467. package/scripts/github-beads-sync.config.json +0 -26
  468. package/scripts/sync-commands.js +0 -600
@@ -1,186 +0,0 @@
1
- ---
2
- description: Complete all doc updates on feature branch, then hand off PR to user for merge
3
- ---
4
-
5
- Prepare the pull request for merge by completing ALL documentation updates on the feature branch, then hand off to the user.
6
-
7
- # Premerge
8
-
9
- **The actual merge is always done by the user in the GitHub UI — never by this command.**
10
-
11
- This command makes the PR 100% complete: code + tests + docs in one unit. After this, the user merges once and there are no follow-up doc PRs needed.
12
-
13
- ## Usage
14
-
15
- ```bash
16
- /premerge <pr-number>
17
- ```
18
-
19
- ## What This Command Does
20
-
21
- ### Step 1: Verify All CI Checks Pass
22
-
23
- ```bash
24
- gh pr checks <pr-number>
25
- ```
26
-
27
- All checks must be green before proceeding. If any fail, run `/review <pr-number>` first.
28
-
29
- ### Step 2: Warn If Branch Is Behind Master
30
-
31
- ```bash
32
- gh pr view <pr-number> --json baseRefName,headRefName
33
- git fetch origin master
34
- git status
35
- ```
36
-
37
- If the feature branch is behind `master`, tell the user to rebase first:
38
-
39
- ```
40
- ⚠️ Branch is behind master — rebase before updating docs to avoid conflicts:
41
- git rebase origin/master
42
- git push --force-with-lease
43
- ```
44
-
45
- ### Step 3: Update ALL Relevant Documentation (on feature branch)
46
-
47
- Check each of the following and update if the feature affects it. Be selective — only update what genuinely changed.
48
-
49
- **A. `CHANGELOG.md`** (always):
50
- - Add entry under `## [Unreleased]` heading (create heading if not present)
51
- - Use [Keep a Changelog](https://keepachangelog.com/) categories:
52
- - **Added**: New features
53
- - **Changed**: Changes to existing functionality
54
- - **Fixed**: Bug fixes
55
- - **Removed**: Removed features
56
- - Include: feature name, PR number, Beads ID
57
- - Example:
58
- ```markdown
59
- ## [Unreleased]
60
-
61
- ### Added
62
- - Authentication refresh tokens (PR #89, forge-a3f8)
63
- ```
64
-
65
- **B. `README.md`** (if user-facing changes):
66
- - Features list, configuration options, usage examples
67
-
68
- **C. `docs/reference/API_REFERENCE.md`** (if API changes):
69
- - New endpoints, request/response schemas, authentication
70
-
71
- **D. Architecture docs** (if structural changes):
72
- - `docs/architecture/` diagrams, decision records (ADRs)
73
-
74
- **E. `CLAUDE.md` — USER section only** (if project conventions changed):
75
- ```
76
- <!-- USER:START - Add project-specific learnings here as you work -->
77
- ...update only between these markers...
78
- <!-- USER:END -->
79
- ```
80
- ⚠️ NEVER touch other managed blocks (e.g., `<!-- AGENT:START/END -->`).
81
-
82
- **F. `AGENTS.md`** (if agent config, skills, or cross-agent workflow changed):
83
- - Update relevant sections describing agent capabilities or workflow
84
-
85
- **Commit doc updates to feature branch**:
86
-
87
- ```bash
88
- git add CHANGELOG.md README.md docs/ AGENTS.md CLAUDE.md
89
- git commit -m "docs: update documentation for <feature-name>
90
-
91
- - Updated: [list files changed]
92
- - Reason: [brief explanation]"
93
-
94
- git push
95
- ```
96
-
97
- ⚠️ **After pushing**: CI will re-trigger (Greptile, SonarCloud, etc.). Poll for up to 60 seconds. If checks are still pending after that, stop and ask the user to return to `/premerge <pr-number>` later. If new Greptile comments appear on the doc changes, run `/review <pr-number>` again.
98
-
99
- ### Step 4: Sync Beads
100
-
101
- ```bash
102
- bd sync
103
- ```
104
-
105
- ### Step 5: Hand Off — STOP HERE
106
-
107
- **DO NOT run `gh pr merge`.** Present the PR and wait for the user to merge.
108
-
109
- Output:
110
-
111
- ```
112
- ✅ PR #<number> is ready to merge
113
-
114
- All checks: ✓ passing
115
- Documentation: ✓ updated on feature branch
116
- Beads: ✓ synced
117
-
118
- 👉 Please merge in the GitHub UI:
119
- https://github.com/<owner>/<repo>/pull/<number>
120
-
121
- Recommended: Squash and merge (keeps main history clean)
122
-
123
- After you merge, run /verify to confirm everything landed correctly.
124
- ```
125
-
126
- ### Step 6: Validate Context and Record Stage Transition
127
-
128
- ```bash
129
- bash scripts/beads-context.sh validate <id>
130
- bash scripts/beads-context.sh stage-transition <id> premerge verify \
131
- --summary "<docs updated, CI green, PR ready>" \
132
- --artifacts "<updated doc files, PR URL>" \
133
- --next "<merge instructions for user>"
134
- ```
135
-
136
- ```
137
- <HARD-GATE: /premerge exit>
138
- Do NOT run gh pr merge.
139
- Do NOT suggest merging.
140
- /premerge ends here. Output the PR URL and status. Wait for user.
141
-
142
- "After you merge, run /verify to confirm everything landed correctly."
143
- </HARD-GATE>
144
- ```
145
-
146
- ## Example Output
147
-
148
- ```
149
- ✓ CI checks: All passing
150
- ✓ Branch: Up to date with master
151
- ✓ Documentation updated:
152
- - CHANGELOG.md: Entry added under [Unreleased]
153
- - README.md: Features list updated
154
- - CLAUDE.md: USER section updated with new pattern
155
- - Committed: docs: update documentation for auth-refresh
156
- ✓ CI re-triggered after doc push — checks passed within the 60 second poll window
157
- ✓ Beads synced
158
-
159
- ✅ PR #89 is ready to merge
160
-
161
- 👉 Please merge in the GitHub UI:
162
- https://github.com/harshanandak/forge/pull/89
163
-
164
- After you merge, run /verify
165
- ```
166
-
167
- ## Rules
168
-
169
- - **NEVER run `gh pr merge`** — blocked by PreToolUse hook in `.claude/settings.json`
170
- - **CLAUDE.md USER section only** — never touch other managed blocks
171
- - **Warn if branch is behind** — tell user to rebase before doc updates
172
- - **Re-check CI after doc push** — doc commits re-trigger full CI pipeline
173
- - **One PR, complete** — code + tests + docs merged together, no follow-up doc PRs
174
-
175
- ## Integration with Workflow
176
-
177
- ```
178
- Utility: /status → Understand current context before starting
179
- Stage 1: /plan → Design intent → research → branch + worktree + task list
180
- Stage 2: /dev → Implement each task with subagent-driven TDD
181
- Stage 3: /validate → Type check, lint, tests, security — all fresh output
182
- Stage 4: /ship → Push + create PR
183
- Stage 5: /review → Address GitHub Actions, Greptile, SonarCloud
184
- Stage 6: /premerge → Update docs, hand off PR to user (you are here)
185
- Stage 7: /verify → Post-merge CI check on main
186
- ```
@@ -1,42 +0,0 @@
1
- ---
2
- description: Deep research with parallel-deep-research, document findings
3
- ---
4
-
5
- > **Note**: `/research` is now Phase 2 of `/plan`.
6
- >
7
- > The research phase has been absorbed into the `/plan` command, which runs a full 3-phase workflow:
8
- > - **Phase 1**: Brainstorming — design intent, constraints, success criteria
9
- > - **Phase 2**: Technical research — web search, OWASP, codebase exploration, TDD scenarios
10
- > - **Phase 3**: Setup — branch, worktree, Beads issue, task list
11
- >
12
- > Run `/plan <feature-slug>` to start the complete planning workflow.
13
-
14
- # Research (Legacy Alias)
15
-
16
- This command previously ran a standalone research phase. It is now embedded in `/plan` as Phase 2.
17
-
18
- ## If you want to run just the research phase
19
-
20
- Jump to Phase 2 of `/plan` manually:
21
-
22
- 1. Read or create the design doc at `docs/plans/YYYY-MM-DD-<slug>-design.md`
23
- 2. Run parallel web search using the `parallel-deep-research` skill
24
- 3. Run OWASP Top 10 analysis for the feature
25
- 4. Use the Explore agent for codebase exploration
26
- 5. Identify at least 3 TDD test scenarios
27
- 6. Append findings under `## Technical Research` in the design doc
28
-
29
- Then continue with `/plan <slug> --continue` to run Phase 3 (setup + task list).
30
-
31
- ## Integration with Workflow
32
-
33
- ```
34
- Utility: /status → Understand current context before starting
35
- Stage 1: /plan → Design intent → research → branch + worktree + task list
36
- Stage 2: /dev → Implement each task with subagent-driven TDD
37
- Stage 3: /validate → Type check, lint, tests, security — all fresh output
38
- Stage 4: /ship → Push + create PR
39
- Stage 5: /review → Address GitHub Actions, Greptile, SonarCloud
40
- Stage 6: /premerge → Update docs, hand off PR to user
41
- Stage 7: /verify → Post-merge CI check on main
42
- ```
@@ -1,451 +0,0 @@
1
- ---
2
- description: Address ALL PR issues (GitHub Actions, Greptile, SonarCloud, CI/CD)
3
- ---
4
-
5
- Process ALL pull request issues including GitHub Actions failures, Greptile inline comments, SonarCloud analysis, and other CI/CD checks.
6
-
7
- # Review
8
-
9
- This command handles ALL issues that arise after creating a pull request.
10
-
11
- ## Usage
12
-
13
- ```bash
14
- /review <pr-number>
15
- ```
16
-
17
- ## What This Command Does
18
-
19
- ### Step 1: Fetch Complete PR Status
20
- ```bash
21
- # Get full PR details including all checks
22
- gh pr view <pr-number> --json number,url,isDraft,reviews,statusCheckRollup,comments
23
-
24
- # Check individual status checks
25
- gh pr checks <pr-number>
26
- ```
27
-
28
- Review ALL status checks:
29
- - GitHub Actions workflows
30
- - Greptile code review (inline comments + summary)
31
- - SonarCloud quality gate
32
- - Any other CI/CD integrations
33
- - Vercel deployments
34
- - Security scanners
35
-
36
- ### Step 2: Address GitHub Actions Failures
37
-
38
- If any GitHub Actions workflows fail:
39
-
40
- ```bash
41
- # View failed workflow logs
42
- gh run view <run-id> --log-failed
43
-
44
- # Identify failure cause:
45
- # - Build failures
46
- # - Test failures
47
- # - Lint/type check failures
48
- # - Deployment failures
49
- # - Security scan failures
50
- ```
51
-
52
- **For each failure**:
53
- 1. **Analyze the error**: Read logs to understand root cause
54
- 2. **Fix the issue**: Make necessary code changes
55
- 3. **Re-run checks**: GitHub Actions will auto-rerun on push
56
- 4. **Document fix**: Note what was fixed in commit message
57
-
58
- **Common GitHub Actions Issues**:
59
- - Build failures: Missing dependencies, compilation errors
60
- - Test failures: Failing test cases (should not happen if /validate passed)
61
- - Lint failures: Code style violations
62
- - Type failures: TypeScript type errors
63
- - Deployment failures: Env vars, configuration issues
64
-
65
- ### Step 3: Process Greptile Review
66
-
67
- Greptile provides TWO types of feedback:
68
- 1. **Inline comments** on specific code lines
69
- 2. **Summary** with overall recommendations
70
-
71
- **IMPORTANT**: Use the **systematic Greptile resolution process** documented in `.claude/rules/greptile-review-process.md`. This process has been standardized to ensure:
72
- - All threads are replied to directly (not as separate PR comments)
73
- - All threads are marked as resolved after fixing
74
- - No manual tracking overhead for maintainers
75
-
76
- #### 3A. Check Greptile Inline Comments (Use Systematic Process)
77
-
78
- **Step 1: List all unresolved threads**
79
- ```bash
80
- bash .claude/scripts/greptile-resolve.sh list <pr-number> --unresolved
81
- ```
82
-
83
- This shows:
84
- - Thread ID (for resolving)
85
- - Comment ID (for replying)
86
- - File path and line number
87
- - Issue description
88
-
89
- **Step 2: For EACH unresolved thread:**
90
-
91
- 1. **Understand the issue**
92
- - Read the comment carefully
93
- - Check the file and line number
94
-
95
- 2. **Categorize the comment**:
96
- - **Valid**: Should be implemented (security issue, bug, clear improvement)
97
- - **Invalid**: Greptile misunderstood context
98
- - **Conflicting**: Contradicts research decisions with good reason
99
- - **Out of scope**: Valid but not for this PR
100
-
101
- 3. **Fix the issue** (if valid)
102
- - Make code changes
103
- - Commit with clear message
104
-
105
- 4. **Reply and resolve** (for ALL comments, even invalid ones)
106
- ```bash
107
- # For valid issues (fixed):
108
- bash .claude/scripts/greptile-resolve.sh reply-and-resolve <pr-number> <comment-id> <thread-id> \
109
- "✅ Fixed: [description]
110
-
111
- Changed: [what was changed]
112
- Reason: [why this fixes the issue]
113
- Commit: [commit-sha]"
114
-
115
- # For invalid/conflicting issues:
116
- bash .claude/scripts/greptile-resolve.sh reply-and-resolve <pr-number> <comment-id> <thread-id> \
117
- "This approach is correct because:
118
- - Reasoning: [from design doc]
119
- - Evidence: [link to source]
120
- - Alternative considered: [what Greptile suggested]
121
- - Why rejected: [specific reason]
122
-
123
- See: docs/plans/YYYY-MM-DD-<slug>-design.md (Decision #X)"
124
- ```
125
-
126
- **Step 3: Verify all resolved**
127
- ```bash
128
- bash .claude/scripts/greptile-resolve.sh stats <pr-number>
129
- ```
130
- Should show: "✓ All Greptile threads resolved!"
131
-
132
- **See complete process**: `.claude/rules/greptile-review-process.md`
133
-
134
- #### 3B. Check Greptile Summary
135
- ```bash
136
- # Greptile usually posts a summary comment on the PR
137
- # Review the overall assessment and recommendations
138
- ```
139
-
140
- The summary typically includes:
141
- - Overall code quality assessment
142
- - Key issues to address
143
- - Security concerns
144
- - Performance considerations
145
- - Best practice violations
146
-
147
- ### Step 4: Analyze SonarCloud (via sonarcloud skill)
148
-
149
- ```bash
150
- # Use sonarcloud skill to query PR-specific issues
151
- /sonarcloud
152
- ```
153
-
154
- **What SonarCloud does**: Static code analysis for quality, security, and maintainability
155
-
156
- **How it helps**:
157
- - Identifies code smells and technical debt
158
- - Finds security vulnerabilities (complementing OWASP Top 10)
159
- - Calculates code coverage
160
- - Tracks code duplication
161
- - Assesses maintainability
162
-
163
- **Query PR-specific data**:
164
- - Quality gate status (pass/fail)
165
- - New issues introduced in this PR
166
- - Security hotspots
167
- - Code coverage changes
168
- - Technical debt added
169
-
170
- **Prioritize issues**:
171
- 1. **Blocker/Critical**: Must fix before merge
172
- 2. **Major**: Should fix if valid
173
- 3. **Minor/Info**: Optional improvements
174
-
175
- ### Step 5: Check Other CI/CD Tools
176
-
177
- Review any other automated checks:
178
- - **Vercel**: Preview deployment successful?
179
- - **Security scanners**: Any vulnerabilities detected?
180
- - **Custom scripts**: Any failures?
181
- - **Dependency checks**: Outdated or vulnerable packages?
182
-
183
- ### Step 6: Categorize and Prioritize ALL Issues
184
-
185
- Create a master list of all issues from:
186
- - GitHub Actions failures
187
- - Greptile inline comments
188
- - Greptile summary recommendations
189
- - SonarCloud issues
190
- - Other CI/CD tool failures
191
-
192
- Prioritize by:
193
- 1. **Critical**: Blocks merge (failing tests, security vulnerabilities, build failures)
194
- 2. **High**: Should address (valid bugs, important improvements)
195
- 3. **Medium**: Optional but valuable (code quality, best practices)
196
- 4. **Low**: Nice to have (minor refactorings, style suggestions)
197
-
198
- ### Step 7: Address Issues Systematically
199
-
200
- For **GitHub Actions failures** (Critical):
201
- ```bash
202
- # Fix the issue
203
- # Commit with clear description
204
- git add .
205
- git commit -m "fix: resolve GitHub Actions failure in <workflow-name>
206
-
207
- - Fixed: [specific issue]
208
- - Root cause: [explanation]
209
- - Solution: [what was changed]"
210
-
211
- git push
212
- # Actions will auto-rerun
213
- ```
214
-
215
- For **Greptile inline comments** (Use Systematic Script):
216
- ```bash
217
- # Use the standardized Greptile resolution script
218
- # See .claude/rules/greptile-review-process.md for complete process
219
-
220
- # For valid comments (fixed):
221
- bash .claude/scripts/greptile-resolve.sh reply-and-resolve <pr-number> <comment-id> <thread-id> \
222
- "✅ Fixed: [description]
223
-
224
- Changed: [what was changed]
225
- Reason: [why this fixes the issue]
226
- Commit: [commit-sha]"
227
-
228
- # For invalid/conflicting comments:
229
- bash .claude/scripts/greptile-resolve.sh reply-and-resolve <pr-number> <comment-id> <thread-id> \
230
- "This approach is correct because:
231
- - Reasoning: [from design doc]
232
- - Evidence: [link to source]
233
- - Alternative considered: [what Greptile suggested]
234
- - Why rejected: [specific reason]
235
-
236
- See: docs/plans/YYYY-MM-DD-<slug>-design.md (Decision #X)"
237
-
238
- # Verify all threads resolved:
239
- bash .claude/scripts/greptile-resolve.sh stats <pr-number>
240
- ```
241
-
242
- For **Greptile summary recommendations**:
243
- ```bash
244
- # Add a PR comment addressing the summary
245
- gh pr comment <pr-number> --body "## Greptile Summary Response
246
-
247
- Addressed all key recommendations:
248
- - [Recommendation 1]: ✓ Fixed in commit <sha>
249
- - [Recommendation 2]: ✓ Explained (see inline response)
250
- - [Recommendation 3]: ⏭️ Out of scope for this PR (created issue bd-xxx)
251
-
252
- All critical and high-priority items resolved."
253
- ```
254
-
255
- For **SonarCloud issues** (via sonarcloud skill):
256
- ```bash
257
- # For critical/blocker issues: Fix immediately
258
- # For security vulnerabilities: Fix immediately
259
- # For code smells: Fix if valid, justify if not
260
-
261
- # After fixes, SonarCloud will re-analyze on next push
262
- ```
263
-
264
- For **other CI/CD failures**:
265
- ```bash
266
- # Debug the specific tool's logs
267
- # Fix the underlying issue
268
- # Commit and push
269
- # Verify the check passes
270
- ```
271
-
272
- ### Step 8: Commit ALL Fixes
273
-
274
- ```bash
275
- git add .
276
- git commit -m "fix: address ALL PR review feedback
277
-
278
- GitHub Actions:
279
- - Fixed: [list of workflow failures resolved]
280
-
281
- Greptile:
282
- - Fixed: [list of valid inline comments addressed]
283
- - Explained: [list of invalid comments with reasoning]
284
- - Summary: [key recommendations addressed]
285
-
286
- SonarCloud:
287
- - Fixed: [security vulnerabilities and critical issues]
288
- - Justified: [code smells that are intentional]
289
-
290
- Other CI/CD:
291
- - Fixed: [any other tool failures]
292
-
293
- All review feedback resolved, all checks passing."
294
-
295
- git push
296
- ```
297
-
298
- ### Step 9: Verify ALL Checks Pass
299
-
300
- ```bash
301
- # Check status immediately, then poll for at most 60 seconds
302
- gh pr checks <pr-number>
303
-
304
- # If checks are still pending after 60 seconds: STOP and tell the user to return
305
- # when CI finishes or new review feedback appears.
306
- #
307
- # Ensure all completed status checks are green:
308
- # ✓ GitHub Actions workflows
309
- # ✓ Greptile review (no unresolved critical comments)
310
- # ✓ SonarCloud quality gate
311
- # ✓ Other CI/CD checks
312
- ```
313
-
314
- ### Step 10: Update Beads
315
-
316
- ```bash
317
- bd update <id> --comment "PR review complete: all issues addressed, all checks passing"
318
- bd sync
319
- ```
320
-
321
- ## Example Output
322
-
323
- ```
324
- ✓ GitHub Actions: 3 workflows
325
- - Build: ✓ Passing (was failing, fixed missing dependency)
326
- - Tests: ✓ Passing
327
- - Deploy Preview: ✓ Passing
328
-
329
- ✓ Greptile Review:
330
- Inline Comments: 8 total
331
- - Valid: 5 → Fixed & replied inline
332
- - Invalid: 2 → Explained with research evidence & replied inline
333
- - Out of scope: 1 → Noted for future work & replied inline
334
- - All marked resolved ✓
335
-
336
- Summary:
337
- - Key recommendations: 3/3 addressed
338
- - Overall assessment: Ready for merge
339
- - Posted summary response comment ✓
340
-
341
- ✓ SonarCloud (via sonarcloud skill):
342
- Quality Gate: ✓ Passing
343
- Issues: 3 total
344
- - Security: 1 → Fixed (SQL injection risk)
345
- - Code smells: 2 → 1 fixed, 1 justified
346
- - Coverage: Maintained at 85%
347
-
348
- ✓ Vercel Preview: ✓ Deployed successfully
349
- ✓ Security Scan: ✓ No vulnerabilities
350
-
351
- ✓ All Issues Addressed:
352
- - Critical: 2/2 fixed (GitHub Actions build, SonarCloud security)
353
- - High: 5/5 fixed (Greptile valid comments)
354
- - Medium: 3/3 addressed (1 fixed, 2 explained)
355
- - Low: 0 (none found)
356
-
357
- ✓ Fixes committed: 3c4d5e6
358
- ✓ All checks passing: ✓
359
- ✓ Beads updated: Ready for merge
360
-
361
- Next: /premerge <pr-number>
362
- ```
363
-
364
- ```
365
- <HARD-GATE: /review exit>
366
- Do NOT declare /review complete until:
367
- 1. bash .claude/scripts/greptile-resolve.sh stats <pr-number> shows "All Greptile threads resolved"
368
- 2. ALL human reviewer comments are either resolved or have a reply with explanation
369
- 3. gh pr checks <pr-number> shows all checks passing
370
- 4. Context check: Run `bash scripts/beads-context.sh validate <id>` and address any warnings
371
- 5. Stage transition: Run the following → exit 0 confirmed:
372
- bash scripts/beads-context.sh stage-transition <id> review premerge \
373
- --summary "<all feedback addressed summary>" \
374
- --decisions "<comment resolutions — valid fixes and justified rejections>" \
375
- --artifacts "<fixed files, commit SHAs>" \
376
- --next "<doc update needs for premerge>"
377
- </HARD-GATE>
378
- ```
379
-
380
- ## Integration with Workflow
381
-
382
- ```
383
- Utility: /status → Understand current context before starting
384
- Stage 1: /plan → Design intent → research → branch + worktree + task list
385
- Stage 2: /dev → Implement each task with subagent-driven TDD
386
- Stage 3: /validate → Type check, lint, tests, security — all fresh output
387
- Stage 4: /ship → Push + create PR
388
- Stage 5: /review → Address GitHub Actions, Greptile, SonarCloud (you are here)
389
- Stage 6: /premerge → Update docs, hand off PR to user
390
- Stage 7: /verify → Post-merge CI check on main
391
- ```
392
-
393
- ## Understanding the Tools
394
-
395
- ### Greptile
396
- - **What it is**: AI-powered code review bot
397
- - **How it helps**:
398
- - Context-aware code analysis
399
- - Catches bugs and security issues
400
- - Suggests improvements and best practices
401
- - Provides inline comments and summary
402
- - **How to use feedback**:
403
- - Inline comments: Address specific code issues
404
- - Summary: Get overall assessment and key recommendations
405
- - Reply directly to each comment (not separate)
406
- - Mark resolved after addressing
407
-
408
- ### SonarCloud (via sonarcloud skill)
409
- - **What it is**: Static code analysis platform
410
- - **How it helps**:
411
- - Quality gate enforcement
412
- - Security vulnerability detection
413
- - Code smell identification
414
- - Technical debt tracking
415
- - Test coverage analysis
416
- - **How to use the skill**:
417
- - Query PR-specific issues
418
- - Get quality metrics
419
- - Identify security hotspots
420
- - Track code coverage changes
421
- - **Prioritization**:
422
- - Blocker/Critical: Must fix
423
- - Major: Should fix if valid
424
- - Minor/Info: Optional
425
-
426
- ### GitHub Actions
427
- - **What it is**: CI/CD automation platform
428
- - **How it helps**:
429
- - Automated testing
430
- - Build verification
431
- - Deployment automation
432
- - Security scanning
433
- - Quality checks
434
- - **Common failures**:
435
- - Build: Dependencies, compilation
436
- - Tests: Failing test cases
437
- - Lint: Code style violations
438
- - Deploy: Configuration issues
439
-
440
- ## Tips
441
-
442
- - **Address ALL issues**: Not just Greptile and SonarCloud
443
- - **Prioritize critical**: Fix blockers first (GitHub Actions failures, security issues)
444
- - **Reply inline to Greptile**: Respond to each comment directly
445
- - **Post summary response**: Address Greptile's overall assessment
446
- - **Use sonarcloud skill**: Don't just check the web UI
447
- - **Verify all checks**: Ensure everything is green before /premerge
448
- - **Update Beads**: Keep issue status current
449
- - **Research if needed**: Use WebSearch for unclear suggestions
450
- - **Document fixes**: Clear commit messages for all fixes
451
- - **Don't leave unresolved**: Address every comment and check