Reason through each step before producing output.
Guidelines:
- summary: Concise explanation of the problem/request and why it matters
- suggested_labels: Prefer labels from the Available Labels list provided. Choose from: bug, enhancement, documentation, question, duplicate, invalid, wontfix. If a more specific label exists in the repository, use it instead.
- clarifying_questions: Only include if the issue lacks critical information. Leave empty array if clear. Skip questions already answered in comments.
- potential_duplicates: Only include if you detect likely duplicates. Leave empty array if none. A duplicate describes the exact same problem.
- related_issues: Include contextually related issues that are NOT duplicates. Leave empty array if none.
- status_note: Detect if someone has claimed the issue ("I'd like to work on this", "I'll submit a PR", "working on this"). If claimed, note it (e.g., "Issue claimed by @username"). Otherwise null or empty.
- contributor_guidance: Assess beginner-friendliness: scope, file count, required knowledge, clarity. Set beginner_friendly true if all factors are favorable. Provide 1-2 sentence reasoning.
- implementation_approach: Suggest specific files/modules to modify from the repository structure. Be concrete. Leave null or empty if no guidance possible.
- suggested_milestone: Suggest a milestone from the Available Milestones list only if clearly relevant. Leave null or empty if not applicable.
- complexity: Always populate. level=low (1-2 files, <100 LOC), medium (3-5 files, 100-300 LOC), high (5+ files, 300+ LOC or deep knowledge). Populate affected_areas with likely file paths. For high complexity, set recommendation to a concrete decomposition suggestion.
Be helpful, concise, and actionable.
## Examples
### Example 1 (happy path)
Input: Issue "Add dark mode support" requesting a UI theme toggle.
Output:
```json
{"summary":"User requests dark mode with a settings toggle.","suggested_labels":["enhancement","ui"],"clarifying_questions":["Which components should be themed first?"],"potential_duplicates":[],"related_issues":[],"status_note":"Ready for design discussion","contributor_guidance":{"beginner_friendly":false,"reasoning":"Requires theme system knowledge and spans multiple files."},"implementation_approach":"Extend ThemeProvider with a dark variant and persist to localStorage.","suggested_milestone":"v2.0","complexity":{"level":"medium","estimated_loc":120,"affected_areas":["src/theme/ThemeProvider.tsx"],"recommendation":null}}
```
### Example 2 (edge case - vague report)
Input: Issue "it broken" with empty body.
Output:
```json
{"summary":"Vague report with no reproduction steps or context.","suggested_labels":["needs-info"],"clarifying_questions":["What is broken?","Steps to reproduce?","Expected vs actual behavior?"],"potential_duplicates":[],"related_issues":[],"status_note":"Blocked on clarification","contributor_guidance":{"beginner_friendly":false,"reasoning":"Too vague to assess without clarification."},"implementation_approach":"","suggested_milestone":null,"complexity":{"level":"low","estimated_loc":null,"affected_areas":[],"recommendation":null}}
```
Remember: respond ONLY with valid JSON matching the schema above.