Commit Graph

9 Commits

Author SHA1 Message Date
null e6c2989c64 main dashboard 2026-05-24 22:38:26 -05:00
null c04ab6ac8b feat(dashboard): enhance metric cards with new tone classes and improve styling 2026-05-22 16:17:39 -05:00
null ff5aa5f4f1 fix 2026-05-21 04:16:19 -05:00
null cd688ced26 feat(usage): per-account limit rows and aggregate labeling (#41)
- Add PerGatewayUsage interface and buildPerGatewayUsage() function
- Each gateway's most constrained limit shown independently, sorted by exhaustion
- Per-account rows render BEFORE aggregate summary
- Aggregate cards labeled 'Combined' when multiple gateways exist
- 'Soonest reset' and 'Combined limit' labels replace misleading single-gateway labels
- Filter out gateways with no configured limit to reduce noise
2026-05-21 01:57:13 -05:00
null 5217a70c9f feat(usage): separate limit types — typed limits for output tokens, total tokens, messages (#39)
- Add typed limit fields to RuntimeUsageCurrent: output_token_limit,
  total_token_limit, message_limit with matching pct and source
- Add total_output_tokens and output_tokens_per_minute to burn rate
- _build_current() now computes each pct from matching units only
- Legacy token_limit backfilled from typed limits for backwards compat
- Frontend aggregateRuntimeUsage() tracks typed limits separately
- limit_kind field on predictions indicates which limit drove time-to-limit
2026-05-21 01:43:28 -05:00
null 02eb03d408 feat(usage): fix local window estimation + provider-native windows + pricing updates (#37 #38 #40)
Phase 3 (#38): Fix reset_in_ms=0 bug
- Add _oldest_active_ts() to find oldest session timestamp in 5h window
- _build_window() now anchors fallback to oldest_event_ts + 5h instead of now - 5h
- Add _parse_rate_limit_reset_value() and _extract_rate_limit_reset_at() for proper rate-limit reset parsing
- Source/confidence labeling now based on reset provenance

Phase 2 (#37): Provider-native usage windows
- ParsedClaudeUsageWindow dataclass with section-aware parsing
- Frontend ProviderNativeUsageWindow interface and provider-native usage section
- sessions.list call now has 8s timeout to avoid gateway blocking

Phase 5 (#40): Pricing fixes
- Opus cache_write corrected .75 → .75
- Added GPT-4.1/mini/nano, GPT-4.5 pricing
- Pricing override loader supports both shapes (rates_usd_per_million wrapper and direct dict)
2026-05-21 01:32:59 -05:00
null 4e40323e71 feat(gateway-ops): memory, cron, and health panels (batch 5, #34) 2026-05-20 21:32:46 -05:00
null 609d04095d feat(runtime-usage): dashboard cards, session enrichment, and regenerated API client (batch 2, #31) 2026-05-20 20:45:07 -05:00
null c88dfc1762 fix: (dashboard) total ui rewrite 2026-05-19 23:11:32 -05:00