Dashboard › opencode › Distillation
9d56b702-c710-45e9-a831-0efb490b04a0["lore_tm_v1_b3OfqYF2Uui0CXuDPiSy7QV5Hn0ApwmSWrq2uoRNAEg"]
Date: Sep 14, 2026
/home/byk/Code/opencode/specs/v2/todo.md lists remaining Session work: replace the public in-memory @opencode-ai/llm tool loop’s remaining one-turn native-adapter use with a narrow typed dispatcher; batch streamed deltas and add covering context indexes; expose replayable Session event cursors over HTTP and the generated SDK; integrate BackgroundJob with V2 tool execution for background bash jobs and background agent dispatch with durable status observation, completion delivery, and explicit cancellation/continuation semantics; and add durable/clustered interruption, retries, and stale-owner fencing only when those slices become concrete.retry and abandon decisions for unknown outcomes, 6. bounded automatic retry only where provider and tool idempotency make it safe, and 7. retry budget, backoff, visible recovery status, startup discovery, and future clustered ownership fencing./home/byk/Code/opencode/specs/v2/todo.md says not to introduce an enclosing durable execution identity merely to group continuation-recovery facts, because a process-local Session drain has no durable transcript boundary./home/byk/Code/opencode/specs/v2/todo.md are: 1. give plugins Immer drafts so bad mutations can be discarded, 2. give plugins a global "opencode" instance, and 3. expose methods such as opencode.session.prompt() and opencode.tool.register({...}) on that instance. The section is labeled Plugin API design - James?.Event - Kit section says the self-contained durable EventV2 core service is implemented and owns sync-versioned persistence, transactional sequencing, pub/sub, replay, and replay-owner claims without relying on the old bus system.EventV2 slices are: 1. expose the embedded consumer-facing Session cursor API over HTTP and the generated SDK where remote consumers require it, and 2. keep replay-owner claims separate from future clustered Session-execution ownership and stale-runtime fencing.RcMap and one shared PubSub.sliding<void>(1) per active aggregate, while retaining SQLite cursor replay and subscribe-before-history semantics.item_reference when store !== false; with store: false, the unavailable reference path is intentionally omitted. Stateless hosted-tool continuation behavior remains undecided.@opencode-ai/llm orchestration exports and whether to preserve or alias renamed filesystem SDK generated type names./home/byk/Code/opencode/specs/v2/todo.md says deferred hardening cleanup should remain visible but should not block functionality slices unless canary work reveals a concrete failure.