Versions in this module Expand all Collapse all v0 v0.2.1 Aug 4, 2026 Changes in this version + const RegressionUnitMicroseconds + const RegressionUnitRPS + const ReportSchemaVersion + func WriteReport(path string, report Report) error + type Comparison struct + Baseline ReportIdentity + Current ReportIdentity + Metrics []ComparisonMetric + Passed bool + Regressions []ComparisonMetric + Rules []RegressionRule + func CompareReports(baseline, current Report, rules []RegressionRule) (Comparison, error) + type ComparisonMetric struct + AbsoluteChange float64 + AbsoluteUnit string + Baseline float64 + Change float64 + Current float64 + Key string + Limit *float64 + Metric RegressionMetric + MinimumChange *float64 + MinimumChangeUnit string + Outcome string + Unit string + WithinLimit *bool + type Config struct + BaselinePath string + CPUDuration time.Duration + Concurrency int + Duration time.Duration + ErrorOutput io.Writer + FailOn string + FailOnRegression string + Metadata Metadata + NoProgress bool + OpenAPIPath string + Output io.Writer + OutputDir string + PprofURL string + ProfileTypes string + RPS int + ReportPath string + RequestTimeout time.Duration + SampleCount int + SampleInterval time.Duration + SkipLoad bool + TargetURL string + ToolVersion string + TopFunctions int + func DefaultConfig() Config + func (cfg Config) Validate() error + type FunctionStat struct + Function string + Percentage float64 + type GateError struct + Regressions int + ThresholdViolations int + func (err *GateError) Error() string + type Metadata struct + Label string + Ref string + Repository string + Revision string + type ProfileAnalysis struct + Functions []FunctionStat + ProfileType string + type RegressionMetric string + const RegressionAlloc + const RegressionBlock + const RegressionCPU + const RegressionErrorRate + const RegressionGoroutine + const RegressionLatency + const RegressionThroughput + type RegressionRule struct + Limit float64 + Metric RegressionMetric + MinimumChange float64 + MinimumChangeUnit string + func ParseRegressionRules(value string) ([]RegressionRule, error) + type Report struct + Analysis []ProfileAnalysis + Comparison *Comparison + LoadStats *ReportLoad + Metadata Metadata + Profiles []ReportProfile + RunConfig ReportRunConfig + SchemaVersion string + Thresholds ThresholdResult + Timestamp time.Time + ToolVersion string + func ReadReport(path string) (Report, error) + func Run(ctx context.Context, cfg Config) (*Report, error) + type ReportEndpointStats struct + AvgMicros int64 + Count int64 + Endpoint string + MaxMicros int64 + MinMicros int64 + TotalMicros int64 + type ReportIdentity struct + Metadata Metadata + Timestamp string + ToolVersion string + type ReportLoad struct + DurationMS int64 + Endpoints []ReportEndpointStats + ErrorCount int64 + ErrorRatePercent float64 + RequestsPerSecond float64 + SuccessCount int64 + TotalRequests int64 + type ReportProfile struct + DurationMS int64 + FilePath string + Metric string + SizeBytes int64 + Type string + type ReportRunConfig struct + CPUDurationMS int64 + Concurrency int + DurationMS int64 + FailOn string + Mode string + OpenAPIPath string + OutputDir string + PprofURL string + ProfileTypes string + RPS int + RequestTimeoutMS int64 + SampleCount int + SampleIntervalMS int64 + SkipLoad bool + TargetURL string + TopFunctions int + type ThresholdResult struct + Configured bool + Passed bool + Rules []ThresholdRule + Violations []ThresholdViolation + type ThresholdRule struct + Percentage float64 + ProfileType string + type ThresholdViolation struct + Function string + Percentage float64 + ProfileType string + Threshold float64 v0.2.0 Aug 4, 2026 v0.1.2 Jun 19, 2026 v0.1.1 Jun 2, 2026 v0.1.0 Jun 2, 2026