Skip to content

feat(dashboard): show aggregated node status with a refresh button#39

Merged
fdaugan merged 1 commit into
feature/vuejsfrom
norman/node-status
Jun 17, 2026
Merged

feat(dashboard): show aggregated node status with a refresh button#39
fdaugan merged 1 commit into
feature/vuejsfrom
norman/node-status

Conversation

@Terracosmos

Copy link
Copy Markdown
Collaborator

Context

Implements #37. Each dashboard node card now surfaces the aggregated
UP/no-status/DOWN status of its subscriptions, with a manual refresh.

What it does

  • HomeView fetches GET rest/node/status/subscription (per instance-node
    { total, UP, DOWN }), aggregates it per card, and exposes nodeStatus.
  • SubscriptionGroupCard renders a 3-segment bar (green UP / grey no-status / red
    DOWN) with an up/total counter and tooltip, plus a refresh button.
  • Refresh POSTs rest/node/status/refresh/{id} then re-fetches the stats; a per-card
    refreshing flag drives a spinner.

Design decision (node-id mapping)

Dashboard cards are keyed at the TOOL level (e.g. service:prov:aws) but each row is
a subscription on an INSTANCE node (e.g. service:prov:aws:localtest), which is how
the backend keys its stats. So a card's status = the sum over its distinct instance
nodes, and refresh rechecks each of them (not a single node id) — a deliberate read
of the tool→instances aggregation. Happy to adjust if you'd rather scope per instance.

Tests

npm run test (incl. 3 new card tests: segment widths from nodeStatus, refresh-node
emit, health-bar fallback) and npm run build pass. Verified in the app: the
Provisioning AWS card shows 3/3 UP (full green), and refresh triggers the POST +
re-fetch.

Note

Base feature/vuejs → Refs #37, close manually after merge.

Feedback welcome.

Each dashboard node card now shows a 3-segment bar (UP / no status / DOWN) aggregated from GET rest/node/status/subscription, plus a per-node refresh button that POSTs rest/node/status/refresh/{id} and re-fetches. A tool-level card aggregates the stats of its distinct instance nodes and rechecks each of them.
@Terracosmos Terracosmos requested a review from fdaugan June 17, 2026 12:52
@sonarqubecloud

Copy link
Copy Markdown

@sonarqubecloud

Copy link
Copy Markdown

@fdaugan fdaugan merged commit 85774c7 into feature/vuejs Jun 17, 2026
3 of 4 checks passed
@fdaugan fdaugan deleted the norman/node-status branch June 17, 2026 15:57
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.

2 participants