Skip to main content

max / makenotwork

1.1 KB · 19 lines History Blame Raw
1 -- Which SyncKit is actually in the field.
2 --
3 -- SyncKit is a client-side SDK linked into mnw-cli, balanced_breakfast and
4 -- audiofiles. Nothing about it is deployed, so there is no version to poll and
5 -- "which SyncKit is running out there" had no answer. Reading a number out of a
6 -- lockfile at release time answers a different question: what we shipped, not
7 -- what people are still syncing with.
8 --
9 -- The client now sends `synckit-client/<version>` as its User-Agent. This is
10 -- where that lands: one column on the device row that already exists, carrying
11 -- the version seen on that device's last request. Deliberately NOT a per-request
12 -- log -- no new table, no sweep job, and no new retention clock, since the value
13 -- lives and dies with the device registration the user can already see and
14 -- delete. Only the version is stored; the rest of the User-Agent is discarded.
15 --
16 -- Nullable with no backfill: an older client sends no such User-Agent, and NULL
17 -- is the honest reading of "syncing, version unknown" rather than a guess.
18 ALTER TABLE sync_devices ADD COLUMN IF NOT EXISTS client_version VARCHAR(32);
19