Qtile: side-by-side z.AI and GPT quota widgets, followed by llm-log API grapher #202

Closed
opened 2026-09-13 01:51:30 +00:00 by nsaspy · 2 comments
Owner

User priority: implement the z.AI and GPT widgets FIRST, adjacent on the same bar; fix blockers rather than waiting on the unrelated forwarding stack. Backend tracked in lost-rob0t/llm-log#79.

Requirements: exact labels z.AI and GPT; cycle provider-reported 5-hour/weekly/other applicable windows every 5 seconds; percentage USED; configurable green <70%, yellow >=70%, red >=90%; support any reported GPT plan (user uses Pro), not hard-coded caps. Show unknown/stale/expired/unavailable explicitly. Preserve limit/meter identity and reset/plan details. Do not label Codex-specific quotas as all ChatGPT usage. One shared bounded background collector talks only to llm-log; no provider credentials or network work in Qtile rendering. Left-click advance/pause, middle-click resume, right-click details. Idempotent insertion and safe reload/multimonitor lifecycle.

Next in this same requested work: add a NEW grapher using llm-log /api/v1/stats/timeline. Keep the old OpenRouter graph available. Exact API bucket boundaries and durations, separate input/output, genuine gaps, no fabricated samples, completed-request accounting and coverage visible. Place new telemetry together.

Keep Org sources authoritative and commit matching generated Python. Tests must exercise real normalization/collector behavior, rotation/colors, adjacency/idempotency, malformed/stale data and literate parity. No merge/deployment claims without actual gate/host evidence.

User priority: implement the z.AI and GPT widgets FIRST, adjacent on the same bar; fix blockers rather than waiting on the unrelated forwarding stack. Backend tracked in lost-rob0t/llm-log#79. Requirements: exact labels z.AI and GPT; cycle provider-reported 5-hour/weekly/other applicable windows every 5 seconds; percentage USED; configurable green <70%, yellow >=70%, red >=90%; support any reported GPT plan (user uses Pro), not hard-coded caps. Show unknown/stale/expired/unavailable explicitly. Preserve limit/meter identity and reset/plan details. Do not label Codex-specific quotas as all ChatGPT usage. One shared bounded background collector talks only to llm-log; no provider credentials or network work in Qtile rendering. Left-click advance/pause, middle-click resume, right-click details. Idempotent insertion and safe reload/multimonitor lifecycle. Next in this same requested work: add a NEW grapher using llm-log /api/v1/stats/timeline. Keep the old OpenRouter graph available. Exact API bucket boundaries and durations, separate input/output, genuine gaps, no fabricated samples, completed-request accounting and coverage visible. Place new telemetry together. Keep Org sources authoritative and commit matching generated Python. Tests must exercise real normalization/collector behavior, rotation/colors, adjacency/idempotency, malformed/stale data and literate parity. No merge/deployment claims without actual gate/host evidence.
Author
Owner

Landed via merged PR #235 (d1b1c14) on GitHub: adjacent z.AI/GPT quota widgets + accurate llm-log graph are on master. Follow-up tracked in #203.

Landed via merged PR #235 (d1b1c14) on GitHub: adjacent z.AI/GPT quota widgets + accurate llm-log graph are on master. Follow-up tracked in #203.
Author
Owner

Landed via merged PR #235 (d1b1c14): adjacent z.AI/GPT quota widgets + accurate llm-log graph and service wiring are on master. Follow-up rotating meters tracked in #236 / PR #237.

Landed via merged PR #235 (d1b1c14): adjacent z.AI/GPT quota widgets + accurate llm-log graph and service wiring are on master. Follow-up rotating meters tracked in #236 / PR #237.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/dotfiles#202
No description provided.