Tak Hoffman
8a352c8f9d
Web UI: add token usage dashboard ( #10072 )
...
* feat(ui): Token Usage dashboard with session analytics
Adds a comprehensive Token Usage view to the dashboard:
Backend:
- Extended session-cost-usage.ts with per-session daily breakdown
- Added date range filtering (startMs/endMs) to API endpoints
- New sessions.usage, sessions.usage.timeseries, sessions.usage.logs endpoints
- Cost breakdown by token type (input/output/cache read/write)
Frontend:
- Two-column layout: Daily chart + breakdown | Sessions list
- Interactive daily bar chart with click-to-filter and shift-click range select
- Session detail panel with usage timeline, conversation logs, context weight
- Filter chips for active day/session selections
- Toggle between tokens/cost view modes (default: cost)
- Responsive design for smaller screens
UX improvements:
- 21-day default date range
- Debounced date input (400ms)
- Session list shows filtered totals when days selected
- Context weight breakdown shows skills, tools, files contribution
* fix(ui): restore gatewayUrl validation and syncUrlWithSessionKey signature
- Restore normalizeGatewayUrl() to validate ws:/wss: protocol
- Restore isTopLevelWindow() guard for iframe security
- Revert syncUrlWithSessionKey signature (host param was unused)
* feat(ui): Token Usage dashboard with session analytics
Adds a comprehensive Token Usage view to the dashboard:
Backend:
- Extended session-cost-usage.ts with per-session daily breakdown
- Added date range filtering (startMs/endMs) to API endpoints
- New sessions.usage, sessions.usage.timeseries, sessions.usage.logs endpoints
- Cost breakdown by token type (input/output/cache read/write)
Frontend:
- Two-column layout: Daily chart + breakdown | Sessions list
- Interactive daily bar chart with click-to-filter and shift-click range select
- Session detail panel with usage timeline, conversation logs, context weight
- Filter chips for active day/session selections
- Toggle between tokens/cost view modes (default: cost)
- Responsive design for smaller screens
UX improvements:
- 21-day default date range
- Debounced date input (400ms)
- Session list shows filtered totals when days selected
- Context weight breakdown shows skills, tools, files contribution
* fix: usage dashboard data + cost handling (#8462 ) (thanks @mcinteerj)
* Usage: enrich metrics dashboard
* Usage: add latency + model trends
* Gateway: improve usage log parsing
* UI: add usage query helpers
* UI: client-side usage filter + debounce
* Build: harden write-cli-compat timing
* UI: add conversation log filters
* UI: fix usage dashboard lint + state
* Web UI: default usage dates to local day
* Protocol: sync session usage params (#8462 ) (thanks @mcinteerj, @TakHoffman)
---------
Co-authored-by: Jake McInteer <mcinteerj@gmail.com >
2026-02-05 22:35:46 -06:00
Tyler Yust
f8d2534062
fix(cron): fix test failures and regenerate protocol files
...
- Add forceReload option to ensureLoaded to avoid stat I/O in normal
paths while still detecting cross-service writes in the timer path
- Post isolated job summary back to main session (restores the old
isolation.postToMainPrefix behavior via delivery model)
- Update legacy migration tests to check delivery.channel instead of
payload.channel (normalization now moves delivery fields to top-level)
- Remove legacy deliver/channel/to/bestEffortDeliver from payload schema
- Update protocol conformance test for delivery modes
- Regenerate GatewayModels.swift (isolation -> delivery)
2026-02-04 01:03:59 -08:00
Gustavo Madeira Santana
ac2b71f240
chore: fix CI
2026-02-02 21:44:31 -05:00
Mariano Belinky
7113dc21a9
Revert "Core: update shared gateway models"
...
This reverts commit 37eaca719a .
2026-02-02 17:36:49 +00:00
Mariano Belinky
4ab814fd50
Revert "iOS: wire node services and tests"
...
This reverts commit 7b0a0f3dac .
2026-02-02 17:36:49 +00:00
Mariano Belinky
37eaca719a
Core: update shared gateway models
2026-02-02 16:42:18 +00:00
Mariano Belinky
532b9653be
iOS: wire node commands and incremental TTS
2026-02-02 16:42:18 +00:00
Mariano Belinky
1a48bce294
iOS: add PTT once/cancel
2026-02-02 16:42:18 +00:00
Mariano Belinky
9f101d3a9a
iOS: add push-to-talk node commands
2026-02-02 16:42:18 +00:00
Mariano Belinky
a884955cd6
iOS: add write commands for contacts/calendar/reminders
2026-02-02 16:42:18 +00:00
Mariano Belinky
f72ac60b01
iOS: streamline notify timeouts
2026-02-02 16:42:18 +00:00
Mariano Belinky
761188cd1d
iOS: fix node notify and identity
2026-02-02 16:42:18 +00:00
Mariano Belinky
a4382607d7
Gateway: wait for snapshot before connect
2026-02-02 16:42:17 +00:00
Mariano Belinky
84e115834f
Gateway: fix node invoke receive loop
2026-02-02 16:42:17 +00:00
Mariano Belinky
7b0a0f3dac
iOS: wire node services and tests
2026-02-02 16:42:17 +00:00
Peter Steinberger
9a7160786a
refactor: rename to openclaw
2026-01-30 03:16:21 +01:00