Dashboardopencode-loreOpenCode runtime, packaging, SQLite, an…

OpenCode runtime, packaging, SQLite, and fetch boundaries

Category: architecture
Confidence: 1.00
ID: 01a0ab1d-5e15-7e58-b6a7-c5af1d016ed0
Project ID: 6f4be9ff-ed84-4cca-a9e7-732a0b0b8677
Cross-project: No
Recalled in other projects: 1
Source session: 0NovFAan78Rde0KPN
Created: 2026-08-20 20:40:48
Updated: 2026-09-16 16:47:03

Cross-Project Recalls

ProjectHitsLast recalled
opencode 4 8d ago

Content

Keep package dependencies one-way: Schema → Core/Protocol; Core/Protocol → Server; Client → Schema/Protocol only; sdk-next composes Client, Core, and Server. Never import Core or Server from Client. Core must support bundled Node CJS and raw TypeScript consumers. Only packages/core/src/db/driver.node.ts may import node:sqlite; other source uses #db/driver for Bun compatibility. Chose Bun node:http(s) transport over undici or Bun fetch because undici@7 hangs under Bun and the gateway needs explicit streaming, backpressure, abort, and listener cleanup; Bun must never import or evaluate undici. Node lazily imports undici.

Move to: