Skip to content

Commit 3ffe946

Browse files
feat: Revamp contribution process and templates (#3246)
1 parent 94ae448 commit 3ffe946

36 files changed

+3942
-1781
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ name: Bug Report
22
description: Clearly report a bug with detailed repro steps
33
labels: ["bug"]
44
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
**Thank you for taking the time to fill out this bug report!**
9+
10+
Please ensure this bug hasn't been reported already by searching existing [GitHub Issues](https://github.com/RooVetGit/Roo-Code/issues).
511
- type: input
612
id: version
713
attributes:
@@ -17,27 +23,33 @@ body:
1723
description: Choose the API provider involved
1824
multiple: false
1925
options:
20-
- OpenRouter
2126
- Anthropic
22-
- Google Gemini
27+
- AWS Bedrock
28+
- Chutes AI
2329
- DeepSeek
24-
- OpenAI
25-
- OpenAI Compatible
26-
- GCP Vertex AI
27-
- Amazon Bedrock
28-
- Requesty
2930
- Glama
30-
- VS Code LM API
31+
- Google Gemini
32+
- Groq
33+
- Human Relay Provider
3134
- LM Studio
35+
- Mistral AI
3236
- Ollama
37+
- OpenAI
38+
- OpenAI Compatible
39+
- OpenRouter
40+
- Requesty
41+
- Unbound
42+
- VS Code Language Model API
43+
- xAI (Grok)
44+
- Not Applicable / Other
3345
validations:
3446
required: true
3547

3648
- type: input
3749
id: model
3850
attributes:
3951
label: Model Used
40-
description: Clearly specify the exact model (e.g., Claude 3.7 Sonnet)
52+
description: Clearly specify the exact model (e.g., Claude 3.7 Sonnet). If not applicable, enter N/A.
4153
validations:
4254
required: true
4355

@@ -69,8 +81,8 @@ body:
6981
- type: textarea
7082
id: logs
7183
attributes:
72-
label: Relevant API Request Output
73-
description: Paste relevant API logs or outputs here (formatted automatically as code)
84+
label: Relevant API Request Output or Error Logs
85+
description: Paste relevant API logs, console outputs, or error messages here (formatted automatically as code).
7486
render: shell
7587

7688
- type: textarea
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: Detailed Feature Proposal
2+
description: Propose a specific, actionable feature or enhancement for implementation
3+
labels: ["proposal", "enhancement"]
4+
body:
5+
- type: markdown
6+
attributes:
7+
value: |
8+
**Thank you for proposing a detailed feature for Roo Code!**
9+
10+
This template is for submitting specific, actionable proposals that you or others intend to implement after discussion and approval. It's a key part of our [Issue-First Approach](https://docs.roocode.com/contributing).
11+
12+
- **For general ideas or less defined suggestions**, please use [GitHub Discussions](https://github.com/RooVetGit/Roo-Code/discussions/categories/feature-requests?discussions_q=is%3Aopen+category%3A%22Feature+Requests%22+sort%3Atop) first.
13+
- **Before submitting**, please search existing [GitHub Issues](https://github.com/RooVetGit/Roo-Code/issues) and [Discussions](https://github.com/RooVetGit/Roo-Code/discussions) to avoid duplicates.
14+
15+
A maintainer (especially @hannesrudolph) will review this proposal. **Do not start implementation until this proposal is approved and assigned.**
16+
- type: textarea
17+
id: problem-description
18+
attributes:
19+
label: What problem does this proposed feature solve?
20+
description: Clearly describe the problem, use case, or opportunity this feature addresses. Why is this change needed?
21+
placeholder: e.g., "Users currently cannot..." or "It would be beneficial if..."
22+
validations:
23+
required: true
24+
25+
- type: textarea
26+
id: proposed-solution
27+
attributes:
28+
label: Describe the proposed solution in detail
29+
description: Provide a clear and comprehensive description of the feature or enhancement. How should it work? What are the key functionalities?
30+
placeholder: Include details on user interaction, expected behavior, and potential impact.
31+
validations:
32+
required: true
33+
34+
- type: textarea
35+
id: technical-details
36+
attributes:
37+
label: Technical considerations or implementation details (optional)
38+
description: If you have thoughts on how this could be implemented, or specific technical aspects to consider, please share them.
39+
placeholder: e.g., "This might involve changes to X component..." or "We should consider Y library..."
40+
41+
- type: textarea
42+
id: alternatives-considered
43+
attributes:
44+
label: Describe alternatives considered (if any)
45+
description: What other ways could this problem be solved or this functionality be achieved? Why is your proposed solution preferred?
46+
placeholder: Briefly outline any alternative approaches and why they were not chosen.
47+
48+
- type: textarea
49+
id: additional-context
50+
attributes:
51+
label: Additional Context & Mockups
52+
description: Add any other context, mockups, screenshots, or links that help illustrate the proposal.
53+
54+
- type: checkboxes
55+
id: checklist
56+
attributes:
57+
label: Proposal Checklist
58+
description: Please confirm the following before submitting.
59+
options:
60+
- label: I have searched existing Issues and Discussions to ensure this proposal is not a duplicate.
61+
required: true
62+
- label: This proposal is for a specific, actionable change intended for implementation (not a general idea).
63+
required: true
64+
- label: I understand that this proposal requires review and approval before any development work begins.
65+
required: true
66+
67+
- type: checkboxes
68+
id: willingness-to-contribute
69+
attributes:
70+
label: Are you interested in implementing this feature if approved?
71+
description: (This is optional and does not affect the proposal's consideration)
72+
options:
73+
- label: Yes, I would like to contribute to implementing this feature.
74+
required: false

.github/pull_request_template.md

Lines changed: 65 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,83 @@
1-
## Context
1+
<!--
2+
Thank you for contributing to Roo Code!
3+
4+
Before submitting your PR, please ensure:
5+
- It's linked to an approved GitHub Issue.
6+
- You've reviewed our [Contributing Guidelines](https://docs.roocode.com/contributing).
7+
-->
8+
9+
### Related GitHub Issue
210

3-
<!-- Brief description of WHAT you’re doing and WHY. -->
11+
<!-- Every PR MUST be linked to an approved issue. -->
412

5-
## Implementation
13+
Closes: # <!-- Replace with the issue number, e.g., Closes: #123 -->
14+
15+
### Description
616

717
<!--
18+
Briefly summarize the changes in this PR and how they address the linked issue.
19+
The issue should cover the "what" and "why"; this section should focus on:
20+
- The "how": key implementation details, design choices, or trade-offs made.
21+
- Anything specific reviewers should pay attention to in this PR.
22+
-->
823

9-
Some description of HOW you achieved it. Perhaps give a high level description of the program flow. Did you need to refactor something? What tradeoffs did you take? Are there things in here which you’d particularly like people to pay close attention to?
24+
### Test Procedure
1025

26+
<!--
27+
Detail the steps to test your changes. This helps reviewers verify your work.
28+
- How did you test this specific implementation? (e.g., unit tests, manual testing steps)
29+
- How can reviewers reproduce your tests or verify the fix/feature?
30+
- Include relevant testing environment details if applicable.
1131
-->
1232

13-
## Screenshots
33+
### Type of Change
1434

15-
| before | after |
16-
| ------ | ----- |
17-
| | |
35+
<!-- Mark all applicable boxes with an 'x'. -->
1836

19-
## How to Test
37+
- [ ] 🐛 **Bug Fix**: Non-breaking change that fixes an issue.
38+
- [ ]**New Feature**: Non-breaking change that adds functionality.
39+
- [ ] 💥 **Breaking Change**: Fix or feature that would cause existing functionality to not work as expected.
40+
- [ ] ♻️ **Refactor**: Code change that neither fixes a bug nor adds a feature.
41+
- [ ] 💅 **Style**: Changes that do not affect the meaning of the code (white-space, formatting, etc.).
42+
- [ ] 📚 **Documentation**: Updates to documentation files.
43+
- [ ] ⚙️ **Build/CI**: Changes to the build process or CI configuration.
44+
- [ ] 🧹 **Chore**: Other changes that don't modify `src` or test files.
2045

21-
<!--
46+
### Pre-Submission Checklist
47+
48+
<!-- Go through this checklist before marking your PR as ready for review. -->
49+
50+
- [ ] **Issue Linked**: This PR is linked to an approved GitHub Issue (see "Related GitHub Issue" above).
51+
- [ ] **Scope**: My changes are focused on the linked issue (one major feature/fix per PR).
52+
- [ ] **Self-Review**: I have performed a thorough self-review of my code.
53+
- [ ] **Code Quality**:
54+
- [ ] My code adheres to the project's style guidelines.
55+
- [ ] There are no new linting errors or warnings (`npm run lint`).
56+
- [ ] All debug code (e.g., `console.log`) has been removed.
57+
- [ ] **Testing**:
58+
- [ ] New and/or updated tests have been added to cover my changes.
59+
- [ ] All tests pass locally (`npm test`).
60+
- [ ] The application builds successfully with my changes.
61+
- [ ] **Branch Hygiene**: My branch is up-to-date (rebased) with the `main` branch.
62+
- [ ] **Documentation Impact**: I have considered if my changes require documentation updates (see "Documentation Updates" section below).
63+
- [ ] **Changeset**: A changeset has been created using `npm run changeset` if this PR includes user-facing changes or dependency updates.
64+
- [ ] **Contribution Guidelines**: I have read and agree to the [Contributor Guidelines](https://docs.roocode.com/contributing).
2265

23-
A straightforward scenario of how to test your changes will help reviewers that are not familiar with the part of the code that you are changing but want to see it in action. This section can include a description or step-by-step instructions of how to get to the state of v2 that your change affects.
66+
### Screenshots / Videos
2467

25-
A "How To Test" section can look something like this:
68+
<!--
69+
For UI changes, please provide before-and-after screenshots or a short video of the *actual results*.
70+
This greatly helps in understanding the visual impact of your changes.
71+
-->
2672

27-
- Sign in with a user with tracks
28-
- Activate `show_awesome_cat_gifs` feature (add `?feature.show_awesome_cat_gifs=1` to your URL)
29-
- You should see a GIF with cats dancing
73+
### Documentation Updates
3074

75+
<!--
76+
Does this PR necessitate updates to user-facing documentation?
77+
- [ ] No documentation updates are required.
78+
- [ ] Yes, documentation updates are required. (Please describe what needs to be updated or link to a PR in the docs repository).
3179
-->
3280

33-
## Get in Touch
81+
### Additional Notes
3482

35-
<!-- We'd love to have a way to chat with you about your changes if necessary. If you're in the [Roo Code Discord](https://discord.gg/roocode), please share your handle here. -->
83+
<!-- Add any other context, questions, or information for reviewers here. -->

0 commit comments

Comments
 (0)