v0.10.0
Sledge now provides typed, portable materializations instead of exposing raw storage operations.
- Define ledger events with
defineLedgerShape(...), declare versioned projection schemas withdefineMaterialization(...), compose them withwithMaterializations(...), and attach indexers and queries with.register(...). - Materialization histories are applied automatically when a ledger opens, including typed schema changes and data migrations.
- Indexers, queries, and migrations use Sledge-owned typed database facades. Raw storage scopes and the
@torkbot/sledge/database-ledger-engineexport have been removed. - Projection reads now cover joins, unions, aggregates, ordering, event and signal scans, semantic event refs, and batch operations without leaking SQL or storage handles.
This release is breaking. Replace defineLedgerModel(...), registerLedgerModel(...), and bindLedgerModel(...) with the new shape/materialization flow; pass the registered model to storage adapters; and move raw exec/prepare projection logic into typed materialization migrations, indexers, and queries.