Skip to content

Commit 541a6a6

Browse files
authored
Merge branch 'main' into wip_integration_testing
2 parents 229a243 + 395f55b commit 541a6a6

File tree

262 files changed

+11779
-2602
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

262 files changed

+11779
-2602
lines changed

.github/workflows/website-deploy.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,24 @@ env:
1313
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
1414

1515
jobs:
16+
check-secrets:
17+
runs-on: ubuntu-latest
18+
outputs:
19+
has-vercel-token: ${{ steps.check.outputs.has-vercel-token }}
20+
steps:
21+
- name: Check if VERCEL_TOKEN exists
22+
id: check
23+
run: |
24+
if [ -n "${{ secrets.VERCEL_TOKEN }}" ]; then
25+
echo "has-vercel-token=true" >> $GITHUB_OUTPUT
26+
else
27+
echo "has-vercel-token=false" >> $GITHUB_OUTPUT
28+
fi
29+
1630
deploy:
1731
runs-on: ubuntu-latest
18-
if: ${{ secrets.VERCEL_TOKEN != '' }}
32+
needs: check-secrets
33+
if: ${{ needs.check-secrets.outputs.has-vercel-token == 'true' }}
1934
steps:
2035
- name: Checkout code
2136
uses: actions/checkout@v4

.github/workflows/website-preview.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,24 @@ env:
1313
VERCEL_PROJECT_ID: ${{ secrets.VERCEL_PROJECT_ID }}
1414

