Status: accepted
Context
sqlx/duckdb/typedb-driver/redis etc. do not compile to wasm32; some (Supabase REST) could work from a browser.
Decision
Split moonkale-sources (abstraction, lifting, remote proxy — compiles everywhere) from moonkale-sources-{sql,graph,kv} (drivers — native only). The web crate must never depend on a driver crate; CI enforces it.
Consequences
- Web knows what sources are (UI, capabilities) without linking drivers.
- Browser-direct sources (Supabase REST) would be a separate, wasm-compatible crate later.
- Feature flags per dialect keep build times sane.