You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- BandwidthProducer: add close(err)/closed() for cancellation, rename
get() to peek()
- Move send bandwidth polling to Session (version-agnostic, depends on
QUIC backend support not protocol version)
- Remove send bandwidth from lite/ietf start() return values
- Make recv bandwidth errors fatal (no retry loop)
- Use forward-compatible version matching (list older versions explicitly)
- JS: make send bandwidth version-agnostic (check getStats existence),
use setInterval with closed promise instead of fire-and-forget
- JS: make probe async and fatal, called from connection Promise.all
- JS watch: handle target.name early before ABR, remove MIN_BITRATE
- JS publish: read sendBandwidth from connection directly instead of
piping through props
- CLAUDE.md: add JS async patterns convention (Effect.interval/timer)
https://claude.ai/code/session_01C68pEkoUhQqtQALYxRajhx
Copy file name to clipboardExpand all lines: CLAUDE.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -111,6 +111,7 @@ match version {
111
111
-**Formatting/Linting**: Biome for JS/TS formatting and linting
112
112
-**UI**: Solid.js for Web Components in `@moq/watch/ui` and `@moq/publish/ui`
113
113
-**Builds**: Nix flake for reproducible builds (optional)
114
+
-**JS async patterns**: Use `Effect.interval()`, `Effect.timer()`, and `Effect.event()` helpers from `@moq/signals` instead of raw `setInterval`, `setTimeout`, `addEventListener`. These handle cleanup automatically when the Effect is closed.
0 commit comments