[cueweb] Host and Allocation Management: Hosts monitor page (#2292)#2388
[cueweb] Host and Allocation Management: Hosts monitor page (#2292)#2388ttpss930141011 wants to merge 7 commits into
Conversation
…ademySoftwareFoundation#2292) Add three optional props so the hosts page can reuse SimpleDataTable: - disableContextMenu: render no row context menu - filterPlaceholder: override the filter box wording - emptyState: override the empty-table content All default to the existing frames/layers behavior, so current callers are unchanged.
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Thanks for your contribution. I will review it soon. Please merge the master into your branch! |
|
Closing for now — doing a self-review on my own fork first, will reopen against upstream once verified. |
Related Issues
Fixes #2292
This also unblocks the sibling Host & Allocation Management issues that need a host listing surface to build on: #2296 (host tag editor), #2293 (lock/unlock), #2294 (reboot), #2295 (host detail page).
Summarize your change.
Adds the
/hostsroute — a Monitor Hosts page for CueWeb, the web equivalent of CueGUI's CueCommander → Monitor Hosts. CueWeb previously had no hosts page (the sidebar/hostslink 404'd); this provides the basic sortable table the issue asks for.What it does:
/hostspage that loads hosts via the existinggetHosts()proxy and auto-refreshes every 30s.Statusbadge.Implementation notes:
Hosttype widened to include the fields the table needs (the REST gateway already returns them; memory/mcp arrive as KB-in-string, so there are small parse/format helpers with unit tests).SimpleDataTable(used by jobs/layers/frames) gains three backward-compatible optional props so a read-only table can reuse it:disableContextMenu(render no row context menu),filterPlaceholder, andemptyState. All default to the existing frames/layers behavior, so current call sites are unchanged — verified by the full existing test suite still passing (48/48).Why idle/total (not used/total): the issue text says "used/total", but the backend and CueGUI's Monitor Hosts both expose idle vs total, so the columns show and are labeled "(Idle/Total)" to stay faithful to the data source.
Scope: read-only by design. Host actions (lock/unlock, tag edit, reboot, NIMBY toggle) and server-side filtering belong to the sibling issues and are intentionally out of scope here.
Testing: added Jest unit tests for the formatting/sort helpers; manually verified against the local sandbox (page loads the rqd hosts, sorting and filtering work, 30s refresh, and the existing jobs/layers/frames tables are unaffected by the
SimpleDataTablechange).LLM usage disclosure
Claude (Opus) was used to help explore the existing CueWeb/CueGUI patterns, draft the implementation, and write the unit tests, with the changes reviewed and verified locally.