Skip to content

[performance] Regression in CompileMCPWorkflow: 278.8% slower #48929

Description

@github-actions

Caution

agentic threat detected
Threat detection flagged this output in warn mode. Manual review is REQUIRED before any follow-up automation.

Details

The threat detection engine failed to produce results.

Review the workflow run logs for details.

📊 Performance Regression Detected

Benchmark: BenchmarkCompileMCPWorkflow

Current Performance: 2,891,542 ns/op (2.89ms)
Historical Average: 763,306 ns/op (0.76ms)
Change: +278.8% slower

📈 Detailed Performance Metrics

Performance Comparison

  • ns/op: 2,891,542 (was 763,306 avg over 6 historical runs, 2026-07-03 to 2026-07-07)
  • Change: +278.8%
  • Historical Data Points: 6
  • Memory: 1,103,032 B/op (up from ~128,000 B/op historically, ~8.6x)
  • Allocations: 8,186 allocs/op (up from ~2,265 allocs/op historically, ~3.6x)

Re-ran the benchmark locally with -benchtime=5x to rule out noise; result was consistent (~2.1ms, ~similar B/op and allocs/op), confirming this is a reproducible regression rather than a one-off measurement fluke.

Baseline Targets

  • Simple workflows: <100ms
  • Complex workflows: <500ms
  • MCP-heavy workflows: <1s

Note: BenchmarkCompileMCPWorkflow is still within the <1s target, but the ~3-9x jump in ns/op, bytes/op, and allocs/op relative to the historical baseline is significant and warrants investigation, since it moved from being the fastest of the "Compile*" benchmarks to comparable with the other compile benchmarks.

💡 Recommended Actions

  1. Review recent changes to the compilation pipeline, especially around MCP server / toolset handling (tools.github, discussions toolset support, playwright, cache-memory) since the historical baseline was recorded (2026-07-03 – 2026-07-07)
  2. Run make bench-memory to generate memory profiles
  3. Use go tool pprof to identify hotspots
  4. Compare with previous benchmark results: benchstat
📋 Additional Context
  • Run ID: 30465993890
  • Date: 2026-07-29
  • Workflow: Daily CLI Performance
  • Note: The historical benchmark cache had accumulated some malformed entries mixing compact and pretty-printed JSON, which was cleaned up/normalized as part of this run's memory update. Only 6 valid historical data points (2026-07-03 through 2026-07-07, plus today) were available for trend comparison; the gap between 2026-07-07 and 2026-07-29 in stored history means intermediate regressions (if any) were not tracked.

Automatically generated by Daily CLI Performance workflow

Generated by ⚡ Daily CLI Performance Agent · aut00 · 59.6 AIC · ⊞ 15.8K ·

  • expires on Jul 31, 2026, 7:40 AM UTC-08:00

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions