Skip to content

Instantly share code, notes, and snippets.

@markedmondson
Created February 25, 2026 20:56
Show Gist options
  • Select an option

  • Save markedmondson/920dfe8e75b2700a096b1a5c282b38df to your computer and use it in GitHub Desktop.

Select an option

Save markedmondson/920dfe8e75b2700a096b1a5c282b38df to your computer and use it in GitHub Desktop.
Claude Code Review Assessment — Feb 2026

Claude Code Review Assessment — Feb 2026

We reviewed 4 PRs where Claude's automated reviews were flagged as weak or wrong. Here's what we found and what we changed.

What Went Wrong

1. Suggestions that would break code (PR #42573)

  • Suggested JS optional chaining on the left side of an assignment (?.value = 'none') — that's a syntax error
  • Suggestion blocks omitted existing attributes from elements, so clicking "Apply suggestion" would silently drop data-behavior

2. Pure cheerleading, zero substance (PR #42397)

  • All 5 comments were empty praise: "Excellent conditional rendering!", "Perfect placement!", "Nice refactoring!"
  • The one actual suggestion (add a model validation when the DB already enforces null: false) was unnecessary

3. Missed the architecture, caught the lint (PR #42603)

  • Claude flagged string normalization and ENV memoization
  • Human reviewers immediately saw the real problem: should use JWKS standards (.well-known/jwks), not a custom PEM endpoint. Claude completely missed this

4. Generic pattern-matching without domain understanding (PR #42367)

  • Flagged a "race condition" that can't happen (one job per message, always)
  • Called new_record? "fragile" when persistence state IS the business signal
  • Suggested a method rename that was arguably worse than the original
  • Then doubled down on the same points in a second review round

What We Changed in the Skill

Three new sections added to .claude/skills/code-review/SKILL.md:

Architecture Review (Highest Priority) — "Is this the right approach?" comes before line-level feedback. If the architecture is wrong, don't polish tactical details.

Do No Harm — Verify syntax before suggesting code. Include ALL existing attributes in suggestions. Don't flag hypothetical problems that can't happen. One round of feedback only.

No Empty Praise — Every inline comment must contain actionable feedback. If there's nothing to say, say nothing. Aim for 2-5 substantive comments, not 10+ minor ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment