Files
Greg ShuflinandClaude Opus 5 e46d757b95 notes: store a note's CRDT snapshot as base64, not a list of numbers
A snapshot is the largest thing this project stores inline, and it has to
survive two formats: artifact values are JSON in SQLite, and MessagePack
on the wire. A bare `Vec<u8>` is the worst way through either — JSON
renders it as an array of decimal numbers, about 3.5 characters a byte,
so a 150 KB snapshot lands as half a megabyte of digits; MessagePack does
better but still spends two bytes on anything above 127.

Base64 is a flat 1.33x in both. Worse than a native binary type would be,
far better than either of the above, and worth settling before these
bytes are in anyone's store.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01846bHy18nLBVn8inzmBLkk
2026-08-15 00:55:30 -07:00
..
2025-06-13 23:46:19 -07:00