8000 feat(web): usage history charts and limit pace at a glance by DominikScholz · Pull Request #2 · DominikScholz/dscode · GitHub
[go: up one dir, main page]

Skip to content

feat(web): usage history charts and limit pace at a glance - #2

Draft
DominikScholz wants to merge 249 commits into
mainfrom
feat/usage-charts
Draft

DominikScholz wants to merge 249 commits into
mainfrom
feat/usage-charts

Conversation

@DominikScholz
Copy link
Copy Markdown
Owner

Problem

The Usage window only showed where each limit stands right now. You couldn't see how usage built up over time, whether you were spending a window faster than it refills, or when each limit resets and how many banked resets you have left.

Change

Usage gets a history chart with breakdowns beside it, and the Limits view shows one row per limit window. Each row has:

  • the % left in large type
  • a bar with a tick where even spending would put you, and a red glow when you're behind that pace
  • a "runs out" warning under the bar
  • its own reset countdown

The provider header shows banked reset credits, when the next one expires and a "Use reset" button. The window and the rest of the app take on the Fey-inspired design language: neutral near-black surfaces, ink accents and static grain.

Scope

Draft, opened so this work isn't forgotten. The fork's main is behind upstream and this branch merges upstream main, so the diff against main also contains that upstream catch-up. The usage work is the 16 commits from feat(web): add usage history and limit pace charts onward.

Verification

Iterated in the web client against real usage data, dark theme. vp run check:changed, before/after captures, light theme, desktop and mobile are still to do before this leaves draft.

Created with Claude Opus 5.5 in Claude Code.

juliusmarminge and others added 30 commits October 25, 2026 10:41
…oo (#24807)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…(#24951)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… machines (#24965)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…#24994)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… (#24865)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
juliusmarminge and others added 30 commits October 26, 2026 02:51
…provider and cwd (#25370)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…aft, not by the composer (#25376)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Poses now cover iPhone SE, iPhone 18 Pro, iPhone Duo folded and unfolded,
iPad Pro 13" in both orientations, Pixel 10 Pro, Pixel 10 Pro Fold folded,
unfolded and unfolded landscape, and Pixel Tablet in both orientations.
Landscape poses rotate once the app is up (a rotation during launch is lost)
and check that the screen really is wider than tall. Taps fall back to the
element's centre when agent-device refuses a covered ref, and a gateway
whose workers briefly reconnect is retried.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The --prepare flag from #25390 had no default, so effect/cli made it
required and every mobile:install failed with "Missing required flag".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
agent-device names rotations relative to the device's natural orientation,
which is landscape on the Pixel Tablet and an unfolded Fold, so
"landscape-left" turned them portrait. The runner now asks for a shape and
tries each rotation until the screen has it. It also prepares each platform's
dev client before leasing, rides out longer worker drops, and skips the
Duo poses by default until agent-device can fold Simlock's simulators.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…oes (#25426)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…tart (#25364)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
The overview's side column drops its cards for plain "By provider" and
"By type" panels with one heading style, further from the chart. Limit
bars grow to 10px, a run-out forecast turns red with a warning icon, and
each provider tile gets a brighter halo over a dark wash of its colour
across the card.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…r header

Tiles get a tinted opaque frame, a shadow pooled below and a wider halo.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…25456)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…from mounted components (#25459)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…eir listeners (#25464)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…e hears scrolling through one viewport signal (#25463)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#25477)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…r thread is not open (#25457)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… search runs from handlers (#25458)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…25489)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…r (#25493)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… (#25468)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#25461)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…#25461)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
…ger throws (#25503)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
… (#25462)

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
- Replace the glowing deficit treatment with a red-tinted shortfall and tick
- Remove the limit fill gradient

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0