@iloom/cli 0.8.2 → 0.9.0

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 (160) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +50 -4
  3. package/dist/{BranchNamingService-AO7BPIUJ.js → BranchNamingService-K6XNWQ6C.js} +2 -2
  4. package/dist/ClaudeContextManager-X2Y72GRL.js +14 -0
  5. package/dist/ClaudeService-7P32TTES.js +13 -0
  6. package/dist/{LoomLauncher-NHZMEVTQ.js → LoomLauncher-3I47SUPV.js} +6 -6
  7. package/dist/{ProjectCapabilityDetector-IA56AUE6.js → ProjectCapabilityDetector-N5L7T4IY.js} +3 -3
  8. package/dist/PromptTemplateManager-36YLQRHP.js +11 -0
  9. package/dist/README.md +50 -4
  10. package/dist/{SettingsManager-VCVLL32H.js → SettingsManager-QR7V2IW2.js} +2 -2
  11. package/dist/agents/iloom-artifact-reviewer.md +280 -0
  12. package/dist/agents/iloom-code-reviewer.md +9 -7
  13. package/dist/agents/iloom-issue-analyze-and-plan.md +21 -6
  14. package/dist/agents/iloom-issue-analyzer.md +21 -6
  15. package/dist/agents/iloom-issue-complexity-evaluator.md +21 -6
  16. package/dist/agents/iloom-issue-enhancer.md +21 -6
  17. package/dist/agents/iloom-issue-implementer.md +21 -6
  18. package/dist/agents/iloom-issue-planner.md +21 -6
  19. package/dist/{build-Z3WCIKPD.js → build-IC4CJRMP.js} +8 -8
  20. package/dist/{chunk-TVH67KEO.js → chunk-2HZX6AMR.js} +2 -2
  21. package/dist/{chunk-VZYSM7N7.js → chunk-2JPXGGP4.js} +20 -15
  22. package/dist/chunk-2JPXGGP4.js.map +1 -0
  23. package/dist/{chunk-HSGZW3ID.js → chunk-4GAJJUYS.js} +3 -3
  24. package/dist/chunk-4GAJJUYS.js.map +1 -0
  25. package/dist/{chunk-RD7I2Q2F.js → chunk-4LKGCFGG.js} +2 -2
  26. package/dist/{chunk-SSASIBDJ.js → chunk-5LVVQGB3.js} +5 -5
  27. package/dist/{chunk-GWONJE3X.js → chunk-6Y3FTRJL.js} +189 -48
  28. package/dist/chunk-6Y3FTRJL.js.map +1 -0
  29. package/dist/{chunk-4BSXZ5YZ.js → chunk-B7U6OKUR.js} +5 -24
  30. package/dist/chunk-B7U6OKUR.js.map +1 -0
  31. package/dist/{chunk-IGKPPACU.js → chunk-FO5GGFOV.js} +17 -8
  32. package/dist/chunk-FO5GGFOV.js.map +1 -0
  33. package/dist/{chunk-GDS2HXSW.js → chunk-H6ST2TGP.js} +20 -3
  34. package/dist/chunk-H6ST2TGP.js.map +1 -0
  35. package/dist/{chunk-A7XHHUEV.js → chunk-HZXBHMVM.js} +47 -22
  36. package/dist/chunk-HZXBHMVM.js.map +1 -0
  37. package/dist/{chunk-44Y5IF7P.js → chunk-I23OQB4Y.js} +5 -5
  38. package/dist/chunk-JT5LZRMI.js +302 -0
  39. package/dist/chunk-JT5LZRMI.js.map +1 -0
  40. package/dist/{chunk-Q457PKGH.js → chunk-KAYXR544.js} +2 -2
  41. package/dist/{chunk-XU5A6BWA.js → chunk-MZPRBNYC.js} +4 -4
  42. package/dist/{chunk-XHNACIHO.js → chunk-NTTSUAVM.js} +2 -2
  43. package/dist/{chunk-PLI3JQWT.js → chunk-OAVJR4PM.js} +2 -2
  44. package/dist/{chunk-4KGRPHM6.js → chunk-PL2FDYEK.js} +2 -2
  45. package/dist/chunk-QN47QVBX.js +131 -0
  46. package/dist/chunk-QN47QVBX.js.map +1 -0
  47. package/dist/{chunk-3FC3VNEX.js → chunk-RD7OPXZK.js} +34 -8
  48. package/dist/chunk-RD7OPXZK.js.map +1 -0
  49. package/dist/{chunk-O6LECMT6.js → chunk-TGRK3CHF.js} +8 -8
  50. package/dist/{chunk-7GLZVDPQ.js → chunk-TL72BGP6.js} +2 -2
  51. package/dist/{chunk-52MVUK5V.js → chunk-USSL2X4A.js} +2 -2
  52. package/dist/chunk-USSL2X4A.js.map +1 -0
  53. package/dist/{chunk-XPKN3QWY.js → chunk-VOGGLPG5.js} +1 -2
  54. package/dist/{chunk-IWIIOFEB.js → chunk-XFEK2X2D.js} +16 -6
  55. package/dist/chunk-XFEK2X2D.js.map +1 -0
  56. package/dist/{chunk-PBSHQVCT.js → chunk-Z6F5CUS6.js} +4 -4
  57. package/dist/{claude-V4HRPR4Z.js → claude-TP2QO3BU.js} +2 -2
  58. package/dist/{cleanup-NWNKWPUY.js → cleanup-M6N7KV7E.js} +20 -15
  59. package/dist/{cleanup-NWNKWPUY.js.map → cleanup-M6N7KV7E.js.map} +1 -1
  60. package/dist/cli.js +118 -84
  61. package/dist/cli.js.map +1 -1
  62. package/dist/{commit-534QIRHY.js → commit-ORHR53KW.js} +10 -10
  63. package/dist/{compile-UANHMNTS.js → compile-EOWJORKO.js} +8 -8
  64. package/dist/{contribute-7USRBWRM.js → contribute-4KCEOHSH.js} +3 -3
  65. package/dist/{dev-server-TO7RLYJI.js → dev-server-Q6M62ATG.js} +13 -13
  66. package/dist/{feedback-7ZZI6RC5.js → feedback-XRI7SGYX.js} +11 -11
  67. package/dist/{git-GUNOPP4Q.js → git-W3XUIFTR.js} +5 -3
  68. package/dist/hooks/iloom-hook.js +5 -3
  69. package/dist/{ignite-5SIGOW5V.js → ignite-3FHQY23X.js} +90 -26
  70. package/dist/ignite-3FHQY23X.js.map +1 -0
  71. package/dist/index.d.ts +37 -2
  72. package/dist/index.js +49 -13
  73. package/dist/index.js.map +1 -1
  74. package/dist/{chunk-FPNSFP6K.js → init-ALYWKNWG.js} +42 -329
  75. package/dist/init-ALYWKNWG.js.map +1 -0
  76. package/dist/{lint-XPODLDVA.js → lint-IHUH45OC.js} +8 -8
  77. package/dist/{open-M2SUR74Y.js → open-KWOV2OFO.js} +15 -15
  78. package/dist/{plan-FB4AOJ2Q.js → plan-P6MXL7AU.js} +54 -22
  79. package/dist/plan-P6MXL7AU.js.map +1 -0
  80. package/dist/{projects-325GEEGJ.js → projects-LH362JZQ.js} +3 -3
  81. package/dist/prompts/init-prompt.txt +9 -1
  82. package/dist/prompts/issue-prompt.txt +315 -5
  83. package/dist/prompts/plan-prompt.txt +4 -6
  84. package/dist/prompts/pr-prompt.txt +79 -0
  85. package/dist/prompts/regular-prompt.txt +210 -5
  86. package/dist/{rebase-4FNRBW3H.js → rebase-AJOJOZUG.js} +9 -9
  87. package/dist/{recap-GSXFEOD6.js → recap-GKJXMDXW.js} +5 -5
  88. package/dist/{run-GZNHRJB2.js → run-QEUVZF7J.js} +15 -15
  89. package/dist/schema/settings.schema.json +9 -1
  90. package/dist/{shell-2SPM3Z5O.js → shell-DAAVG4YN.js} +5 -5
  91. package/dist/{summary-Z4F7YFXE.js → summary-WNEYCO4S.js} +11 -11
  92. package/dist/{test-LBSPYIJW.js → test-5GPWWO3P.js} +8 -8
  93. package/dist/{test-git-ZPSPA2TP.js → test-git-EJUKDB7F.js} +3 -3
  94. package/dist/{test-prefix-6DLB2BHE.js → test-prefix-23TOBUXY.js} +3 -3
  95. package/dist/{test-webserver-XLJ2TZFP.js → test-webserver-CKROHFBQ.js} +5 -5
  96. package/dist/{vscode-LH3VSQ2W.js → vscode-6TOLFCI2.js} +5 -5
  97. package/package.json +2 -2
  98. package/dist/ClaudeContextManager-RDP6CLK6.js +0 -14
  99. package/dist/ClaudeService-FKPOQRA4.js +0 -13
  100. package/dist/PRManager-A63LT3NF.js +0 -16
  101. package/dist/PromptTemplateManager-OUYDHOPI.js +0 -9
  102. package/dist/chunk-3FC3VNEX.js.map +0 -1
  103. package/dist/chunk-4BSXZ5YZ.js.map +0 -1
  104. package/dist/chunk-52MVUK5V.js.map +0 -1
  105. package/dist/chunk-66QOCD5N.js +0 -79
  106. package/dist/chunk-66QOCD5N.js.map +0 -1
  107. package/dist/chunk-A7XHHUEV.js.map +0 -1
  108. package/dist/chunk-FPNSFP6K.js.map +0 -1
  109. package/dist/chunk-GDS2HXSW.js.map +0 -1
  110. package/dist/chunk-GWONJE3X.js.map +0 -1
  111. package/dist/chunk-HSGZW3ID.js.map +0 -1
  112. package/dist/chunk-IGKPPACU.js.map +0 -1
  113. package/dist/chunk-IWIIOFEB.js.map +0 -1
  114. package/dist/chunk-VZYSM7N7.js.map +0 -1
  115. package/dist/git-GUNOPP4Q.js.map +0 -1
  116. package/dist/ignite-5SIGOW5V.js.map +0 -1
  117. package/dist/init-XXDIB2UJ.js +0 -21
  118. package/dist/init-XXDIB2UJ.js.map +0 -1
  119. package/dist/plan-FB4AOJ2Q.js.map +0 -1
  120. /package/dist/{BranchNamingService-AO7BPIUJ.js.map → BranchNamingService-K6XNWQ6C.js.map} +0 -0
  121. /package/dist/{ClaudeContextManager-RDP6CLK6.js.map → ClaudeContextManager-X2Y72GRL.js.map} +0 -0
  122. /package/dist/{ClaudeService-FKPOQRA4.js.map → ClaudeService-7P32TTES.js.map} +0 -0
  123. /package/dist/{LoomLauncher-NHZMEVTQ.js.map → LoomLauncher-3I47SUPV.js.map} +0 -0
  124. /package/dist/{PRManager-A63LT3NF.js.map → ProjectCapabilityDetector-N5L7T4IY.js.map} +0 -0
  125. /package/dist/{ProjectCapabilityDetector-IA56AUE6.js.map → PromptTemplateManager-36YLQRHP.js.map} +0 -0
  126. /package/dist/{PromptTemplateManager-OUYDHOPI.js.map → SettingsManager-QR7V2IW2.js.map} +0 -0
  127. /package/dist/{build-Z3WCIKPD.js.map → build-IC4CJRMP.js.map} +0 -0
  128. /package/dist/{chunk-TVH67KEO.js.map → chunk-2HZX6AMR.js.map} +0 -0
  129. /package/dist/{chunk-RD7I2Q2F.js.map → chunk-4LKGCFGG.js.map} +0 -0
  130. /package/dist/{chunk-SSASIBDJ.js.map → chunk-5LVVQGB3.js.map} +0 -0
  131. /package/dist/{chunk-44Y5IF7P.js.map → chunk-I23OQB4Y.js.map} +0 -0
  132. /package/dist/{chunk-Q457PKGH.js.map → chunk-KAYXR544.js.map} +0 -0
  133. /package/dist/{chunk-XU5A6BWA.js.map → chunk-MZPRBNYC.js.map} +0 -0
  134. /package/dist/{chunk-XHNACIHO.js.map → chunk-NTTSUAVM.js.map} +0 -0
  135. /package/dist/{chunk-PLI3JQWT.js.map → chunk-OAVJR4PM.js.map} +0 -0
  136. /package/dist/{chunk-4KGRPHM6.js.map → chunk-PL2FDYEK.js.map} +0 -0
  137. /package/dist/{chunk-O6LECMT6.js.map → chunk-TGRK3CHF.js.map} +0 -0
  138. /package/dist/{chunk-7GLZVDPQ.js.map → chunk-TL72BGP6.js.map} +0 -0
  139. /package/dist/{chunk-XPKN3QWY.js.map → chunk-VOGGLPG5.js.map} +0 -0
  140. /package/dist/{chunk-PBSHQVCT.js.map → chunk-Z6F5CUS6.js.map} +0 -0
  141. /package/dist/{SettingsManager-VCVLL32H.js.map → claude-TP2QO3BU.js.map} +0 -0
  142. /package/dist/{commit-534QIRHY.js.map → commit-ORHR53KW.js.map} +0 -0
  143. /package/dist/{compile-UANHMNTS.js.map → compile-EOWJORKO.js.map} +0 -0
  144. /package/dist/{contribute-7USRBWRM.js.map → contribute-4KCEOHSH.js.map} +0 -0
  145. /package/dist/{dev-server-TO7RLYJI.js.map → dev-server-Q6M62ATG.js.map} +0 -0
  146. /package/dist/{feedback-7ZZI6RC5.js.map → feedback-XRI7SGYX.js.map} +0 -0
  147. /package/dist/{claude-V4HRPR4Z.js.map → git-W3XUIFTR.js.map} +0 -0
  148. /package/dist/{lint-XPODLDVA.js.map → lint-IHUH45OC.js.map} +0 -0
  149. /package/dist/{open-M2SUR74Y.js.map → open-KWOV2OFO.js.map} +0 -0
  150. /package/dist/{projects-325GEEGJ.js.map → projects-LH362JZQ.js.map} +0 -0
  151. /package/dist/{rebase-4FNRBW3H.js.map → rebase-AJOJOZUG.js.map} +0 -0
  152. /package/dist/{recap-GSXFEOD6.js.map → recap-GKJXMDXW.js.map} +0 -0
  153. /package/dist/{run-GZNHRJB2.js.map → run-QEUVZF7J.js.map} +0 -0
  154. /package/dist/{shell-2SPM3Z5O.js.map → shell-DAAVG4YN.js.map} +0 -0
  155. /package/dist/{summary-Z4F7YFXE.js.map → summary-WNEYCO4S.js.map} +0 -0
  156. /package/dist/{test-LBSPYIJW.js.map → test-5GPWWO3P.js.map} +0 -0
  157. /package/dist/{test-git-ZPSPA2TP.js.map → test-git-EJUKDB7F.js.map} +0 -0
  158. /package/dist/{test-prefix-6DLB2BHE.js.map → test-prefix-23TOBUXY.js.map} +0 -0
  159. /package/dist/{test-webserver-XLJ2TZFP.js.map → test-webserver-CKROHFBQ.js.map} +0 -0
  160. /package/dist/{vscode-LH3VSQ2W.js.map → vscode-6TOLFCI2.js.map} +0 -0
