Files
peltier.io/targets
Claude 52089c0451 bench: GitHub Actions CI — trust-layer checks, no-net gates, runner calibration
Closes the CI-reachable slice of the Phase 1 infra gaps:
- trust-layer job: cargo test + clippy -D warnings + fmt
- target-gates-no-net: fetches pinned targets (new targets/fetch.sh),
  regenerates + verifies corpora, runs 'just gates tokei'
  mechanically, and executes the bench workload inside a
  --network=none container (SPEC 3.1/10 no-net requirement)
- runner-calibration (informational): A/A + injection harness measures
  the shared runner's noise floor per run, evidence uploaded as an
  artifact — environments are judged empirically, not assumed
- perf-probe (informational): reports which perf event sources work

docs/infra.md maps each remaining hardware requirement (pinned cores,
governor/SMT control, separate-uid trust layer) to the bench-metal
self-hosted runner setup a human can complete in ~15 min.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EcKPWQ3MQD4NdEHwar96u2
2026-07-07 00:13:21 +00:00
..

targets/

One directory per optimization target. This is the only agent-writable path in the repository (SPEC §10); everything else is trust layer.

Layout

targets/<name>/
  target.toml         # upstream repo URL, pinned commit, build & bench commands
  equivalence.toml    # optional; absent = byte-identical required (SPEC §3.2)
  workspace/          # agent's checkout — patches land here via harness git-apply

Selection criteria (SPEC §6): CPU-bound (>70% user time), meaningful test suite, scriptable workload, permissive license, active but not hyper-optimized, builds cleanly in a container. Good hunting: codecs, parsers, serializers, image processing, compression, static-site generators, linters.

equivalence.toml

Default (no file) is byte-identical outputs. FP-producing targets may declare an explicit tolerance policy:

mode = "fp-tolerance"
abs = 1e-9    # max absolute difference per numeric value
rel = 1e-6    # max relative difference per numeric value

Declaring a tolerance covers output comparison only; FP flag changes still route to needs-human-review (SPEC §8).