Skip to content

Feat/phase 2 machine grouping - #129

Merged
mitulgarg merged 2 commits into
mainfrom
feat/phase-2-machine-grouping
May 9, 2026
Merged

Feat/phase 2 machine grouping#129
mitulgarg merged 2 commits into
mainfrom
feat/phase-2-machine-grouping

Conversation

@mitulgarg

Copy link
Copy Markdown
Owner

No description provided.

mitulgarg and others added 2 commits May 10, 2026 00:02
- Machine.group_name VARCHAR(64) column (nullable, indexed)
- Idempotent ALTER TABLE migration in init_db (safe on existing DBs)
- PATCH /api/machines/{id} for group assignment, with strict validation:
  letters/numbers/-/_/./space only, 64 char max, 'ungrouped' reserved
- GET /api/groups returns counts + status breakdown, NULL bucketed as
  synthetic 'ungrouped' (sorted last)
- POST /api/report honours machine.group_name self-tag only when no
  dashboard-set group exists (dashboard PATCH wins)
- Frontend: getGroups(), updateMachineGroup(), MachineGroup type
- New reusable GroupPicker component (input + filtered dropdown +
  create-new + ungroup, full keyboard nav, click-outside close)
- MachineDetail summary row: clickable Group card with optimistic
  update + revert-on-error
- PATCH response now mirrors GET shape (includes latest_report) so
  callers can setMachine(patchResponse) without losing diagnostics

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Topology right panel: prominent 'Open full details →' button next
  to status pill (was no link at all)
- Topology status pill now shows headline issue count: 'PASS · 0 issues'
- Removed redundant 'Summary' 2x2 grid from Topology right panel —
  the diagnostic cards' status badges already convey the same info
- Fleet hostname is now a Link to MachineDetail (universal pattern:
  click the name to open it). Row chevron click still expands inline.
- Fleet expanded section: 'Open full details →' promoted to a
  prominent button at the top with a one-line hint about what's there;
  removed the buried small link at the bottom of diagnostics

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@mitulgarg
mitulgarg merged commit 289d943 into main May 9, 2026
4 checks passed
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