gsxdsm
f31a716a2a
FN-8629: prevent false Grok usage percentages
Prevent omitted Grok billing percentages from being displayed as fully consumed credits.
- Require a finite CLI-supplied credit usage percentage before creating a billing window.
- Cover omitted, zero, invalid, and non-weekly Grok billing responses.
- Add a patch changeset for the corrected usage display.
Files changed:
.changeset/fn-8629-grok-usage-percent.md | 7 +++
packages/dashboard/src/__tests__/usage.test.ts | 71 ++++++++++++++++++++++++--
packages/dashboard/src/usage.ts | 13 ++---
3 files changed, 77 insertions(+), 14 deletions(-)
Fusion-Task-Id: FN-8629
Fusion-Task-Lineage: b5b7c83b-e34f-43d9-a31a-d1fd769c4eb8
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-31 13:43:28 -07:00
..
2026-07-31 13:43:28 -07:00
2026-07-16 14:08:43 -07:00
2026-07-31 12:54:58 -07:00
2026-07-30 02:38:58 -07:00
2026-07-02 11:38:35 -07:00
2026-07-29 09:15:28 -07:00
2026-07-30 12:03:07 -07:00
2026-07-24 22:32:49 -07:00
2026-07-23 18:39:10 -07:00
2026-07-26 12:01:19 -07:00
2026-07-26 12:01:19 -07:00
2026-07-23 20:19:18 -07:00
2026-07-13 13:58:35 -07:00
2026-07-26 13:05:23 -07:00
2026-07-26 13:15:36 -07:00
2026-07-19 18:45:27 -07:00
2026-06-04 23:39:07 -07:00
2026-07-25 22:52:53 -07:00
2026-07-22 18:46:46 -07:00
2026-07-14 22:13:30 -07:00
2026-07-30 21:51:09 -07:00
2026-07-17 12:00:26 -07:00
2026-07-13 19:07:58 -07:00
2026-07-03 21:45:20 -07:00
2026-06-05 03:56:29 -07:00
2026-06-15 02:30:41 -07:00
2026-06-05 03:41:54 -07:00
2026-07-02 15:00:40 -07:00
2026-07-09 19:58:03 -07:00
2026-07-19 18:59:28 -07:00
2026-07-19 18:59:36 -07:00
2026-07-26 12:01:19 -07:00
2026-07-13 23:16:36 -07:00
2026-07-26 13:15:36 -07:00
2026-07-15 10:07:20 -07:00
2026-07-15 19:29:02 -07:00
2026-06-30 00:03:37 -07:00
2026-07-30 12:03:07 -07:00
2026-06-10 10:34:36 -07:00
2026-07-30 12:03:07 -07:00
2026-07-30 07:14:54 -07:00
2026-07-31 03:34:27 -07:00
2026-07-05 11:31:48 -07:00
2026-07-20 08:49:28 -07:00
2026-07-02 19:01:09 -07:00
2026-07-30 12:03:07 -07:00
2026-07-26 12:01:19 -07:00
2026-07-02 11:38:34 -07:00
2026-07-30 12:03:07 -07:00
2026-07-30 12:03:07 -07:00
2026-07-02 11:38:34 -07:00
2026-07-15 21:58:46 -07:00
2026-07-13 23:16:36 -07:00
2026-07-09 19:58:03 -07:00
2026-07-07 22:04:55 -07:00
2026-07-18 13:18:08 -07:00
2026-07-17 13:31:42 -07:00
2026-07-19 18:37:45 -07:00
2026-07-13 19:07:58 -07:00
2026-07-26 12:01:19 -07:00
2026-07-26 12:01:19 -07:00
2026-07-30 12:03:07 -07:00
2026-07-26 12:01:19 -07:00
2026-07-24 22:32:49 -07:00
2026-07-24 22:32:49 -07:00
2026-07-23 18:39:10 -07:00
2026-07-30 21:35:23 -07:00
2026-07-14 08:16:42 -07:00
2026-07-14 22:16:16 -07:00
2026-07-19 15:45:45 -07:00
2026-07-14 08:18:52 -07:00
2026-07-14 22:16:16 -07:00
2026-07-30 12:03:07 -07:00
2026-07-24 22:17:39 -07:00
2026-07-26 12:01:19 -07:00
2026-07-24 22:32:49 -07:00
2026-06-28 01:17:22 -07:00
2026-06-16 15:08:24 -07:00
2026-07-21 15:30:31 -07:00
2026-07-23 17:27:59 -07:00
2026-07-02 14:31:16 -07:00
2026-07-31 13:23:20 -07:00
2026-07-18 10:55:50 -07:00
2026-07-19 20:42:05 -07:00
2026-07-18 14:23:14 -07:00
2026-07-18 17:06:34 -07:00
2026-07-14 22:13:30 -07:00
2026-07-30 12:03:07 -07:00
2026-07-30 10:35:31 -07:00
2026-07-26 12:01:19 -07:00
2026-07-17 12:00:26 -07:00
2026-07-31 13:23:20 -07:00
2026-07-02 11:38:35 -07:00
2026-07-15 10:38:04 -07:00
2026-07-26 12:01:19 -07:00
2026-07-24 22:32:49 -07:00
2026-07-30 13:18:08 -07:00
2026-07-30 12:03:07 -07:00
2026-07-30 15:16:24 -07:00
2026-07-26 12:01:19 -07:00
2026-07-10 23:42:10 -07:00
2026-07-17 01:23:32 -07:00
2026-07-13 19:07:58 -07:00
2026-07-19 13:34:25 -07:00
2026-07-31 13:43:28 -07:00
2026-07-26 12:01:19 -07:00