chore: remove deprecated docs folder after documentation unification #88
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
| --- | |
| name: Benchmarks (Criterion) | |
| on: | |
| push: | |
| branches: [main] | |
| schedule: | |
| - cron: '0 4 * * 1' | |
| jobs: | |
| bench: | |
| name: Criterion Benchmarks | |
| runs-on: ubuntu-24.04 | |
| timeout-minutes: 45 | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Rust toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Set up sccache | |
| uses: mozilla-actions/sccache-action@v0.0.9 | |
| - name: Cache Cargo and target | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cargo/registry | |
| target/ | |
| key: ${{ runner.os }}-bench-${{ hashFiles('**/Cargo.lock') }} | |
| - name: Run criterion benchmarks | |
| run: | | |
| touch bench_output.txt | |
| for b in session_bench cct_bench eval_bench; do | |
| echo "Running benchmark: $b" | |
| cargo bench --workspace --bench $b -- --output-format=bencher | tee bench_raw.log | |
| grep "bench:" bench_raw.log >> bench_output.txt || true | |
| done | |
| echo "=== BENCHMARK OUTPUT ===" | |
| cat bench_output.txt | |
| if [ ! -s bench_output.txt ]; then | |
| echo "Error: No benchmark results found in output. Check bench_raw.log for details." | |
| exit 1 | |
| fi | |
| - name: Upload benchmark artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: criterion-results-${{ github.sha }} | |
| path: | | |
| target/criterion/ | |
| bench_output.txt | |
| retention-days: 90 | |
| - name: Track benchmark history | |
| uses: benchmark-action/github-action-benchmark@v1 | |
| with: | |
| tool: cargo | |
| output-file-path: bench_output.txt | |
| github-token: ${{ secrets.GITHUB_TOKEN }} | |
| auto-push: true | |
| gh-pages-branch: main | |
| name: "Phantom Engine Performance Firewall" | |
| skip-fetch-gh-pages: true | |
| alert-threshold: "110%" | |
| comment-on-alert: true | |
| fail-on-alert: false | |
| benchmark-data-dir-path: docs/benchmarks | |
| - name: Print performance goal checklist | |
| run: | | |
| echo "=== Performance Goals Check ===" | |
| echo "CCT 1000-node serialisation GOAL: <5ms" | |
| echo "Session startup QuickJS GOAL: <10ms" | |
| echo "Session startup V8 GOAL: <50ms" | |
| echo "Review target/criterion HTML reports for trend details" |