@ultimat3/realtime 11.2.0 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CLAUDE.md CHANGED
@@ -461,7 +461,7 @@ Tier 3 package. Channels, live queries, local-first sync. One protocol for all t
461
461
  guard `onClose` already had.
462
462
  - **The grant is recorded BEFORE `server.upgrade`, and released on the path that never opens.**
463
463
  Bun runs `websocket.open` SYNCHRONOUSLY inside `server.upgrade` and does not return until it has
464
- (bun 1.3.14), and `open` is where `sync-node` reads the `GrantBook` for the socket's actor.
464
+ (bun 1.4.0), and `open` is where `sync-node` reads the `GrantBook` for the socket's actor.
465
465
  Recorded on the line after the upgrade — which it was — every authenticated socket on a real node
466
466
  carried `actor: null`: `ChannelHub.#authorize` denied every topic with `X_TOPIC_FORBIDDEN`,
467
467
  `authorize`/`visible` decided about nobody, `maxPerTenant` never applied and `hello.actorId` was
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ultimat3/realtime",
3
- "version": "11.2.0",
3
+ "version": "11.3.0",
4
4
  "description": "Three-tier realtime: channels, live queries, local-first sync — one protocol, one mutator shape",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -36,8 +36,8 @@
36
36
  "test": "bun test"
37
37
  },
38
38
  "dependencies": {
39
- "@ultimat3/core": "11.2.0",
40
- "@ultimat3/query": "11.2.0",
39
+ "@ultimat3/core": "11.3.0",
40
+ "@ultimat3/query": "11.3.0",
41
41
  "nats": "2.29.3"
42
42
  }
43
43
  }
@@ -39,7 +39,7 @@ export interface UpgradeDeps {
39
39
  readonly authenticate?: SyncAuthenticator | undefined;
40
40
  /**
41
41
  * Recorded BEFORE `server.upgrade`, because Bun runs `websocket.open` synchronously inside it
42
- * (measured on bun 1.3.14) and `open` is where the node reads this grant to build the socket's
42
+ * (measured on bun 1.4.0) and `open` is where the node reads this grant to build the socket's
43
43
  * actor. Recorded after, every authenticated socket carried `actor: null` — the topic guard,
44
44
  * `authorize`, `visible` and the per-tenant cap all deciding about nobody — and it never
45
45
  * repaired, because the re-auth sweep only visits grants with an `expiresAt`.