-
Notifications
You must be signed in to change notification settings - Fork 2.8k
ROO-531: Fix integration-test workflow skip messaging for fork PRs #10732
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
roomote
wants to merge
1
commit into
main
Choose a base branch
from
feature/ROO-531-fix-integration-test-workflow
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+110
−0
Draft
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,92 @@ | ||
| # Contributing from a Fork | ||
|
|
||
| Thank you for contributing to Roo Code! If you're contributing from a forked repository, please be aware of the following regarding CI workflows. | ||
|
|
||
| ## Integration Tests for Fork PRs | ||
|
|
||
| **Important**: Integration tests (E2E tests) will be **skipped automatically** for pull requests from forked repositories. | ||
|
|
||
| ### Why Are Tests Skipped? | ||
|
|
||
| For security reasons, GitHub does not expose repository secrets (like API keys) to workflows triggered by pull requests from forks. This is a critical security feature that prevents malicious actors from: | ||
|
|
||
| - Stealing API keys | ||
| - Running up costs on paid API services | ||
| - Accessing sensitive infrastructure | ||
|
|
||
| Since our integration tests require an OpenRouter API key (`OPENROUTER_API_KEY` secret) to test real AI interactions, they cannot run on fork PRs without this secret. | ||
|
|
||
| ### What This Means for Your PR | ||
|
|
||
| 1. **Your PR will show integration tests as "skipped"** - this is expected and normal | ||
| 2. **Other CI checks will still run** - linting, type checking, unit tests, etc. | ||
| 3. **A maintainer will review your PR** - after code review, maintainers can: | ||
| - Trigger integration tests manually | ||
| - Merge your PR to a branch in the main repo where tests can run | ||
| - Run tests locally before merging | ||
|
|
||
| ### What You Should Do | ||
|
|
||
| 1. **Ensure all other CI checks pass** - unit tests, linting, type checking | ||
| 2. **Test your changes locally** if possible: | ||
| - Follow the E2E testing guide in [`apps/vscode-e2e/README.md`](../apps/vscode-e2e/README.md) | ||
| - Set up your own OpenRouter API key for local testing | ||
| 3. **Provide clear testing evidence** in your PR description: | ||
| - Screenshots or videos of functionality working | ||
| - Description of manual testing performed | ||
| - Any relevant logs or output | ||
| 4. **Be patient** - maintainers will run full integration tests during review | ||
|
|
||
| ### Running Integration Tests Locally | ||
|
|
||
| If you want to run integration tests locally before submitting your PR: | ||
|
|
||
| 1. **Get an OpenRouter API key**: | ||
|
|
||
| - Sign up at [OpenRouter](https://openrouter.ai/) | ||
| - Add credits to your account (tests cost ~$0.10-0.50 to run) | ||
|
|
||
| 2. **Set up local environment**: | ||
|
|
||
| ```bash | ||
| cd apps/vscode-e2e | ||
| cp .env.local.sample .env.local | ||
| # Edit .env.local and add your OPENROUTER_API_KEY | ||
| ``` | ||
|
|
||
| 3. **Run the tests**: | ||
| ```bash | ||
| pnpm test:ci | ||
| ``` | ||
|
|
||
| See the [E2E Testing README](../apps/vscode-e2e/README.md) for complete instructions. | ||
|
|
||
| ### Alternative: Request Maintainer Testing | ||
|
|
||
| If you cannot run integration tests locally, you can: | ||
|
|
||
| 1. Submit your PR with all other CI checks passing | ||
| 2. Add a comment requesting integration test runs | ||
| 3. A maintainer will review your code and run integration tests | ||
|
|
||
| ## Other CI Workflows | ||
|
|
||
| The following workflows **will run** on fork PRs: | ||
|
|
||
| - ✅ **Linting** - Code style and quality checks | ||
| - ✅ **Type checking** - TypeScript type validation | ||
| - ✅ **Unit tests** - Fast, isolated tests without external dependencies | ||
| - ✅ **Translation checks** - Ensuring all translations are complete | ||
| - ✅ **Dependency checks** (Knip) - Unused dependency detection | ||
|
|
||
| These workflows provide significant code quality assurance even without integration tests. | ||
|
|
||
| ## Questions? | ||
|
|
||
| If you have questions about fork contributions or testing: | ||
|
|
||
| - Check the [main CONTRIBUTING guide](../../CONTRIBUTING.md) | ||
| - Ask in the PR discussion | ||
| - Reach out in the community channels | ||
|
|
||
| Thank you for contributing to Roo Code! | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Broken relative link: this file is at
.github/FORK_CONTRIBUTORS.md, so../../goes outside the repo root. The correct path is../CONTRIBUTING.md(one level up to repo root).Fix it with Roo Code or mention @roomote and request a fix.