Proposal: pilot-storage-backend-interface
Artifacts
Official change artifacts tracked under openspec/.
The reference implementation maintains two storage engines (SQLite via records.js/search.js, Postgres via postgres-records.js/postgres-search.js) dispatched by isPostgresStorageBackend() branches scattered across the server. A full inventory (tmp/workstreams/storage-backend-pilot-design-2026-06-18.md) classified all 187 such branches: 153 are drifttoremove (the same conceptual storage operation implemented twice inline in shared orchestration), 21 are adapterselectionkeep (the legitimate backend-selection points, already the right pattern), and 14 are backendspecifickeep (honest dialect logic that is clearer kept backend-specific: SQLite WAL retry, Postgres FOR UPDATE locks, sqlite-vec vs pgvector).
Affected capabilities
Capability specs this change proposes to modify.