name: review-pr description: Review an existing pull request for the torrust-tracker project. Covers checklist-based PR quality verification, code style standards, test requirements, documentation, and review feedback. Use only when a PR already exists. metadata: author: torrust version: "1.0"
Reviewing a Pull Request
Use this skill only when a pull request exists (PR number or URL is available).
If there is no PR yet and you need to validate task completion on a local branch, use:
.github/skills/dev/task-reviews/review-task/SKILL.md.
Quick Overview Approach
- Read the PR title and description for context
- Check the diff for scope of change
- Identify the affected packages and components
- Apply the checklist below
PR Review Checklist
PR Metadata
- Title follows Conventional Commits format
- Description clearly explains what changes were made and why
- Issue is linked (
Closes #<number>orRefs #<number>) - Target branch is
develop(notmain)
Code Quality
- Code follows existing patterns in affected packages
- No unused imports, variables, or functions
- No
#[allow(...)]suppressions unless clearly justified with a comment - Errors handled properly (use
thiserrorfor structured errors, avoid.unwrap()) - No security vulnerabilities (OWASP Top 10 awareness)
Tests
- New functionality has unit tests
- Integration tests added if applicable
- All existing tests still pass
- Test code is clean, readable, and maintainable
Documentation
- Public API items have doc comments
-
AGENTS.mdupdated if architecture changed - Markdown docs updated if user-facing behavior changed
- Spell check: new technical terms added to
project-words.txt
Rust-Specific
- Imports grouped: std → external → internal
- Line length within
max_width = 130 - GPG-signed commits
Providing Feedback
Categorize comments to help the author prioritize:
- Blocker — must fix before merge (correctness, security, breaking changes)
- Suggestion — improvement recommended but not blocking
- Nit — minor style/readability point
Standards Reference
All code quality standards are defined in the root AGENTS.md. When pointing to a
standard, reference the relevant section of AGENTS.md.