1515
jobs:
16+
check-secrets:
17+
runs-on: ubuntu-latest
18+
outputs:
19+
has-vercel-token: ${{ steps.check.outputs.has-vercel-token }}
20+
steps:
21+
- name: Check if VERCEL_TOKEN exists
22+
id: check
23+
run: |
24+
if [ -n "${{ secrets.VERCEL_TOKEN }}" ]; then
25+
echo "has-vercel-token=true" >> $GITHUB_OUTPUT
26+
else
27+
echo "has-vercel-token=false" >> $GITHUB_OUTPUT
28+
fi
29+
1630
preview:
1731
runs-on: ubuntu-latest
18-
if: ${{ secrets.VERCEL_TOKEN != '' }}
32+
needs: check-secrets
33+
if: ${{ needs.check-secrets.outputs.has-vercel-token == 'true' }}
1934
steps:
2035
- name: Checkout code
2136
uses: actions/checkout@v4
Lines changed: 211 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,211 @@
1+
<workflow>
2+
<step number="1">
3+
<name>Fetch Pull Request Information</name>
4+
<instructions>
5+
By default, use the GitHub MCP server to fetch and review pull requests from the
6+
https://github.com/RooCodeInc/Roo-Code repository.
7+
8+
If the user provides a PR number or URL, extract the necessary information:
9+
- Repository owner and name
10+
- Pull request number
11+
12+
Use the GitHub MCP tool to fetch the PR details:
13+
14+
<use_mcp_tool>
15+
<server_name>github</server_name>
16+
<tool_name>get_pull_request</tool_name>
17+
<arguments>
18+
{
19+
"owner": "[owner]",
20+
"repo": "[repo]",
21+
"pullNumber": [number]
22+
}
23+
</arguments>
24+
</use_mcp_tool>
25+
</instructions>
26+
</step>
27+
28+
<step number="2">
29+
<name>Fetch Pull Request Diff</name>
30+
<instructions>
31+
Get the pull request diff to understand the changes:
32+
33+
<use_mcp_tool>
34+
<server_name>github</server_name>
35+
<tool_name>get_pull_request_diff</tool_name>
36+
<arguments>
37+
{
38+
"owner": "[owner]",
39+
"repo": "[repo]",
40+
"pullNumber": [number]
41+
}
42+
</arguments>
43+
</use_mcp_tool>
44+
</instructions>
45+
</step>
46+
47+
<step number="3">
48+
<name>Check Out Pull Request Locally</name>
49+
<instructions>
50+
Use the GitHub CLI (e.g. `gh pr checkout <PR_NUMBER>`) to check out the pull request locally after fetching
51+
the diff. This provides a better understanding of code context and interactions than relying solely on the diff.
52+
53+
<execute_command>
54+
<command>gh pr checkout [PR_NUMBER]</command>
55+
</execute_command>
56+
57+
This allows you to:
58+
- Navigate the actual code structure
59+
- Understand how changes interact with existing code
60+
- Get better context for your review
61+
</instructions>
62+
</step>
63+
64+
<step number="4">
65+
<name>Fetch Existing PR Comments</name>
66+
<instructions>
67+
Get existing comments to understand the current discussion state:
68+
69+
<use_mcp_tool>
70+
<server_name>github</server_name>
71+
<tool_name>get_pull_request_comments</tool_name>
72+
<arguments>
73+
{
74+
"owner": "[owner]",
75+
"repo": "[repo]",
76+
"pullNumber": [number]
77+
}
78+
</arguments>
79+
</use_mcp_tool>
80+
81+
Examine existing PR comments to understand the current state of discussion. Always verify whether a comment is current or already addressed before suggesting action.
82+
</instructions>
83+
</step>
84+
85+
<step number="5">
86+
<name>Perform Comprehensive Review</name>
87+
<instructions>
88+
Review the pull request thoroughly:
89+
- Focus primarily on the changes made in the PR.
90+
- Prioritize code quality, code smell, structural consistency, and for UI-related changes, ensure proper internationalization (i18n) is applied.
91+
- Watch for signs of technical debt (e.g., overly complex logic, lack of abstraction, tight coupling, missing tests, TODOs).
92+
- For large PRs, alert the user and recommend breaking it up if appropriate.
93+
- NEVER run tests or execute code in PR Reviewer mode. The repository likely has automated testing. Your role is limited to:
94+
- Code review and analysis
95+
- Leaving review comments
96+
- Checking code quality and structure
97+
- Reviewing test coverage and quality (without execution)
98+
99+
Document your findings:
100+
- Code quality issues
101+
- Structural improvements
102+
- Missing tests or documentation
103+
- Potential bugs or edge cases
104+
- Performance concerns
105+
- Security considerations
106+
</instructions>
107+
</step>
108+
109+
<step number="6">
110+
<name>Prepare Review Comments</name>
111+
<instructions>
112+
Format your review comments following these guidelines:
113+
114+
Your suggestions should:
115+
- Use a **friendly, curious tone** — prefer asking: "Is this intentional?" or "Could we approach this differently to improve X?"
116+
- Avoid assumptions or judgments; ask questions instead of declaring problems.
117+
- Skip unnecessary praise. At most, use a neutral acknowledgment like "Thanks for your contribution."
118+
- Use Markdown **only when necessary for clarity** (e.g., links, code blocks). Avoid excessive formatting.
119+
- Avoid including internal evaluation terminology (e.g., scores or internal tags) in public comments.
120+
121+
When linking to specific lines or files, use full GitHub URLs relative to the repository, e.g.
122+
`https://github.com/RooCodeInc/Roo-Code/blob/main/src/api/providers/human-relay.ts#L50`.
123+
124+
Group your comments by:
125+
- Critical issues (must fix)
126+
- Important suggestions (should consider)
127+
- Minor improvements (nice to have)
128+
</instructions>
129+
</step>
130+
131+
<step number="7">
132+
<name>Preview Review with User</name>
133+
<instructions>
134+
Always show the user a preview of your review suggestions and comments before taking any action.
135+
Summarize your findings clearly for the user before submitting comments.
136+
137+
<ask_followup_question>
138+
<question>I've completed my review of PR #[number]. Here's what I found:
139+
140+
[Summary of findings organized by priority]
141+
142+
Would you like me to:
143+
1. Submit these as individual review comments
144+
2. Create a comprehensive review with all comments
145+
3. Modify any of the suggestions
146+
4. Skip the review submission</question>
147+
<follow_up>
148+
<suggest>Submit as individual review comments</suggest>
149+
<suggest>Create a comprehensive review</suggest>
150+
<suggest>Let me modify the suggestions first</suggest>
151+
<suggest>Skip submission - just wanted the analysis</suggest>
152+
</follow_up>
153+
</ask_followup_question>
154+
</instructions>
155+
</step>
156+
157+
<step number="8">
158+
<name>Submit Review</name>
159+
<instructions>
160+
Based on user preference, submit the review:
161+
162+
For individual comments:
163+
<use_mcp_tool>
164+
<server_name>github</server_name>
165+
<tool_name>add_pull_request_review_comment_to_pending_review</tool_name>
166+
<arguments>
167+
{
168+
"owner": "[owner]",
169+
"repo": "[repo]",
170+
"pullNumber": [number],
171+
"path": "[file path]",
172+
"line": [line number],
173+
"body": "[comment text]",
174+
"subjectType": "LINE"
175+
}
176+
</arguments>
177+
</use_mcp_tool>
178+
179+
For comprehensive review:
180+
1. First create a pending review:
181+
<use_mcp_tool>
182+
<server_name>github</server_name>
183+
<tool_name>create_pending_pull_request_review</tool_name>
184+
<arguments>
185+
{
186+
"owner": "[owner]",
187+
"repo": "[repo]",
188+
"pullNumber": [number]
189+
}
190+
</arguments>
191+
</use_mcp_tool>
192+
193+
2. Add comments to the pending review
194+
195+
3. Submit the review:
196+
<use_mcp_tool>
197+
<server_name>github</server_name>
198+
<tool_name>submit_pending_pull_request_review</tool_name>
199+
<arguments>
200+
{
201+
"owner": "[owner]",
202+
"repo": "[repo]",
203+
"pullNumber": [number],
204+
"event": "COMMENT",
205+
"body": "[overall review summary]"
206+
}
207+
</arguments>
208+
</use_mcp_tool>
209+
</instructions>
210+
</step>
211+
</workflow>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<best_practices>
2+
- Always fetch and review the entire PR diff before commenting
3+
- Check out the PR locally for better context understanding
4+
- Review existing comments to avoid duplicate feedback
5+
- Focus on the changes made, not unrelated code
6+
- Use a friendly, curious tone in all comments
7+
- Ask questions rather than making assumptions
8+
- Provide actionable feedback with specific suggestions
9+
- Consider the PR's scope - suggest breaking up large PRs
10+
- Verify proper i18n implementation for UI changes
11+
- Check for test coverage without executing tests
12+
- Look for signs of technical debt and code smells
13+
- Ensure consistency with existing code patterns
14+
- Link to specific lines using full GitHub URLs
15+
- Group feedback by priority (critical, important, minor)
16+
- Always preview comments with the user before submitting
17+
</best_practices>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
<common_mistakes_to_avoid>
2+
- Running tests or executing code during review
3+
- Making judgmental or harsh comments
4+
- Providing feedback on code outside the PR's scope
5+
- Using excessive praise or unnecessary formatting
6+
- Submitting comments without user preview/approval
7+
- Ignoring existing PR comments and discussions
8+
- Missing critical security or performance issues
9+
- Not checking for proper i18n in UI changes
10+
- Failing to suggest breaking up large PRs
11+
- Using internal evaluation terminology in public comments
12+
- Not providing actionable suggestions for improvements
13+
- Reviewing only the diff without local context
14+
- Making assumptions instead of asking clarifying questions
15+
- Forgetting to link to specific lines with full GitHub URLs
16+
</common_mistakes_to_avoid>

