ci: seed CodSpeed baseline on main pushes and workflow_dispatch#67
Merged
Conversation
The current detect-changes job short-circuits when HEAD === origin/main: git diff origin/main..HEAD is empty, so any=false and every downstream job (including codspeed-bench) is skipped. That left CodSpeed with no baseline data on main after #64 merged, so every PR comment stays stuck on "Congrats! CodSpeed is installed" with no before/after deltas. Two fixes: - Drop branches-ignore: main so every commit landing on main triggers a build/test/bench run. Future merges will auto-seed the baseline. - In detect-changes, treat workflow_dispatch or any push to refs/heads/main as a "baseline run" and force the full package list, bypassing the diff check that vacuously returns empty when HEAD is main. After this lands, dispatching pr-checks against main (or just pushing this fix to main) will populate the CodSpeed baseline, and PR #66's codspeed-bench will start producing a real regression report on re-run. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
sedghi
added a commit
that referenced
this pull request
May 20, 2026
#67 landed on main and produced the first CodSpeed baseline (run 26167789689). Re-running codspeed-bench on this PR so the sticky comment can flip from "Congrats!" to a real before/after table with the fake-regression deltas highlighted on every codec. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
codspeed-benchfrom posting a real regression report: CodSpeed has no baseline data because the workflow was configured to skip main entirely.branches-ignore: mainso every commit landing on main triggers build/test/bench → future merges auto-seed.detect-changes, treatworkflow_dispatchor any push torefs/heads/mainas a "baseline run" that forces the full package list. The existinggit diff origin/main..HEADcheck vacuously returns empty when HEAD is main, which is why my earliergh workflow run pr-checks.yml --ref mainfinished in 14s and ran nothing.Why the existing setup didn't work
detect-changesdid this on main:So
any=false→build,test,codspeed-benchall skipped (each gated onneeds.detect-changes.outputs.any == 'true'). The CodSpeed dashboard for main therefore stayed empty:list_runs(branch="main") => {"runs":[]}.After merge
branches-ignore: mainis gone) and produce the first baseline upload.codspeed-benchon PR test(bench): inject fake CPU regression to validate detection pipeline #66 will then post a real before/after table with the fake regression highlighted on every codec.Test plan
pr-checks.ymlruns on main and uploads to CodSpeedcodspeed-benchon test(bench): inject fake CPU regression to validate detection pipeline #66 and verify the sticky comment flips from "Congrats!" to a comparison table🤖 Generated with Claude Code