Add refresh button in webui and r/? keys in tui - #649
Merged
Merged
Conversation
lsegal
marked this pull request as ready for review
September 10, 2026 22:25
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Root cause / context
glorp already had an internal "poll now" mechanism (
Glorp.nudgePoll, used for ownership handoffs), but nothing in either dashboard exposed it to an operator: they had to wait out the run's configured poll interval to see new issues picked up.Change
webui/server.go: newSetRefreshHandler+POST /api/refreshendpoint, mirroring the existing job-action/settings handler pattern.main.go: wires the webui and terminal-UI refresh handlers tow.nudgePoll().ui.go: addsTerminalUI.SetRefreshHandler/requestRefresh, an "r" key case that calls it, a "?" key case that toggles a centered help overlay (and swallows other keys while it's open), and anewDashboard(ui *TerminalUI)parameter so the model can reach back into the TerminalUI.webui/src/dashboard.js+main.jsx: asubmitRefresh()helper and a refresh button (spinningArrowPathIconwhile in flight) beside the settings button.CHANGELOG.md: added an## Unreleasedentry.Tests
webui/server_test.go: refresh endpoint wiring, unavailable-handler 503,core.ErrNotReadyhandling, method rejection.webui/src/dashboard.test.js:submitRefreshposts correctly and surfaces errors.ui_test.go: "r" requests a refresh (and is a no-op when unwired), "?" opens/closes the help overlay and swallows other keys while open.go build ./...,go vet ./...,go test ./...all pass;pnpm test(67 tests) andpnpm run lint(biome) pass inwebui/.Screenshot
Terminal dashboard help overlay (text, since it has no animation):
Closes #646
Agents: claude-code (claude-sonnet-5)