Skip to content

perf-nightly

perf-nightly #46

Workflow file for this run

name: perf-nightly
# Scheduled, Docker-free timing regression evidence. Machine-dependent timing
# stays outside push and pull-request gates; the deterministic allocation action
# remains in the native full verifier.
on:
schedule:
- cron: "42 3 * * *"
workflow_dispatch:
permissions:
contents: read
jobs:
perf-regression-check:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Set up Go
uses: actions/setup-go@v7
with:
go-version-file: go.mod
cache-dependency-path: go.sum
- name: Build ze-perf
run: CGO_ENABLED=0 go build -tags ze_perf -o bin/ze-perf ./cmd/ze
# An empty history is not a regression. Once records exist, the committed
# binary owns the comparison and its non-zero verdict fails this job.
- name: Perf regression check
run: |
if [ -s test/perf/history/ze.ndjson ]; then
bin/ze-perf track --check test/perf/history/ze.ndjson
else
echo "no perf history (test/perf/history/ze.ndjson); nothing to check"
fi