tine price
tine price is the read-only, post-hoc pricing view added in v0.8. It resolves each recorded (provider, model, usage) tuple against the pricing catalog and never rewrites the artifact or repository.
# Price with the catalog dates selected from the recorded steps
tine price result.tine
# Select the rate cards effective on a historical date
tine price result.tine --at 2026-08-22
# Emit one machine-readable result
tine price result.tine --jsonPrice versus cost
tine cost sums the dollar cost stored when the run was captured. tine pricerecomputes a view from today's catalog, or from the catalog effective on --at DATE. That makes imported and previously uncosted runs priceable without changing their provenance.
Missing evidence is never turned into a fabricated zero. A step with no matching rate card, an empty provider, or no recorded usage reportsunknown. A local adapter recorded as unmetered remainsunmetered unless an explicit rate is available.
Effective dates and time-of-day schedules
Without --at, each step selects a card using its recorded date, falling back to today when no timestamp exists. --at pins the card-selection date for the whole run. For anopentine-pricing/2card, the step's own recorded timestamp still selects its UTC peak or off-peak window, so one run can span both rates.
Price during import
tine import trace.json --format otel-json --price --save imported.tinetine import --price runs the same catalog pass before any imported event is written. Use that when the derived billing record should become part of the first stored run; usetine price when you want a read-only calculation later.