Skip to content

Live throttle control on the run console - #1

Merged
NitinKumar004 merged 3 commits into
mainfrom
feature/live-speed-control
Aug 9, 2026
Merged

Live throttle control on the run console#1
NitinKumar004 merged 3 commits into
mainfrom
feature/live-speed-control

Conversation

@NitinKumar004

Copy link
Copy Markdown
Contributor

What this adds

A live throttle slider on the run console. You can change a running operation's rate (rows/sec) at any time without stopping it — drag it down when production gets busy, drag it up when it's quiet. 0 means unthrottled.

Changes

  • BackendPATCH /runs/{id} now accepts {"action":"speed","rate":N}. It adjusts the running runner's token bucket immediately (solo mode) and persists the new rate on the task, so it survives a reload. A run.speed entry is written to the audit trail.
  • Frontend — a Throttle slider on the run console, styled for both light and dark themes. The slider initializes from the task's current rate and debounces changes.
  • Small helper: the dashboard now reads a ?theme= query param (used to capture the dark-mode screenshot below).

How to test

  1. make up && make run, build the dashboard (cd web && npm run build), open http://localhost:8000/app.
  2. Start a run, open it, and drag the Throttle slider — rows/sec responds live.
  3. Reload the page: the rate you set is remembered. Check the audit trail for the run.speed event.

Screenshots

Captured with headless Chrome.

Run console — throttle slider (light)

Run console light

Run console — throttle slider (dark)

Run console dark

Tasks — run history + open active run

Tasks

Notes

  • Live rate change applies in solo mode (in-process runner). In fleet mode the rate persists on the task and new leases pick it up; adjusting already-running fleet workers live is a follow-up.

@NitinKumar004
NitinKumar004 merged commit 4af7759 into main Aug 9, 2026
3 checks passed
@NitinKumar004
NitinKumar004 deleted the feature/live-speed-control branch August 9, 2026 13:38
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.

1 participant