name: convert-plan-to-issues description: Use when you need to convert an implementation plan into individual, atomic GitHub issues.
Objective
Deconstruct a high-level technical implementation plan into a series of independent, atomic, and actionable GitHub issues. One large parent issue is created for the plan itself, and all individual task issues are created as native subissues (child issues) of this parent. Establish native dependencies (blocking/blocked-by relationships) between the subissues.
Step-by-Step Instructions
Locate the Plan:
- Read the target implementation plan from the
specs/plan/directory.
- Read the target implementation plan from the
Create the Parent Issue:
- Create one large parent issue to represent the implementation plan. The title should be
Plan: [Plan Name]. - The body of this parent issue should summarize the overall plan goals and link to or contain the plan document.
- Run the command to create it using the Makefile:
make create-issue TITLE="Plan: [Plan Name]" BODY_FILE="specs/plan/[plan-file].md" LABEL="epic" - Capture the issue number or URL of the created parent issue from the command output.
- Create one large parent issue to represent the implementation plan. The title should be
Deconstruct the Plan into Atomic Issues:
- Divide the plan into sequential, manageable parts. Each part must represent a single, atomic unit of work that can be implemented and tested independently.
- For each issue, write a clear title and draft the body following atomic_issue.md.
Define Relationships:
- Identify parent/child and sequence dependencies:
- Parent/Child: All task issues must have the plan's parent issue as their native parent.
- Subissue Dependencies: Identify which subissues block or are blocked by other subissues (e.g., Subissue B cannot start until Subissue A is done).
- Capture the issue numbers of previously created subissues to link dependencies natively.
- Identify parent/child and sequence dependencies:
Checkpoint: Before proceeding to submit the issues to GitHub, present the list of proposed issues to the user (showing their titles, files to modify, dependencies, and rationale summaries). Do NOT call any issue creation commands until the user reviews and confirms they are correct.
- Submit the Subissues:
- For each subissue, call the
make create-issuecommand passing the parent and any dependency parameters:make create-issue TITLE="Issue Title" BODY_FILE="path/to/issue_body.md" PARENT="[parent-number-or-url]" [BLOCKED_BY="[issue-number-or-url]"] [BLOCKING="[issue-number-or-url]"] [LABEL="optional-label"] - Ensure you pass the exact title, the path to a temporary file containing the populated template body, and the correct relationship parameters.
- For each subissue, call the