gadget/docs
Rob Colbert e155a7ffcf Phase 2: SubProcess observability in DroneManager and DroneInspector
Adds real-time subprocess monitoring to the IDE via the callback-chain and
subscribe/broadcast socket patterns:

Shared types (packages/api):
- New subprocess.ts message types: SubProcessStat, RequestProcessStatsMessage,
  SubscribeDroneMessage, UnsubscribeDroneMessage
- New socket events in socket.ts: requestProcessStats, subscribeDrone,
  unsubscribeDrone (ClientToServer); drone:log, drone:status (ServerToClient)

Drone (gadget-drone):
- onRequestProcessStats handler calls SubProcessService.ps() + summarize(),
  returns typed SubProcessStat[] with status detection (exitCode/killed)

Backend routing (gadget-code):
- SocketService: getDroneSessionByRegistrationId(), droneMonitorIndex map,
  addDroneMonitor()/removeDroneMonitor()/broadcastToMonitors()
- CodeSession: requestProcessStats proxy, subscribeDrone/unsubscribeDrone
- DroneSession: broadcast drone:log + drone:status to monitor subscribers
  in addition to existing chat-session routing

Frontend socket layer:
- SocketClient: requestProcessStats(), subscribeDrone(), unsubscribeDrone()
- drone:log + drone:status events forwarded to event bus

Frontend components:
- LogRenderer — reusable log rendering core extracted from LogPanel
- SubProcessTable — btop-style process table with status dots
- DroneMonitorGauge — canvas oscilloscope waveform (studio-equipment aesthetic)
- DroneMonitor — 3-gauge container (CPU/red, NETWORK/cyan, FILE I/O/green)

Frontend pages:
- DroneManager: live log streaming, SubProcessTable, DroneMonitor gauges,
  1-second polling, auto-scroll log with pause-on-scroll-up
- Home/DroneInspector: process count summary, mini LogRenderer, navigate-to-manager link

Documentation:
- Updated gadget-drone/docs/subprocess.md Phase 2 section
- Updated gadget-code/docs/ui-design-guide.md Phase 2 section
- Updated docs/socket-protocol.md with new events, sequences, and patterns
2026-05-14 13:52:59 -04:00
..
agent-knowledge project manager and chat session progress 2026-05-01 08:13:22 -04:00
archive integrate docs/archive/* for reference until no longer needed 2026-05-11 11:30:02 -04:00
executive a pile of small fixes 2026-05-11 07:08:18 -04:00
install docs: add installation guides, config examples, and systemd service files 2026-05-11 13:50:19 -04:00
temp prep work for landing page project 2026-05-13 13:15:56 -04:00
abort-controller.md OpenAI API tool call processing fixes/correctness 2026-05-12 14:39:44 -04:00
agent-toolbox.md checkpoint that I plan to delete 2026-05-09 14:52:59 -04:00
architecture.md doc updates for straming response task 2026-05-07 12:30:58 -04:00
configuration.md make reasoning effort configurable; remove sign up concept 2026-05-08 11:40:30 -04:00
drone-logger.md GadgetLogTransportSocket and the drone-to-IDE log 2026-05-09 07:16:50 -04:00
gadget-grid.md use for all home views 2026-05-01 21:19:16 -04:00
gadget-id.md finishing touches on move to GadgetId from ObjectId 2026-05-01 15:07:37 -04:00
gadget-workspace.md human draft 2026-04-29 12:30:54 -04:00
landing-page.md updated by agent 2026-05-13 20:01:02 -04:00
philosophy.md doc updates 2026-04-30 08:00:00 -04:00
reasoning-effort.md make reasoning effort configurable; remove sign up concept 2026-05-08 11:40:30 -04:00
session-heartbeat.md chat session heartbeat and session unlock 2026-05-08 14:27:37 -04:00
socket-protocol.md Phase 2: SubProcess observability in DroneManager and DroneInspector 2026-05-14 13:52:59 -04:00
streaming-responses.md make reasoning effort configurable; remove sign up concept 2026-05-08 11:40:30 -04:00
subagents.md created 2026-05-11 11:08:29 -04:00
support.md doc updates 2026-04-30 08:00:00 -04:00
workspace-management.md final notes from agent 2026-05-02 18:21:44 -04:00