Schema evolution: subscribe-time migrate hooks

One stream registered at version: 2 with migrate: { 1: v1ToV2 }. Left panel subscribes normally (no schemaVersion on the wire, loader output passes through). Right panel uses subscribeAt(counter, { schemaVersion: 1 }) from svelte-realtime/test-client - the server's migrate[1] runs end-to-end on the initial subscribe response. Increment a counter and watch the right panel's row flip its provenance badge back to loader: the live publish is a raw v2 event, merging into the migrated base for that key.

Watching as Crispy Falcon (76f16be4) server version: 2

Live (v2): subscribed normally

no schemaVersion on the wire; migrate chain skipped.

  • loading...

subscribeAt { schemaVersion: 1 }: migrate chain ran

wire envelope claims v1; server runs migrate[1] on the loader output.

  • loading...

Bump a counter

Stream registration