dreamstack/engine
enzotar a8235c48b3 feat: stream composition API — select, schema, relay filtering
1. Receiver-side `select` clause:
   - `stream from "url" { select: field1, field2 }`
   - Parser, AST, codegen all updated
   - Emits: `_connectStream(url, ["field1","field2"])`
   - Client-side _csFilter strips unwanted fields

2. Schema announcement (0x32):
   - Sources send output schema on connect
   - Lists registered signal names and mode

3. Relay schema cache:
   - ChannelState stores schema from 0x32
   - Forwarded to late-joining receivers

4. Relay-side subscribe filter (0x33):
   - Receivers send wanted fields after connecting
   - Relay strips unwanted JSON keys from 0x30/0x31
     frames before forwarding — saves bandwidth

Protocol: SchemaAnnounce=0x32, SubscribeFilter=0x33
54 tests pass, all crates build clean.
2026-02-26 10:07:47 -08:00
..
ds-physics feat: physics language integration — scene container with Rapier2D WASM 2026-02-25 10:58:43 -08:00
ds-stream feat: stream composition API — select, schema, relay filtering 2026-02-26 10:07:47 -08:00
ds-stream-wasm feat(wasm): add ds-stream-wasm crate — browser codec via WebAssembly 2026-02-25 14:45:51 -08:00