Skip to content

Commit ee58c5d

Browse files
CONTRIBUTING.md tweaks and issue template rewrite (#8014)
1 parent 759454b commit ee58c5d

20 files changed

+1267
-1303
lines changed
Lines changed: 63 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,66 @@
11
name: Bug Report
2-
description: Clearly report a bug with detailed repro steps
2+
description: Report a broken behavior in plain language with a minimal reproduction
33
labels: ["bug"]
4+
title: "[BUG] "
45
body:
56
- type: markdown
67
attributes:
78
value: |
8-
**Thanks for your report!** Please check existing issues first:
9-
👉 https://github.com/RooCodeInc/Roo-Code/issues
9+
Thank you for your report! Please search existing issues first:
10+
https://github.com/RooCodeInc/Roo-Code/issues
11+
12+
- type: textarea
13+
id: problem
14+
attributes:
15+
label: Problem (one or two sentences)
16+
description: Describe what went wrong in plain language.
17+
placeholder: 'Example: "Expected the task to start, but nothing happened and no message appeared."'
18+
validations:
19+
required: true
20+
21+
- type: textarea
22+
id: context
23+
attributes:
24+
label: Context (who is affected and when)
25+
description: Who sees this and in what situation? Keep it non-technical.
26+
placeholder: 'Example: "Happens to new users when starting a run from the New Run page with dark theme enabled."'
27+
validations:
28+
required: true
29+
30+
- type: textarea
31+
id: steps
32+
attributes:
33+
label: Reproduction steps
34+
description: Provide clear, numbered steps so we can reproduce.
35+
placeholder: |
36+
1) Environment/setup (OS, extension version, relevant settings)
37+
2) Exact actions (clicks, inputs, commands)
38+
3) What you observed after each step
39+
validations:
40+
required: true
41+
42+
- type: input
43+
id: expected
44+
attributes:
45+
label: Expected result
46+
placeholder: e.g., "The task starts and shows progress."
47+
validations:
48+
required: true
49+
50+
- type: input
51+
id: actual
52+
attributes:
53+
label: Actual result
54+
placeholder: e.g., "The button appears disabled and no progress is shown."
55+
validations:
56+
required: true
57+
58+
- type: textarea
59+
id: variations
60+
attributes:
61+
label: Variations tried (optional)
62+
description: Different browsers, devices, providers, or settings you tried.
63+
placeholder: e.g., "Tried Chrome/Firefox, disabling dark theme, switching providers."
1064

1165
- type: input
1266
id: version
@@ -19,7 +73,7 @@ body:
1973
- type: dropdown
2074
id: provider
2175
attributes:
22-
label: API Provider
76+
label: API Provider (optional)
2377
options:
2478
- Anthropic
2579
- AWS Bedrock
@@ -45,57 +99,23 @@ body:
4599
- VS Code Language Model API
46100
- xAI (Grok)
47101
- Not Applicable / Other
48-
validations:
49-
required: true
50102

51103
- type: input
52104
id: model
53105
attributes:
54-
label: Model Used
106+
label: Model Used (optional)
55107
description: Exact model name (e.g., Claude 3.7 Sonnet). Use N/A if irrelevant.
56-
validations:
57-
required: true
58108

59109
- type: textarea
60110
id: roo-code-tasks
61111
attributes:
62-
label: Roo Code Task Links (Optional)
63-
description: |
64-
If you have any publicly shared task links that demonstrate the issue, please paste them here.
65-
This helps maintainers understand the context.
66-
Example: https://app.roocode.com/share/task-id
112+
label: Roo Code Task Links (optional)
113+
description: If you have any publicly shared Roo Code task links that demonstrate the issue, paste them here.
67114
placeholder: Paste your Roo Code share links here, one per line
68115

