joule-bench/Cargo.toml
David Charlot eda1628ec3 joule-bench: Resolution x energy/cost coding-agent benchmark
A solver-agnostic harness that grades coding-agent task success with an
executable test oracle (tests fail before, pass after; pristine test files
restored to prevent gaming) and pairs it with measured energy (jouleclaw
IOReport, idle-subtracted, sub-window readings flagged unreliable), vendor-billed
dollars, and token-estimated cloud energy. Solvers: reference, noop, claude,
gemini, and cascade (the real joule_core engine via joule-coded). --passes shows
L0 cache amortization.

Headline (RESULTS.md): on a realistic operation mix, the cascade and frontier
claude both resolve 100%, but the cascade costs ~10x less per task -- mechanical
ops close locally at L1 for free, novel ops escalate to the same model once, and
repeats are free from the L0 cache.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-22 07:18:36 -04:00

30 lines
1.2 KiB
TOML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

[package]
name = "joule-bench"
version = "0.1.0"
edition = "2021"
description = "Joule Code coding-agent benchmark: resolution rate × energy/cost 2D frontier over executable coding tasks with a test-execution oracle."
[[bin]]
name = "joule-bench"
path = "src/main.rs"
[features]
# Measured host energy via jouleclaw (Apple IOReport / Linux RAPL+NVML, no sudo
# on Apple Silicon) — the same dep and rev agent-joule pins. On by default; build
# with `--no-default-features` to drop the dep and use the estimator only.
default = ["measured"]
measured = ["dep:jouleclaw-energy"]
[dependencies]
clap = { version = "4", features = ["derive"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.8"
anyhow = "1"
tempfile = "3"
[target.'cfg(target_os = "macos")'.dependencies]
jouleclaw-energy = { git = "https://github.com/Transaction-Science/open-standards.git", rev = "58726a224c72517436bc87ab9f10370cf6b63bb2", features = ["ioreport"], optional = true }
[target.'cfg(target_os = "linux")'.dependencies]
jouleclaw-energy = { git = "https://github.com/Transaction-Science/open-standards.git", rev = "58726a224c72517436bc87ab9f10370cf6b63bb2", features = ["rapl", "nvml"], optional = true }