← ClaudeAtlas

go-turbo-reviewlisted

Review a Go diff for performance only, one line per finding.
hendriknielaender/go-turbo · ★ 1 · Code & Development · score 66
Install: claude install-skill hendriknielaender/go-turbo
# go-turbo-review Review the diff for performance. One line per finding: location, what's wrong, what replaces it. The best outcome is no actionable regression and no speculative complexity. Two directions matter equally. Reviewers reliably catch the added allocation; they reliably miss the `sync.Pool` added to a cold path, which costs a lifetime bug and buys nothing. Flag both. ## Format `L<line>: <tag> <what>. <fix>.` — or `<file>:L<line>:` for multi-file diffs. Tags: `alloc:` avoidable allocation on a plausibly hot path. `escape:` value pushed to the heap by code shape. `algo:` complexity that will not hold at scale. `sync:` unbounded goroutines, contention, over-wide critical section, serialization through a channel. `io:` per-item syscall, query, or round trip. `net:` undrained response body, missing timeout, transport misconfiguration, per-request client construction. `leak:` goroutine or memory retention. `premature:` optimization with no evidence, costing readability or safety — the replacement is the simpler code. `layout:` padding or false sharing worth fixing at this volume. ## Examples Not this: > "Have you considered whether this slice could be preallocated? It might > improve performance under certain conditions." This: - `L34: alloc: append into nil slice, len(rows) known. make([]Result, 0, len(rows)).` - `L12: escape: measured constructor allocation comes from returning *Point; identity and nil are unused. Return Point by value and remeasure.` - `L88