69-
- type: textarea
70-
id: steps
71-
attributes:
72-
label: 🔁 Steps to Reproduce
73-
description: |
74-
Help us see what you saw. Give clear, numbered steps:
75-
76-
1. Setup (OS, extension version, settings)
77-
2. Exact actions (clicks, input, files, commands)
78-
3. What happened after each step
79-
80-
Think like you're writing a recipe. Without this, we can't reproduce the issue.
81-
validations:
82-
required: true
83-
84-
- type: textarea
85-
id: what-happened
86-
attributes:
87-
label: 💥 Outcome Summary
88-
description: |
89-
Recap what went wrong in one or two lines.
90-
91-
Example: "Expected code to run, but got an empty response and no error."
92-
placeholder: Expected ___, but got ___.
93-
validations:
94-
required: true
95-
96116
- type: textarea
97117
id: logs
98118
attributes:
99-
label: 📄 Relevant Logs or Errors (Optional)
100-
description: Paste API logs, terminal output, or errors here. Use triple backticks (```) for code formatting.
119+
label: Relevant logs or errors (optional)
120+
description: Paste relevant output or errors. Use triple backticks (```) for formatting.
101121
render: shell
Lines changed: 46 additions & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -1,71 +1,47 @@
1-
name: Detailed Feature Proposal
2-
description: Report a specific problem that needs solving in Roo Code
3-
labels: ["proposal", "enhancement"]
1+
name: Enhancement Request
2+
description: Propose an improvement in plain language focused on user benefit
3+
labels: ["enhancement"]
4+
title: "[ENHANCEMENT] "
45
body:
56
- type: markdown
67
attributes:
78
value: |
8-
**Thank you for submitting a feature request for Roo Code!**
9-
10-
This template helps you describe problems that need solving. Focus on the problem - the Roo team will work to design solutions unless you want to contribute the implementation yourself.
11-
12-
**Quality over speed:** We prefer detailed, clear problem descriptions over quick ones. Vague requests often get closed or require multiple rounds of clarification, which wastes everyone's time.
13-
14-
**Before submitting:**
15-
- Search existing [Issues](https://github.com/RooCodeInc/Roo-Code/issues) and [Discussions](https://github.com/RooCodeInc/Roo-Code/discussions) to avoid duplicates
16-
- For general ideas, use [GitHub Discussions](https://github.com/RooCodeInc/Roo-Code/discussions/categories/feature-requests) instead of this template.
9+
Thank you for helping improve Roo Code!
10+
Please focus on the problem and the desired behavior in plain language.
1711
18-
- type: markdown
12+
- type: textarea
13+
id: problem
1914
attributes:
20-
value: |
21-
## ❌ Common mistakes that lead to request rejection:
22-
- **Vague problem descriptions:** "UI is bad" -> Should be: "Submit button is invisible on dark theme"
23-
- **Missing user impact:** "This would be cool" -> Should explain who benefits and how
24-
- **No specific context:** Describe exactly when and how the problem occurs
25-
15+
label: Problem (one or two sentences)
16+
description: What problem are users facing?
17+
placeholder: e.g., "Users often click Copy Run by mistake and duplicate runs unintentionally."
18+
validations:
19+
required: true
2620

2721
- type: textarea
28-
id: problem-description
22+
id: context
2923
attributes:
30-
label: What specific problem does this solve?
31-
description: |
32-
**Be concrete and detailed.** Explain the problem from a user's perspective.
33-
34-
✅ **Good examples (specific, clear impact):**
35-
- "When running large tasks, users wait 5+ minutes because tasks execute sequentially instead of in parallel, blocking productivity"
36-
- "AI can only read one file per request, forcing users to make multiple requests for multi-file projects, increasing wait time from 30s to 5+ minutes"
37-
- "Dark theme users can't see the submit button because it uses white text on light grey background"
38-
39-
❌ **Poor examples (vague, unclear impact):**
40-
- "The UI looks weird" -> What specifically looks weird? On which screen? What's the impact?
41-
- "System prompt is not good" -> What's wrong with it? What behaviour does it cause? What should it do instead?
42-
- "Performance could be better" -> Where? How slow is it currently? What's the user impact?
43-
44-
**Your problem description should answer:**
45-
- Who is affected? (all users, specific user types, etc.)
46-
- When does this happen? (specific scenarios/steps)
47-
- What's the current behaviour vs expected behaviour?
48-
- What's the impact? (time wasted, errors caused, etc.)
49-
placeholder: Be specific about the problem, who it affects, and the impact. Avoid generic statements like "it's slow" or "it's confusing."
24+
label: Context (who is affected and when)
25+
description: Who encounters this and in what situation?
26+
placeholder: e.g., "Happens when browsing the Runs list; most visible for new users."
5027
validations:
5128
required: true
5229

53-
5430
- type: textarea
55-
id: additional-context
31+
id: desired
5632
attributes:
57-
label: Additional context (optional)
58-
description: Mockups, screenshots, links, user quotes, or other relevant information that supports your proposal.
33+
label: Desired behavior (conceptual, not technical)
34+
description: Describe what should happen in simple terms.
35+
placeholder: e.g., "Ask for confirmation before copying a run."
36+
validations:
37+
required: true
5938

6039
- type: textarea
61-
id: roo-code-tasks
40+
id: constraints
6241
attributes:
63-
label: Roo Code Task Links (Optional)
64-
description: |
65-
If you used Roo Code to explore this feature request or develop solutions, share the public task links here.
66-
This helps maintainers understand the context and any exploration you've done.
67-
Example: https://app.roocode.com/share/task-id
68-
placeholder: Paste your Roo Code share links here, one per line
42+
label: Constraints / preferences (optional)
43+
description: Any considerations like performance, accessibility, or UX expectations.
44+
placeholder: e.g., "Keep it quick and unobtrusive; keyboard accessible."
6945

7046
- type: checkboxes
7147
id: checklist
@@ -74,128 +50,42 @@ body:
7450
options:
7551
- label: I've searched existing Issues and Discussions for duplicates
7652
required: true
77-
- label: This describes a specific problem with clear impact and context
53+
- label: This describes a specific problem with clear context and impact
7854
required: true
7955

56+
- type: textarea
57+
id: roo-code-tasks
58+
attributes:
59+
label: Roo Code Task Links (optional)
60+
description: If you explored this with Roo Code, share public task links for context.
61+
placeholder: Paste your Roo Code share links here, one per line
62+
8063
- type: markdown
8164
attributes:
8265
value: |
8366
---
84-
85-
## 🛠️ **Optional: Contributing & Technical Analysis**
86-
87-
**🎯 Just reporting a problem?** You can click "Submit new issue" right now! The sections below are only needed if you want to contribute a solution via pull request.
88-
89-
**⚠️ Only continue if you want to:**
90-
- Propose a specific solution design
91-
- Implement the feature yourself via pull request
92-
- Provide technical analysis to help with implementation
93-
94-
**For contributors who continue:**
95-
- A maintainer (especially @hannesrudolph) will review this proposal. **Do not start implementation until approved and assigned.** We're a small team with limited resources, so every code addition needs careful consideration. We're always happy to receive clear, actionable proposals though!
96-
- Join [Discord](https://discord.gg/roocode) and DM **Hannes Rudolph** (`hrudolph`) for guidance on implementation
97-
- Check our [Roadmap](https://github.com/orgs/RooCodeInc/projects/1/views/1?query=sort%3Aupdated-desc+is%3Aopen&filterQuery=is%3Aissue%2Copen%2Cclosed+label%3A%22feature+request%22+status%3A%22Issue+%5BUnassigned%5D%22%2C%22Issue+%5BIn+Progress%5D%22) to see open feature requests ready to be implemented or currently being worked on
98-
99-
- type: checkboxes
100-
id: willingness-to-contribute
101-
attributes:
102-
label: Interested in implementing this?
103-
description: |
104-
**Important:** If you check "Yes" below, the technical sections become REQUIRED.
105-
We need detailed technical analysis from contributors to ensure quality implementation.
106-
options:
107-
- label: Yes, I'd like to help implement this feature
108-
required: false
109-
110-
- type: checkboxes
111-
id: implementation-approval
112-
attributes:
113-
label: Implementation requirements
114-
options:
115-
- label: I understand this needs approval before implementation begins
116-
required: false
117-
118-
- type: textarea
119-
id: proposed-solution
120-
attributes:
121-
label: How should this be solved? (REQUIRED if contributing, optional otherwise)
122-
description: |
123-
**If you want to implement this feature, this section is REQUIRED.**
124-
125-
**Describe your solution in detail.** Explain not just what to build, but how it should work.
126-
127-
✅ **Good examples:**
128-
- "Add parallel task execution: Allow up to 3 tasks to run simultaneously with a queue system for additional tasks. Show progress for each active task in the UI."
129-
- "Enable multi-file AI processing: Modify the request handler to accept multiple files in a single request and process them together, reducing round trips."
130-
- "Fix button contrast: Change submit button to use primary colour on dark theme (white text on blue background) instead of current grey."
131-
132-
❌ **Poor examples:**
133-
- "Make it faster" -> How? What specific changes?
134-
- "Improve the UI" -> Which part? What specific improvements?
135-
- "Fix the prompt" -> What should the new prompt do differently?
136-
137-
**Your solution should explain:**
138-
- What exactly will change?
139-
- How will users interact with it?
140-
- What will the new behaviour look like?
141-
placeholder: Describe the specific changes and how they will work. Include user interaction details if relevant.
67+
Optional (for contributors): You can stop here if you're just proposing the improvement.
14268
14369
- type: textarea
14470
id: acceptance-criteria
14571
attributes:
146-
label: How will we know it works? (Acceptance Criteria - REQUIRED if contributing, optional otherwise)
147-
description: |
148-
**If you want to implement this feature, this section is REQUIRED.**
149-
150-
**This is crucial - don't skip it.** Define what "working" looks like with specific, testable criteria.
151-
152-
**Format suggestion:**
153-
```
154-
Given [context/situation]
72+
label: Acceptance criteria (optional)
73+
description: Define what “working” looks like with specific, testable outcomes.
74+
placeholder: |
75+
Given [context]
15576
When [user action]
15677
Then [expected result]
15778
And [additional expectations]
15879
But [what should NOT happen]
159-
```
160-
161-
**Example:**
162-
```
163-
Given I have 5 large tasks to run
164-
When I start all of them
165-
Then they execute in parallel (max 3 at once, can be configured)
166-
And I see progress for each active task
167-
And queued tasks show "waiting" status
168-
But the UI doesn't freeze or become unresponsive
169-
```
170-
placeholder: |
171-
Define specific, testable criteria. What should users be able to do? What should happen? What should NOT happen?
172-
Use the Given/When/Then format above or your own clear structure.
17380
17481
- type: textarea
175-
id: technical-considerations
82+
id: proposed-solution
17683
attributes:
177-
label: Technical considerations (REQUIRED if contributing, optional otherwise)
178-
description: |
179-
**If you want to implement this feature, this section is REQUIRED.**
180-
181-
Share technical insights that could help planning:
182-
- Implementation approach or architecture changes
183-
- Performance implications
184-
- Compatibility concerns
185-
- Systems that might be affected
186-
- Potential blockers you can foresee
187-
placeholder: e.g., "Will need to refactor task manager", "Could impact memory usage on large files", "Requires a large portion of code to be rewritten"
84+
label: Proposed approach (optional)
85+
description: If you have an idea, describe it briefly in plain language.
18886

18987
- type: textarea
190-
id: trade-offs-and-risks
88+
id: risks
19189
attributes:
192-
label: Trade-offs and risks (REQUIRED if contributing, optional otherwise)
193-
description: |
194-
**If you want to implement this feature, this section is REQUIRED.**
195-
196-
What could go wrong or what alternatives did you consider?
197-
- Alternative approaches and why you chose this one
198-
- Potential negative impacts (performance, UX, etc.)
199-
- Breaking changes or migration concerns
200-
- Edge cases that need careful handling
201-
placeholder: 'e.g., "Alternative: use library X but it is 500KB larger", "Risk: might slow older devices", "Breaking: changes API response format"'
90+
label: Trade-offs / risks (optional)
91+
description: Potential downsides or alternatives considered.

0 commit comments

Comments
 (0)