Commit cb1d81e316fc
Changed files (1)
dots
config
claude
skills
Nixpkgs
dots/config/claude/skills/Nixpkgs/review-checklist.md
@@ -1,5 +1,43 @@
# Nixpkgs PR Review Checklist
+## For AI Code Reviews
+
+When performing automated PR review, prioritize checking these items in order:
+
+**Priority 0 (Blocking - Must Fix Before Merge):**
+1. `finalAttrs` pattern used (not `rec`) - see Code Quality Checks section 1 below
+2. All required meta attributes present: `description`, `homepage`, `license`, `maintainers`
+3. `mainProgram` specified for CLI tools
+4. SRI hash format (`hash = "sha256-..."` not old-style `sha256 = "..."`)
+
+**Priority 1 (Should Fix):**
+5. All version references use `finalAttrs.version` (in `src.rev`, `ldflags`, `changelog`)
+6. Dependencies correctly categorized (`nativeBuildInputs` vs `buildInputs`)
+7. Tests are enabled (`doCheck` not disabled without good reason)
+
+**Priority 2 (Nice to Have):**
+8. Changelog URL includes `finalAttrs.version` reference
+9. Package structure follows `pkgs/by-name` convention
+10. `passthru.tests` included where applicable
+
+**Before Review - Building and Testing:**
+
+Run this command to build and test the changes:
+```bash
+nixpkgs-review pr <number> --approve-pr --print-result
+```
+
+The `--approve-pr` flag marks the PR as reviewed, and `--print-result` shows which packages built successfully. Include the build results in your review context - they help verify the package actually works.
+
+**Review Output Format:**
+- List findings with clear priority tags: `[P0]`, `[P1]`, `[P2]`
+- Include file path and line number for each finding
+- Provide `\`\`\`suggestion` blocks for fixes where applicable
+- Reference build output when discussing functionality
+- End with verdict: "Ready to merge" or "Needs attention" with summary
+
+---
+
## General Review Process
1. **Check CI Status**
@@ -9,8 +47,11 @@
2. **Build and Test**
```bash
- nixpkgs-review pr <number>
+ nixpkgs-review pr <number> --approve-pr --print-result
```
+
+ The `--approve-pr` flag marks the PR as reviewed after successful build.
+ The `--print-result` flag shows which packages were built and tested.
3. **Verify the package works**
- Test `--version` flag