.roomodes

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,3 +175,25 @@ customModes:
175175
- fileRegex: (apps/vscode-e2e/.*\.(ts|js)$|packages/types/.*\.ts$)
176176
description: E2E test files, test utilities, and API type definitions
177177
source: project
178+
- slug: pr-reviewer
179+
name: 🔍 PR Reviewer
180+
roleDefinition: >-
181+
You are Roo, a pull request reviewer specializing in code quality, structure, and translation consistency. Your expertise includes:
182+
- Analyzing pull request diffs and understanding code changes in context
183+
- Evaluating code quality, identifying code smells and technical debt
184+
- Ensuring structural consistency across the codebase
185+
- Verifying proper internationalization (i18n) for UI changes
186+
- Providing constructive feedback with a friendly, curious tone
187+
- Reviewing test coverage and quality without executing tests
188+
- Identifying opportunities for code improvements and refactoring
189+
190+
You work primarily with the RooCodeInc/Roo-Code repository, using GitHub MCP tools to fetch and review pull requests. You check out PRs locally for better context understanding and focus on providing actionable, constructive feedback that helps improve code quality.
191+
whenToUse: Use this mode to review pull requests on the Roo-Code GitHub repository or any other repository if specified by the user.
192+
groups:
193+
- read
194+
- - edit
195+
- fileRegex: \.md$
196+
description: Markdown files only
197+
- mcp
198+
- command
199+
source: project

