-
Notifications
You must be signed in to change notification settings - Fork 1
ci: run pytest for vero and the six baseline agents #63
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
Open
shehabyasser-scale
wants to merge
1
commit into
pr3-harness-bench
Choose a base branch
from
ci/add-test-workflow
base: pr3-harness-bench
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.
+89
−0
Open
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,89 @@ | ||
| name: tests | ||
|
|
||
| # Nothing in this repository ran tests before this workflow: the only checks on a | ||
| # pull request were Greptile Review and Socket Security, neither of which invokes | ||
| # pytest. PR #61 sat open with a red target suite as a result. | ||
|
|
||
| on: | ||
| pull_request: | ||
| push: | ||
| branches: [main] | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| concurrency: | ||
| group: tests-${{ github.ref }} | ||
| cancel-in-progress: true | ||
|
|
||
| env: | ||
| # Every package here resolves from public PyPI (vero/pyproject.toml pins that | ||
| # index explicitly), so no private-registry credentials are needed. Pinned so a | ||
| # runner image bump cannot silently change the interpreter: vero requires | ||
| # >=3.11,<3.14 and the six targets require >=3.12. | ||
| UV_PYTHON: "3.12" | ||
|
|
||
| jobs: | ||
| vero: | ||
| name: vero | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 25 | ||
| env: | ||
| # The task compiler refuses to emit a task whose declared credentials are | ||
| # absent ("declared task credentials are missing", compiler.py), so the | ||
| # build tests need these present. Placeholders only: nothing dials them, | ||
| # and port 1 fails fast instead of hanging if anything ever tries. | ||
| OPENAI_API_KEY: ci-not-a-real-key | ||
| OPENAI_BASE_URL: http://127.0.0.1:1/v1 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
|
|
||
| - name: Install uv | ||
| run: | | ||
| curl -LsSf https://astral.sh/uv/install.sh | sh | ||
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | ||
|
|
||
| - name: Install dependencies | ||
| working-directory: vero | ||
| # --locked fails rather than relocking, so a pyproject edit that forgets | ||
| # to update uv.lock is a visible error instead of a silent resolve. | ||
| run: uv sync --locked | ||
|
|
||
| - name: Run tests | ||
| working-directory: vero | ||
| run: uv run pytest -q | ||
|
|
||
| targets: | ||
| # The six editable baseline agents. Each is its own uv project with its own | ||
| # lock, so they get one job apiece rather than a shared environment. | ||
| name: ${{ matrix.benchmark }} | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 15 | ||
| strategy: | ||
| # One broken agent should not mask the state of the other five. | ||
| fail-fast: false | ||
| matrix: | ||
| benchmark: | ||
| - browsecomp-plus | ||
| - gaia | ||
| - officeqa | ||
| - swe-atlas-qna | ||
| - swe-bench-pro | ||
| - tau3 | ||
| steps: | ||
| # No `submodules: recursive`: the only submodule is the BrowseComp-Plus | ||
| # upstream corpus, which no test reads. | ||
| - uses: actions/checkout@v4 | ||
|
|
||
| - name: Install uv | ||
| run: | | ||
| curl -LsSf https://astral.sh/uv/install.sh | sh | ||
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | ||
|
|
||
| - name: Install dependencies | ||
| working-directory: harness-engineering-bench/${{ matrix.benchmark }}/baseline/target | ||
| run: uv sync --locked | ||
|
|
||
| - name: Run tests | ||
| working-directory: harness-engineering-bench/${{ matrix.benchmark }}/baseline/target | ||
| run: uv run pytest -q | ||
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.
cancel-in-progress: trueusesgithub.refas the group key, so onpushtomainevery new commit cancels the still-running tests for the previous commit. If commit A introduces a regression that is independent of commit B, A's run gets cancelled before it can report the failure — you'd only ever see B's result. Making the flag conditional on the event type keeps the compute-saving behaviour on PRs while letting every main-branch push run to completion.Prompt To Fix With AI