Skip to content

Commit 6982b19

Browse files
authored
feat: Add pre-commit review and PR template to issue-fixer-orchestrator (#5405)
* feat: Add pre-commit review and PR template to issue-fixer-orchestrator - Add user confirmation step before committing changes - Handle large diffs (>2000 lines) with summary generation - Save PR message to temp directory instead of creating PR directly - Implement exact Roo Code PR template format - Add post-commit options for flexible PR creation - Update best practices and communication guidelines - Document new commit and PR workflow patterns * removed files that were added accidently
1 parent f478a5c commit 6982b19

File tree

5 files changed

+596
-49
lines changed

5 files changed

+596
-49
lines changed
Lines changed: 213 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,213 @@
1+
<pr_template_format>
2+
<overview>
3+
This document defines the format for PR messages that are saved to the temp folder
4+
before creating a pull request. The PR message is saved in two formats:
5+
1. JSON format in pr_summary.json (for programmatic use)
6+
2. Markdown format in pr_message.md (for manual PR creation)
7+
8+
The PR message must follow the exact Roo Code contribution template.
9+
</overview>
10+
11+
<json_format>
12+
<description>
13+
The pr_summary.json file contains the PR title and body in a structured format
14+
that can be easily parsed by scripts and the GitHub CLI.
15+
</description>
16+
<structure>
17+
{
18+
"title": "fix: [description] (#[issue-number])",
19+
"body": "[Full markdown body as described below]",
20+
"issue_number": 123,
21+
"repo_owner": "owner",
22+
"repo_name": "repo",
23+
"base_branch": "main",
24+
"head_branch": "fix/issue-123-description"
25+
}
26+
</structure>
27+
</json_format>
28+
29+
<markdown_format>
30+
<description>
31+
The pr_message.md file contains the complete PR message in a format that can be
32+
directly copied and pasted when creating a PR manually.
33+
</description>
34+
<structure>
35+
PR Title: [title from JSON]
36+
37+
---
38+
39+
[Full PR body from JSON]
40+
</structure>
41+
</markdown_format>
42+
43+
<pr_body_template>
44+
<description>
45+
The PR body must follow this exact Roo Code PR template with all required sections.
46+
</description>
47+
<template><![CDATA[
48+
<!--
49+
Thank you for contributing to Roo Code!
50+
51+
Before submitting your PR, please ensure:
52+
- It's linked to an approved GitHub Issue.
53+
- You've reviewed our [Contributing Guidelines](../CONTRIBUTING.md).
54+
-->
55+
56+
### Related GitHub Issue
57+
58+
<!-- Every PR MUST be linked to an approved issue. -->
59+
60+
Closes: #[ISSUE_NUMBER] <!-- Replace with the issue number, e.g., Closes: #123 -->
61+
62+
### Roo Code Task Context (Optional)
63+
64+
<!--
65+
If you used Roo Code to help create this PR, you can share public task links here.
66+
This helps reviewers understand your development process and provides additional context.
67+
Example: https://app.roocode.com/share/task-id
68+
-->
69+
70+
[TASK_CONTEXT]
71+
72+
### Description
73+
74+
<!--
75+
Briefly summarize the changes in this PR and how they address the linked issue.
76+
The issue should cover the "what" and "why"; this section should focus on:
77+
- The "how": key implementation details, design choices, or trade-offs made.
78+
- Anything specific reviewers should pay attention to in this PR.
79+
-->
80+
81+
[DESCRIPTION_CONTENT]
82+
83+
### Test Procedure
84+
85+
<!--
86+
Detail the steps to test your changes. This helps reviewers verify your work.
87+
- How did you test this specific implementation? (e.g., unit tests, manual testing steps)
88+
- How can reviewers reproduce your tests or verify the fix/feature?
89+
- Include relevant testing environment details if applicable.
90+
-->
91+
92+
[TEST_PROCEDURE_CONTENT]
93+
94+
### Pre-Submission Checklist
95+
96+
<!-- Go through this checklist before marking your PR as ready for review. -->
97+
98+
- [x] **Issue Linked**: This PR is linked to an approved GitHub Issue (see "Related GitHub Issue" above).
99+
- [x] **Scope**: My changes are focused on the linked issue (one major feature/fix per PR).
100+
- [x] **Self-Review**: I have performed a thorough self-review of my code.
101+
- [x] **Testing**: New and/or updated tests have been added to cover my changes (if applicable).
102+
- [x] **Documentation Impact**: I have considered if my changes require documentation updates (see "Documentation Updates" section below).
103+
- [x] **Contribution Guidelines**: I have read and agree to the [Contributor Guidelines](/CONTRIBUTING.md).
104+
105+
### Screenshots / Videos
106+
107+
<!--
108+
For UI changes, please provide before-and-after screenshots or a short video of the *actual results*.
109+
This greatly helps in understanding the visual impact of your changes.
110+
-->
111+
112+
[SCREENSHOTS_CONTENT]
113+
114+
### Documentation Updates
115+
116+
<!--
117+
Does this PR necessitate updates to user-facing documentation?
118+
- [ ] No documentation updates are required.
119+
- [ ] Yes, documentation updates are required. (Please describe what needs to be updated or link to a PR in the docs repository).
120+
-->
121+
122+
[DOCUMENTATION_UPDATES_CONTENT]
123+
124+
### Additional Notes
125+
126+
<!-- Add any other context, questions, or information for reviewers here. -->
127+
128+
[ADDITIONAL_NOTES_CONTENT]
129+
130+
### Get in Touch
131+
132+
<!--
133+
Please provide your Discord username for reviewers or maintainers to reach you if they have questions about your PR
134+
-->
135+
136+
[DISCORD_USERNAME]
137+
]]></template>
138+
</pr_body_template>
139+
140+
<template_placeholders>
141+
<placeholder name="[ISSUE_NUMBER]">The GitHub issue number being fixed</placeholder>
142+
<placeholder name="[TASK_CONTEXT]">Optional Roo Code task links (remove section if not applicable)</placeholder>
143+
<placeholder name="[DESCRIPTION_CONTENT]">
144+
Summary of changes and implementation details. Should include:
145+
- Key implementation details
146+
- Design choices or trade-offs made
147+
- Specific areas reviewers should focus on
148+
</placeholder>
149+
<placeholder name="[TEST_PROCEDURE_CONTENT]">
150+
Detailed testing steps including:
151+
- Unit tests added/modified
152+
- Manual testing steps performed
153+
- How reviewers can reproduce tests
154+
- Testing environment details
155+
</placeholder>
156+
<placeholder name="[SCREENSHOTS_CONTENT]">
157+
For UI changes: before/after screenshots or video
158+
For non-UI changes: "N/A - No UI changes"
159+
</placeholder>
160+
<placeholder name="[DOCUMENTATION_UPDATES_CONTENT]">
161+
Check appropriate box:
162+
- "- [x] No documentation updates are required." OR
163+
- "- [x] Yes, documentation updates are required. [describe updates]"
164+
</placeholder>
165+
<placeholder name="[ADDITIONAL_NOTES_CONTENT]">
166+
Any additional context, or remove entire section if not needed
167+
</placeholder>
168+
<placeholder name="[DISCORD_USERNAME]">User's Discord username for contact</placeholder>
169+
</template_placeholders>
170+
171+
<file_locations>
172+
<file>
173+
<name>pr_summary.json</name>
174+
<path>.roo/temp/issue-fixer-orchestrator/[TASK_ID]/pr_summary.json</path>
175+
<purpose>Structured data for programmatic PR creation</purpose>
176+
</file>
177+
<file>
178+
<name>pr_message.md</name>
179+
<path>.roo/temp/issue-fixer-orchestrator/[TASK_ID]/pr_message.md</path>
180+
<purpose>Human-readable format for manual PR creation</purpose>
181+
</file>
182+
</file_locations>
183+
184+
<usage_guidelines>
185+
<guideline>
186+
Always save both formats when preparing a PR to give users flexibility
187+
in how they create the pull request.
188+
</guideline>
189+
<guideline>
190+
The pr_message.md file should be self-contained and ready to copy/paste
191+
without any additional formatting needed.
192+
</guideline>
193+
<guideline>
194+
Include all sections in the template, maintaining the exact format
195+
and HTML comments as shown.
196+
</guideline>
197+
<guideline>
198+
Pre-check all checklist items that can be verified programmatically.
199+
Leave documentation checkbox unchecked for user to decide.
200+
</guideline>
201+
<guideline>
202+
For sections that don't apply, use appropriate placeholder text
203+
rather than removing the section entirely.
204+
</guideline>
205+
</usage_guidelines>
206+
207+
<translation_handling>
208+
<note>
209+
If translations were added during the issue fix, include details in the
210+
Description section about which languages were updated.
211+
</note>
212+
</translation_handling>
213+
</pr_template_format>

0 commit comments

Comments
 (0)