rowboat/apps/x/packages
Ramnique Singh 251a462686 feat(app): wire the new runtime into main + renderer
shared/ipc.ts: add sessions:* channels (create / get / list / sendMessage /
getHistory / listTurns / getTurn / respondToPermission / setToolResult /
resumeTurn / stopTurn / delete) and the sessions:events feed; remove the runs:*
channels.

main:
- register the sessions handlers and forward the turn event bus to renderer
  windows; getAgentRuntime() at startup
- stop in-flight headless runs via stopTurn (live-note / bg-task)
- drop the runs watcher, runs:* handlers, and the dev test-agent script

renderer:
- single global session-feed consumer; useSessionChat(sessionId) hook; pure
  turn -> chat-state mappers (agent-turn-view, session-chat-state); shared
  ChatConversation component
- chat (main view + sidebar) renders from the session feed; per-turn model /
  permission mode; bg-task and live-note detail views load transcripts via
  sessions:getTurn; chat delete via sessions:delete
- remove the dormant run-event path (handleRunEvent + runs:events) and its
  orphaned state
- vitest + jsdom test setup

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-15 09:44:15 +05:30
..
core feat(core): new agent runtime (agent-loop + sessions + bridges); retire old runtime 2026-06-15 09:34:24 +05:30
shared feat(app): wire the new runtime into main + renderer 2026-06-15 09:44:15 +05:30