maxCostUsd enforcement are not part of the current contract, so the UI must
not present token totals as an estimated dollar amount.
Prerequisites
- At least one Run whose coding-agent adapter emitted usage records.
- Access to the Run, project Observatory, or portfolio Observatory.
Cost of one task attempt
Open a task and choose a Run from its history. The Run workbench attributes:- input tokens;
- output tokens;
- cache-read tokens;
- cache-creation tokens;
- resume or checkpoint overhead;
- elapsed Run and node-attempt time;
- the snapshotted model and runner session that produced the usage.
Use Observatory
Open Observatory for the visible project portfolio, or Project → Observatory for one repository. Choose the cost view and a time window.
The page also shows correction pressure, autonomy, human wait, gate firing,
control effectiveness, and evidence coverage. Cost is most useful beside these
signals: fewer tokens are not an improvement when the result creates more
rework or weaker evidence.
Runner attribution
Runner totals come from immutable session snapshots rather than the mutable runner catalog. Historical usage therefore keeps its original label even if an administrator later edits or deletes the catalog row. Attribution is exact per named Flow session. If a Flow assigns planning and implementation to separate sessions, Observatory can split their usage between two runners. A single-session Flow, scratch Run, or standalone platform-agent Run attributes all usage to its one default session. A record without a matching session appears underunknown rather than being guessed.
To compare price/performance across stages:
- Give materially different stages separate named sessions.
- Bind the intended runner and model to each slot.
- Run several representative tasks.
- Compare token totals, duration, rework, evidence, and quality.
- Move a cheaper or faster profile into the default only after the result is stable across tasks of similar complexity.
Compare alternatives in a Study
Observatory explains aggregate behavior. Use an Evaluation Study when several Runs of one task must be compared under the same method. A Study can launch the same task with different Flows, coding agents, models, capability overlays, and execution policies, then combine objective facts, AI judges, and a human verdict. This supports decisions such as using a stronger model for planning and judging, a lower-cost model for routine implementation, or a different agent for a specific class of task. The choice belongs in a versioned Flow or standardized recipe, not in manual switching instructions for every team member.Budget ladder
Execution policies use explicit responses as a limit approaches or is exceeded:- Warn records the condition and lets work continue.
- Escalate parks the Run and asks a person before consuming more budget.
- Terminate stops work with a typed budget-exceeded result.
- Where configured, a terminated attempt may remain restorable instead of discarding its work product.
Data freshness
Active Run totals are marked volatile because more usage can arrive. Terminal Run rollups are reconciled after completion, including a short settling window for a late final usage record. Missing or stale derived data is shown as insufficient, never as a fabricated zero.Failure signals
- No cost row: the adapter emitted no usage, the Run is still settling, or reconciliation has not completed.
unknownrunner: usage exists but no matching session snapshot can be proven.- Unexpected single runner bucket: the Flow used one shared/default session; create named sessions if stage-level attribution is required.
- Budget escalation in Inbox: inspect current usage and work product before choosing continue, terminate, or restore.