Skip to content

fix(ci): reject regressed performance baselines - #231

Merged
justrach merged 1 commit into
mainfrom
codex/issue-230-perf-gate
Aug 27, 2026
Merged

justrach merged 1 commit into
mainfrom
codex/issue-230-perf-gate

Conversation

@justrach

Copy link
Copy Markdown
Owner

Closes #230.

The main performance workflow now fails on normal-threshold regressions without overwriting benchmarks/baseline.json. It still records and commits the failed run to benchmark history for diagnosis.

Validation:

  • 599 Python tests passed (30 existing warnings)
  • focused regression-policy tests: 2 passed
  • Ruff passed
  • actionlint passed
  • baseline/history at the branch base are unchanged

@github-actions

Copy link
Copy Markdown
Contributor

Performance Regression Report

Runner: ci-pr | Duration: 5s per endpoint | Threads: 4 | Connections: 100 | Workers: 24

Endpoint req/s avg latency p99 latency threshold status
GET /health 82,924 0.22ms 1.05ms 80,000 OK
GET / 86,319 0.30ms 1.30ms 80,000 OK
GET /json 80,342 0.24ms 0.83ms 75,000 OK
GET /users/123 82,960 0.26ms 0.77ms 75,000 OK
POST /items 47,008 0.44ms 1.06ms 45,000 OK
GET /status201 77,062 0.24ms 0.98ms 65,000 OK
AVERAGE 76,103 50,000 OK

✅ All endpoints pass regression thresholds

@justrach
justrach merged commit 0ae8b4f into main Aug 27, 2026
9 checks passed
@justrach
justrach deleted the codex/issue-230-perf-gate branch August 27, 2026 01:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ci: main performance regressions overwrite the baseline and pass green

1 participant