SkillVaultskills Browse all 500 skills

Code Quality · Version 1.3.0 · Reviewed 2026-08-02

Go Error Handling Reviewer

Make a defensible decision about error wrapping and sentinel design with evidence, explicit trade-offs, and a verification plan.

4 method steps 5 documented failure modes 4 diagnostic checks 7 quality gates

Reviews error wrapping, sentinel design, context propagation, and the boundaries where errors should be handled.

₹149 one-time

Get this skill archive

What this skill helps you do

  • Error wrapping
  • Sentinel design
  • Context cancellation

How Go Error Handling Reviewer works

You provide

The code, its invariants, and how failures currently surface

It inspects

Error paths and lifetime handling for error wrapping

It decides

A sentinel design change that makes invalid states unrepresentable

You verify

A deliberately invalid input fails clearly at the boundary

What it checks first

Go Error Handling Reviewer reviews error wrapping, sentinel design, context propagation, and the boundaries where errors should be handled. Use it when the work involves Error wrapping, Sentinel design, Context cancellation.

  1. Whether errors are handled where they can be resolved or merely passed upward with less context.
  2. Whether types make invalid states unrepresentable or merely document intent.
  3. Ownership and lifetime of resources, and whether every path releases what it acquired.
  4. Whether abstractions hide complexity or relocate it somewhere harder to inspect.

Failure modes it recognizes

  • A caught exception logged and swallowed, allowing execution to continue with invalid state.
  • Error types collapsed into a single generic type, losing the ability to handle cases differently.
  • Nullable fields encoding several distinct meanings, forcing every caller to guess.
  • A helper abstraction with one caller, which adds indirection without removing duplication.
  • Silent coercion masking a type mismatch until it surfaces as corrupt data.

Answers it will reject

  • Rewriting for elegance without a behavioral test suite, which converts known code into unknown risk.
  • Adding a lint rule to enforce a pattern nobody has justified.
  • Treating warnings as noise, which trains the team to ignore the one that matters.

Decision rules it applies

  • Fail fast on invalid state rather than continuing with a defaulted value.
  • Encode invariants in types and constraints where the language allows it.
  • Prefer local clarity over global cleverness; the reader is the constraint.

Evidence it asks for

  • Confirm each error path is exercised by a test rather than assumed correct.
  • Check that a deliberately invalid input produces a clear failure at the boundary.
  • Compare behavior before and after refactoring with characterization tests.

The method inside

  1. Map the artifact, actors, boundaries, and invariants relevant to error wrapping.
  2. Trace concrete failure or abuse paths for sentinel design; do not report checklist items without a mechanism.
  3. Prioritize context cancellation findings by impact, likelihood, confidence, and cost of correction.
  4. Recommend the smallest defensible change, then define how an independent reviewer can verify it.

Deliverables

  • Error wrapping assessment
  • Sentinel design decision and action plan
  • Context cancellation verification checklist

Evidence requirements

  • Functional and quality requirements
  • Scale, latency, consistency, cost, and compliance constraints
  • Current topology and alternatives considered

Quality gates

  • Every material claim traces to supplied evidence or is labeled as a hypothesis.
  • The response follows the declared deliverable contract.
  • No execution, access, measurement, or verification is invented.
  • Secrets and personal data are redacted rather than repeated.
  • The user receives a concrete independent verification step.
  • The relevant failure modes in this domain were considered rather than only the reported symptom.
  • No listed anti-pattern was recommended as a solution.

Example task

Input

Review our Go service error handling. We log at every level and still cannot tell where failures originate in production.

Expected output

Logging at every level produces duplicates without adding location, because the message is repeated rather than the context. Wrap once with the operation name at each boundary and log once at the top; that gives a single line containing the full causal chain...

Boundaries and compatibility

Ideal for

  • Error wrapping: produce a decision or artifact grounded in supplied evidence.
  • Sentinel design: produce a decision or artifact grounded in supplied evidence.
  • Context cancellation: produce a decision or artifact grounded in supplied evidence.

Out of scope

  • Producing a generic reference architecture without requirements
  • Hiding material trade-offs behind best-practice language

Agent compatibility

  • GitHub Copilot custom agents
  • Claude Agent Skills / SKILL.md
  • Any instruction-following chat model

Tool policy: Advisory by default. No tools are assumed. If the host provides tools, use read-only evidence gathering unless the user explicitly approves a scoped write or execution action.