WIP: feat(core,ui): the pieces the docker overhaul needs from the host #3

Closed
thisilike wants to merge 1 commit from feat/core-ui-for-docker into build/dev-rig
Owner

Second of four; stacked on #2 so the docker change can be read on its own. Nothing here is docker-specific.

  • HealthDot carries a lifecycle glyph — a dot has three colours and a container has more states than that.
  • Modal makes room for a log; ConfirmDialog acts on what has focus; a long message scrolls.
  • The live channel and the SSE broadcast gate per-topic on the requesters role.
  • Notifications get a stable order within a millisecond (this was a 1-in-6 test flake).
  • deno task check walks the module backends, and the hono ContextVariableMap augmentation moves to the SDK so a module sees the same user type the server does. That surfaced a Timeout-vs-number in the docker module, fixed here.

Verified in the rig behind the stub IdP: admin and viewer sessions resolve their roles, 45 server tests pass, full build clean.

Second of four; stacked on #2 so the docker change can be read on its own. Nothing here is docker-specific. - HealthDot carries a lifecycle glyph — a dot has three colours and a container has more states than that. - Modal makes room for a log; ConfirmDialog acts on what has focus; a long message scrolls. - The live channel and the SSE broadcast gate per-topic on the requesters role. - Notifications get a stable order within a millisecond (this was a 1-in-6 test flake). - `deno task check` walks the module backends, and the hono `ContextVariableMap` augmentation moves to the SDK so a module sees the same `user` type the server does. That surfaced a Timeout-vs-number in the docker module, fixed here. Verified in the rig behind the stub IdP: admin and viewer sessions resolve their roles, 45 server tests pass, full build clean.
Split out of the docker work so the module change can be read on its own.
Nothing here is docker-specific:

- HealthDot carries a lifecycle glyph. A dot has three colours and a
  container has more states than that — paused, restarting and finished
  are not the same news, and colour alone cannot say which.
- Modal gets room for a log, ConfirmDialog acts on what has focus rather
  than always confirming, and a long message scrolls instead of pushing
  the buttons off screen.
- The live channel and the SSE broadcast gate per-topic on the requester's
  role, so a viewer's socket no longer carries admin-only payloads.
- Notifications get a stable order within a millisecond. Two written in the
  same tick came back in either order, which made a test flake one run in
  six and would have reordered a burst in the UI.
- `deno task check` walks the module backends, not just the server graph;
  the ContextVariableMap augmentation moves to the SDK so a module backend
  sees the same `user` type the server does. That immediately surfaced a
  Timeout-vs-number in the docker module, fixed here.
thisilike changed title from feat(core,ui): the pieces the docker overhaul needs from the host to WIP: feat(core,ui): the pieces the docker overhaul needs from the host 2026-08-09 19:03:31 +02:00
thisilike closed this pull request 2026-08-09 23:01:41 +02:00

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
OpsDeck/core!3
No description provided.