feat(sidecar)!: protocol 4 — guild rosters, and a way to migrate the store (Teams cutover 2/6) #32
Reference in New Issue
Block a user
No description provided.
Delete Branch "edge"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Cutover 2 of 6, and the pair to
RunicGateway/servuo-plugins#14.PROTOCOL_VERSIONgoes to 4; the overlay declaresprotocol = 4. The installer refuses to pair a sidecar and an overlay that disagree, so these two merge together or the next bundle silently fails to compose.What lands
membersJSON on theguildsboard, served fromGET /guilds— the snapshot rule, so a website that connects fresh gets a roster without waiting for the next membership change.SCHEMAwasCREATE TABLE IF NOT EXISTS, which can add a table and cannot add a column — every schema change up to protocol 3 happened to add whole tables, soALTER TABLEappears nowhere in this repo's history and the gap was invisible untilguilds.members. Settled asPRAGMA user_versionstepped migrations: each step transactional with the bump recording it, a failure aborts startup (already the behaviour, and safe because the shard dials out), and a database from a newer sidecar warns and continues so a binary rollback stays a recovery path. Notsqlx::migrate!, whose per-file checksums hard-fail startup if a released migration is ever edited.Spec of record:
docs/link/v4.md.AI disclosure
Written with Claude Code (Opus 5). Commits carry the
Co-Authored-Bytrailer.