Skip to content

feat(fleet): make dashboard key hints respect node state - #174

Merged
outofcoffee merged 1 commit into
mainfrom
reactive-dashboard-keys
Sep 6, 2026
Merged

feat(fleet): make dashboard key hints respect node state#174
outofcoffee merged 1 commit into
mainfrom
reactive-dashboard-keys

Conversation

@outofcoffee

Copy link
Copy Markdown
Collaborator

The dashboard's key help now shows start and stop only for the node where they would drive something, the way the keep and abandon entries already do.

Summary

  • Grid and detail footers build their entries from per-key offers (startOffered, stopOffered) that read the board's current read of the node under the cursor, instead of a static list with only keep and abandon gated
  • Start is offered where the read does not report the node running, stop where it does, and neither while an action is in flight; a failed or absent read offers start but not stop
  • Drop the old dashFooterHints path; both screens pass their built line to footerLine
  • The keys themselves stay ungated: pressing one the hint hides still makes the call, and the node's own refusal lands on the status line
  • Key table in docs/commands/fleet.md carries the same shown-only-where-they-drive-something wording as the keep row

Implementation details

The offer predicates live beside keepOffered/canAbort on the model and share a small nodeRunning check (read OK and state running). Gating is display-only and deliberately does not touch the key handlers, so a start pressed on a running node is still refused by the engine and reported, matching the one-shot command's behaviour. OpenSpec change state-aware-dashboard-keys records the spec delta and design.

The entries are built per node: start is offered where the board's read does not report the node running, stop where it does, and neither while an action is in flight. The keys are not gated - pressing one the hint hides still makes the call and shows the node's own answer on the status line.
@outofcoffee outofcoffee added enhancement New feature or request go Pull requests that update go code labels Sep 6, 2026
@outofcoffee
outofcoffee merged commit 01f5405 into main Sep 6, 2026
2 checks passed
@outofcoffee
outofcoffee deleted the reactive-dashboard-keys branch September 6, 2026 21:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request go Pull requests that update go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant