Dashboard › opencode › Distillation
8a3c30ec-cb7e-457d-a950-778fb666ccf2["lore_tm_v1_I81wih35DrH0v8vhEp69REQv1cZ7Q8Li_KYV6q9uDfw"]
Date: Sep 16, 2026
packages/core/src/session/projector.ts, including additional projection logic around SessionEvent.Step.Started, querying a latest record, and creating a synthetic continuation with Prompt.make({ text: "continue" }).tool.state = castDraft(...) and ignores an event when event.data.assistantMessageID === undefined.EventV2.Service, processes rows in batches via .limit(BATCH_SIZE), and selects pending inputs where SessionInputTable.promoted_seq is null.execution.wake(row.sessionID) only when a database update reports success: Effect.flatMap((updated) => (updated ? execution.wake(row.sessionID) : Effect.void))."session-recovery".start(key, successor, false, true) and tracking an optional exit?: Exit.Exit<void, E>.updateExecution(continuation ? {} : { phase: "ready", assistant_message_id: null }) and, on an uncertain outcome, updateExecution({ phase: "unknown", assistant_message_id: null })."queue" promotion branch, passing sessionID: session.id, serializing publication with Semaphore.makeUnsafe(1).withPermit, and handling overflow continuation through Effect.die(continueAfterOverflowCompaction(currentStep)).