/claim #1700

Description

This PR implements per-commit benchmarking using NativeLink as a remote cache.

It resolves #1700

Summary of Changes:

  • Created benchmark.sh to measure Bazel build time
  • Simplified basic_cas.json5 for local CAS+AC setup (no worker/scheduler needed)
  • Added .github/workflows/benchmark.yml to run benchmarks on every commit
  • Benchmark results are uploaded as benchmark_results.csv artifacts

Fixes # (issue)

Type of change

  • New feature (non-breaking change which adds functionality)
  • This change requires a documentation update

How Has This Been Tested?

  • Manually ran benchmark.sh locally with NativeLink running via Nix
  • Verified Bazel build output is cached via NativeLink
  • Confirmed GitHub Actions successfully triggers benchmark, logs CSV artifact
  • Tested on multiple commits and pull requests

Checklist

  • Updated documentation (added README section)
  • Tests added/amended (benchmark script and config)
  • bazel test //... passes locally (if tests exist)
  • PR is contained in a single commit

This change is Reviewable

Claim

Total prize pool $4,500
Total paid $0
Status Pending
Submitted April 24, 2025
Last updated April 24, 2025

Contributors

SU

Sucharith Reddy

@sucharith23

100%

Sponsors

TR

TraceMachina

@TraceMachina

$4,500