scripts/assets/code-review-instructions.md
AGENTS.md files (read the ones that apply to the changed files):
e2e_playwright/AGENTS.md — for e2e tests (inside e2e_playwright/)frontend/AGENTS.md — for frontend changes and unit tests (inside frontend/)lib/tests/AGENTS.md — for Python unit tests (inside lib/tests/)lib/AGENTS.md — for any Python changes (*.py files)lib/streamlit/AGENTS.md — for any Python library changes (inside lib/streamlit/)proto/streamlit/proto/AGENTS.md — for protobuf changes (inside proto/streamlit/proto/)eval, unsafe-eval, Function() constructor)subprocess, exec, eval in Python)postMessage handlingst.login()/st.logout() and OAuth token handling/assessing-external-test-risk, and the review includes a clear external_test recommendation.AGENTS.md first to get an overview of the project.AGENTS.md files based on changed files (see checklist above)./assessing-external-test-risk and determine whether this branch should include @pytest.mark.external_test coverage.Write your review using valid GitHub Flavored Markdown in the following structure:
## Summary
[Brief overview and the main changes introduced.]
## Code Quality
[Brief assessment of code structure, patterns, and maintainability. Note any issues with specific file references and line numbers.]
## Test Coverage
[Evaluation of unit and e2e test coverage. Are the changes adequately tested?]
## Backwards Compatibility
[Analysis of any breaking changes. Will this affect existing users?]
## Security & Risk
[Any security concerns or regression risks identified.]
## External test recommendation
[State `external_test` recommendation (Yes/No), triggered categories (or "None"), key evidence from changed files, suggested external test focus areas, and confidence plus assumptions/gaps.]
## Accessibility
[Assessment of accessibility considerations for frontend changes.]
## Recommendations
[Specific suggestions for improvement, if any. Use a numbered list for actionable items.]
## Verdict
**[APPROVED / CHANGES REQUESTED]**: [One sentence summary of the overall assessment.]
Verdict criteria:
- **APPROVED**: If there are no critical/merge-blocking issues. Minor suggestions or optional improvements should not block approval — those can be addressed in follow-up PRs.
- **CHANGES REQUESTED**: Only use this for merge-blocking issues such as: bugs, security vulnerabilities, breaking changes, missing required tests, or violations of documented patterns. Optional improvements, style preferences, and "nice to have" suggestions should NOT result in CHANGES REQUESTED.
---
*This is an automated AI review. Please verify the feedback and use your judgment.*