@jokerized/getresearchdone 0.4.1

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 (711) hide show
  1. package/.claude-plugin/plugin.json +103 -0
  2. package/README.md +211 -0
  3. package/agents/grd-baseline-assessor.md +684 -0
  4. package/agents/grd-code-reviewer.md +300 -0
  5. package/agents/grd-codebase-mapper.md +355 -0
  6. package/agents/grd-critique-agent.md +119 -0
  7. package/agents/grd-debugger.md +519 -0
  8. package/agents/grd-deep-diver.md +737 -0
  9. package/agents/grd-eval-planner.md +913 -0
  10. package/agents/grd-eval-reporter.md +717 -0
  11. package/agents/grd-executor.md +683 -0
  12. package/agents/grd-feasibility-analyst.md +624 -0
  13. package/agents/grd-integration-checker.md +367 -0
  14. package/agents/grd-knowledge-miner.md +81 -0
  15. package/agents/grd-migrator.md +88 -0
  16. package/agents/grd-phase-researcher.md +697 -0
  17. package/agents/grd-plan-checker.md +443 -0
  18. package/agents/grd-planner.md +1532 -0
  19. package/agents/grd-product-owner.md +562 -0
  20. package/agents/grd-project-researcher.md +513 -0
  21. package/agents/grd-research-synthesizer.md +273 -0
  22. package/agents/grd-roadmapper.md +798 -0
  23. package/agents/grd-surveyor.md +566 -0
  24. package/agents/grd-verifier.md +893 -0
  25. package/bin/gd.js +4 -0
  26. package/bin/gd.ts +227 -0
  27. package/bin/grd-manifest.js +4 -0
  28. package/bin/grd-manifest.ts +286 -0
  29. package/bin/grd-mcp-server.js +4 -0
  30. package/bin/grd-mcp-server.ts +124 -0
  31. package/bin/grd-tools.js +4 -0
  32. package/bin/grd-tools.ts +2471 -0
  33. package/bin/postinstall.js +4 -0
  34. package/bin/postinstall.ts +80 -0
  35. package/commands/add-phase.md +123 -0
  36. package/commands/add-todo.md +87 -0
  37. package/commands/assess-baseline.md +289 -0
  38. package/commands/autopilot.md +100 -0
  39. package/commands/autoplan.md +55 -0
  40. package/commands/check-todos.md +87 -0
  41. package/commands/compare-methods.md +262 -0
  42. package/commands/complete-milestone.md +225 -0
  43. package/commands/debug.md +372 -0
  44. package/commands/deep-dive.md +288 -0
  45. package/commands/discover.md +281 -0
  46. package/commands/discuss-phase.md +188 -0
  47. package/commands/discuss.md +55 -0
  48. package/commands/eval-report.md +310 -0
  49. package/commands/evolve.md +79 -0
  50. package/commands/execute-phase.md +1017 -0
  51. package/commands/feasibility.md +292 -0
  52. package/commands/help.md +407 -0
  53. package/commands/init.md +1508 -0
  54. package/commands/insert-phase.md +113 -0
  55. package/commands/iterate.md +327 -0
  56. package/commands/list-phase-assumptions.md +217 -0
  57. package/commands/long-term-roadmap.md +202 -0
  58. package/commands/map-codebase.md +111 -0
  59. package/commands/migrate.md +159 -0
  60. package/commands/new-milestone.md +169 -0
  61. package/commands/pause-work.md +83 -0
  62. package/commands/plan-milestone-gaps.md +373 -0
  63. package/commands/plan-phase.md +655 -0
  64. package/commands/principles.md +328 -0
  65. package/commands/product-plan.md +319 -0
  66. package/commands/progress.md +481 -0
  67. package/commands/quick.md +167 -0
  68. package/commands/reapply-patches.md +154 -0
  69. package/commands/remove-phase.md +97 -0
  70. package/commands/requirement.md +96 -0
  71. package/commands/resume-project.md +113 -0
  72. package/commands/settings.md +1144 -0
  73. package/commands/survey.md +242 -0
  74. package/commands/sync.md +246 -0
  75. package/commands/tracker-setup.md +322 -0
  76. package/commands/update.md +202 -0
  77. package/commands/verify-phase.md +335 -0
  78. package/commands/verify-work.md +701 -0
  79. package/commands/wireup.md +29 -0
  80. package/dist/bin/gd.d.ts +3 -0
  81. package/dist/bin/gd.d.ts.map +1 -0
  82. package/dist/bin/gd.js +178 -0
  83. package/dist/bin/gd.js.map +1 -0
  84. package/dist/bin/grd-manifest.d.ts +3 -0
  85. package/dist/bin/grd-manifest.d.ts.map +1 -0
  86. package/dist/bin/grd-manifest.js +202 -0
  87. package/dist/bin/grd-manifest.js.map +1 -0
  88. package/dist/bin/grd-mcp-server.d.ts +3 -0
  89. package/dist/bin/grd-mcp-server.d.ts.map +1 -0
  90. package/dist/bin/grd-mcp-server.js +71 -0
  91. package/dist/bin/grd-mcp-server.js.map +1 -0
  92. package/dist/bin/grd-tools.d.ts +3 -0
  93. package/dist/bin/grd-tools.d.ts.map +1 -0
  94. package/dist/bin/grd-tools.js +1680 -0
  95. package/dist/bin/grd-tools.js.map +1 -0
  96. package/dist/bin/postinstall.d.ts +3 -0
  97. package/dist/bin/postinstall.d.ts.map +1 -0
  98. package/dist/bin/postinstall.js +61 -0
  99. package/dist/bin/postinstall.js.map +1 -0
  100. package/dist/lib/autopilot-milestone.d.ts +2 -0
  101. package/dist/lib/autopilot-milestone.d.ts.map +1 -0
  102. package/dist/lib/autopilot-milestone.js +94 -0
  103. package/dist/lib/autopilot-milestone.js.map +1 -0
  104. package/dist/lib/autopilot-pipeline.d.ts +2 -0
  105. package/dist/lib/autopilot-pipeline.d.ts.map +1 -0
  106. package/dist/lib/autopilot-pipeline.js +830 -0
  107. package/dist/lib/autopilot-pipeline.js.map +1 -0
  108. package/dist/lib/autopilot-waves.d.ts +2 -0
  109. package/dist/lib/autopilot-waves.d.ts.map +1 -0
  110. package/dist/lib/autopilot-waves.js +266 -0
  111. package/dist/lib/autopilot-waves.js.map +1 -0
  112. package/dist/lib/autopilot.d.ts +2 -0
  113. package/dist/lib/autopilot.d.ts.map +1 -0
  114. package/dist/lib/autopilot.js +1314 -0
  115. package/dist/lib/autopilot.js.map +1 -0
  116. package/dist/lib/autoplan.d.ts +2 -0
  117. package/dist/lib/autoplan.d.ts.map +1 -0
  118. package/dist/lib/autoplan.js +198 -0
  119. package/dist/lib/autoplan.js.map +1 -0
  120. package/dist/lib/autoresearch.d.ts +2 -0
  121. package/dist/lib/autoresearch.d.ts.map +1 -0
  122. package/dist/lib/autoresearch.js +626 -0
  123. package/dist/lib/autoresearch.js.map +1 -0
  124. package/dist/lib/backend.d.ts +2 -0
  125. package/dist/lib/backend.d.ts.map +1 -0
  126. package/dist/lib/backend.js +1036 -0
  127. package/dist/lib/backend.js.map +1 -0
  128. package/dist/lib/benchmark.d.ts +99 -0
  129. package/dist/lib/benchmark.d.ts.map +1 -0
  130. package/dist/lib/benchmark.js +278 -0
  131. package/dist/lib/benchmark.js.map +1 -0
  132. package/dist/lib/citations.d.ts +2 -0
  133. package/dist/lib/citations.d.ts.map +1 -0
  134. package/dist/lib/citations.js +642 -0
  135. package/dist/lib/citations.js.map +1 -0
  136. package/dist/lib/cleanup.d.ts +2 -0
  137. package/dist/lib/cleanup.d.ts.map +1 -0
  138. package/dist/lib/cleanup.js +1222 -0
  139. package/dist/lib/cleanup.js.map +1 -0
  140. package/dist/lib/cli/adapters.d.ts +10 -0
  141. package/dist/lib/cli/adapters.d.ts.map +1 -0
  142. package/dist/lib/cli/adapters.js +27 -0
  143. package/dist/lib/cli/adapters.js.map +1 -0
  144. package/dist/lib/cli/agent.d.ts +17 -0
  145. package/dist/lib/cli/agent.d.ts.map +1 -0
  146. package/dist/lib/cli/agent.js +53 -0
  147. package/dist/lib/cli/agent.js.map +1 -0
  148. package/dist/lib/cli/index.d.ts +21 -0
  149. package/dist/lib/cli/index.d.ts.map +1 -0
  150. package/dist/lib/cli/index.js +264 -0
  151. package/dist/lib/cli/index.js.map +1 -0
  152. package/dist/lib/cli/output.d.ts +20 -0
  153. package/dist/lib/cli/output.d.ts.map +1 -0
  154. package/dist/lib/cli/output.js +22 -0
  155. package/dist/lib/cli/output.js.map +1 -0
  156. package/dist/lib/cli/scan-dispatch.d.ts +9 -0
  157. package/dist/lib/cli/scan-dispatch.d.ts.map +1 -0
  158. package/dist/lib/cli/scan-dispatch.js +107 -0
  159. package/dist/lib/cli/scan-dispatch.js.map +1 -0
  160. package/dist/lib/cli/tools.d.ts +16 -0
  161. package/dist/lib/cli/tools.d.ts.map +1 -0
  162. package/dist/lib/cli/tools.js +168 -0
  163. package/dist/lib/cli/tools.js.map +1 -0
  164. package/dist/lib/commands/_dashboard-parsers.d.ts +2 -0
  165. package/dist/lib/commands/_dashboard-parsers.d.ts.map +1 -0
  166. package/dist/lib/commands/_dashboard-parsers.js +192 -0
  167. package/dist/lib/commands/_dashboard-parsers.js.map +1 -0
  168. package/dist/lib/commands/analysis.d.ts +2 -0
  169. package/dist/lib/commands/analysis.d.ts.map +1 -0
  170. package/dist/lib/commands/analysis.js +1418 -0
  171. package/dist/lib/commands/analysis.js.map +1 -0
  172. package/dist/lib/commands/assumptions.d.ts +2 -0
  173. package/dist/lib/commands/assumptions.d.ts.map +1 -0
  174. package/dist/lib/commands/assumptions.js +166 -0
  175. package/dist/lib/commands/assumptions.js.map +1 -0
  176. package/dist/lib/commands/blame.d.ts +2 -0
  177. package/dist/lib/commands/blame.d.ts.map +1 -0
  178. package/dist/lib/commands/blame.js +133 -0
  179. package/dist/lib/commands/blame.js.map +1 -0
  180. package/dist/lib/commands/budget.d.ts +2 -0
  181. package/dist/lib/commands/budget.d.ts.map +1 -0
  182. package/dist/lib/commands/budget.js +100 -0
  183. package/dist/lib/commands/budget.js.map +1 -0
  184. package/dist/lib/commands/check-plans.d.ts +2 -0
  185. package/dist/lib/commands/check-plans.d.ts.map +1 -0
  186. package/dist/lib/commands/check-plans.js +190 -0
  187. package/dist/lib/commands/check-plans.js.map +1 -0
  188. package/dist/lib/commands/config.d.ts +2 -0
  189. package/dist/lib/commands/config.d.ts.map +1 -0
  190. package/dist/lib/commands/config.js +188 -0
  191. package/dist/lib/commands/config.js.map +1 -0
  192. package/dist/lib/commands/dashboard.d.ts +2 -0
  193. package/dist/lib/commands/dashboard.d.ts.map +1 -0
  194. package/dist/lib/commands/dashboard.js +466 -0
  195. package/dist/lib/commands/dashboard.js.map +1 -0
  196. package/dist/lib/commands/estimate.d.ts +2 -0
  197. package/dist/lib/commands/estimate.d.ts.map +1 -0
  198. package/dist/lib/commands/estimate.js +148 -0
  199. package/dist/lib/commands/estimate.js.map +1 -0
  200. package/dist/lib/commands/eval-diff.d.ts +2 -0
  201. package/dist/lib/commands/eval-diff.d.ts.map +1 -0
  202. package/dist/lib/commands/eval-diff.js +213 -0
  203. package/dist/lib/commands/eval-diff.js.map +1 -0
  204. package/dist/lib/commands/freshness.d.ts +2 -0
  205. package/dist/lib/commands/freshness.d.ts.map +1 -0
  206. package/dist/lib/commands/freshness.js +163 -0
  207. package/dist/lib/commands/freshness.js.map +1 -0
  208. package/dist/lib/commands/health.d.ts +2 -0
  209. package/dist/lib/commands/health.d.ts.map +1 -0
  210. package/dist/lib/commands/health.js +435 -0
  211. package/dist/lib/commands/health.js.map +1 -0
  212. package/dist/lib/commands/index.d.ts +2 -0
  213. package/dist/lib/commands/index.d.ts.map +1 -0
  214. package/dist/lib/commands/index.js +128 -0
  215. package/dist/lib/commands/index.js.map +1 -0
  216. package/dist/lib/commands/install.d.ts +56 -0
  217. package/dist/lib/commands/install.d.ts.map +1 -0
  218. package/dist/lib/commands/install.js +214 -0
  219. package/dist/lib/commands/install.js.map +1 -0
  220. package/dist/lib/commands/knowhow-aggregator.d.ts +2 -0
  221. package/dist/lib/commands/knowhow-aggregator.d.ts.map +1 -0
  222. package/dist/lib/commands/knowhow-aggregator.js +279 -0
  223. package/dist/lib/commands/knowhow-aggregator.js.map +1 -0
  224. package/dist/lib/commands/knowledge-search.d.ts +2 -0
  225. package/dist/lib/commands/knowledge-search.d.ts.map +1 -0
  226. package/dist/lib/commands/knowledge-search.js +113 -0
  227. package/dist/lib/commands/knowledge-search.js.map +1 -0
  228. package/dist/lib/commands/long-term-roadmap.d.ts +2 -0
  229. package/dist/lib/commands/long-term-roadmap.d.ts.map +1 -0
  230. package/dist/lib/commands/long-term-roadmap.js +272 -0
  231. package/dist/lib/commands/long-term-roadmap.js.map +1 -0
  232. package/dist/lib/commands/patterns.d.ts +91 -0
  233. package/dist/lib/commands/patterns.d.ts.map +1 -0
  234. package/dist/lib/commands/patterns.js +391 -0
  235. package/dist/lib/commands/patterns.js.map +1 -0
  236. package/dist/lib/commands/phase-info.d.ts +2 -0
  237. package/dist/lib/commands/phase-info.d.ts.map +1 -0
  238. package/dist/lib/commands/phase-info.js +509 -0
  239. package/dist/lib/commands/phase-info.js.map +1 -0
  240. package/dist/lib/commands/plan-lint.d.ts +56 -0
  241. package/dist/lib/commands/plan-lint.d.ts.map +1 -0
  242. package/dist/lib/commands/plan-lint.js +481 -0
  243. package/dist/lib/commands/plan-lint.js.map +1 -0
  244. package/dist/lib/commands/plan-phase.d.ts +53 -0
  245. package/dist/lib/commands/plan-phase.d.ts.map +1 -0
  246. package/dist/lib/commands/plan-phase.js +288 -0
  247. package/dist/lib/commands/plan-phase.js.map +1 -0
  248. package/dist/lib/commands/progress.d.ts +2 -0
  249. package/dist/lib/commands/progress.d.ts.map +1 -0
  250. package/dist/lib/commands/progress.js +266 -0
  251. package/dist/lib/commands/progress.js.map +1 -0
  252. package/dist/lib/commands/quality.d.ts +2 -0
  253. package/dist/lib/commands/quality.d.ts.map +1 -0
  254. package/dist/lib/commands/quality.js +80 -0
  255. package/dist/lib/commands/quality.js.map +1 -0
  256. package/dist/lib/commands/rollback.d.ts +2 -0
  257. package/dist/lib/commands/rollback.d.ts.map +1 -0
  258. package/dist/lib/commands/rollback.js +145 -0
  259. package/dist/lib/commands/rollback.js.map +1 -0
  260. package/dist/lib/commands/scan.d.ts +25 -0
  261. package/dist/lib/commands/scan.d.ts.map +1 -0
  262. package/dist/lib/commands/scan.js +28 -0
  263. package/dist/lib/commands/scan.js.map +1 -0
  264. package/dist/lib/commands/search.d.ts +2 -0
  265. package/dist/lib/commands/search.d.ts.map +1 -0
  266. package/dist/lib/commands/search.js +212 -0
  267. package/dist/lib/commands/search.js.map +1 -0
  268. package/dist/lib/commands/select-candidate.d.ts +128 -0
  269. package/dist/lib/commands/select-candidate.d.ts.map +1 -0
  270. package/dist/lib/commands/select-candidate.js +518 -0
  271. package/dist/lib/commands/select-candidate.js.map +1 -0
  272. package/dist/lib/commands/singularity.d.ts +2 -0
  273. package/dist/lib/commands/singularity.d.ts.map +1 -0
  274. package/dist/lib/commands/singularity.js +185 -0
  275. package/dist/lib/commands/singularity.js.map +1 -0
  276. package/dist/lib/commands/slug-timestamp.d.ts +2 -0
  277. package/dist/lib/commands/slug-timestamp.d.ts.map +1 -0
  278. package/dist/lib/commands/slug-timestamp.js +54 -0
  279. package/dist/lib/commands/slug-timestamp.js.map +1 -0
  280. package/dist/lib/commands/tail.d.ts +2 -0
  281. package/dist/lib/commands/tail.d.ts.map +1 -0
  282. package/dist/lib/commands/tail.js +100 -0
  283. package/dist/lib/commands/tail.js.map +1 -0
  284. package/dist/lib/commands/todo.d.ts +2 -0
  285. package/dist/lib/commands/todo.d.ts.map +1 -0
  286. package/dist/lib/commands/todo.js +200 -0
  287. package/dist/lib/commands/todo.js.map +1 -0
  288. package/dist/lib/commands/watch.d.ts +2 -0
  289. package/dist/lib/commands/watch.d.ts.map +1 -0
  290. package/dist/lib/commands/watch.js +72 -0
  291. package/dist/lib/commands/watch.js.map +1 -0
  292. package/dist/lib/complexity.d.ts +55 -0
  293. package/dist/lib/complexity.d.ts.map +1 -0
  294. package/dist/lib/complexity.js +80 -0
  295. package/dist/lib/complexity.js.map +1 -0
  296. package/dist/lib/context/agents.d.ts +2 -0
  297. package/dist/lib/context/agents.d.ts.map +1 -0
  298. package/dist/lib/context/agents.js +344 -0
  299. package/dist/lib/context/agents.js.map +1 -0
  300. package/dist/lib/context/base.d.ts +2 -0
  301. package/dist/lib/context/base.d.ts.map +1 -0
  302. package/dist/lib/context/base.js +81 -0
  303. package/dist/lib/context/base.js.map +1 -0
  304. package/dist/lib/context/execute.d.ts +2 -0
  305. package/dist/lib/context/execute.d.ts.map +1 -0
  306. package/dist/lib/context/execute.js +753 -0
  307. package/dist/lib/context/execute.js.map +1 -0
  308. package/dist/lib/context/index.d.ts +2 -0
  309. package/dist/lib/context/index.d.ts.map +1 -0
  310. package/dist/lib/context/index.js +88 -0
  311. package/dist/lib/context/index.js.map +1 -0
  312. package/dist/lib/context/progress.d.ts +2 -0
  313. package/dist/lib/context/progress.d.ts.map +1 -0
  314. package/dist/lib/context/progress.js +178 -0
  315. package/dist/lib/context/progress.js.map +1 -0
  316. package/dist/lib/context/project.d.ts +2 -0
  317. package/dist/lib/context/project.d.ts.map +1 -0
  318. package/dist/lib/context/project.js +413 -0
  319. package/dist/lib/context/project.js.map +1 -0
  320. package/dist/lib/context/research.d.ts +2 -0
  321. package/dist/lib/context/research.d.ts.map +1 -0
  322. package/dist/lib/context/research.js +466 -0
  323. package/dist/lib/context/research.js.map +1 -0
  324. package/dist/lib/dead-ends.d.ts +28 -0
  325. package/dist/lib/dead-ends.d.ts.map +1 -0
  326. package/dist/lib/dead-ends.js +451 -0
  327. package/dist/lib/dead-ends.js.map +1 -0
  328. package/dist/lib/deps.d.ts +2 -0
  329. package/dist/lib/deps.d.ts.map +1 -0
  330. package/dist/lib/deps.js +630 -0
  331. package/dist/lib/deps.js.map +1 -0
  332. package/dist/lib/discussion.d.ts +2 -0
  333. package/dist/lib/discussion.d.ts.map +1 -0
  334. package/dist/lib/discussion.js +1041 -0
  335. package/dist/lib/discussion.js.map +1 -0
  336. package/dist/lib/drift.d.ts +36 -0
  337. package/dist/lib/drift.d.ts.map +1 -0
  338. package/dist/lib/drift.js +481 -0
  339. package/dist/lib/drift.js.map +1 -0
  340. package/dist/lib/evolve/_dimensions-features.d.ts +2 -0
  341. package/dist/lib/evolve/_dimensions-features.d.ts.map +1 -0
  342. package/dist/lib/evolve/_dimensions-features.js +369 -0
  343. package/dist/lib/evolve/_dimensions-features.js.map +1 -0
  344. package/dist/lib/evolve/_dimensions.d.ts +2 -0
  345. package/dist/lib/evolve/_dimensions.d.ts.map +1 -0
  346. package/dist/lib/evolve/_dimensions.js +358 -0
  347. package/dist/lib/evolve/_dimensions.js.map +1 -0
  348. package/dist/lib/evolve/_product-ideation.d.ts +2 -0
  349. package/dist/lib/evolve/_product-ideation.d.ts.map +1 -0
  350. package/dist/lib/evolve/_product-ideation.js +281 -0
  351. package/dist/lib/evolve/_product-ideation.js.map +1 -0
  352. package/dist/lib/evolve/_prompts.d.ts +2 -0
  353. package/dist/lib/evolve/_prompts.d.ts.map +1 -0
  354. package/dist/lib/evolve/_prompts.js +153 -0
  355. package/dist/lib/evolve/_prompts.js.map +1 -0
  356. package/dist/lib/evolve/cli.d.ts +2 -0
  357. package/dist/lib/evolve/cli.d.ts.map +1 -0
  358. package/dist/lib/evolve/cli.js +224 -0
  359. package/dist/lib/evolve/cli.js.map +1 -0
  360. package/dist/lib/evolve/discovery.d.ts +2 -0
  361. package/dist/lib/evolve/discovery.d.ts.map +1 -0
  362. package/dist/lib/evolve/discovery.js +391 -0
  363. package/dist/lib/evolve/discovery.js.map +1 -0
  364. package/dist/lib/evolve/index.d.ts +2 -0
  365. package/dist/lib/evolve/index.d.ts.map +1 -0
  366. package/dist/lib/evolve/index.js +88 -0
  367. package/dist/lib/evolve/index.js.map +1 -0
  368. package/dist/lib/evolve/orchestrator.d.ts +2 -0
  369. package/dist/lib/evolve/orchestrator.d.ts.map +1 -0
  370. package/dist/lib/evolve/orchestrator.js +851 -0
  371. package/dist/lib/evolve/orchestrator.js.map +1 -0
  372. package/dist/lib/evolve/scoring.d.ts +2 -0
  373. package/dist/lib/evolve/scoring.d.ts.map +1 -0
  374. package/dist/lib/evolve/scoring.js +118 -0
  375. package/dist/lib/evolve/scoring.js.map +1 -0
  376. package/dist/lib/evolve/state.d.ts +2 -0
  377. package/dist/lib/evolve/state.d.ts.map +1 -0
  378. package/dist/lib/evolve/state.js +264 -0
  379. package/dist/lib/evolve/state.js.map +1 -0
  380. package/dist/lib/evolve/types.d.ts +249 -0
  381. package/dist/lib/evolve/types.d.ts.map +1 -0
  382. package/dist/lib/evolve/types.js +3 -0
  383. package/dist/lib/evolve/types.js.map +1 -0
  384. package/dist/lib/frontmatter.d.ts +2 -0
  385. package/dist/lib/frontmatter.d.ts.map +1 -0
  386. package/dist/lib/frontmatter.js +513 -0
  387. package/dist/lib/frontmatter.js.map +1 -0
  388. package/dist/lib/gates.d.ts +2 -0
  389. package/dist/lib/gates.d.ts.map +1 -0
  390. package/dist/lib/gates.js +578 -0
  391. package/dist/lib/gates.js.map +1 -0
  392. package/dist/lib/genome.d.ts +10 -0
  393. package/dist/lib/genome.d.ts.map +1 -0
  394. package/dist/lib/genome.js +368 -0
  395. package/dist/lib/genome.js.map +1 -0
  396. package/dist/lib/got.d.ts +2 -0
  397. package/dist/lib/got.d.ts.map +1 -0
  398. package/dist/lib/got.js +280 -0
  399. package/dist/lib/got.js.map +1 -0
  400. package/dist/lib/invariants.d.ts +2 -0
  401. package/dist/lib/invariants.d.ts.map +1 -0
  402. package/dist/lib/invariants.js +298 -0
  403. package/dist/lib/invariants.js.map +1 -0
  404. package/dist/lib/knowledge.d.ts +2 -0
  405. package/dist/lib/knowledge.d.ts.map +1 -0
  406. package/dist/lib/knowledge.js +658 -0
  407. package/dist/lib/knowledge.js.map +1 -0
  408. package/dist/lib/long-term-roadmap.d.ts +2 -0
  409. package/dist/lib/long-term-roadmap.d.ts.map +1 -0
  410. package/dist/lib/long-term-roadmap.js +602 -0
  411. package/dist/lib/long-term-roadmap.js.map +1 -0
  412. package/dist/lib/markdown-split.d.ts +2 -0
  413. package/dist/lib/markdown-split.d.ts.map +1 -0
  414. package/dist/lib/markdown-split.js +199 -0
  415. package/dist/lib/markdown-split.js.map +1 -0
  416. package/dist/lib/mcp-server.d.ts +2 -0
  417. package/dist/lib/mcp-server.d.ts.map +1 -0
  418. package/dist/lib/mcp-server.js +2424 -0
  419. package/dist/lib/mcp-server.js.map +1 -0
  420. package/dist/lib/metrics.d.ts +16 -0
  421. package/dist/lib/metrics.d.ts.map +1 -0
  422. package/dist/lib/metrics.js +48 -0
  423. package/dist/lib/metrics.js.map +1 -0
  424. package/dist/lib/overstory.d.ts +2 -0
  425. package/dist/lib/overstory.d.ts.map +1 -0
  426. package/dist/lib/overstory.js +211 -0
  427. package/dist/lib/overstory.js.map +1 -0
  428. package/dist/lib/parallel.d.ts +2 -0
  429. package/dist/lib/parallel.d.ts.map +1 -0
  430. package/dist/lib/parallel.js +349 -0
  431. package/dist/lib/parallel.js.map +1 -0
  432. package/dist/lib/paths.d.ts +2 -0
  433. package/dist/lib/paths.d.ts.map +1 -0
  434. package/dist/lib/paths.js +254 -0
  435. package/dist/lib/paths.js.map +1 -0
  436. package/dist/lib/phase-complete-llm.d.ts +22 -0
  437. package/dist/lib/phase-complete-llm.d.ts.map +1 -0
  438. package/dist/lib/phase-complete-llm.js +331 -0
  439. package/dist/lib/phase-complete-llm.js.map +1 -0
  440. package/dist/lib/phase-complete.d.ts +46 -0
  441. package/dist/lib/phase-complete.d.ts.map +1 -0
  442. package/dist/lib/phase-complete.js +278 -0
  443. package/dist/lib/phase-complete.js.map +1 -0
  444. package/dist/lib/phase-io.d.ts +2 -0
  445. package/dist/lib/phase-io.d.ts.map +1 -0
  446. package/dist/lib/phase-io.js +126 -0
  447. package/dist/lib/phase-io.js.map +1 -0
  448. package/dist/lib/phase.d.ts +2 -0
  449. package/dist/lib/phase.d.ts.map +1 -0
  450. package/dist/lib/phase.js +1344 -0
  451. package/dist/lib/phase.js.map +1 -0
  452. package/dist/lib/plan-tournament.d.ts +63 -0
  453. package/dist/lib/plan-tournament.d.ts.map +1 -0
  454. package/dist/lib/plan-tournament.js +353 -0
  455. package/dist/lib/plan-tournament.js.map +1 -0
  456. package/dist/lib/refinement.d.ts +74 -0
  457. package/dist/lib/refinement.d.ts.map +1 -0
  458. package/dist/lib/refinement.js +283 -0
  459. package/dist/lib/refinement.js.map +1 -0
  460. package/dist/lib/requirements.d.ts +2 -0
  461. package/dist/lib/requirements.d.ts.map +1 -0
  462. package/dist/lib/requirements.js +355 -0
  463. package/dist/lib/requirements.js.map +1 -0
  464. package/dist/lib/research-bundle.d.ts +2 -0
  465. package/dist/lib/research-bundle.d.ts.map +1 -0
  466. package/dist/lib/research-bundle.js +246 -0
  467. package/dist/lib/research-bundle.js.map +1 -0
  468. package/dist/lib/roadmap.d.ts +2 -0
  469. package/dist/lib/roadmap.d.ts.map +1 -0
  470. package/dist/lib/roadmap.js +541 -0
  471. package/dist/lib/roadmap.js.map +1 -0
  472. package/dist/lib/sample.d.ts +16 -0
  473. package/dist/lib/sample.d.ts.map +1 -0
  474. package/dist/lib/sample.js +20 -0
  475. package/dist/lib/sample.js.map +1 -0
  476. package/dist/lib/scaffold.d.ts +2 -0
  477. package/dist/lib/scaffold.d.ts.map +1 -0
  478. package/dist/lib/scaffold.js +355 -0
  479. package/dist/lib/scaffold.js.map +1 -0
  480. package/dist/lib/scan/_utils.d.ts +11 -0
  481. package/dist/lib/scan/_utils.d.ts.map +1 -0
  482. package/dist/lib/scan/_utils.js +36 -0
  483. package/dist/lib/scan/_utils.js.map +1 -0
  484. package/dist/lib/scan/base64.d.ts +15 -0
  485. package/dist/lib/scan/base64.d.ts.map +1 -0
  486. package/dist/lib/scan/base64.js +66 -0
  487. package/dist/lib/scan/base64.js.map +1 -0
  488. package/dist/lib/scan/ignorefile.d.ts +30 -0
  489. package/dist/lib/scan/ignorefile.d.ts.map +1 -0
  490. package/dist/lib/scan/ignorefile.js +101 -0
  491. package/dist/lib/scan/ignorefile.js.map +1 -0
  492. package/dist/lib/scan/injection.d.ts +14 -0
  493. package/dist/lib/scan/injection.d.ts.map +1 -0
  494. package/dist/lib/scan/injection.js +39 -0
  495. package/dist/lib/scan/injection.js.map +1 -0
  496. package/dist/lib/scan/patterns.d.ts +17 -0
  497. package/dist/lib/scan/patterns.d.ts.map +1 -0
  498. package/dist/lib/scan/patterns.js +123 -0
  499. package/dist/lib/scan/patterns.js.map +1 -0
  500. package/dist/lib/scan/strip-markdown.d.ts +7 -0
  501. package/dist/lib/scan/strip-markdown.d.ts.map +1 -0
  502. package/dist/lib/scan/strip-markdown.js +38 -0
  503. package/dist/lib/scan/strip-markdown.js.map +1 -0
  504. package/dist/lib/scan/types.d.ts +23 -0
  505. package/dist/lib/scan/types.d.ts.map +1 -0
  506. package/dist/lib/scan/types.js +3 -0
  507. package/dist/lib/scan/types.js.map +1 -0
  508. package/dist/lib/scheduler-wait.d.ts +2 -0
  509. package/dist/lib/scheduler-wait.d.ts.map +1 -0
  510. package/dist/lib/scheduler-wait.js +59 -0
  511. package/dist/lib/scheduler-wait.js.map +1 -0
  512. package/dist/lib/scheduler.d.ts +254 -0
  513. package/dist/lib/scheduler.d.ts.map +1 -0
  514. package/dist/lib/scheduler.js +1147 -0
  515. package/dist/lib/scheduler.js.map +1 -0
  516. package/dist/lib/state.d.ts +2 -0
  517. package/dist/lib/state.d.ts.map +1 -0
  518. package/dist/lib/state.js +744 -0
  519. package/dist/lib/state.js.map +1 -0
  520. package/dist/lib/think.d.ts +18 -0
  521. package/dist/lib/think.d.ts.map +1 -0
  522. package/dist/lib/think.js +317 -0
  523. package/dist/lib/think.js.map +1 -0
  524. package/dist/lib/tracker.d.ts +2 -0
  525. package/dist/lib/tracker.d.ts.map +1 -0
  526. package/dist/lib/tracker.js +1121 -0
  527. package/dist/lib/tracker.js.map +1 -0
  528. package/dist/lib/types.d.ts +1514 -0
  529. package/dist/lib/types.d.ts.map +1 -0
  530. package/dist/lib/types.js +4 -0
  531. package/dist/lib/types.js.map +1 -0
  532. package/dist/lib/utils.d.ts +2 -0
  533. package/dist/lib/utils.d.ts.map +1 -0
  534. package/dist/lib/utils.js +1363 -0
  535. package/dist/lib/utils.js.map +1 -0
  536. package/dist/lib/verify.d.ts +2 -0
  537. package/dist/lib/verify.d.ts.map +1 -0
  538. package/dist/lib/verify.js +1153 -0
  539. package/dist/lib/verify.js.map +1 -0
  540. package/dist/lib/wireup/autofix.d.ts +2 -0
  541. package/dist/lib/wireup/autofix.d.ts.map +1 -0
  542. package/dist/lib/wireup/autofix.js +188 -0
  543. package/dist/lib/wireup/autofix.js.map +1 -0
  544. package/dist/lib/wireup/cli.d.ts +2 -0
  545. package/dist/lib/wireup/cli.d.ts.map +1 -0
  546. package/dist/lib/wireup/cli.js +194 -0
  547. package/dist/lib/wireup/cli.js.map +1 -0
  548. package/dist/lib/wireup/detection.d.ts +47 -0
  549. package/dist/lib/wireup/detection.d.ts.map +1 -0
  550. package/dist/lib/wireup/detection.js +410 -0
  551. package/dist/lib/wireup/detection.js.map +1 -0
  552. package/dist/lib/wireup/discovery.d.ts +2 -0
  553. package/dist/lib/wireup/discovery.d.ts.map +1 -0
  554. package/dist/lib/wireup/discovery.js +934 -0
  555. package/dist/lib/wireup/discovery.js.map +1 -0
  556. package/dist/lib/wireup/execution.d.ts +2 -0
  557. package/dist/lib/wireup/execution.d.ts.map +1 -0
  558. package/dist/lib/wireup/execution.js +573 -0
  559. package/dist/lib/wireup/execution.js.map +1 -0
  560. package/dist/lib/wireup/index.d.ts +2 -0
  561. package/dist/lib/wireup/index.d.ts.map +1 -0
  562. package/dist/lib/wireup/index.js +85 -0
  563. package/dist/lib/wireup/index.js.map +1 -0
  564. package/dist/lib/wireup/orchestrator.d.ts +2 -0
  565. package/dist/lib/wireup/orchestrator.d.ts.map +1 -0
  566. package/dist/lib/wireup/orchestrator.js +366 -0
  567. package/dist/lib/wireup/orchestrator.js.map +1 -0
  568. package/dist/lib/wireup/report.d.ts +47 -0
  569. package/dist/lib/wireup/report.d.ts.map +1 -0
  570. package/dist/lib/wireup/report.js +201 -0
  571. package/dist/lib/wireup/report.js.map +1 -0
  572. package/dist/lib/wireup/scenarios.d.ts +2 -0
  573. package/dist/lib/wireup/scenarios.d.ts.map +1 -0
  574. package/dist/lib/wireup/scenarios.js +516 -0
  575. package/dist/lib/wireup/scenarios.js.map +1 -0
  576. package/dist/lib/wireup/state.d.ts +2 -0
  577. package/dist/lib/wireup/state.d.ts.map +1 -0
  578. package/dist/lib/wireup/state.js +102 -0
  579. package/dist/lib/wireup/state.js.map +1 -0
  580. package/dist/lib/wireup/types.d.ts +376 -0
  581. package/dist/lib/wireup/types.d.ts.map +1 -0
  582. package/dist/lib/wireup/types.js +3 -0
  583. package/dist/lib/wireup/types.js.map +1 -0
  584. package/dist/lib/worktree.d.ts +2 -0
  585. package/dist/lib/worktree.d.ts.map +1 -0
  586. package/dist/lib/worktree.js +999 -0
  587. package/dist/lib/worktree.js.map +1 -0
  588. package/lib/autopilot-milestone.ts +136 -0
  589. package/lib/autopilot-pipeline.ts +1179 -0
  590. package/lib/autopilot-waves.ts +361 -0
  591. package/lib/autopilot.ts +1874 -0
  592. package/lib/autoplan.ts +280 -0
  593. package/lib/autoresearch.js +4 -0
  594. package/lib/autoresearch.ts +886 -0
  595. package/lib/backend.ts +1252 -0
  596. package/lib/benchmark.ts +341 -0
  597. package/lib/citations.ts +760 -0
  598. package/lib/cleanup.ts +1588 -0
  599. package/lib/cli/adapters.ts +41 -0
  600. package/lib/cli/agent.ts +83 -0
  601. package/lib/cli/index.ts +273 -0
  602. package/lib/cli/output.ts +33 -0
  603. package/lib/cli/scan-dispatch.ts +130 -0
  604. package/lib/cli/tools.ts +198 -0
  605. package/lib/commands/_dashboard-parsers.ts +275 -0
  606. package/lib/commands/analysis.ts +1851 -0
  607. package/lib/commands/assumptions.ts +232 -0
  608. package/lib/commands/blame.ts +174 -0
  609. package/lib/commands/budget.ts +148 -0
  610. package/lib/commands/check-plans.ts +233 -0
  611. package/lib/commands/config.ts +287 -0
  612. package/lib/commands/dashboard.ts +680 -0
  613. package/lib/commands/estimate.ts +204 -0
  614. package/lib/commands/eval-diff.ts +252 -0
  615. package/lib/commands/freshness.ts +213 -0
  616. package/lib/commands/health.ts +607 -0
  617. package/lib/commands/index.ts +266 -0
  618. package/lib/commands/install.ts +307 -0
  619. package/lib/commands/knowhow-aggregator.ts +345 -0
  620. package/lib/commands/knowledge-search.ts +153 -0
  621. package/lib/commands/long-term-roadmap.ts +390 -0
  622. package/lib/commands/patterns.ts +465 -0
  623. package/lib/commands/phase-info.ts +698 -0
  624. package/lib/commands/plan-lint.ts +546 -0
  625. package/lib/commands/plan-phase.ts +375 -0
  626. package/lib/commands/progress.ts +319 -0
  627. package/lib/commands/quality.ts +138 -0
  628. package/lib/commands/rollback.ts +195 -0
  629. package/lib/commands/scan.ts +72 -0
  630. package/lib/commands/search.ts +300 -0
  631. package/lib/commands/select-candidate.ts +687 -0
  632. package/lib/commands/singularity.ts +222 -0
  633. package/lib/commands/slug-timestamp.ts +74 -0
  634. package/lib/commands/tail.ts +129 -0
  635. package/lib/commands/todo.ts +273 -0
  636. package/lib/commands/watch.ts +80 -0
  637. package/lib/complexity.ts +117 -0
  638. package/lib/context/agents.ts +505 -0
  639. package/lib/context/base.ts +123 -0
  640. package/lib/context/execute.ts +977 -0
  641. package/lib/context/index.ts +110 -0
  642. package/lib/context/progress.ts +278 -0
  643. package/lib/context/project.ts +531 -0
  644. package/lib/context/research.ts +646 -0
  645. package/lib/dead-ends.ts +506 -0
  646. package/lib/deps.ts +773 -0
  647. package/lib/discussion.ts +1275 -0
  648. package/lib/drift.ts +519 -0
  649. package/lib/evolve/_dimensions-features.ts +525 -0
  650. package/lib/evolve/_dimensions.ts +511 -0
  651. package/lib/evolve/_product-ideation.ts +405 -0
  652. package/lib/evolve/_prompts.ts +178 -0
  653. package/lib/evolve/cli.ts +330 -0
  654. package/lib/evolve/discovery.ts +571 -0
  655. package/lib/evolve/index.ts +105 -0
  656. package/lib/evolve/orchestrator.ts +1139 -0
  657. package/lib/evolve/scoring.ts +167 -0
  658. package/lib/evolve/state.ts +330 -0
  659. package/lib/evolve/types.ts +290 -0
  660. package/lib/frontmatter.ts +615 -0
  661. package/lib/gates.ts +695 -0
  662. package/lib/genome.ts +402 -0
  663. package/lib/got.js +4 -0
  664. package/lib/got.ts +361 -0
  665. package/lib/invariants.ts +378 -0
  666. package/lib/knowledge.ts +768 -0
  667. package/lib/long-term-roadmap.ts +806 -0
  668. package/lib/markdown-split.ts +273 -0
  669. package/lib/mcp-server.ts +3292 -0
  670. package/lib/metrics.ts +49 -0
  671. package/lib/overstory.ts +270 -0
  672. package/lib/parallel.ts +570 -0
  673. package/lib/paths.ts +293 -0
  674. package/lib/phase-complete-llm.ts +376 -0
  675. package/lib/phase-complete.ts +366 -0
  676. package/lib/phase-io.ts +101 -0
  677. package/lib/phase.ts +1981 -0
  678. package/lib/plan-tournament.ts +426 -0
  679. package/lib/refinement.ts +349 -0
  680. package/lib/requirements.ts +469 -0
  681. package/lib/research-bundle.ts +300 -0
  682. package/lib/roadmap.ts +775 -0
  683. package/lib/scaffold.ts +480 -0
  684. package/lib/scan/_utils.ts +37 -0
  685. package/lib/scan/base64.ts +90 -0
  686. package/lib/scan/ignorefile.ts +109 -0
  687. package/lib/scan/injection.ts +67 -0
  688. package/lib/scan/patterns.ts +139 -0
  689. package/lib/scan/strip-markdown.ts +39 -0
  690. package/lib/scan/types.ts +28 -0
  691. package/lib/scheduler-wait.ts +58 -0
  692. package/lib/scheduler.ts +1370 -0
  693. package/lib/state.ts +1000 -0
  694. package/lib/think.ts +365 -0
  695. package/lib/tracker.ts +1591 -0
  696. package/lib/types.ts +1663 -0
  697. package/lib/utils.ts +1479 -0
  698. package/lib/verify.ts +1434 -0
  699. package/lib/wireup/autofix.ts +241 -0
  700. package/lib/wireup/cli.ts +278 -0
  701. package/lib/wireup/detection.ts +542 -0
  702. package/lib/wireup/discovery.ts +1063 -0
  703. package/lib/wireup/execution.ts +686 -0
  704. package/lib/wireup/index.ts +117 -0
  705. package/lib/wireup/orchestrator.ts +519 -0
  706. package/lib/wireup/report.ts +286 -0
  707. package/lib/wireup/scenarios.ts +616 -0
  708. package/lib/wireup/state.ts +139 -0
  709. package/lib/wireup/types.ts +436 -0
  710. package/lib/worktree.ts +1309 -0
  711. package/package.json +67 -0