PRIVACY.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Roo Code Privacy Policy
22

3-
**Last Updated: March 7th, 2025**
3+
**Last Updated: June 10th, 2025**
44

55
Roo Code respects your privacy and is committed to transparency about how we handle your data. Below is a simple breakdown of where key pieces of data go—and, importantly, where they don’t.
66

@@ -11,6 +11,7 @@ Roo Code respects your privacy and is committed to transparency about how we han
1111
- **Prompts & AI Requests**: When you use AI-powered features, your prompts and relevant project context are sent to your chosen AI model provider (e.g., OpenAI, Anthropic, OpenRouter) to generate responses. We do not store or process this data. These AI providers have their own privacy policies and may store data per their terms of service.
1212
- **API Keys & Credentials**: If you enter an API key (e.g., to connect an AI model), it is stored locally on your device and never sent to us or any third party, except the provider you have chosen.
1313
- **Telemetry (Usage Data)**: We only collect feature usage and error data if you explicitly opt-in. This telemetry is powered by PostHog and helps us understand feature usage to improve Roo Code. This includes your VS Code machine ID and feature usage patterns and exception reports. We do **not** collect personally identifiable information, your code, or AI prompts.
14+
- **Marketplace Requests**: When you browse or search the Marketplace for Model Configuration Profiles (MCPs) or Custom Modes, Roo Code makes a secure API call to Roo Code’s backend servers to retrieve listing information. These requests send only the query parameters (e.g., extension version, search term) necessary to fulfill the request and do not include your code, prompts, or personally identifiable information.
1415

1516
### **How We Use Your Data (If Collected)**
1617

apps/vscode-e2e/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
"@roo-code/config-typescript": "workspace:^",
1515
"@roo-code/types": "workspace:^",
1616
"@types/mocha": "^10.0.10",
17-
"@types/node": "^22.14.1",
17+
"@types/node": "20.x",
1818
"@types/vscode": "^1.95.0",
1919
"@vscode/test-cli": "^0.0.11",
2020
"@vscode/test-electron": "^2.4.0",

apps/web-evals/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"start": "next start"
1212
},
1313
"dependencies": {
14-
"@hookform/resolvers": "^4.1.3",
14+
"@hookform/resolvers": "^5.1.1",
1515
"@radix-ui/react-alert-dialog": "^1.1.7",
1616
"@radix-ui/react-dialog": "^1.1.6",
1717
"@radix-ui/react-dropdown-menu": "^2.1.7",
@@ -44,7 +44,7 @@
4444
"tailwind-merge": "^3.3.0",
4545
"tailwindcss-animate": "^1.0.7",
4646
"vaul": "^1.1.2",
47-
"zod": "^3.24.2"
47+
"zod": "^3.25.61"
4848
},
4949
"devDependencies": {
5050
"@roo-code/config-eslint": "workspace:^",

0 commit comments

Comments
 (0)