[0.20.0] - 2026-04-26
Added
- Derived analytics archive (#40, foundation PR). New
archive.sqlitematerialized read model alongside the canonicalledger.jsonl, exposed viabuildArchive(),rebuildArchive(),getArchiveStatus(), andopenArchive(). Schema coverssessions,turns,tool_calls,compactions, and a reservedtool_result_eventstable for the future content-sidecar bridge (#33). Stamps are folded into materialized columns (workflow_id,agent_id,persona,tier) plus a JSON blob, so consumers no longer have to fold the full stamp set on every query. Build is incremental keyed offarchive_state.ledger_offset_bytes, and rebuild-from-zero is deterministic — deletingarchive.sqliteand rebuilding always reproduces the same row counts. Backed bynode:sqliteso no native build step. NewarchivePath()exported alongside the existing path helpers.