@ai-matrx/desktop-protocol 0.5.0 → 0.6.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/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.0
4
+
5
+ - `RelayDeviceStatusEvent.since_ms` is `null` for a device that has never connected (protocol 1.1;
6
+ `NULL_SINCE`): a 1.0 reader is sent `0`, its old meaning (`statusForPeer`).
7
+ - A WebSocket client may announce its minor at connect by also offering
8
+ `versionSubprotocol(PROTOCOL_VERSION)` (e.g. `matrx.v1.1`) beside `SUBPROTOCOL`;
9
+ `announcedVersion(offered)` reads it (servers still answer `SUBPROTOCOL`).
10
+ - The versioning test also refuses a 1.0 field changing type, except a widening to null listed in
11
+ `NULL_SINCE`.
12
+
13
+ Consumer action: treat `since_ms: null` as "never connected"; offer the version subprotocol.
14
+
3
15
  ## 0.5.0
4
16
 
5
17
  Version skew is the normal state, so a minor protocol addition must never make an older peer
package/dist/client.cjs CHANGED
@@ -646,7 +646,11 @@ var SessionControlChangedEvent = import_zod8.z.strictObject({ controller_client_
646
646
  var import_zod9 = require("zod");
647
647
  var RelayDeviceStatusEvent = import_zod9.z.strictObject({
648
648
  online: import_zod9.z.boolean(),
649
- since_ms: epochMs,
649
+ /**
650
+ * When the device last went online/offline; null = it has never connected (since 1.1 —
651
+ * NULL_SINCE: a 1.0 reader is sent 0, its old meaning).
652
+ */
653
+ since_ms: epochMs.nullable(),
650
654
  app_version: import_zod9.z.string().max(32).nullable(),
651
655
  protocol_version: ProtocolVersion.nullable()
652
656
  });