release(v1.10.0): yyjson hot-path swap (phase A)
Phase A of the v2.0 storage engine rewrite. Replaces nlohmann::json::parse
with smartbotic::db::parse_to_nlohmann (yyjson-backed) at 17 hot-path
callsites across WAL replay, snapshot deserialize, history reads,
replication apply, and the 10 gRPC handler bodies.
In-memory representation stays nlohmann::json — Phase B (v1.11.0) is
where in-memory binary doc storage lands. Wire and on-disk JSON bytes
unchanged in v1.10.
Measured speedup on 10k Zoe-shape docs: 2.80x (136ms → 49ms).
New runtime dep: libyyjson0.
Verified:
./packaging/build.sh --local produces
smartbotic-database_1.10.0-1_amd64.deb
libsmartbotic-db-client_1.10.0-1_amd64.deb
libsmartbotic-db-client-dev_1.10.0-1_amd64.deb
smartbotic-db-cli_1.10.0-1_amd64.deb
dpkg-deb -I shows libyyjson0 in Depends.
ldd on the unpacked binary shows libyyjson.so.0 linked.
All unit tests pass (snapshot_durability, eviction, vector_storage,
timestamp_precision, views, config_dropins, json_parse).