go-performance-test

Compare Go benchmark results against committed baselines using benchstat.

1|Updated Jun 20, 2026
One-click install
npx skills add https://github.com/shafibabar/SDLC-Artifact-Factory --skill go-performance-test
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: go-performance-test
Source: https://github.com/shafibabar/SDLC-Artifact-Factory/tree/main/skills/go-performance-test
Command: npx skills add https://github.com/shafibabar/SDLC-Artifact-Factory --skill go-performance-test

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires golang.org/x/perf/cmd/benchstat, and includes references (resource) components.

What problem does it solve?

This skill prevents performance degradation by replacing manual, ad-hoc benchmarking with a rigorous, CI-enforced statistical gate that catches regressions before they reach production.

Core Features & Use Cases

  • Statistical Regression Gate: Uses benchstat and a 10-run sweep to distinguish between genuine performance regressions and CI runner noise.
  • Committed Baselines: Maintains a version-controlled performance baseline that ensures performance is treated as a first-class requirement.
  • Use Case: When a developer introduces a change that impacts hot-path latency, this skill automatically fails the build if the regression exceeds a 12% threshold with statistical significance, forcing a deliberate review of the performance trade-off.

Quick Start

Run the go-performance-test skill to validate the current internal package benchmarks against the committed baseline and generate a regression report.

Frequently Asked Questions about go-performance-test

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate performance regression testing for Go in CI?▼

Automating performance regression testing for Go in CI is done by comparing current benchmark metrics against a committed baseline using benchstat. This skill enforces a CI gate that fails builds when latency or memory regressions exceed a 12% threshold.

How does benchstat distinguish real performance regressions from CI runner noise?▼

Benchstat distinguishes real performance regressions from CI runner noise by running a 10-sweep statistical analysis. This process identifies significant changes in Go benchmark latency and memory allocation rather than relying on a single run.

What is the best way to enforce performance budgets for critical Go handler logic?▼

The best way to enforce performance budgets for critical Go handler logic is by maintaining a version-controlled baseline. This skill automatically blocks deployments if a benchmark regression exceeds a statistically significant 12% threshold.

Can I fail a Go build automatically when a benchmark regression exceeds a specific threshold?▼

Yes, you can fail a Go build automatically when a benchmark regression exceeds a specific threshold. This skill uses benchstat to detect statistically significant regressions over 12% in latency or memory and gates the CI pipeline.

Do I need a committed baseline to run statistical benchmark analysis on my Go application?▼

Yes, a committed baseline is required to run statistical benchmark analysis on your Go application. This version-controlled baseline ensures performance is treated as a first-class requirement to detect regressions accurately.

Why should I replace manual ad-hoc benchmarking with a statistical regression gate?▼

You should replace manual ad-hoc benchmarking with a statistical regression gate to prevent performance degradation. This approach uses rigorous benchstat analysis to catch significant regressions before they reach production.