Skip to content

ci: informational benchmark workflow - #1475

Open
duncanista wants to merge 4 commits into
jordan.gonzalez/bench-suite/featurefrom
jordan.gonzalez/ci-bench/feature
Open

duncanista wants to merge 4 commits into
jordan.gonzalez/bench-suite/featurefrom
jordan.gonzalez/ci-bench/feature

Conversation

@duncanista

@duncanista duncanista commented Oct 28, 2026 •

Copy link
Copy Markdown
Contributor

TL;DR: CI builds the benchmarks on PRs, and runs them on the bench label and nightly on main.

Why: It keeps the benchmarks compiling and gives a main baseline to compare a PR against. It is informational only and never blocks a merge.

Overview

Jira: SVLS-9977

Stacked on #1474 (jordan.gonzalez/bench-suite/feature).

Add .github/workflows/bench.yml. No job blocks a PR.

  • bench-build: every PR that touches bottlecap/. cargo bench --no-run --locked with LTO
    off. A failure gives a warning.
  • bench-measure: PRs with the bench label, nightly on main, and manual. Production
    profile, a fixed smoke list with --quick (scripts/ci/bench-measure.sh). Nightly runs save
    the baseline artifact bench-baseline-main; a PR run compares with it (critcmp main pr -t 10) and writes the table to the step summary.

The bench README now has a "CI" section with the wired part and the full plan.

Size: 245 core lines, 279 lines in total.

Testing

  • applies on the previous PR of the stack: pass
  • actionlint 1.7.12 with shellcheck 0.10.0 on the changed workflows: pass
  • shellcheck 0.10.0 on the new scripts: pass
  • The measure path and the baseline download did not run outside GitHub.

@duncanista
duncanista requested a review from a team as a code owner October 28, 2026 18:57
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 28, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-06T20:47:01.365113Z 321afd8 New commits
🔒 Security Review ✅ Completed 2026-11-06T20:48:27.654246Z 321afd8 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f82bb2637b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/bench.yml Resolved
Comment thread scripts/ci/bench-measure.sh Resolved
Comment thread .github/workflows/bench.yml Resolved
@datadog-prod-us1-6

datadog-prod-us1-6 Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Pipelines

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 321afd8 | Docs | View more details | Give us feedback!

@duncanista duncanista changed the title [SVLS-9977] ci: informational benchmark workflow ci: informational benchmark workflow Oct 28, 2026
- Upload the exports with include-hidden-files, so the .bench-export
  directory reaches the artifact.
- download-baseline: walk back through the last 10 green nightlies to the
  newest one that has a bench-baseline-main artifact.
- bench-measure: on a labeled event, run only for the bench label, and give
  other label events their own concurrency group so they do not cancel a
  running measurement.
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.

1 participant