- Add _get_explicit_cost() with priority chain: usage.cost.total > usage.cost flat > cost/cost_usd - aggregate_per_model() and _top_sessions() now use _get_explicit_cost() - Fix message limit prediction to use elapsed time instead of total window - Add 224 lines of test coverage for typed limits, explicit cost priority, pricing override shapes, and prediction logic |
||
|---|---|---|
| .. | ||
| api | ||
| core | ||
| db | ||
| models | ||
| schemas | ||
| services | ||
| __init__.py | ||
| main.py | ||