Loading...
Loading...
Checklists and anti-patterns for reviewing Go code. Covers API design, error handling, concurrency, interfaces, safety, performance, naming, testing, functional options, logging, and deterministic simulation testing.
npx skill4agent add stuckinforloop/harness go-review| Reference | Topics |
|---|---|
| api-design | Export audit, signature evolution, parameter/result object usage |
| errors | Log-and-return, missing |
| interfaces | Compile-time checks, bloat detection, pointer-to-interface, driver pattern |
| concurrency | Embedded mutexes, goroutine leaks, WaitGroup races, unbounded spawning |
| safety | Bare type assertions, missing defer, panic in library, boundary copies |
| performance | |
| code-style | Naming, declarations, organization — combined style checks |
| testing | Table-driven tests, assert vs require, bloated tables, goleak |
| functional-options | Exposed options struct, missing defaults, missing WithX |
| logging | fmt.Sprintf in logs, wrong level, raw structs, global logger in library |
| deterministic-simulation-testing | Direct time/rand/os calls, non-deterministic maps, missing seed logging, over-abstracted DST |
%w%s%q==var _ I = (*T)(nil)*Interfacectx.Done()wg.Addos.Exitfmt.Sprint[]bytestring+assertfmt.Sprintferr.Error()LogValuer*Contexttime.Now()rand.*os.*