@@ -81,6 +81,21 @@ When calling `mcp__issue_management__create_comment`:
81
81
  ```
82
82
 
83
83
  This keeps all AI workflow comments on the draft PR, not the original issue.
84
+
85
+ ### Register Draft PR as Artifact
86
+
87
+ **IMPORTANT: Before starting any workflow steps, register the draft PR as an artifact:**
88
+
89
+ Call `mcp__recap__add_artifact` to register the draft PR:
90
+ ```
91
+ {
92
+ type: "pr",
93
+ primaryUrl: "{{DRAFT_PR_URL}}",
94
+ description: "Draft PR for issue #{{ISSUE_NUMBER}}"
95
+ }
96
+ ```
97
+
98
+ This ensures the draft PR appears in the recap panel for easy access throughout the session.
84
99
  {{/if}}
85
100
  {{#if STANDARD_ISSUE_MODE}}
86
101
  ## Comment Routing: Standard Issue Mode
@@ -195,23 +210,50 @@ You are orchestrating a set of agents through a development process, with human
195
210
  **Todo List:**
196
211
  1. Scan issue and determine workflow plan
197
212
  2. Run issue enhancement for {{ISSUE_NUMBER}} (if needed) using @agent-iloom-issue-enhancer
213
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if ENHANCER_REVIEW_ENABLED}}
214
+ 2a. Run artifact review on enhancement output using @agent-iloom-artifact-reviewer
215
+ {{/if}}{{/if}}
198
216
  3. Extract issue link that includes comment id from agent output (if enhancement was needed), display to user
199
217
  4. a) If enhancement was needed, WAIT for human review of enhancement results and their approval to continue, or process their other feedback.
200
218
  b) If enhancement was NOT needed, let the user know and move to the next step.
201
219
  5. Run complexity evaluation for {{ISSUE_NUMBER}} using @agent-iloom-issue-complexity-evaluator
220
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if COMPLEXITY_REVIEW_ENABLED}}
221
+ 5a. Run artifact review on complexity evaluation output using @agent-iloom-artifact-reviewer
222
+ {{/if}}{{/if}}
202
223
  6. Extract issue link that includes comment id from agent output, display complexity assessment to user
203
224
  7. WAIT for human confirmation of complexity classification before proceeding to next phase
204
225
  8. Route to appropriate workflow based on confirmed complexity (TRIVIAL, SIMPLE, or COMPLEX)
205
226
  9. If SIMPLE: Run combined analysis and planning for {{ISSUE_NUMBER}} using @agent-iloom-issue-analyze-and-plan
227
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if ANALYZE_AND_PLAN_REVIEW_ENABLED}}
228
+ 9a. If SIMPLE: Run artifact review on combined analysis and plan output using @agent-iloom-artifact-reviewer
229
+ {{/if}}{{/if}}
206
230
  10. If COMPLEX: Run separate analysis for {{ISSUE_NUMBER}} using @agent-iloom-issue-analyzer
231
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if ANALYZER_REVIEW_ENABLED}}
232
+ 10a. If COMPLEX: Run artifact review on analysis output using @agent-iloom-artifact-reviewer
233
+ {{/if}}{{/if}}
207
234
  11. Extract issue link that includes comment id from agent output, display to user
208
235
  12. WAIT for human review and approval to continue, or process their other feedback
209
236
  13. If COMPLEX workflow: Run planning for {{ISSUE_NUMBER}} using @agent-iloom-issue-planner
237
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if PLANNER_REVIEW_ENABLED}}
238
+ 13a. If COMPLEX workflow: Run artifact review on plan output using @agent-iloom-artifact-reviewer
239
+ {{/if}}{{/if}}
210
240
  14. If COMPLEX workflow: Extract issue link that includes comment id from agent output, display to user
211
241
  15. If COMPLEX workflow: WAIT for human review of planning results and approval to continue
212
242
  16. Run issue implementation for {{ISSUE_NUMBER}} (if needed) using @agent-iloom-issue-implementer
243
+ {{#if ARTIFACT_REVIEW_ENABLED}}{{#if IMPLEMENTER_REVIEW_ENABLED}}
244
+ 16a. Run artifact review on implementation output using @agent-iloom-artifact-reviewer
245
+ {{/if}}{{/if}}
213
246
  17. Run code review using @agent-iloom-code-reviewer
247
+ {{#if DRAFT_PR_MODE}}
248
+ {{#if AUTO_COMMIT_PUSH}}
249
+ 18. Auto-commit and push changes to draft PR (STEP 5.5)
250
+ 19. Provide final summary with links to all issue comments created. Offer to help user with any other requests they have, including bug fixes or explanations. When asked to do more analyiss or coding, use subagents to achieve that work. For big requests, it's ok to repeat the above workflow to analyze, plan and implement the solution. For simple tasks, use a generalized subagent.
251
+ {{else}}
252
+ 18. Provide final summary with links to all issue comments created. Offer to help user with any other requests they have, including bug fixes or explanations. When asked to do more analyiss or coding, use subagents to achieve that work. For big requests, it's ok to repeat the above workflow to analyze, plan and implement the solution. For simple tasks, use a generalized subagent.
253
+ {{/if}}
254
+ {{else}}
214
255
  18. Provide final summary with links to all issue comments created. Offer to help user with any other requests they have, including bug fixes or explanations. When asked to do more analyiss or coding, use subagents to achieve that work. For big requests, it's ok to repeat the above workflow to analyze, plan and implement the solution. For simple tasks, use a generalized subagent.
256
+ {{/if}}
215
257
 
216
258
  ## Workflow Details
217
259
 
@@ -304,6 +346,31 @@ Only execute if workflow plan determined NEEDS_ENHANCEMENT:
304
346
  - If all user answers match agent assumptions: Proceed to next step
305
347
  - If no assumptions found: Proceed to next step
306
348
  {{/if}}
349
+ {{#if ENHANCER_REVIEW_ENABLED}}
350
+ {{#if ARTIFACT_REVIEW_ENABLED}}
351
+ 2.6. Artifact Review (Enhancement):
352
+ - The enhancer output should be reviewed before posting
353
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this ENHANCEMENT artifact for issue #{{ISSUE_NUMBER}}: [ENHANCER_OUTPUT]"
354
+ - Wait for review results
355
+ - If review suggests improvements:
356
+ {{#if ONE_SHOT_MODE}}
357
+ a. If verdict is SUGGEST_IMPROVEMENTS:
358
+ - Log: "Artifact review suggests improvements: [summary]"
359
+ - Re-invoke @agent-iloom-issue-enhancer with: "Apply these specific improvements to your existing comment (comment ID: [COMMENT_ID]): [REVIEWER_FEEDBACK]"
360
+ - After update, proceed to next step (do not re-review)
361
+ b. If verdict is RECOMMEND_REGENERATION:
362
+ - Log: "Artifact review recommends regeneration: [summary]"
363
+ - Re-run @agent-iloom-issue-enhancer from scratch with the reviewer's feedback, return to step 2
364
+ {{else}}
365
+ a. Present review findings to user
366
+ b. Use AskUserQuestion tool: "The artifact reviewer suggests improvements. How would you like to proceed?"
367
+ - Options: "Accept enhancement as-is", "Regenerate with feedback", "Manually edit"
368
+ c. If regenerate: Re-run @agent-iloom-issue-enhancer with feedback, return to step 2
369
+ d. If manually edit: Wait for user edits, then proceed
370
+ {{/if}}
371
+ - If review approves: Proceed to next step
372
+ {{/if}}
373
+ {{/if}}
307
374
  3. Mark todo #2 and #3 as completed
308
375
  4. Use AskUserQuestion tool with a single question:
309
376
  - Question: "Enhancement complete. See results at: [issue comment URL]. How would you like to proceed?"
@@ -355,6 +422,31 @@ Only execute if workflow plan determined NEEDS_COMPLEXITY_EVAL:
355
422
  - If all user answers match agent assumptions: Proceed to next step
356
423
  - If no assumptions found: Proceed to next step
357
424
  {{/if}}
425
+ {{#if COMPLEXITY_REVIEW_ENABLED}}
426
+ {{#if ARTIFACT_REVIEW_ENABLED}}
427
+ 2.6. Artifact Review (Complexity Evaluation):
428
+ - The complexity evaluator output should be reviewed before posting
429
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this COMPLEXITY EVALUATION artifact for issue #{{ISSUE_NUMBER}}: [COMPLEXITY_EVALUATOR_OUTPUT]"
430
+ - Wait for review results
431
+ - If review suggests improvements:
432
+ {{#if ONE_SHOT_MODE}}
433
+ a. If verdict is SUGGEST_IMPROVEMENTS:
434
+ - Log: "Artifact review suggests improvements: [summary]"
435
+ - Re-invoke @agent-iloom-issue-complexity-evaluator with: "Apply these specific improvements to your existing comment (comment ID: [COMMENT_ID]): [REVIEWER_FEEDBACK]"
436
+ - After update, proceed to next step (do not re-review)
437
+ b. If verdict is RECOMMEND_REGENERATION:
438
+ - Log: "Artifact review recommends regeneration: [summary]"
439
+ - Re-run @agent-iloom-issue-complexity-evaluator from scratch with the reviewer's feedback, return to step 2
440
+ {{else}}
441
+ a. Present review findings to user
442
+ b. Use AskUserQuestion tool: "The artifact reviewer suggests improvements. How would you like to proceed?"
443
+ - Options: "Accept evaluation as-is", "Regenerate with feedback", "Manually edit"
444
+ c. If regenerate: Re-run @agent-iloom-issue-complexity-evaluator with feedback, return to step 2
445
+ d. If manually edit: Wait for user edits, then proceed
446
+ {{/if}}
447
+ - If review approves: Proceed to step 3
448
+ {{/if}}
449
+ {{/if}}
358
450
  3. Extract complexity classification from evaluator output:
359
451
  - Search the evaluator's output for the "Complexity Assessment" section
360
452
  - Extract: Classification (TRIVIAL/SIMPLE/COMPLEX), Metrics (files, LOC, breaking changes, DB migrations, risk level, architectural signals), and Reasoning
@@ -424,6 +516,31 @@ Only execute if workflow plan determined NEEDS_ANALYSIS AND complexity is COMPLE
424
516
  - If all user answers match agent assumptions: Proceed to next step
425
517
  - If no assumptions found: Proceed to next step
426
518
  {{/if}}
519
+ {{#if ANALYZER_REVIEW_ENABLED}}
520
+ {{#if ARTIFACT_REVIEW_ENABLED}}
521
+ 2.6. Artifact Review (Analysis):
522
+ - The analyzer output should be reviewed before posting
523
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this ANALYSIS artifact for issue #{{ISSUE_NUMBER}}: [ANALYZER_OUTPUT]"
524
+ - Wait for review results
525
+ - If review suggests improvements:
526
+ {{#if ONE_SHOT_MODE}}
527
+ a. If verdict is SUGGEST_IMPROVEMENTS:
528
+ - Log: "Artifact review suggests improvements: [summary]"
529
+ - Re-invoke @agent-iloom-issue-analyzer with: "Apply these specific improvements to your existing comment (comment ID: [COMMENT_ID]): [REVIEWER_FEEDBACK]"
530
+ - After update, proceed to next step (do not re-review)
531
+ b. If verdict is RECOMMEND_REGENERATION:
532
+ - Log: "Artifact review recommends regeneration: [summary]"
533
+ - Re-run @agent-iloom-issue-analyzer from scratch with the reviewer's feedback, return to step 2
534
+ {{else}}
535
+ a. Present review findings to user
536
+ b. Use AskUserQuestion tool: "The artifact reviewer suggests improvements. How would you like to proceed?"
537
+ - Options: "Accept analysis as-is", "Regenerate with feedback", "Manually edit"
538
+ c. If regenerate: Re-run @agent-iloom-issue-analyzer with feedback, return to step 2
539
+ d. If manually edit: Wait for user edits, then proceed
540
+ {{/if}}
541
+ - If review approves: Proceed to step 3
542
+ {{/if}}
543
+ {{/if}}
427
544
  3. Mark todos #10, #11, and #12 as completed (todo #9 was already marked at routing decision point)
428
545
  4. Use AskUserQuestion tool with a single question:
429
546
  - Question: "Analysis complete. See findings at: [issue comment URL]. How would you like to proceed?"
@@ -504,6 +621,31 @@ Execute combined analyze-and-plan agent:
504
621
  - If all user answers match agent assumptions: Proceed to next step
505
622
  - If no assumptions found: Proceed to next step
506
623
  {{/if}}
624
+ {{#if ANALYZE_AND_PLAN_REVIEW_ENABLED}}
625
+ {{#if ARTIFACT_REVIEW_ENABLED}}
626
+ 3.6. Artifact Review (Analysis and Plan):
627
+ - The analyze-and-plan output should be reviewed before posting
628
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this ANALYSIS AND PLAN artifact for issue #{{ISSUE_NUMBER}}: [ANALYZE_AND_PLAN_OUTPUT]"
629
+ - Wait for review results
630
+ - If review suggests improvements:
631
+ {{#if ONE_SHOT_MODE}}
632
+ a. If verdict is SUGGEST_IMPROVEMENTS:
633
+ - Log: "Artifact review suggests improvements: [summary]"
634
+ - Re-invoke @agent-iloom-issue-analyze-and-plan with: "Apply these specific improvements to your existing comment (comment ID: [COMMENT_ID]): [REVIEWER_FEEDBACK]"
635
+ - After update, proceed to next step (do not re-review)
636
+ b. If verdict is RECOMMEND_REGENERATION:
637
+ - Log: "Artifact review recommends regeneration: [summary]"
638
+ - Re-run @agent-iloom-issue-analyze-and-plan from scratch with the reviewer's feedback, return to step 2
639
+ {{else}}
640
+ a. Present review findings to user
641
+ b. Use AskUserQuestion tool: "The artifact reviewer suggests improvements. How would you like to proceed?"
642
+ - Options: "Accept plan as-is", "Regenerate with feedback", "Manually edit"
643
+ c. If regenerate: Re-run @agent-iloom-issue-analyze-and-plan with feedback, return to step 2
644
+ d. If manually edit: Wait for user edits, then proceed
645
+ {{/if}}
646
+ - If review approves: Proceed to step 4
647
+ {{/if}}
648
+ {{/if}}
507
649
  4. Mark todo #9 as completed (COMPLEX todos #10-15 were already marked at routing decision point)
508
650
  5. Use AskUserQuestion tool with a single question:
509
651
  - Question: "Combined analysis and planning complete. See results at: [issue comment URL]. How would you like to proceed?"
@@ -546,6 +688,31 @@ Only execute if workflow plan determined NEEDS_PLANNING AND complexity is COMPLE
546
688
  - If all user answers match agent assumptions: Proceed to next step
547
689
  - If no assumptions found: Proceed to next step
548
690
  {{/if}}
691
+ {{#if PLANNER_REVIEW_ENABLED}}
692
+ {{#if ARTIFACT_REVIEW_ENABLED}}
693
+ 2.6. Artifact Review (Plan):
694
+ - The planner output should be reviewed before posting
695
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this PLAN artifact for issue #{{ISSUE_NUMBER}}: [PLANNER_OUTPUT]"
696
+ - Wait for review results
697
+ - If review suggests improvements:
698
+ {{#if ONE_SHOT_MODE}}
699
+ a. If verdict is SUGGEST_IMPROVEMENTS:
700
+ - Log: "Artifact review suggests improvements: [summary]"
701
+ - Re-invoke @agent-iloom-issue-planner with: "Apply these specific improvements to your existing comment (comment ID: [COMMENT_ID]): [REVIEWER_FEEDBACK]"
702
+ - After update, proceed to next step (do not re-review)
703
+ b. If verdict is RECOMMEND_REGENERATION:
704
+ - Log: "Artifact review recommends regeneration: [summary]"
705
+ - Re-run @agent-iloom-issue-planner from scratch with the reviewer's feedback, return to step 2
706
+ {{else}}
707
+ a. Present review findings to user
708
+ b. Use AskUserQuestion tool: "The artifact reviewer suggests improvements. How would you like to proceed?"
709
+ - Options: "Accept plan as-is", "Regenerate with feedback", "Manually edit"
710
+ c. If regenerate: Re-run @agent-iloom-issue-planner with feedback, return to step 2
711
+ d. If manually edit: Wait for user edits, then proceed
712
+ {{/if}}
713
+ - If review approves: Proceed to step 3
714
+ {{/if}}
715
+ {{/if}}
549
716
  3. Mark todos #13, #14, and #15 as completed (todos #9-12 were already marked at routing decision point and analysis phase)
550
717
  4. Use AskUserQuestion tool with a single question:
551
718
  - Question: "Planning complete. See implementation plan at: [issue comment URL]. How would you like to proceed?"
@@ -646,6 +813,31 @@ Only execute if workflow plan determined NEEDS_IMPLEMENTATION:
646
813
  - Call `mcp__recap__add_artifact` again with the same `primaryUrl` but updated `description` reflecting the completed state (this replaces the original "in progress" artifact)
647
814
 
648
815
  5. Mark todo #16 as completed
816
+ {{#if IMPLEMENTER_REVIEW_ENABLED}}
817
+ {{#if ARTIFACT_REVIEW_ENABLED}}
818
+ 5.5. Artifact Review (Implementation):
819
+ - The implementer output should be reviewed for plan alignment before code review
820
+ - Invoke: @agent-iloom-artifact-reviewer with context: "Review this IMPLEMENTATION artifact for issue #{{ISSUE_NUMBER}}: [IMPLEMENTER_OUTPUT]. The plan it was executing: [PLAN_CONTENT]"
821
+ - Wait for review results
822
+ - If review suggests improvements:
823
+ {{#if ONE_SHOT_MODE}}
824
+ a. If verdict is SUGGEST_IMPROVEMENTS:
825
+ - Log: "Artifact review suggests improvements: [summary]"
826
+ - Re-invoke @agent-iloom-issue-implementer with: "Apply these specific improvements to address plan gaps: [REVIEWER_FEEDBACK]"
827
+ - After update, proceed to next step (do not re-review)
828
+ b. If verdict is RECOMMEND_REGENERATION:
829
+ - Log: "Artifact review recommends regeneration: [summary]"
830
+ - Re-run @agent-iloom-issue-implementer from scratch with the reviewer's feedback
831
+ {{else}}
832
+ a. Present review findings to user
833
+ b. Use AskUserQuestion tool: "The artifact reviewer found plan alignment issues. How would you like to proceed?"
834
+ - Options: "Accept implementation as-is", "Address feedback", "Manually fix"
835
+ c. If address feedback: Re-run @agent-iloom-issue-implementer with feedback
836
+ d. If manually fix: Wait for user edits, then proceed
837
+ {{/if}}
838
+ - If review approves: Proceed to STEP 5 - Review Phase
839
+ {{/if}}
840
+ {{/if}}
649
841
  6. After implementation completes, proceed to STEP 5 - Review Phase (do NOT skip to Post-Workflow Help)
650
842
 
651
843
  If workflow plan determined SKIP_IMPLEMENTATION:
@@ -663,11 +855,11 @@ This section is about reviewing uncommitted code changes for quality, security,
663
855
 
664
856
  1. Execute: @agent-iloom-code-reviewer with prompt "Run code review." (foreground, no extra context)
665
857
  2. Wait for review completion
666
- 3. If critical issues found:
858
+ 3. If critical, high, or medium priority issues found:
667
859
  {{#if ONE_SHOT_MODE}}
668
- - Automatically implement the recommended fixes without asking
860
+ - Automatically implement the recommended fixes for critical, high, and medium priority issues without asking
669
861
  {{else}}
670
- - Ask the user: "Critical issues found. Do you want to proceed anyway, or address these first?"
862
+ - Ask the user: "Issues found. Do you want to proceed anyway, or address these first?"
671
863
  - Wait for user response before continuing
672
864
  {{/if}}
673
865
  {{/if}}
@@ -679,8 +871,8 @@ This section is about reviewing uncommitted code changes for quality, security,
679
871
  - **DO NOT** pass extra context (file lists, issue details, etc.) - the agent knows what to do
680
872
  - The reviewer will analyze uncommitted changes and report findings
681
873
 
682
- **When critical issues are found:**
683
- - Ask the user: "Critical issues found. Do you want to proceed anyway, or address these first?"
874
+ **When issues are found:**
875
+ - Ask the user: "Issues found. Do you want to proceed anyway, or address these first?"
684
876
  - Wait for user response before continuing
685
877
  {{/unless}}
686
878
 
@@ -696,9 +888,127 @@ This is NOT optional - if the reviewer requests Claude Local Review, it must be
696
888
  5. Mark todos #17 and #18 as completed
697
889
  6. Proceed to Post-Workflow Help
698
890
 
891
+ {{#if DRAFT_PR_MODE}}
892
+ {{#if AUTO_COMMIT_PUSH}}
699
893
  ---
700
894
 
895
+ ## STEP 5.5 - Auto-Commit and Push (Draft PR Mode)
896
+
897
+ **IMPORTANT**: This step executes automatically after code review completes in draft PR mode.
898
+
899
+ 1. **Check for uncommitted changes:**
900
+ ```bash
901
+ git status --porcelain
902
+ ```
903
+ - If no changes exist, skip to Post-Workflow Help
904
+ - If changes exist, proceed with commit
905
+
906
+ 2. **Check for placeholder commit on the branch:**
907
+ ```bash
908
+ git log -1 --format=%s
909
+ ```
910
+ - A commit is a **placeholder commit** ONLY if its message starts with `[iloom-placeholder]` OR `[iloom] Temporary`. This is the specific marker that iloom uses when creating placeholder commits to keep draft PRs open.
911
+ - Do NOT treat other commit messages (like "initial", "draft", "wip", etc.) as placeholders - only the exact `[iloom-placeholder]` OR `[iloom] Temporary` prefix.
912
+ - **IMPORTANT**: We must NOT remove the placeholder from remote first (that would close the PR). Instead, we fix locally then force push to atomically replace it.
913
+
914
+ 3. **If PLACEHOLDER COMMIT detected:**
915
+
916
+ a. **Reset the placeholder commit locally (keeps changes staged):**
917
+ ```bash
918
+ git reset --soft HEAD~1
919
+ ```
920
+ This undoes the placeholder commit but keeps all changes staged.
921
+
922
+ b. **Stage any additional implementation changes:**
923
+ ```bash
924
+ git add -A
925
+ ```
926
+
927
+ c. **Create the real implementation commit:**
928
+ - Generate a commit message summarizing the implementation work
929
+ - Include reference to Issue #{{ISSUE_NUMBER}}
930
+ - Format: `feat(issue-{{ISSUE_NUMBER}}): [summary of changes]`
931
+ ```bash
932
+ git commit -m "feat(issue-{{ISSUE_NUMBER}}): [generated summary]"
933
+ ```
934
+
935
+ d. **Force push to atomically replace the placeholder:**
936
+ ```bash
937
+ git push --force-with-lease {{GIT_REMOTE}} HEAD
938
+ ```
939
+ **NOTE**: `--force-with-lease` is safe here because we are replacing our own placeholder commit, not overwriting others' work. This atomically replaces the placeholder on the remote.
940
+
941
+ 4. **If NO placeholder commit detected (normal case):**
942
+
943
+ a. **Stage all changes:**
944
+ ```bash
945
+ git add -A
946
+ ```
947
+
948
+ b. **Create commit with descriptive message:**
949
+ - Generate a commit message summarizing the implementation work
950
+ - Include reference to Issue #{{ISSUE_NUMBER}}
951
+ - Format: `feat(issue-{{ISSUE_NUMBER}}): [summary of changes]`
952
+ ```bash
953
+ git commit -m "feat(issue-{{ISSUE_NUMBER}}): [generated summary]"
954
+ ```
955
+
956
+ c. **Push to remote:**
957
+ ```bash
958
+ git push {{GIT_REMOTE}} HEAD
959
+ ```
960
+ **IMPORTANT**: Do NOT use `--force` or `--force-with-lease` for normal pushes. If the push fails due to non-fast-forward (rejected), stop and notify the user - they may need to pull remote changes first.
961
+
962
+ 5. **Check for CI/CD and deployment URLs (after successful push):**
963
+
964
+ Wait a moment for GitHub to register the push, then check for available URLs:
965
+
966
+ a. **Check recent workflow runs:**
967
+ ```bash
968
+ gh run list --branch HEAD --limit 5
969
+ ```
970
+ This shows recent GitHub Actions workflow runs. Note any running or completed workflows.
971
+
972
+ b. **Check PR for deployment URLs:**
973
+ ```bash
974
+ gh pr view {{DRAFT_PR_NUMBER}} --json deployments --jq '.deployments[].url'
975
+ ```
976
+ This retrieves preview deployment URLs (e.g., Vercel, Netlify, Cloudflare Pages).
977
+
978
+ c. **Check commit statuses for additional URLs:**
979
+ ```bash
980
+ gh api repos/{owner}/{repo}/commits/HEAD/statuses --jq '.[].target_url'
981
+ ```
982
+ This retrieves status check URLs that may include build artifacts or external service links.
983
+
984
+ d. **Display available URLs to user:**
985
+ - If deployment URLs found: "Preview deployment: [URL]"
986
+ - If workflow runs found: "CI/CD workflow: [run URL]"
987
+ - If no URLs available yet: "CI/CD is likely still initializing. Check the PR page for updates: https://github.com/{owner}/{repo}/pull/{{DRAFT_PR_NUMBER}}"
988
+
989
+ 6. **Handle errors gracefully:**
990
+ - If commit fails: Log error, inform user that manual commit is needed
991
+ - If push fails: Log error, inform user that manual push is needed (changes are still committed locally)
992
+ - Do NOT retry automatically - let user handle conflicts/issues manually
993
+ - **Force push safety**: `--force-with-lease` is ONLY allowed for replacing placeholder commits on draft PRs (step 3d). Regular `--force` is still forbidden. For normal pushes (step 4c), if rejected, inform user and stop.
994
+
995
+ 7. **Notify completion:**
996
+ - Log: "Auto-commit and push complete. Changes pushed to draft PR #{{DRAFT_PR_NUMBER}}."
997
+ - Proceed to Post-Workflow Help
998
+
999
+ {{/if}}
1000
+ {{/if}}
1001
+ ---
1002
+
1003
+ {{#if DRAFT_PR_MODE}}
1004
+ {{#if AUTO_COMMIT_PUSH}}
1005
+ **MANDATORY CHECKPOINT: You MUST complete STEP 5.5 - Auto-Commit and Push before proceeding below. Do NOT skip the auto-commit/push.**
1006
+ {{else}}
701
1007
  **MANDATORY CHECKPOINT: You MUST complete STEP 5 - Review Phase before proceeding below. Do NOT skip the review.**
1008
+ {{/if}}
1009
+ {{else}}
1010
+ **MANDATORY CHECKPOINT: You MUST complete STEP 5 - Review Phase before proceeding below. Do NOT skip the review.**
1011
+ {{/if}}
702
1012
 
703
1013
  ---
704
1014
 
@@ -420,16 +420,14 @@ Use `mcp__issue_management__create_comment` to post this summary to the parent e
420
420
 
421
421
  After creating issues successfully, you MUST end with a clear next steps message.
422
422
 
423
- Identify the **first child issue** to work on - this is the child issue that:
424
- - Has no dependencies (nothing blocks it), OR
425
- - Is first in execution order if all issues have dependencies
423
+ Direct the user to **open the epic issue** - this is the parent issue that contains all the child issues you just created. The epic provides an overview of the work and shows the dependency graph, making it the best starting point for understanding and tracking the implementation.
426
424
 
427
425
  {{#if IS_VSCODE_MODE}}
428
426
  **Next Steps Message (VS Code Mode):**
429
- End your summary with: "Exit this session, then use the iloom explorer panel to create a new loom for issue [FIRST_ISSUE_NUMBER] to get started"
427
+ End your summary with: "Exit this session and open the epic at [EPIC_URL] to review the plan and child issues. When ready to begin implementation, run `il start` on your first chosen issue."
430
428
  {{else}}
431
429
  **Next Steps Message (CLI Mode):**
432
- End your summary with: "Exit this session and run `il start [FIRST_ISSUE_NUMBER]` to get started"
430
+ End your summary with: "Exit this session and open the epic at [EPIC_URL] to review the plan and child issues. When ready to begin implementation, run `il start` on your first chosen issue."
433
431
  {{/if}}
434
432
 
435
- Replace `[FIRST_ISSUE_NUMBER]` with the actual issue number (just the number, without the `#` prefix) of the first child issue to work on. For example: `il start 123` or "issue 456", not `il start #123`.
433
+ Replace `[EPIC_URL]` with the actual URL of the epic issue you created.
@@ -123,6 +123,85 @@ After handling each request, summarize what was done and confirm you're still av
123
123
 
