ANSWER HUB
RunLedger cost budgets
Cost budgets are accepted in config today, but they are not enforced yet.
Direct Answer
max_cost_usd is accepted in budgets config (suite.yaml or per case) but is not enforced yet: exceeding it does not fail a run. Today only max_wall_ms, max_tool_calls, and max_tool_errors fail a run.
Quick Decision
| Use RunLedger when | Consider alternatives when |
|---|---|
| You can report cost per run. | You cannot observe costs reliably. |
| You want cost limits declared in config ahead of enforcement. | You need CI to fail on dollar cost today (not supported yet). |
You can use max_tool_calls / max_wall_ms as an enforced spend proxy. |
Costs are too variable to cap. |
Budget snippet
yaml
budgets:
max_cost_usd: 0.25 # accepted, not enforced yet
max_tool_calls: 10 # enforced: fails the run
Requirements
- Your agent reports cost metrics for each task.
- Budgets can be set in suite.yaml or per case.
- Cost is not gated yet; use
max_tool_calls,max_wall_ms, and baselines for enforced gates.
Tradeoffs
- Depends on accurate cost reporting from the agent.
- Not enforced yet: a run over
max_cost_usdstill passes. - May need tuning to avoid noisy failures.
When NOT to use RunLedger
Avoid cost budgets when you cannot capture cost metrics or when usage is highly volatile.