One storage engine everywhere
The hub store, session brains, and artifacts all run on the Turso Database Rust engine.
Context
The hub needs a store for feed events, a substrate for per-session brains, and storage for artifacts. A natural but costly shape uses a different store for each: a relational database for events, files for brains, and an object store for artifacts. Each addition multiplies operational surface and splits the engine story.
Turso Database is a Rust rewrite of SQLite with concurrent write support under a journal mode. AgentFS itself is built on it, and it offers embedded full-text search.
Decision
One engine everywhere. The hub event store, the per-session AgentFS files, and artifact storage all run on the Turso Database Rust engine. No libSQL, no SQLite C bindings, and no two-engine split.
Consequences
- A single dependency and a single consistency model to reason about.
- Concurrent write support is an available property of the chosen engine, not a future migration.
- Data definition statements are not allowed inside a concurrent write transaction, so schema migrations run in single-writer mode.
- The choice is fixed. A storage facade exists for testing and portability, not to enable swapping the engine.