@@ -0,0 +1,655 @@
1
+ ---
2
+ description: Create executable phase plans with research, verification, and eval planning. Use --research-only or --eval-only for focused modes.
3
+ argument-hint: <phase number> [--research-only | --eval-only]
4
+ ---
5
+
6
+ <purpose>
7
+ Create executable phase prompts (PLAN.md files) for a roadmap phase with integrated research, verification, and eval planning. Default flow: Research (if needed) -> Plan -> Verify -> Eval Plan -> Done. Orchestrates grd-phase-researcher, grd-planner, grd-plan-checker, and grd-eval-planner agents with a revision loop (max 3 iterations). Loads research landscape context before planning.
8
+
9
+ Supports focused modes via flags:
10
+ - `--research-only` — Run only the researcher agent (replaces standalone `/grd:research-phase`)
11
+ - `--eval-only` — Run only the eval planner agent (replaces standalone `/grd:eval-plan`)
12
+ </purpose>
13
+
14
+ <modes>
15
+
16
+ ## Focused Modes
17
+
18
+ ### `--research-only`
19
+
20
+ Run only the phase researcher agent. Skips planner, plan-checker, and eval-planner entirely.
21
+ Produces `{NN}-RESEARCH.md` in the phase directory. Equivalent to the former `/grd:research-phase` command.
22
+
23
+ After completion, offers: Plan phase / Dig deeper / Review research / Done.
24
+
25
+ ### `--eval-only`
26
+
27
+ Run only the eval planner agent. Skips researcher, planner, and plan-checker entirely.
28
+ Produces `{NN}-EVAL.md` in the phase directory. Equivalent to the former `/grd:eval-plan` command.
29
+ Requires that PLAN.md files already exist for the phase (so the eval planner has context).
30
+
31
+ After completion, offers: Execute phase / Review eval plan / Done.
32
+
33
+ ### Default (no flag)
34
+
35
+ Full orchestrated flow: Research -> Plan -> Verify -> Eval Plan -> Done.
36
+
37
+ </modes>
38
+
39
+ <required_reading>
40
+ Read all files referenced by the invoking prompt's execution_context before starting.
41
+
42
+ @${CLAUDE_PLUGIN_ROOT}/references/ui-brand.md
43
+ </required_reading>
44
+
45
+ <process>
46
+
47
+ ## 1. Initialize
48
+
49
+ Load all context in one call (include file contents to avoid redundant reads):
50
+
51
+ ```bash
52
+ INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init plan-phase "$PHASE" --include state,roadmap,requirements,context,research,verification,uat)
53
+ ```
54
+
55
+ Parse JSON for: `researcher_model`, `planner_model`, `checker_model`, `research_enabled`, `plan_checker_enabled`, `commit_docs`, `phase_found`, `phase_dir`, `phase_number`, `phase_name`, `phase_slug`, `padded_phase`, `has_research`, `has_context`, `has_plans`, `plan_count`, `planning_exists`, `roadmap_exists`, `autonomous_mode`, `research_dir`, `phases_dir`, `codebase_dir`.
56
+
57
+ **File contents (from --include):** `state_content`, `roadmap_content`, `requirements_content`, `context_content`, `research_content`, `verification_content`, `uat_content`. These are null if files don't exist.
58
+
59
+ **If `planning_exists` is false:** Error — run `/grd:init` first.
60
+
61
+ ## 1.5. Load Research Landscape Context
62
+
63
+ **Before any planning, load research context from `${research_dir}/`:**
64
+
65
+ ```bash
66
+ LANDSCAPE=$(cat ${research_dir}/LANDSCAPE.md 2>/dev/null)
67
+ KNOWHOW=$(cat ${research_dir}/KNOWHOW.md 2>/dev/null)
68
+ BENCHMARKS=$(cat ${research_dir}/BENCHMARKS.md 2>/dev/null)
69
+ ```
70
+
71
+ Also check for relevant deep-dive files:
72
+ ```bash
73
+ ls ${research_dir}/deep-dives/*.md 2>/dev/null
74
+ ```
75
+
76
+ Store as `research_landscape_context` — this will be passed to the planner agent.
77
+
78
+ ## 2. Parse and Normalize Arguments
79
+
80
+ Extract from $ARGUMENTS: phase number (integer or decimal like `2.1`), flags (`--research`, `--skip-research`, `--gaps`, `--skip-verify`, `--research-only`, `--eval-only`, `--candidates N`).
81
+
82
+ **v0.4 multi-candidate mode (`--candidates N`, N > 1):** When the caller passes `--candidates N` with N > 1, the planner agent MUST emit N alternative plans for the phase. Each alternative goes between marker fences and is captured by `gd plan-candidates <phase> --candidates N`. See the `<multi_candidate>` block below — it activates ONLY when N > 1 and is otherwise silent (N === 1 is the v0.3.x default and keeps writing a single bare `PLAN.md` via the Write tool).
83
+
84
+ <multi_candidate>
85
+ **Active only when `--candidates N` is set with N > 1.**
86
+
87
+ You are producing {N} ALTERNATIVE plans for this phase. They must:
88
+
89
+ - Differ in **approach**, not just in wording. Choose meaningfully distinct strategies — e.g. one might emphasize adding new modules, another refactoring existing modules, another delegating to existing helpers.
90
+ - All satisfy the same `must_haves` (REQUIREMENTS.md).
91
+ - Each include their own `<reflection>` block; the `hypothesis` MUST differ across candidates (this is what `gd plan-lint` and Phase 3's deterministic selector will compare).
92
+ - Be emitted as marker-fenced text blocks, NOT written to disk via the Write tool. Do NOT call Write for `PLAN-i.md` files — the orchestrator runs `gd plan-candidates <phase> --candidates {N}` against your stdout and writes the files itself, with fail-closed count validation.
93
+
94
+ **Output format (REQUIRED — no other content between markers):**
95
+
96
+ ```
97
+ <<<PLAN-1>>>
98
+ <full PLAN.md content for candidate 1: YAML frontmatter + body + tasks + reflection>
99
+ <<</PLAN-1>>>
100
+ <<<PLAN-2>>>
101
+ <full PLAN.md content for candidate 2>
102
+ <<</PLAN-2>>>
103
+ ... (repeat for each candidate up to N) ...
104
+ ```
105
+
106
+ Do NOT nest markers. Do NOT skip indices. Do NOT emit a bare `PLAN.md`. The orchestrator will fail closed (no files written, non-zero exit) if the count is wrong, the indices don't cover 1..N exactly, or any block is malformed. Use `--allow-partial-candidates` only on retry after explicit confirmation.
107
+ </multi_candidate>
108
+
109
+ **Focused mode routing:**
110
+ - If `--research-only`: After initialization (steps 1-4), jump to step 5 (Handle Research, forced). After researcher returns, skip to step 14 (Present Final Status) with research-only summary. Do NOT run planner, checker, or eval-planner.
111
+ - If `--eval-only`: After initialization (steps 1-4), skip research/planner/checker and jump directly to step 13 (Eval Planning Step). After eval-planner returns, skip to step 14 (Present Final Status) with eval-only summary. Requires PLAN.md files to exist (error if missing).
112
+
113
+ **If no phase number:** Detect next unplanned phase from roadmap.
114
+
115
+ **If `phase_found` is false:** Validate phase exists in ROADMAP.md. If valid, create the directory using `phase_slug` and `padded_phase` from init:
116
+ ```bash
117
+ mkdir -p "${phases_dir}/${padded_phase}-${phase_slug}"
118
+ ```
119
+
120
+ **Existing artifacts from init:** `has_research`, `has_plans`, `plan_count`.
121
+
122
+ ## 3. Validate Phase
123
+
124
+ ```bash
125
+ PHASE_INFO=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js roadmap get-phase "${PHASE}")
126
+ ```
127
+
128
+ **If `found` is false:** Error with available phases. **If `found` is true:** Extract `phase_number`, `phase_name`, `goal` from JSON.
129
+
130
+ ## 4. Load CONTEXT.md
131
+
132
+ Use `context_content` from init JSON (already loaded via `--include context`).
133
+
134
+ **CRITICAL:** Use `context_content` from INIT — pass to researcher, planner, checker, and revision agents.
135
+
136
+ If `context_content` is not null, display: `Using phase context from: ${PHASE_DIR}/*-CONTEXT.md`
137
+
138
+ ## 5. Handle Research
139
+
140
+ **Skip if:** `--gaps` flag, `--skip-research` flag, or `research_enabled` is false (from init) without `--research` override.
141
+
142
+ **If `has_research` is true (from init) AND no `--research` flag:** Use existing, skip to step 6.
143
+
144
+ **If RESEARCH.md missing OR `--research` flag:**
145
+
146
+ Display banner:
147
+ ```
148
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
149
+ GRD ► RESEARCHING PHASE {X}
150
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
151
+
152
+ * Spawning researcher...
153
+ ```
154
+
155
+ ### Spawn grd-phase-researcher
156
+
157
+ ```bash
158
+ PHASE_DESC=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js roadmap get-phase "${PHASE}" | jq -r '.section')
159
+ REQUIREMENTS=$(echo "$INIT" | jq -r '.requirements_content // empty' | grep -A100 "## Requirements" | head -50)
160
+ STATE_SNAP=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js state-snapshot)
161
+ ```
162
+
163
+ Research prompt:
164
+
165
+ ```markdown
166
+ PATHS:
167
+ research_dir: ${research_dir}
168
+ phases_dir: ${phases_dir}
169
+ phase_dir: ${phase_dir}
170
+ codebase_dir: ${codebase_dir}
171
+
172
+ <objective>
173
+ Research how to implement Phase {phase_number}: {phase_name}
174
+ Answer: "What do I need to know to PLAN this phase well?"
175
+ </objective>
176
+
177
+ <phase_context>
178
+ IMPORTANT: If CONTEXT.md exists below, it contains user decisions from /grd:discuss-phase.
179
+ - **Decisions** = Locked — research THESE deeply, no alternatives
180
+ - **Claude's Discretion** = Freedom areas — research options, recommend
181
+ - **Deferred Ideas** = Out of scope — ignore
182
+
183
+ {context_content}
184
+ </phase_context>
185
+
186
+ <research_landscape>
187
+ {research_landscape_context}
188
+ </research_landscape>
189
+
190
+ <additional_context>
191
+ **Phase description:** {phase_description}
192
+ **Requirements:** {requirements}
193
+ **Prior decisions:** {decisions}
194
+ </additional_context>
195
+
196
+ <output>
197
+ Write to: {phase_dir}/{phase}-RESEARCH.md
198
+ </output>
199
+ ```
200
+
201
+ ```
202
+ Task(
203
+ prompt="First, read ${CLAUDE_PLUGIN_ROOT}/agents/grd-phase-researcher.md for your role and instructions.\n\n" + research_prompt,
204
+ subagent_type="general-purpose",
205
+ model="{researcher_model}",
206
+ description="Research Phase {phase}"
207
+ )
208
+ ```
209
+
210
+ ### Handle Researcher Return
211
+
212
+ - **`## RESEARCH COMPLETE`:** Display confirmation. **If `--research-only`:** skip to step 14 with research-only summary (offer: Plan phase / Dig deeper / Review / Done). **Otherwise:** continue to step 6.
213
+ - **`## RESEARCH BLOCKED`:** Display blocker, offer: 1) Provide context, 2) Skip research, 3) Abort
214
+
215
+ ## 6. Check Existing Plans
216
+
217
+ ```bash
218
+ ls "${PHASE_DIR}"/*-PLAN.md 2>/dev/null
219
+ ```
220
+
221
+ **If exists:** Offer: 1) Add more plans, 2) View existing, 3) Replan from scratch.
222
+
223
+ ## 7. Use Context Files from INIT
224
+
225
+ All file contents are already loaded via `--include` in step 1 (`@` syntax doesn't work across Task() boundaries):
226
+
227
+ ```bash
228
+ STATE_CONTENT=$(echo "$INIT" | jq -r '.state_content // empty')
229
+ ROADMAP_CONTENT=$(echo "$INIT" | jq -r '.roadmap_content // empty')
230
+ REQUIREMENTS_CONTENT=$(echo "$INIT" | jq -r '.requirements_content // empty')
231
+ RESEARCH_CONTENT=$(echo "$INIT" | jq -r '.research_content // empty')
232
+ VERIFICATION_CONTENT=$(echo "$INIT" | jq -r '.verification_content // empty')
233
+ UAT_CONTENT=$(echo "$INIT" | jq -r '.uat_content // empty')
234
+ CONTEXT_CONTENT=$(echo "$INIT" | jq -r '.context_content // empty')
235
+ # Ouroboros context (codex r44 P1 #2-4): the planner agent's <dead-ends>,
236
+ # <genome>, and prior_reflections blocks document these inputs, but the
237
+ # orchestrator must extract them from INIT and inject them into the
238
+ # planner prompt — otherwise the planner never sees them.
239
+ DEAD_ENDS_MD=$(echo "$INIT" | jq -r '.dead_ends_md // empty')
240
+ GENOME_MD=$(echo "$INIT" | jq -r '.genome_md // empty')
241
+ PRIOR_REFLECTIONS=$(echo "$INIT" | jq -r '.prior_reflections // empty')
242
+ ```
243
+
244
+ ## 8. Spawn grd-planner Agent
245
+
246
+ Display banner:
247
+ ```
248
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
249
+ GRD ► PLANNING PHASE {X}
250
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
251
+
252
+ * Spawning planner...
253
+ ```
254
+
255
+ Planner prompt:
256
+
257
+ ```markdown
258
+ PATHS:
259
+ research_dir: ${research_dir}
260
+ phases_dir: ${phases_dir}
261
+ phase_dir: ${phase_dir}
262
+ codebase_dir: ${codebase_dir}
263
+
264
+ <planning_context>
265
+ **Phase:** {phase_number}
266
+ **Mode:** {standard | gap_closure}
267
+
268
+ **Project State:** {state_content}
269
+ **Roadmap:** {roadmap_content}
270
+ **Requirements:** {requirements_content}
271
+
272
+ **Phase Context:**
273
+ IMPORTANT: If context exists below, it contains USER DECISIONS from /grd:discuss-phase.
274
+ - **Decisions** = LOCKED — honor exactly, do not revisit
275
+ - **Claude's Discretion** = Freedom — make implementation choices
276
+ - **Deferred Ideas** = Out of scope — do NOT include
277
+
278
+ {context_content}
279
+
280
+ **Research:** {research_content}
281
+
282
+ **Research Landscape:**
283
+ {research_landscape_context}
284
+
285
+ **Prior Reflections (from completed phases):**
286
+ {prior_reflections}
287
+ NOTE: If verdict is "falsified" for any pattern in your considered approach, refuse to re-propose that approach. Reference the prior phase in your plan rationale.
288
+
289
+ **Dead Ends Registry (.planning/DEAD-ENDS.md):**
290
+ {dead_ends_md}
291
+ NOTE: Each entry is an approach that has been tried and failed. Treat as hard "do-not-propose" list.
292
+
293
+ **Strategy Genome (.planning/GENOME.md):**
294
+ {genome_md}
295
+ NOTE: Curated heuristics + dated snapshots of past project state. Use heuristics to inform plan choices.
296
+
297
+ **Gap Closure (if --gaps):** {verification_content} {uat_content}
298
+ </planning_context>
299
+
300
+ <downstream_consumer>
301
+ Output consumed by /grd:execute-phase. Plans need:
302
+ - Frontmatter (wave, depends_on, files_modified, autonomous)
303
+ - Tasks in XML format
304
+ - Verification criteria
305
+ - must_haves for goal-backward verification
306
+ </downstream_consumer>
307
+
308
+ <quality_gate>
309
+ - [ ] PLAN.md files created in phase directory
310
+ - [ ] Each plan has valid frontmatter
311
+ - [ ] Tasks are specific and actionable
312
+ - [ ] Dependencies correctly identified
313
+ - [ ] Waves assigned for parallel execution
314
+ - [ ] must_haves derived from phase goal
315
+ </quality_gate>
316
+ ```
317
+
318
+ ```
319
+ Task(
320
+ prompt="First, read ${CLAUDE_PLUGIN_ROOT}/agents/grd-planner.md for your role and instructions.\n\n" + filled_prompt,
321
+ subagent_type="general-purpose",
322
+ model="{planner_model}",
323
+ description="Plan Phase {phase}"
324
+ )
325
+ ```
326
+
327
+ ## 9. Handle Planner Return
328
+
329
+ - **`## PLANNING COMPLETE`:** Display plan count. If `--skip-verify` or `plan_checker_enabled` is false (from init): skip to step 13. Otherwise: step 10.
330
+ - **`## CHECKPOINT REACHED`:** Present to user, get response, spawn continuation (step 12)
331
+ - **`## PLANNING INCONCLUSIVE`:** Show attempts, offer: Add context / Retry / Manual
332
+
333
+ ## 10. Spawn grd-plan-checker Agent
334
+
335
+ Display banner:
336
+ ```
337
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
338
+ GRD ► VERIFYING PLANS
339
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
340
+
341
+ * Spawning plan checker...
342
+ ```
343
+
344
+ ```bash
345
+ PLANS_CONTENT=$(cat "${PHASE_DIR}"/*-PLAN.md 2>/dev/null)
346
+ ```
347
+
348
+ Checker prompt:
349
+
350
+ ```markdown
351
+ <verification_context>
352
+ **Phase:** {phase_number}
353
+ **Phase Goal:** {goal from ROADMAP}
354
+
355
+ **Plans to verify:** {plans_content}
356
+ **Requirements:** {requirements_content}
357
+
358
+ **Phase Context:**
359
+ IMPORTANT: Plans MUST honor user decisions. Flag as issue if plans contradict.
360
+ - **Decisions** = LOCKED — plans must implement exactly
361
+ - **Claude's Discretion** = Freedom areas — plans can choose approach
362
+ - **Deferred Ideas** = Out of scope — plans must NOT include
363
+
364
+ {context_content}
365
+ </verification_context>
366
+
367
+ <expected_output>
368
+ - ## VERIFICATION PASSED — all checks pass
369
+ - ## ISSUES FOUND — structured issue list
370
+ </expected_output>
371
+ ```
372
+
373
+ ```
374
+ Task(
375
+ prompt=checker_prompt,
376
+ subagent_type="grd:grd-plan-checker",
377
+ model="{checker_model}",
378
+ description="Verify Phase {phase} plans"
379
+ )
380
+ ```
381
+
382
+ ## 11. Handle Checker Return
383
+
384
+ - **`## VERIFICATION PASSED`:** Display confirmation, proceed to step 13.
385
+ - **`## ISSUES FOUND`:** Display issues, check iteration count, proceed to step 12.
386
+
387
+ ## 12. Revision Loop (Max 3 Iterations)
388
+
389
+ Track `iteration_count` (starts at 1 after initial plan + check).
390
+
391
+ **If iteration_count < 3:**
392
+
393
+ Display: `Sending back to planner for revision... (iteration {N}/3)`
394
+
395
+ ```bash
396
+ PLANS_CONTENT=$(cat "${PHASE_DIR}"/*-PLAN.md 2>/dev/null)
397
+ ```
398
+
399
+ Revision prompt:
400
+
401
+ ```markdown
402
+ <revision_context>
403
+ **Phase:** {phase_number}
404
+ **Mode:** revision
405
+
406
+ **Existing plans:** {plans_content}
407
+ **Checker issues:** {structured_issues_from_checker}
408
+
409
+ **Phase Context:**
410
+ Revisions MUST still honor user decisions.
411
+ {context_content}
412
+ </revision_context>
413
+
414
+ <instructions>
415
+ Make targeted updates to address checker issues.
416
+ Do NOT replan from scratch unless issues are fundamental.
417
+ Return what changed.
418
+ </instructions>
419
+ ```
420
+
421
+ ```
422
+ Task(
423
+ prompt="First, read ${CLAUDE_PLUGIN_ROOT}/agents/grd-planner.md for your role and instructions.\n\n" + revision_prompt,
424
+ subagent_type="general-purpose",
425
+ model="{planner_model}",
426
+ description="Revise Phase {phase} plans"
427
+ )
428
+ ```
429
+
430
+ After planner returns -> spawn checker again (step 10), increment iteration_count.
431
+
432
+ **If iteration_count >= 3:**
433
+
434
+ Display: `Max iterations reached. {N} issues remain:` + issue list
435
+
436
+ Offer: 1) Force proceed, 2) Provide guidance and retry, 3) Abandon
437
+
438
+ ## 13. Eval Planning Step
439
+
440
+ **After plan creation/verification, spawn grd-eval-planner to create EVAL.md:**
441
+
442
+ **Skip if:** `--skip-eval` flag is present (and not `--eval-only`).
443
+
444
+ **If `--eval-only`:** Validate that PLAN.md files exist for this phase. If missing, error: "No plans found for phase {X}. Run `/grd:plan-phase {X}` first." Load plan content and baseline/landscape context, then proceed to spawn the eval planner below.
445
+
446
+ Display banner:
447
+ ```
448
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
449
+ GRD ► DESIGNING EVALUATION
450
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
451
+
452
+ * Spawning eval planner...
453
+ ```
454
+
455
+ ```
456
+ Task(
457
+ prompt="
458
+ PATHS:
459
+ research_dir: ${research_dir}
460
+ phases_dir: ${phases_dir}
461
+ phase_dir: ${phase_dir}
462
+ codebase_dir: ${codebase_dir}
463
+
464
+ <eval_context>
465
+ **Phase:** {phase_number}: {phase_name}
466
+ **Phase Goal:** {goal from ROADMAP}
467
+ **Plans:** {plans summary}
468
+ **Benchmarks:** {BENCHMARKS content from research landscape}
469
+ **Requirements:** {requirements_content}
470
+ </eval_context>
471
+
472
+ <instructions>
473
+ Create EVAL.md with tiered verification plan:
474
+ 1. Tier 1 (Sanity): Quick checks that run in seconds — type checks, lint, unit tests pass
475
+ 2. Tier 2 (Proxy): Automated metrics that approximate real quality — test coverage, benchmark scores, output quality checks
476
+ 3. Tier 3 (Deferred): Validations that require human/integration — user testing, real-world performance, domain expert review
477
+
478
+ For each tier:
479
+ - Define specific metrics with pass/fail thresholds
480
+ - Specify how to measure (commands, scripts, tools)
481
+ - Set targets based on BENCHMARKS.md if available
482
+
483
+ Write to: {phase_dir}/{phase}-EVAL.md
484
+ </instructions>
485
+ ",
486
+ subagent_type="grd:grd-eval-planner",
487
+ model="{checker_model}",
488
+ description="Design evaluation for Phase {phase}"
489
+ )
490
+ ```
491
+
492
+ ## 13.5. Research Gate: Verification Design Review
493
+
494
+ **Check research_gates.verification_design from config:**
495
+
496
+ ```bash
497
+ VD_GATE=$(cat .planning/config.json 2>/dev/null | jq -r '.research_gates.verification_design // false')
498
+ ```
499
+
500
+ **If `autonomous_mode` is true (YOLO):** Skip all gates, auto-approve.
501
+
502
+ **If verification_design gate is true:**
503
+
504
+ Use AskUserQuestion:
505
+ - header: "Eval Review"
506
+ - question: "EVAL.md created for Phase {X}. Review the verification design before proceeding?"
507
+ - options:
508
+ - "Approve" — EVAL.md looks good, proceed
509
+ - "Review" — Show me the EVAL.md contents
510
+ - "Edit" — I want to adjust metrics/targets
511
+
512
+ **If "Review":** Display EVAL.md, then re-ask.
513
+ **If "Edit":** Let user provide feedback, update EVAL.md.
514
+ **If "Approve":** Continue.
515
+
516
+ **If verification_design gate is false:** Auto-approve.
517
+
518
+ ## 13.7. Tracker Integration
519
+
520
+ **After plan creation, sync phase to issue tracker (non-blocking):**
521
+
522
+ Check tracker config provider first. **For GitHub:**
523
+ ```bash
524
+ node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js tracker sync-phase "${PHASE}" --raw 2>/dev/null || true
525
+ ```
526
+
527
+ **For mcp-atlassian** (see @${CLAUDE_PLUGIN_ROOT}/references/mcp-tracker-protocol.md):
528
+ ```bash
529
+ OPS=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js tracker prepare-phase-sync "${PHASE}" --raw)
530
+ ```
531
+ For each `"create"` operation, call MCP `create_issue`, then `record-mapping`.
532
+
533
+ This creates task issues for each plan in the configured tracker (GitHub Issues or MCP Atlassian). Idempotent — already-synced plans are skipped. If no tracker is configured, this is a no-op.
534
+
535
+ ## 14. Present Final Status
536
+
537
+ Route to `<offer_next>`.
538
+
539
+ </process>
540
+
541
+ <offer_next>
542
+ Output this markdown directly (not as a code block):
543
+
544
+ **If `--research-only` mode:**
545
+
546
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
547
+ GRD ► PHASE {X} RESEARCHED
548
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
549
+
550
+ **Phase {X}: {Name}** — Research complete
551
+
552
+ ---
553
+
554
+ ## Next Up
555
+
556
+ **Plan Phase {X}** — create execution plans using this research
557
+
558
+ /grd:plan-phase {X}
559
+
560
+ ---
561
+
562
+ **Also available:**
563
+ - cat ${phase_dir}/*-RESEARCH.md — review research
564
+ - /grd:plan-phase {X} --research-only — re-research
565
+ - /grd:deep-dive \<paper\> — dig deeper into a specific paper
566
+
567
+ ---
568
+
569
+ **If `--eval-only` mode:**
570
+
571
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
572
+ GRD ► PHASE {X} EVAL PLANNED
573
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
574
+
575
+ **Phase {X}: {Name}** — Eval plan created
576
+
577
+ Tier 1 (Sanity): {N} checks
578
+ Tier 2 (Proxy): {N} metrics
579
+ Tier 3 (Deferred): {N} evaluations
580
+
581
+ ---
582
+
583
+ ## Next Up
584
+
585
+ **Execute Phase {X}** — run all plans
586
+
587
+ /grd:execute-phase {X}
588
+
589
+ ---
590
+
591
+ **Also available:**
592
+ - cat ${phase_dir}/*-EVAL.md — review eval plan
593
+ - /grd:assess-baseline — establish baseline first
594
+
595
+ ---
596
+
597
+ **If default (full) mode:**
598
+
599
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
600
+ GRD ► PHASE {X} PLANNED
601
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
602
+
603
+ **Phase {X}: {Name}** — {N} plan(s) in {M} wave(s)
604
+
605
+ | Wave | Plans | What it builds |
606
+ |------|-------|----------------|
607
+ | 1 | 01, 02 | [objectives] |
608
+ | 2 | 03 | [objective] |
609
+
610
+ Research: {Completed | Used existing | Skipped}
611
+ Verification: {Passed | Passed with override | Skipped}
612
+ Eval Plan: {Created | Skipped}
613
+
614
+ ---
615
+
616
+ ## Next Up
617
+
618
+ **Execute Phase {X}** — run all {N} plans
619
+
620
+ /grd:execute-phase {X}
621
+
622
+ <sub>/clear first -> fresh context window</sub>
623
+
624
+ ---
625
+
626
+ **Also available:**
627
+ - cat ${phase_dir}/*-PLAN.md — review plans
628
+ - cat ${phase_dir}/*-EVAL.md — review eval plan
629
+ - /grd:plan-phase {X} --research-only — re-research
630
+ - /grd:plan-phase {X} --eval-only — redesign eval plan
631
+
632
+ ---
633
+ </offer_next>
634
+
635
+ <success_criteria>
636
+ - [ ] .planning/ directory validated
637
+ - [ ] Phase validated against roadmap
638
+ - [ ] Phase directory created if needed
639
+ - [ ] Research landscape context loaded (LANDSCAPE.md, KNOWHOW.md, deep-dives)
640
+ - [ ] CONTEXT.md loaded early (step 4) and passed to ALL agents
641
+ - [ ] **Full mode:** Research completed (unless --skip-research or --gaps or exists)
642
+ - [ ] **Full mode:** grd-phase-researcher spawned with CONTEXT.md and research landscape
643
+ - [ ] **Full mode:** Existing plans checked
644
+ - [ ] **Full mode:** grd-planner spawned with CONTEXT.md + RESEARCH.md + research landscape
645
+ - [ ] **Full mode:** Plans created (PLANNING COMPLETE or CHECKPOINT handled)
646
+ - [ ] **Full mode:** grd-plan-checker spawned with CONTEXT.md
647
+ - [ ] **Full mode:** Verification passed OR user override OR max iterations with user decision
648
+ - [ ] **Full mode:** grd-eval-planner spawned to create EVAL.md with tiered verification
649
+ - [ ] **Full mode:** Research gate honored (verification_design review if enabled, skipped in YOLO mode)
650
+ - [ ] **Full mode:** GitHub issues created/updated (if gh available)
651
+ - [ ] **--research-only:** Only grd-phase-researcher spawned; planner/checker/eval-planner skipped
652
+ - [ ] **--eval-only:** Only grd-eval-planner spawned; researcher/planner/checker skipped; PLAN.md must exist
653
+ - [ ] User sees status between agent spawns
654
+ - [ ] User knows next steps
655
+ </success_criteria>