-
Notifications
You must be signed in to change notification settings - Fork 6
refactor(workflow): delegate spec updates to subagents #38
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -59,10 +59,16 @@ You MUST follow all workflow steps below, not skipping any step and doing all st | |
| - options: Array with label and description for each option | ||
| 3. Await and collect user responses for all questions in batch | ||
| 4. Continue to next batch | ||
| c. After all batches complete, update specification file: | ||
| - Move all answered questions to `### Resolved Technical Questions` section (create if needed) | ||
| - Format: Question title + "**Answer:** [selected option with description]" | ||
| - Remove the `[STRUCTURED]` tag from resolved questions | ||
| c. After all batches complete, use specification-writer subagent to update specification: | ||
|
|
||
| ```text | ||
| State management file: $1 | ||
| Resolved questions: | ||
| - [Question title]: [Selected option with description] | ||
| - [Question title]: [Selected option with description] | ||
| ``` | ||
|
|
||
| The subagent will move answered questions to `### Resolved Technical Questions` section | ||
|
|
||
| 4. **Handle Open-Ended Questions**: | ||
| - If only OPEN-ENDED questions remain: | ||
|
|
@@ -73,9 +79,17 @@ You MUST follow all workflow steps below, not skipping any step and doing all st | |
| - Present the Implementation Plan section to the user for review | ||
| - Tell the user where to find the full specification: "You can review the full specification at: `{specification-file-path}`" | ||
|
|
||
| 6. **Get User Feedback**: | ||
| - Ask the user to read and provide feedback on the Implementation Plan | ||
| - If user has feedback: | ||
| 6. **Get User Approval**: | ||
| - Use AskUserQuestion tool with: | ||
| - question: "Do you approve this implementation plan?" | ||
| - header: "Specification" | ||
| - options: | ||
| - label: "Approve" | ||
| description: "Implementation plan is complete and accurate, proceed to implementation" | ||
| - label: "Request changes" | ||
| description: "I have feedback to provide" | ||
| - If user selects "Approve": proceed to step 7 | ||
| - If user selects "Request changes" or provides feedback via "Other": | ||
| a. Use the specification-writer subagent to revise specification: | ||
|
|
||
| ```text | ||
|
Comment on lines
93
to
95
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Here too, the flow routes a “Request changes” selection straight into a subagent call that expects Useful? React with 👍 / 👎. |
||
|
|
@@ -85,7 +99,6 @@ You MUST follow all workflow steps below, not skipping any step and doing all st | |
|
|
||
| b. The subagent will detect the feedback and revise accordingly | ||
| c. Return to step 1 for re-review | ||
| - If user provides explicit sign-off, proceed to step 7 | ||
|
|
||
| 7. **Update Workflow Progress**: | ||
| - Read the state management file ($1) | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The new approval flow jumps directly from a binary AskUserQuestion response to invoking the requirements-definer with
User feedback to address, but there is no step to actually collect the feedback text. If AskUserQuestion only returns the selected option, the subagent will be called without actionable input, so it cannot make the requested revisions. Consider adding a follow-up prompt for the feedback body when “Request changes” is selected (or explicitly documenting that AskUserQuestion returns freeform feedback).Useful? React with 👍 / 👎.