Setup automated Gemini PR review workflow#16
Conversation
Add an agy-backed GitHub Actions review workflow and project-specific Gemini review rules for static pull request feedback. Co-Authored-By: Gemini CLI <noreply@google.com> 👾 Generated with [Letta Code](https://letta.com) Co-Authored-By: Letta Code <noreply@letta.com>
|
Note Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported. |
AI Code ReviewWaiting for authentication (timeout 30s)... |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c7d1c50f8a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} | ||
| GEMINI_FORCE_FILE_STORAGE: "true" | ||
| TZ: UTC | ||
| run: | | ||
| agy --print-timeout 10m -p "$(cat review_prompt.md)" > agy_review.md |
There was a problem hiding this comment.
Use an auth path that agy supports
In a GitHub-hosted ubuntu-latest runner there is no persistent Antigravity keyring/browser/LOAS session, and the official Antigravity CLI auth docs describe keyring/browser auth and Linux gLinux LOAS rather than GEMINI_API_KEY. When this workflow reaches the review step with the secret present, exporting only GEMINI_API_KEY does not authenticate agy, so the job will prompt, hang, or fail instead of producing agy_review.md; use a supported noninteractive auth setup or a CLI that actually accepts this API key.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Acknowledged. This is valid: the current agy workflow does not have a supported noninteractive authentication path with GEMINI_API_KEY, and the workflow run confirmed it posted an OAuth timeout instead of a real review. Closing this PR for now; we can reopen or recreate it once agy documents/supports key-based CI authentication.
| from textwrap import dedent | ||
|
|
||
| max_diff_bytes = 200_000 | ||
| rules = Path('.gemini/review-rules.md').read_text(encoding='utf-8') |
There was a problem hiding this comment.
Keep review rules from the trusted base
For PRs that modify .gemini/review-rules.md, this reads the rules from the checked-out PR workspace, so the untrusted change becomes part of the trusted instruction block before reviewing its own diff. That lets a PR suppress or reshape the automated review exactly when the rule file changes; fetch/read the base-branch copy of the rules or embed them in the workflow instead.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Acknowledged. This is valid too: trusted review instructions should not be read from the untrusted PR checkout. If we revive this workflow later, the rules should come from the base branch or be embedded in the workflow.
|
Closing this PR for now. The experiment confirmed that the current Antigravity CLI ( I checked We can reopen or recreate this PR once |
Summary
GEMINI_API_KEYis unavailableVerification
uv run python - <<'PY' ...YAML/Markdown validationuv run python -m unittest discover -s tests -vNote
The workflow assumes the installed Antigravity CLI supports headless authentication through
GEMINI_API_KEY; if upstream agy does not support that in CI yet, the workflow may need an authentication adjustment.🚀 Generated with Gemini CLI