molecule-core/canvas/src/components
Dev Lead Agent 53374ca391 feat(canvas): add WebSocket connection status indicator to Toolbar
Adds a live/reconnecting/offline pill to the Toolbar so users can see
at a glance whether the canvas is receiving real-time updates.

Changes:
- canvas/src/store/canvas.ts: add wsStatus ('connected'|'connecting'|
  'disconnected') field + setWsStatus action to CanvasState (initial:
  'connecting')
- canvas/src/store/socket.ts: wire setWsStatus into ReconnectingSocket —
  'connecting' on connect() call, 'connected' in onopen, 'connecting'
  in onclose (will reconnect), 'disconnected' in disconnect()
- canvas/src/components/Toolbar.tsx: subscribe to wsStatus; render
  WsStatusPill (green "Live" / amber pulsing "Reconnecting" / red
  "Offline") after the workspace count section
- canvas/src/store/__tests__/socket.test.ts: add setWsStatus: vi.fn()
  to the canvas store mock (global factory, beforeEach reset, and the
  mid-test override in the onmessage test)

369/369 canvas tests passing, production build clean.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-14 08:21:57 +00:00
..
__tests__ fix: add main landmark, skip link, and aria-label to canvas (WCAG 2.4.1/2.4.6) 2026-04-14 06:24:57 +00:00
canvas initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
settings initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
tabs refactor(canvas): split 650-line FilesTab.tsx into focused components 2026-04-13 18:00:20 -07:00
ui initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
ApprovalBanner.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
BundleDropZone.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
Canvas.tsx fix: add main landmark, skip link, and aria-label to canvas (WCAG 2.4.1/2.4.6) 2026-04-14 06:24:57 +00:00
CommunicationOverlay.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
ConfirmDialog.tsx test: 100% coverage of extracted helpers + ConfirmDialog singleButton 2026-04-13 17:08:33 -07:00
ContextMenu.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
ConversationTraceModal.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
CreateWorkspaceDialog.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
EmptyState.tsx fix: UX audit — dark theme buttons, input backgrounds, ReactFlow dark mode, contrast & a11y 2026-04-14 02:26:45 +00:00
ErrorBoundary.tsx test: 100% coverage of extracted helpers + ConfirmDialog singleButton 2026-04-13 17:08:33 -07:00
Legend.tsx fix(canvas): raise minimum text size in Legend and WorkspaceNode to meet WCAG readability 2026-04-14 05:21:04 +00:00
MissingKeysModal.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
OnboardingWizard.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
ProvisioningTimeout.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
SearchDialog.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
SidePanel.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
StatusDot.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
TemplatePalette.tsx fix: UX audit — dark theme buttons, input backgrounds, ReactFlow dark mode, contrast & a11y 2026-04-14 02:26:45 +00:00
Toaster.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
Toolbar.tsx feat(canvas): add WebSocket connection status indicator to Toolbar 2026-04-14 08:21:57 +00:00
Tooltip.tsx initial commit — Molecule AI platform 2026-04-13 11:55:37 -07:00
WorkspaceNode.tsx fix(canvas): raise minimum text size in Legend and WorkspaceNode to meet WCAG readability 2026-04-14 05:21:04 +00:00