--- description: This is a detailed way you can analyze the GitHub issues and let Claude handle them in best possible way. author: safayavatsal version: 1.0.0 --- Please analyze and fix the GitHub issue: $ARGUMENTS. Follow these steps: # PLAN 1. Use `gh issue view` to get the issue details - Fetch the full description, labels, assignees, and any metadata from the GitHub issue. 2. Read and understand the problem described in the issue - Carefully analyze the main problem statement and what outcome is expected. 3. Identify related or linked **sub-issues** and dependencies - Look for: - **Child issues or tasks** linked under the main issue (e.g., checklists in the issue body such as `- [ ] Create DB schema`, `- [ ] Implement API`). - **Related GitHub issues** linked as "blocks", "is blocked by", or "relates to". - **Issues grouped under an epic or parent story**, if using project management tools. - Treat these sub-issues as part of the scope. If they exist, factor them into the plan so the solution is efficient and avoids duplication. - **Example:** - Main Issue: *"Implement user authentication"* - Sub-issues found: - `#201` Setup user database schema - `#202` Create login API - `#203` Integrate OAuth provider - Plan must account for all three, because they are part of solving the main issue. 4. Ask clarification questions if needed - If any detail is unclear, prepare a list of clarification questions for the issue author or stakeholders. 5. Understand the prior art for the issue - Search scratchpads or internal documentation for previous thoughts related to the issue. - Search previous PRs to see if any work was already attempted on this problem. - Search the codebase for relevant files, functions, or modules that may already contain related logic. 6. Ultrathink about how to solve the issue in a small and manageable way - Break down the main issue **and its sub-issues** into smaller, actionable tasks. - Sequence the tasks in a logical order, respecting dependencies (e.g., database before API, API before UI). - Draft a clear plan with todos that can be executed incrementally. 7. Document the plan in the scratchpad - Include the issue name in the filename for easy reference. - Add the direct link to the issue in the scratchpad. - Ensure the plan is well-structured so it can be executed by another human or an automated system without requiring extra context. --- # Scratchpad for Issue Planning ## Main Issue - **Title:** - **Link:** - **Description:** --- ## Sub-Issues / Dependencies - Look for checklists in the issue body (e.g., `- [ ] Task A`) - Look for linked issues in GitHub (e.g., `#201` blocks `#200`) - Look for epic/parent issue relationships - Document them here: - [ ] - [ ] - [ ] --- ## Clarification Questions - - --- ## Prior Art - **Scratchpads:** - **PRs:** - **Codebase References:** --- ## Proposed Plan 1. 2. 3. 4. --- ## Todos - [ ] - [ ] - [ ] --- ## Notes - --- # CREATE - Create a new branch with the issue name - Use a consistent naming convention (e.g., `issue/-`) - Solve the issue in **small, manageable steps**, following the plan documented in the scratchpad - If the issue has **sub-issues**, address them incrementally, committing as each part is completed - Create **clear and descriptive commit messages** - Example: `fix(auth): handle token refresh expiry (closes #123)` - Commit changes frequently, after completing each step or sub-issue --- # TEST - Run **all relevant tests** to verify the fix - Unit tests, integration tests, and end-to-end tests if available - Ensure code passes: - ✅ Linting - ✅ Type checking - For bug fixes: - Add **regression tests** to prevent reoccurrence - If automated tests don’t cover everything, add **manual testing steps** --- # PUSH - Push the branch to the remote repository - Create a **Pull Request (PR)** with the issue name in the title - Example: `Fix: Auth Token Refresh [#123]` - In the PR description: - Reference the main issue (`Closes #123`) - Reference any sub-issues covered - Summarize what was changed and why - Ensure PR follows contribution guidelines: - ✅ Uses the PR template - ✅ Has appropriate labels - ✅ Requests reviewers --- ## ✅ Final Checklist Before Merge - [ ] Issue and sub-issues addressed - [ ] All tests passing - [ ] Linting and type checks clean - [ ] Commit messages follow convention - [ ] PR description is complete - [ ] Review feedback applied Remember to use the GitHub CLI (`gh`) for all GitHub-related tasks.