Dashboard › opencode › Distillation
5a64f987-9ed1-4572-b768-5d967a990499["lore_tm_v1_STFSfSyw5k4kvs_xiCYIIS4b4Xdri2nWZAf8puVZOoA"]
Date: Sep 15, 2026
/home/byk/Code/opencode/packages/core/src/session/message-updater.ts lines 155–239. Event handlers shown: session.next.shell.started appends a SessionMessage.Shell with output: ""; session.next.shell.ended finds the shell via adapter.getCurrentShell(event.data.callID) and updates its output and completion timestamp; session.next.step.started completes the current assistant if present, then appends a new SessionMessage.Assistant owned by event.data.assistantMessageID with agent, model, timestamp, empty content, and optional starting snapshot; session.next.step.ended uses updateOwnedAssistant(event.data.assistantMessageID, ...) to set completion time, finish, cost, tokens, and optional ending snapshot/files; both session.next.step.failed and session.next.step.interrupted update only the owned assistant, setting completion time, finish = "error", and the event error; the session.next.step.recovered handler begins at line 237 with an error object whose type is "unknown" as const.