Add a conservative metadata fixer for missing risk and source fields, cover it with tests, and backfill the remaining skills using explicit source inference only when the provenance is clear. Fall back to the repo-documented defaults when the file does not support a stronger claim. Refs #365
2.3 KiB
2.3 KiB
name, description, risk, source
| name | description | risk | source |
|---|---|---|---|
| comprehensive-review-pr-enhance | Generate structured PR descriptions from diffs, add review checklists, risk assessments, and test coverage summaries. Use when the user says "write a PR description", "improve this PR", "summarize my changes", "PR review", "pull request", or asks to document a diff for reviewers. | unknown | community |
Pull Request Enhancement
Workflow
- Run
git diff <base>...HEAD --statto identify changed files and scope - Categorise changes: source, test, config, docs, build, styles
- Generate the PR description using the template below
- Add a review checklist based on which file categories changed
- Flag breaking changes, security-sensitive files, or large diffs (>500 lines)
PR Description Template
## Summary
<!-- one-paragraph executive summary: what changed and why -->
## Changes
| Category | Files | Key change |
|----------|-------|------------|
| source | `src/auth.ts` | added OAuth2 PKCE flow |
| test | `tests/auth.test.ts` | covers token refresh edge case |
| config | `.env.example` | new `OAUTH_CLIENT_ID` var |
## Why
<!-- link to issue/ticket + one sentence on motivation -->
## Testing
- [ ] unit tests pass (`npm test`)
- [ ] manual smoke test on staging
- [ ] no coverage regression
## Risks & Rollback
- **Breaking?** yes / no
- **Rollback**: revert this commit; no migration needed
- **Risk level**: low / medium / high — because ___
Review Checklist Rules
Add checklist sections only when the matching file category appears in the diff:
| File category | Checklist items |
|---|---|
| source | no debug statements, functions <50 lines, descriptive names, error handling |
| test | meaningful assertions, edge cases, no flaky tests, AAA pattern |
| config | no hardcoded secrets, env vars documented, backwards compatible |
| docs | accurate, examples included, changelog updated |
security-sensitive (auth, crypto, token, password in path) |
input validation, no secrets in logs, authz correct |
Splitting Large PRs
When diff exceeds 20 files or 1000 lines, suggest splitting by feature area:
git checkout -b feature/part-1
git cherry-pick <commits-for-part-1>
Resources
resources/implementation-playbook.md— Python helpers for automated PR analysis, coverage reports, and risk scoring