124
124
  Use `recap.add_entry` to capture decisions, risks, insights, or assumptions discovered during help sessions. Do not log status updates or task completions.
125
125
 
126
+ {{#if ARTIFACT_REVIEW_ENABLED}}
127
+ ---
128
+
129
+ ## Artifact Review Checkpoints
130
+
131
+ When workflow agents complete their tasks and produce artifacts, check if artifact review is enabled for that agent:
132
+
133
+ {{#if ANALYZER_REVIEW_ENABLED}}
134
+ **After @agent-iloom-issue-analyzer completes:**
135
+ 1. Capture the analyzer's output before presenting to user
136
+ 2. Invoke: @agent-iloom-artifact-reviewer with context: "Review this ANALYSIS artifact for PR #{{PR_NUMBER}}: [ANALYZER_OUTPUT]"
137
+ 3. Wait for review results
138
+ 4. If review suggests improvements:
139
+ {{#if ONE_SHOT_MODE}}
140
+ a. If verdict is SUGGEST_IMPROVEMENTS:
141
+ - Log: "Artifact review suggests improvements: [summary]"
142
+ - Re-invoke @agent-iloom-issue-analyzer with: "Apply these specific improvements to your existing output: [REVIEWER_FEEDBACK]"
143
+ - After update, proceed to next step (do not re-review)
144
+ b. If verdict is RECOMMEND_REGENERATION:
145
+ - Log: "Artifact review recommends regeneration: [summary]"
146
+ - Re-run analyzer from scratch with the reviewer's feedback
147
+ {{else}}
148
+ a. Present review findings to user
149
+ b. Ask: "The artifact reviewer suggests improvements to the analysis. How would you like to proceed?"
150
+ - Options: "Accept analysis as-is", "Regenerate with feedback", "Manually edit"
151
+ c. If regenerate: Re-run analyzer with feedback
152
+ d. If manually edit: Wait for user edits, then proceed
153
+ {{/if}}
154
+ 5. If review approves: Present results to user
155
+ {{/if}}
156
+
157
+ {{#if ANALYZE_AND_PLAN_REVIEW_ENABLED}}
158
+ **After @agent-iloom-issue-analyze-and-plan completes:**
159
+ 1. Capture the agent's output before presenting to user
160
+ 2. Invoke: @agent-iloom-artifact-reviewer with context: "Review this PLAN artifact for PR #{{PR_NUMBER}}: [ANALYZE_AND_PLAN_OUTPUT]"
161
+ 3. Wait for review results
162
+ 4. If review suggests improvements:
163
+ {{#if ONE_SHOT_MODE}}
164
+ a. If verdict is SUGGEST_IMPROVEMENTS:
165
+ - Log: "Artifact review suggests improvements: [summary]"
166
+ - Re-invoke @agent-iloom-issue-analyze-and-plan with: "Apply these specific improvements to your existing output: [REVIEWER_FEEDBACK]"
167
+ - After update, proceed to next step (do not re-review)
168
+ b. If verdict is RECOMMEND_REGENERATION:
169
+ - Log: "Artifact review recommends regeneration: [summary]"
170
+ - Re-run analyze-and-plan from scratch with the reviewer's feedback
171
+ {{else}}
172
+ a. Present review findings to user
173
+ b. Ask: "The artifact reviewer suggests improvements to the plan. How would you like to proceed?"
174
+ - Options: "Accept plan as-is", "Regenerate with feedback", "Manually edit"
175
+ c. If regenerate: Re-run analyze-and-plan with feedback
176
+ d. If manually edit: Wait for user edits, then proceed
177
+ {{/if}}
178
+ 5. If review approves: Proceed to implementation
179
+ {{/if}}
180
+
181
+ {{#if IMPLEMENTER_REVIEW_ENABLED}}
182
+ **After @agent-iloom-issue-implementer completes:**
183
+ 1. Capture the implementer's summary output
184
+ 2. Invoke: @agent-iloom-artifact-reviewer with context: "Review this IMPLEMENTATION artifact for PR #{{PR_NUMBER}}: [IMPLEMENTER_OUTPUT]"
185
+ 3. Wait for review results
186
+ 4. If review suggests improvements:
187
+ {{#if ONE_SHOT_MODE}}
188
+ a. If verdict is SUGGEST_IMPROVEMENTS:
189
+ - Log: "Artifact review suggests improvements: [summary]"
190
+ - Re-invoke @agent-iloom-issue-implementer with: "Apply these specific improvements: [REVIEWER_FEEDBACK]"
191
+ - After update, proceed to next step (do not re-review)
192
+ b. If verdict is RECOMMEND_REGENERATION:
193
+ - Log: "Artifact review recommends regeneration: [summary]"
194
+ - Re-run implementer from scratch with the reviewer's feedback
195
+ {{else}}
196
+ a. Present review findings to user
197
+ b. Ask: "The artifact reviewer suggests improvements. How would you like to proceed?"
198
+ - Options: "Accept implementation as-is", "Address feedback", "Manually edit"
199
+ c. If address feedback: Re-run implementer with feedback
200
+ {{/if}}
201
+ 5. If review approves: Proceed to code review
202
+ {{/if}}
203
+ {{/if}}
204
+
126
205
  ---
127
206
 
128
207
  ## Code Review