Files
JARVIS/frontend/notes.md
DESKTOP-72TV0V4\caoxiaozhu 90ea732584 Add local project snapshots and plans
Capture the current local data snapshot and planning artifacts alongside
this development batch so the workspace state matches the code changes.
This preserves the reference materials and generated files that were
kept in the working tree.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 13:49:03 +08:00

2.0 KiB

Notes: Dual Telemetry Control Panel

Working Assumptions

  • The chat page already has a persistent right-side OrchestrationPanel.
  • Existing chat streaming already emits real progress, chunk, and error-style events.
  • The user wants the panel to feel like an active system console, not a static status card.

Design Intent

  • Upper telemetry block: real machine metrics with micro line charts
  • Lower telemetry block: session activity waveform tied to current chat execution
  • Keep the visual language in the current sci-fi / HUD style
  • Avoid heavy chart libraries or full dashboard aesthetics

Constraints

  • Do not invent fake system numbers
  • Do not persist telemetry history into conversation history
  • Keep the main chat surface dominant
  • MVP should use the fewest new moving parts possible

Current Code Findings

src/components/chat/OrchestrationPanel.vue

  • Already owns the visual shell for the right-side control panel
  • Has logical places to insert additional stacked sections above the agent bus and event feed
  • Current UI is text-forward and would benefit from live numeric/sparkline blocks

src/pages/chat/composables/useChatView.ts

  • Already maintains transient orchestration state per request
  • Is the right place to derive a session activity waveform from progress, tool, and chunk events
  • Can own polling lifecycle for system metrics if we want chat page-local state

Backend status route

  • No dedicated system metrics endpoint has been confirmed yet
  • Minimal new backend contract can be a polling endpoint like /api/system/status
  • Suggested payload:
    • cpu_percent
    • memory_percent
    • disk_percent
    • timestamp

Planning Implications

  • Add a tiny backend router/service for system telemetry rather than overloading conversation APIs
  • Add a reusable lightweight sparkline component in frontend for consistent rendering
  • Keep system telemetry and session telemetry separate in state and UI
  • Limit retained chart points (for example 20-30) to keep rendering simple and responsive