Skip to content

[performance] Regression in ExtractWorkflowNameFromFile: +19.8% slowerΒ #20807

Description

@github-actions

πŸ“Š Performance Regression Detected

Benchmark: BenchmarkExtractWorkflowNameFromFile

Current Performance: 82,538 ns/op (82.54Β΅s)
Historical Average: 68,885 ns/op (68.89Β΅s)
Change: +19.8% slower
Data Points: 1 historical entry (2026-03-12)

πŸ“ˆ Detailed Performance Metrics

Performance Comparison

Metric Yesterday Today Change
ns/op 68,885 82,538 +19.8%
B/op N/A 5,864 β€”
allocs/op N/A 116 β€”

Baseline Targets

  • Simple workflows: <100ms (well within range)
  • Complex workflows: <500ms (well within range)
  • MCP-heavy workflows: <1s (well within range)
  • ExtractWorkflowNameFromFile is a CLI helper, no explicit target β€” but regression threshold is 10%

πŸ” Context

This benchmark measures how quickly the CLI extracts workflow names from file paths. A regression here could impact workflows that enumerate or reference workflow files by name.

Note: this comparison is based on 1 historical data point β€” while the threshold has been crossed (+19.8% > 10%), it should be monitored over the next few runs to confirm this is a real regression and not measurement noise.

πŸ’‘ Recommended Actions

  1. Review recent changes to the workflow name extraction logic in pkg/cli/ or pkg/workflow/
  2. Run go test -v -run "TestExtractWorkflowName" ./pkg/cli/ to verify correctness
  3. Run go test -bench=BenchmarkExtractWorkflowNameFromFile ./pkg/cli/ -benchtime=10s for a more stable measurement
  4. Compare with previous benchmark results using benchstat
πŸ“‹ Full Benchmark Run Context (2026-03-13)
Benchmark ns/op Change Status
CompileSimpleWorkflow 22,680,852 +2.0% βœ“ Stable
CompileComplexWorkflow 5,791,573 +2.4% βœ“ Stable
CompileMCPWorkflow 15,948,627 +1.9% βœ“ Stable
CompileMemoryUsage 6,481,048 +4.0% βœ“ Stable
ParseWorkflow 7,665,307 -14.8% ✨ Improvement
Validation 6,062,525 -7.6% ✨ Improvement
YAMLGeneration 12,245,479 +1.6% βœ“ Stable
ExtractWorkflowNameFromFile 82,538 +19.8% ⚠️ Regression
FindIncludesInContent 32,851 -16.6% ✨ Improvement

References:

Generated by Daily CLI Performance Agent Β· β—·

  • expires on Mar 15, 2026, 2:43 PM UTC

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions