skills/code-review-advanced/SKILL.md
Performs evidence-driven code review for pull requests, legacy modules, and quality-critical changes. Use when reviewing complex or multi-file changes, test automation suites, architectural refactors, or hot paths that need analysis of correctness, maintainability, security, performance, test quality, and operability risks. Provides structured feedback with severity-ranked findings, actionable recommendations, and clear rationale. For a fast sanity check of a small diff or single file, use the code-review skill instead.
npx skillsauth add jaktestowac/awesome-copilot-for-testers code-review-advancedInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when a review needs to go beyond style feedback and surface the real engineering risks in a change. It is built for complex pull requests, sensitive code paths, test automation suites, and refactors where a shallow review would miss important trade-offs.
Use this skill when the user asks for things like:
Typical scenarios:
Follow the phases in order.
Before reviewing, establish:
If the user does not provide this information, infer cautiously and list assumptions.
Do not comment on code in isolation if context is available.
Check:
If the request is based on a diff or pull request, identify:
Use ./resources/review-checklist.md as the primary checklist.
Always review at least these dimensions:
When the reviewed code touches automated tests, also load ./resources/test-automation-review-lens.md.
Each meaningful finding should contain:
Do not inflate severity.
Use these severity rules:
Use ./resources/review-report-template.md for the response structure.
The review should usually include:
approve, comment, or request changesKeep feedback concrete and teammate-friendly. Prefer "Consider extracting this dependency boundary because..." over vague criticism like "This feels messy."
Before delivering the review, verify:
The preferred output is a structured markdown review using the template in ./resources/review-report-template.md.
If the user asks for a shorter response, compress the output but preserve:
If the user asks for an example of the expected result, use ./resources/example-review.md.
./resources/review-checklist.md - multi-lens checklist for advanced reviews./resources/review-report-template.md - reusable review output structure./resources/example-review.md - example filled review with severity-ranked findings./resources/test-automation-review-lens.md - extra review criteria for test suites and automation codecode-review - quick, lightweight review for small diffs and single filesunslop-tests - the test lens: named tells in test code, severity-tiered, with Tier 1 findings proven by executiontech-debt-analysis - when review findings should feed a broader debt assessmentanalyzing-regression-scope - when the review should be paired with a retest scope analysisThis skill is complete when:
approve, comment, or request changes) is giventesting
Tests the customization assets themselves - skills, prompts, custom agents, instructions - the way a product is tested: activation cases that check an asset fires when it should and stays quiet when it should not, output-contract cases, safety cases, collision cases between assets competing for the same trigger, a weighted rubric scored blind, and a baseline-versus-candidate gate before an edit ships. Use when a skill is edited and nobody knows whether behaviour changed, when two skills fight over the same request, when a description is being tuned for discoverability, when a collection has grown past manual spot-checking, or when the request mentions skill evals, prompt regression, or "does this skill actually work".
development
Shapes QA output for the person who has to act on it: result and blocker in the first two lines, one decision per report, findings ordered by what they cost, the long artifact in a file and the decisions in the message, and magnitude stated in units the reader can count. Use when a report is accurate but nobody acts on it, when a finding set is too long to read under time pressure, when the same findings must be retold for a developer, a release manager, and an on-call engineer, or when the request mentions "too long", "make this readable", "just tell me what to do", "so what", or "summarize this for stakeholders". Pairs with unslop-answers, which makes the same report honest.
testing
Verifies that the lines and branches a change actually touched are executed by tests, using LCOV or Cobertura diff coverage instead of whole-repo percentages, and escalates uncovered high-risk changes into a blocking finding. Use when a pull request needs a coverage gate that unrelated tests cannot satisfy, when total coverage looks healthy but the diff is untested, when wiring diff coverage into CI, or when someone claims a change is covered because the suite is green.
development
Cuts AI tells from test code: tests that pass without proving anything, tautological assertions, mock-only tests, hardcoded waits, coverage theater, vague names, swallowed errors, retries used as fixes. Use whenever test code is written, changed, or reviewed, including tests produced as a side effect of a feature task, and when the request mentions "review these tests", "are these tests any good", "this test always passes", "this suite is flaky", or "clean up these tests". Must always apply to test code.