File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : benchmarks
2+
3+ on :
4+ push :
5+ branches : [master]
6+ pull_request :
7+ workflow_dispatch :
8+
9+ jobs :
10+ benchmark :
11+ runs-on : ubuntu-latest
12+ steps :
13+ - name : Checkout
14+ uses : actions/checkout@v4
15+
16+ - name : Set up Go
17+ uses : actions/setup-go@v5
18+ with :
19+ go-version-file : go.mod
20+
21+ - name : Run benchmarks
22+ run : |
23+ mkdir -p .bench
24+ go test ./vibes -run '^$' -bench '^BenchmarkExecution' -benchmem | tee .bench/benchmark.txt
25+
26+ - name : Publish benchmark summary
27+ run : |
28+ {
29+ echo "## Benchmark Results"
30+ echo ""
31+ echo '```text'
32+ cat .bench/benchmark.txt
33+ echo '```'
34+ } >> "$GITHUB_STEP_SUMMARY"
35+
36+ - name : Upload benchmark artifact
37+ uses : actions/upload-artifact@v4
38+ with :
39+ name : benchmark-results
40+ path : .bench/benchmark.txt
Original file line number Diff line number Diff line change @@ -174,9 +174,13 @@ Long-form guides live in `docs/`:
174174This repository uses [ Just] ( https://github.com/casey/just ) for common tasks:
175175
176176- ` just test ` runs the full Go test suite (` go test ./... ` ).
177+ - ` just bench ` runs the core execution benchmarks (` go test ./vibes -run '^$' -bench '^BenchmarkExecution' -benchmem ` ).
177178- ` just lint ` checks formatting (` gofmt ` ) and runs ` golangci-lint ` with a generous timeout.
178179- Add new recipes in the ` Justfile ` as workflows grow.
179180
181+ CI also publishes benchmark artifacts via ` .github/workflows/benchmarks.yml ` on
182+ pull requests and pushes to ` master ` .
183+
180184Contributions should run ` just test ` and ` just lint ` (or the equivalent ` go ` and ` golangci-lint ` commands) before submitting patches.
181185
182186## Runtime Sandbox & Limits
Original file line number Diff line number Diff line change @@ -340,7 +340,7 @@ Goal: improve day-to-day developer productivity and interpreter robustness.
340340### v0.19.0 Definition of Done
341341
342342- [ ] Tooling commands are documented and stable.
343- - [ ] Performance regressions are tracked with benchmarks.
343+ - [x ] Performance regressions are tracked with benchmarks.
344344- [x] CI includes example and fuzz coverage gates.
345345
346346---
You can’t perform that action at this time.
0 commit comments