What
Merging the pre-chtypes stack will silently break the homepage live demo, because the docs site bundles the SDK from this repo while the demo streams from a separately deployed server.
docs/package.json:24 — "@wavehouse/sdk": "workspace:*", so a docs build ships whatever SDK is in the tree.
docs/src/components/LiveDemo.astro streams from https://iefrrvavd5akvphk7pq3.wavehouse.app.
Probed that backend directly:
$ curl -sN '.../v1/stream?table=gh_events'
: connected
No event: schema frame at connect — so it is still running the pre-stack server. The new SubscribeSchemaFrame sends one before the first row.
Why it breaks silently
This is exactly the skew the stack's own new warning describes (docs/src/content/docs/sdk/streaming.md, "Upgrade the SDK and the server together"). A new SDK against an old server never receives a schema frame, so _columns stays unset and _dispatch drops every row with a console.warn and no error callback.
liveQuery() makes it worse to notice: its backfill goes over REST and is unaffected, so the panel renders its initial snapshot, reports status live, and then simply never updates. Nothing turns red.
Options
- Sequence the deploys — upgrade the stats backend before or with the docs deploy.
- Pin the docs site to the last published SDK release (
"@wavehouse/sdk": "0.1.x" instead of workspace:*) until the backend catches up, then unpin. Also removes the general coupling where any unreleased SDK change can affect the marketing site.
- Degrade gracefully in
LiveDemo.astro — surface "no data" when a stream reports live but delivers nothing for N seconds, so this class fails visibly rather than silently.
(2) is the smallest change and fixes the class, not just this instance; (3) is worth doing regardless.
Scope
Not a defect in the stack's code — it is a deployment-ordering consequence of the SSE wire change, and the stack documents the hazard for users. Found by the docs reviewer while reviewing the stack tip, which noticed the site was advertising a warning it was itself about to trip over.
What
Merging the pre-chtypes stack will silently break the homepage live demo, because the docs site bundles the SDK from this repo while the demo streams from a separately deployed server.
docs/package.json:24—"@wavehouse/sdk": "workspace:*", so a docs build ships whatever SDK is in the tree.docs/src/components/LiveDemo.astrostreams fromhttps://iefrrvavd5akvphk7pq3.wavehouse.app.Probed that backend directly:
No
event: schemaframe at connect — so it is still running the pre-stack server. The newSubscribeSchemaFramesends one before the first row.Why it breaks silently
This is exactly the skew the stack's own new warning describes (
docs/src/content/docs/sdk/streaming.md, "Upgrade the SDK and the server together"). A new SDK against an old server never receives a schema frame, so_columnsstays unset and_dispatchdrops every row with aconsole.warnand noerrorcallback.liveQuery()makes it worse to notice: its backfill goes over REST and is unaffected, so the panel renders its initial snapshot, reports statuslive, and then simply never updates. Nothing turns red.Options
"@wavehouse/sdk": "0.1.x"instead ofworkspace:*) until the backend catches up, then unpin. Also removes the general coupling where any unreleased SDK change can affect the marketing site.LiveDemo.astro— surface "no data" when a stream reportslivebut delivers nothing for N seconds, so this class fails visibly rather than silently.(2) is the smallest change and fixes the class, not just this instance; (3) is worth doing regardless.
Scope
Not a defect in the stack's code — it is a deployment-ordering consequence of the SSE wire change, and the stack documents the hazard for users. Found by the docs reviewer while reviewing the stack tip, which noticed the site was advertising a warning it was itself about to trip over.