@matter/protocol 0.13.0-alpha.0-20250322-f085fa576 → 0.13.0-alpha.0-20250323-770919c6a

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.
Files changed (106) hide show
  1. package/dist/cjs/ble/BtpSessionHandler.js +2 -2
  2. package/dist/cjs/ble/BtpSessionHandler.js.map +1 -1
  3. package/dist/cjs/certificate/CertificateManager.d.ts.map +1 -1
  4. package/dist/cjs/certificate/CertificateManager.js +21 -19
  5. package/dist/cjs/certificate/CertificateManager.js.map +1 -1
  6. package/dist/cjs/cluster/server/AttributeServer.d.ts.map +1 -1
  7. package/dist/cjs/cluster/server/AttributeServer.js +5 -5
  8. package/dist/cjs/cluster/server/AttributeServer.js.map +1 -1
  9. package/dist/cjs/cluster/server/CommandServer.js +2 -2
  10. package/dist/cjs/cluster/server/CommandServer.js.map +1 -1
  11. package/dist/cjs/endpoint/EndpointStructureLogger.js +1 -1
  12. package/dist/cjs/endpoint/EndpointStructureLogger.js.map +1 -1
  13. package/dist/cjs/events/OccurrenceManager.d.ts.map +1 -1
  14. package/dist/cjs/events/OccurrenceManager.js +2 -2
  15. package/dist/cjs/events/OccurrenceManager.js.map +1 -1
  16. package/dist/cjs/interaction/AttributeDataDecoder.js +1 -1
  17. package/dist/cjs/interaction/AttributeDataDecoder.js.map +1 -1
  18. package/dist/cjs/interaction/AttributeDataEncoder.d.ts.map +1 -1
  19. package/dist/cjs/interaction/AttributeDataEncoder.js +3 -3
  20. package/dist/cjs/interaction/AttributeDataEncoder.js.map +1 -1
  21. package/dist/cjs/interaction/InteractionClient.d.ts.map +1 -1
  22. package/dist/cjs/interaction/InteractionClient.js +6 -6
  23. package/dist/cjs/interaction/InteractionClient.js.map +1 -1
  24. package/dist/cjs/interaction/InteractionMessenger.js +2 -2
  25. package/dist/cjs/interaction/InteractionMessenger.js.map +1 -1
  26. package/dist/cjs/interaction/InteractionServer.js +5 -5
  27. package/dist/cjs/interaction/InteractionServer.js.map +1 -1
  28. package/dist/cjs/interaction/ServerSubscription.d.ts.map +1 -1
  29. package/dist/cjs/interaction/ServerSubscription.js +1 -1
  30. package/dist/cjs/interaction/ServerSubscription.js.map +1 -1
  31. package/dist/cjs/mdns/MdnsScanner.js +2 -2
  32. package/dist/cjs/mdns/MdnsScanner.js.map +1 -1
  33. package/dist/cjs/peer/ControllerCommissioner.d.ts.map +1 -1
  34. package/dist/cjs/peer/ControllerCommissioner.js +1 -1
  35. package/dist/cjs/peer/ControllerCommissioner.js.map +1 -1
  36. package/dist/cjs/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  37. package/dist/cjs/peer/ControllerCommissioningFlow.js +5 -5
  38. package/dist/cjs/peer/ControllerCommissioningFlow.js.map +1 -1
  39. package/dist/cjs/peer/ControllerDiscovery.d.ts.map +1 -1
  40. package/dist/cjs/peer/ControllerDiscovery.js +4 -4
  41. package/dist/cjs/peer/ControllerDiscovery.js.map +1 -1
  42. package/dist/cjs/protocol/ExchangeManager.d.ts.map +1 -1
  43. package/dist/cjs/protocol/ExchangeManager.js +1 -1
  44. package/dist/cjs/protocol/ExchangeManager.js.map +1 -1
  45. package/dist/esm/ble/BtpSessionHandler.js +2 -2
  46. package/dist/esm/ble/BtpSessionHandler.js.map +1 -1
  47. package/dist/esm/certificate/CertificateManager.d.ts.map +1 -1
  48. package/dist/esm/certificate/CertificateManager.js +22 -19
  49. package/dist/esm/certificate/CertificateManager.js.map +1 -1
  50. package/dist/esm/cluster/server/AttributeServer.d.ts.map +1 -1
  51. package/dist/esm/cluster/server/AttributeServer.js +15 -6
  52. package/dist/esm/cluster/server/AttributeServer.js.map +1 -1
  53. package/dist/esm/cluster/server/CommandServer.js +3 -3
  54. package/dist/esm/cluster/server/CommandServer.js.map +1 -1
  55. package/dist/esm/endpoint/EndpointStructureLogger.js +1 -1
  56. package/dist/esm/endpoint/EndpointStructureLogger.js.map +1 -1
  57. package/dist/esm/events/OccurrenceManager.d.ts.map +1 -1
  58. package/dist/esm/events/OccurrenceManager.js +3 -2
  59. package/dist/esm/events/OccurrenceManager.js.map +1 -1
  60. package/dist/esm/interaction/AttributeDataDecoder.js +1 -1
  61. package/dist/esm/interaction/AttributeDataDecoder.js.map +1 -1
  62. package/dist/esm/interaction/AttributeDataEncoder.d.ts.map +1 -1
  63. package/dist/esm/interaction/AttributeDataEncoder.js +4 -4
  64. package/dist/esm/interaction/AttributeDataEncoder.js.map +1 -1
  65. package/dist/esm/interaction/InteractionClient.d.ts.map +1 -1
  66. package/dist/esm/interaction/InteractionClient.js +7 -6
  67. package/dist/esm/interaction/InteractionClient.js.map +1 -1
  68. package/dist/esm/interaction/InteractionMessenger.js +2 -2
  69. package/dist/esm/interaction/InteractionMessenger.js.map +1 -1
  70. package/dist/esm/interaction/InteractionServer.js +5 -5
  71. package/dist/esm/interaction/InteractionServer.js.map +1 -1
  72. package/dist/esm/interaction/ServerSubscription.d.ts.map +1 -1
  73. package/dist/esm/interaction/ServerSubscription.js +2 -1
  74. package/dist/esm/interaction/ServerSubscription.js.map +1 -1
  75. package/dist/esm/mdns/MdnsScanner.js +2 -2
  76. package/dist/esm/mdns/MdnsScanner.js.map +1 -1
  77. package/dist/esm/peer/ControllerCommissioner.d.ts.map +1 -1
  78. package/dist/esm/peer/ControllerCommissioner.js +2 -1
  79. package/dist/esm/peer/ControllerCommissioner.js.map +1 -1
  80. package/dist/esm/peer/ControllerCommissioningFlow.d.ts.map +1 -1
  81. package/dist/esm/peer/ControllerCommissioningFlow.js +16 -6
  82. package/dist/esm/peer/ControllerCommissioningFlow.js.map +1 -1
  83. package/dist/esm/peer/ControllerDiscovery.d.ts.map +1 -1
  84. package/dist/esm/peer/ControllerDiscovery.js +5 -5
  85. package/dist/esm/peer/ControllerDiscovery.js.map +1 -1
  86. package/dist/esm/protocol/ExchangeManager.d.ts.map +1 -1
  87. package/dist/esm/protocol/ExchangeManager.js +2 -1
  88. package/dist/esm/protocol/ExchangeManager.js.map +1 -1
  89. package/package.json +6 -6
  90. package/src/ble/BtpSessionHandler.ts +2 -2
  91. package/src/certificate/CertificateManager.ts +22 -19
  92. package/src/cluster/server/AttributeServer.ts +15 -6
  93. package/src/cluster/server/CommandServer.ts +3 -3
  94. package/src/endpoint/EndpointStructureLogger.ts +1 -1
  95. package/src/events/OccurrenceManager.ts +3 -2
  96. package/src/interaction/AttributeDataDecoder.ts +1 -1
  97. package/src/interaction/AttributeDataEncoder.ts +4 -4
  98. package/src/interaction/InteractionClient.ts +7 -6
  99. package/src/interaction/InteractionMessenger.ts +2 -2
  100. package/src/interaction/InteractionServer.ts +5 -5
  101. package/src/interaction/ServerSubscription.ts +2 -1
  102. package/src/mdns/MdnsScanner.ts +2 -2
  103. package/src/peer/ControllerCommissioner.ts +3 -2
  104. package/src/peer/ControllerCommissioningFlow.ts +16 -6
  105. package/src/peer/ControllerDiscovery.ts +5 -5
  106. package/src/protocol/ExchangeManager.ts +2 -1
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import {
7
7
  Crypto,
8
+ Diagnostic,
8
9
  Environmental,
9
10
  ImplementationError,
10
11
  Logger,
@@ -241,7 +242,7 @@ class ExchangeManager {
241
242
  return;
242
243
  } else {
243
244
  logger.info(
244
- `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} on channel ${channel.name}: ${Logger.toJSON(message)}`
245
+ `Discarding unexpected message ${messageId} for protocol ${message.payloadHeader.protocolId}, exchangeIndex ${exchangeIndex} and sessionId ${session.id} on channel ${channel.name}: ${Diagnostic.json(message)}`
245
246
  );
246
247
  }
247
248
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/protocol/ExchangeManager.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["exchange"]
6
6
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@matter/protocol",
3
- "version": "0.13.0-alpha.0-20250322-f085fa576",
3
+ "version": "0.13.0-alpha.0-20250323-770919c6a",
4
4
  "description": "Low-level APIs for Matter interaction",
5
5
  "keywords": [
6
6
  "iot",
@@ -40,14 +40,14 @@
40
40
  "#*": "./src/*"
41
41
  },
42
42
  "dependencies": {
43
- "@matter/general": "0.13.0-alpha.0-20250322-f085fa576",
44
- "@matter/model": "0.13.0-alpha.0-20250322-f085fa576",
45
- "@matter/types": "0.13.0-alpha.0-20250322-f085fa576",
43
+ "@matter/general": "0.13.0-alpha.0-20250323-770919c6a",
44
+ "@matter/model": "0.13.0-alpha.0-20250323-770919c6a",
45
+ "@matter/types": "0.13.0-alpha.0-20250323-770919c6a",
46
46
  "@noble/curves": "^1.8.1"
47
47
  },
48
48
  "devDependencies": {
49
- "@matter/tools": "0.13.0-alpha.0-20250322-f085fa576",
50
- "@matter/testing": "0.13.0-alpha.0-20250322-f085fa576"
49
+ "@matter/tools": "0.13.0-alpha.0-20250323-770919c6a",
50
+ "@matter/testing": "0.13.0-alpha.0-20250323-770919c6a"
51
51
  },
52
52
  "files": [
53
53
  "dist/**/*",
@@ -198,7 +198,7 @@ export class BtpSessionHandler {
198
198
  }
199
199
  }
200
200
  const btpPacket = BtpCodec.decodeBtpPacket(data);
201
- logger.debug(`Received BTP packet: ${Logger.toJSON(btpPacket)}`);
201
+ logger.debug(`Received BTP packet: ${Diagnostic.json(btpPacket)}`);
202
202
  const {
203
203
  header: {
204
204
  hasAckNumber,
@@ -382,7 +382,7 @@ export class BtpSessionHandler {
382
382
  },
383
383
  };
384
384
 
385
- logger.debug(`Sending BTP packet: ${Logger.toJSON(btpPacket)}`);
385
+ logger.debug(`Sending BTP packet: ${Diagnostic.json(btpPacket)}`);
386
386
  const packet = BtpCodec.encodeBtpPacket(btpPacket);
387
387
  logger.debug(`Sending BTP packet raw: ${Bytes.toHex(packet)}`);
388
388
 
@@ -15,6 +15,7 @@ import {
15
15
  DerKey,
16
16
  DerObject,
17
17
  DerType,
18
+ Diagnostic,
18
19
  ImplementationError,
19
20
  Key,
20
21
  Logger,
@@ -788,13 +789,13 @@ export namespace CertificateManager {
788
789
  if (rootCert.subject.fabricId !== undefined) {
789
790
  if (Array.isArray(rootCert.subject.fabricId)) {
790
791
  throw new CertificateError(
791
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(rootCert.subject.fabricId)}`,
792
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(rootCert.subject.fabricId)}`,
792
793
  );
793
794
  }
794
795
  // If present, the matter-fabric-id attribute’s value SHALL NOT be 0
795
796
  if (rootCert.subject.fabricId === FabricId(0)) {
796
797
  throw new CertificateError(
797
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(rootCert.subject.fabricId)}`,
798
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(rootCert.subject.fabricId)}`,
798
799
  );
799
800
  }
800
801
  }
@@ -806,7 +807,9 @@ export namespace CertificateManager {
806
807
 
807
808
  // The subject DN SHALL encode exactly one matter-rcac-id attribute.
808
809
  if (rootCert.subject.rcacId === undefined || Array.isArray(rootCert.subject.rcacId)) {
809
- throw new CertificateError(`Invalid rcacId in Root certificate: ${Logger.toJSON(rootCert.subject.rcacId)}`);
810
+ throw new CertificateError(
811
+ `Invalid rcacId in Root certificate: ${Diagnostic.json(rootCert.subject.rcacId)}`,
812
+ );
810
813
  }
811
814
 
812
815
  // The subject DN SHALL NOT encode any matter-noc-cat attribute.
@@ -874,23 +877,23 @@ export namespace CertificateManager {
874
877
 
875
878
  // The subject DN SHALL encode exactly one matter-node-id attribute.
876
879
  if (nocCert.subject.nodeId === undefined || Array.isArray(nocCert.subject.nodeId)) {
877
- throw new CertificateError(`Invalid nodeId in NoC certificate: ${Logger.toJSON(nocCert.subject.nodeId)}`);
880
+ throw new CertificateError(`Invalid nodeId in NoC certificate: ${Diagnostic.json(nocCert.subject.nodeId)}`);
878
881
  }
879
882
  // The matter-node-id attribute’s value SHALL be in the Operational Node ID
880
883
  if (!NodeId.isOperationalNodeId(nocCert.subject.nodeId)) {
881
- throw new CertificateError(`Invalid nodeId in NoC certificate: ${Logger.toJSON(nocCert.subject.nodeId)}`);
884
+ throw new CertificateError(`Invalid nodeId in NoC certificate: ${Diagnostic.json(nocCert.subject.nodeId)}`);
882
885
  }
883
886
 
884
887
  // The subject DN SHALL encode exactly one matter-fabric-id attribute.
885
888
  if (nocCert.subject.fabricId === undefined || Array.isArray(nocCert.subject.fabricId)) {
886
889
  throw new CertificateError(
887
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(nocCert.subject.fabricId)}`,
890
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(nocCert.subject.fabricId)}`,
888
891
  );
889
892
  }
890
893
  // The matter-fabric-id attribute’s value SHALL NOT be 0
891
894
  if (nocCert.subject.fabricId === FabricId(0)) {
892
895
  throw new CertificateError(
893
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(nocCert.subject.fabricId)}`,
896
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(nocCert.subject.fabricId)}`,
894
897
  );
895
898
  }
896
899
 
@@ -914,9 +917,9 @@ export namespace CertificateManager {
914
917
  // the same certificate chain.
915
918
  if (rootCert.subject.fabricId !== undefined && rootCert.subject.fabricId !== nocCert.subject.fabricId) {
916
919
  throw new CertificateError(
917
- `FabricId in NoC certificate does not match the fabricId in the parent certificate. ${Logger.toJSON(
920
+ `FabricId in NoC certificate does not match the fabricId in the parent certificate. ${Diagnostic.json(
918
921
  rootCert.subject.fabricId,
919
- )} !== ${Logger.toJSON(nocCert.subject.fabricId)}`,
922
+ )} !== ${Diagnostic.json(nocCert.subject.fabricId)}`,
920
923
  );
921
924
  }
922
925
  if (
@@ -925,9 +928,9 @@ export namespace CertificateManager {
925
928
  icaCert.subject.fabricId !== nocCert.subject.fabricId
926
929
  ) {
927
930
  throw new CertificateError(
928
- `FabricId in NoC certificate does not match the fabricId in the parent certificate. ${Logger.toJSON(
931
+ `FabricId in NoC certificate does not match the fabricId in the parent certificate. ${Diagnostic.json(
929
932
  icaCert.subject.fabricId,
930
- )} !== ${Logger.toJSON(nocCert.subject.fabricId)}`,
933
+ )} !== ${Diagnostic.json(nocCert.subject.fabricId)}`,
931
934
  );
932
935
  }
933
936
 
@@ -950,7 +953,7 @@ export namespace CertificateManager {
950
953
  (!nocCert.extensions.extendedKeyUsage.includes(1) && !nocCert.extensions.extendedKeyUsage.includes(2))
951
954
  ) {
952
955
  throw new CertificateError(
953
- `Noc certificate must have extendedKeyUsage with serverAuth and clientAuth: ${Logger.toJSON(nocCert.extensions.extendedKeyUsage)}`,
956
+ `Noc certificate must have extendedKeyUsage with serverAuth and clientAuth: ${Diagnostic.json(nocCert.extensions.extendedKeyUsage)}`,
954
957
  );
955
958
  }
956
959
 
@@ -1005,20 +1008,20 @@ export namespace CertificateManager {
1005
1008
  if (icaCert.subject.fabricId !== undefined) {
1006
1009
  if (Array.isArray(icaCert.subject.fabricId)) {
1007
1010
  throw new CertificateError(
1008
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(icaCert.subject.fabricId)}`,
1011
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(icaCert.subject.fabricId)}`,
1009
1012
  );
1010
1013
  }
1011
1014
  // If present, the matter-fabric-id attribute’s value SHALL NOT be 0
1012
1015
  if (icaCert.subject.fabricId === FabricId(0)) {
1013
1016
  throw new CertificateError(
1014
- `Invalid fabricId in NoC certificate: ${Logger.toJSON(icaCert.subject.fabricId)}`,
1017
+ `Invalid fabricId in NoC certificate: ${Diagnostic.json(icaCert.subject.fabricId)}`,
1015
1018
  );
1016
1019
  }
1017
1020
  }
1018
1021
 
1019
1022
  // The subject DN SHALL encode exactly one matter-icac-id attribute.
1020
1023
  if (icaCert.subject.icacId === undefined || Array.isArray(icaCert.subject.icacId)) {
1021
- throw new CertificateError(`Invalid icacId in Ica certificate: ${Logger.toJSON(icaCert.subject.icacId)}`);
1024
+ throw new CertificateError(`Invalid icacId in Ica certificate: ${Diagnostic.json(icaCert.subject.icacId)}`);
1022
1025
  }
1023
1026
 
1024
1027
  // The subject DN SHALL NOT encode any matter-rcac-id attribute.
@@ -1041,18 +1044,18 @@ export namespace CertificateManager {
1041
1044
  rootCert.subject.fabricId !== icaCert.subject.fabricId
1042
1045
  ) {
1043
1046
  throw new CertificateError(
1044
- `FabricId in Ica certificate does not match the fabricId in the parent certificate. ${Logger.toJSON(
1047
+ `FabricId in Ica certificate does not match the fabricId in the parent certificate. ${Diagnostic.json(
1045
1048
  rootCert.subject.fabricId,
1046
- )} !== ${Logger.toJSON(icaCert.subject.fabricId)}`,
1049
+ )} !== ${Diagnostic.json(icaCert.subject.fabricId)}`,
1047
1050
  );
1048
1051
  }
1049
1052
 
1050
1053
  // Verify the certificate chain by checking rcac ids in subject and issuer
1051
1054
  if (rootCert.subject.rcacId !== icaCert.issuer.rcacId) {
1052
1055
  throw new CertificateError(
1053
- `RcacId in Ica certificate does not match the rcacId in the parent certificate. ${Logger.toJSON(
1056
+ `RcacId in Ica certificate does not match the rcacId in the parent certificate. ${Diagnostic.json(
1054
1057
  rootCert.subject.rcacId,
1055
- )} !== ${Logger.toJSON(icaCert.issuer.rcacId)}`,
1058
+ )} !== ${Diagnostic.json(icaCert.issuer.rcacId)}`,
1056
1059
  );
1057
1060
  }
1058
1061
 
@@ -4,7 +4,16 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- import { ImplementationError, InternalError, Logger, MatterError, MaybePromise, camelize, isDeepEqual } from "#general";
7
+ import {
8
+ Diagnostic,
9
+ ImplementationError,
10
+ InternalError,
11
+ Logger,
12
+ MatterError,
13
+ MaybePromise,
14
+ camelize,
15
+ isDeepEqual,
16
+ } from "#general";
8
17
  import { AccessLevel, AttributeModel, ClusterModel, DatatypeModel, FabricIndex, MatterModel } from "#model";
9
18
  import {
10
19
  Attribute,
@@ -165,9 +174,9 @@ export abstract class BaseAttributeServer<T> {
165
174
  this.value = initValue;
166
175
  } catch (error) {
167
176
  logger.warn(
168
- `Attribute value to initialize for ${name} has an invalid value ${Logger.toJSON(
177
+ `Attribute value to initialize for ${name} has an invalid value ${Diagnostic.json(
169
178
  initValue,
170
- )}. Restore to default ${Logger.toJSON(defaultValue)}`,
179
+ )}. Restore to default ${Diagnostic.json(defaultValue)}`,
171
180
  );
172
181
  if (defaultValue === undefined) {
173
182
  throw new ImplementationError(`Attribute value to initialize for ${name} cannot be undefined.`);
@@ -524,7 +533,7 @@ export class AttributeServer<T> extends FixedAttributeServer<T> {
524
533
  newValue: value,
525
534
  changed: !!this.delayedChangeData?.changed || valueChanged, // We combine the changed flag
526
535
  };
527
- logger.info(`Delay change for attribute "${this.name}" with value ${Logger.toJSON(value)}`);
536
+ logger.info(`Delay change for attribute "${this.name}" with value ${Diagnostic.json(value)}`);
528
537
  } else {
529
538
  this.handleVersionAndTriggerListeners(value, oldValue, valueChanged);
530
539
  }
@@ -534,7 +543,7 @@ export class AttributeServer<T> extends FixedAttributeServer<T> {
534
543
  if (this.delayedChangeData !== undefined) {
535
544
  const { oldValue, newValue, changed } = this.delayedChangeData;
536
545
  this.delayedChangeData = undefined;
537
- logger.info(`Trigger delayed change for attribute "${this.name}" with value ${Logger.toJSON(newValue)}`);
546
+ logger.info(`Trigger delayed change for attribute "${this.name}" with value ${Diagnostic.json(newValue)}`);
538
547
  this.handleVersionAndTriggerListeners(newValue, oldValue, changed);
539
548
  }
540
549
  }
@@ -909,7 +918,7 @@ export class FabricScopedAttributeServer<T> extends AttributeServer<T> {
909
918
  () => !preserveFabricIndex, // No one should send any index and if we simply SHALL ignore it, but internally we might need it
910
919
  );
911
920
  logger.info(
912
- `Set remote value for fabric scoped attribute "${this.name}" to ${Logger.toJSON(value)} (delayed=${delayChangeEvents})`,
921
+ `Set remote value for fabric scoped attribute "${this.name}" to ${Diagnostic.json(value)} (delayed=${delayChangeEvents})`,
913
922
  );
914
923
 
915
924
  super.setRemote(value, session, message, delayChangeEvents);
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
 
7
- import { Logger } from "#general";
7
+ import { Diagnostic, Logger } from "#general";
8
8
  import { AccessLevel, FabricIndex } from "#model";
9
9
  import { CommandId, StatusCode, TlvSchema, TlvStream } from "#types";
10
10
  import { Message } from "../../codec/MessageCodec.js";
@@ -69,9 +69,9 @@ export class CommandServer<RequestT = any, ResponseT = any> {
69
69
  }
70
70
 
71
71
  this.requestSchema.validate(request);
72
- this.debug(`Invoke ${this.name} with data ${Logger.toJSON(request)}`);
72
+ this.debug(`Invoke ${this.name} with data ${Diagnostic.json(request)}`);
73
73
  const response = await this.handler(request, session, message, endpoint);
74
- this.debug(`Invoke ${this.name} response : ${Logger.toJSON(response)}`);
74
+ this.debug(`Invoke ${this.name} response : ${Diagnostic.json(response)}`);
75
75
  return {
76
76
  code: StatusCode.Success,
77
77
  responseId: this.responseId,
@@ -52,7 +52,7 @@ function getAttributeServerValue(attribute: AnyAttributeServer<any>, options: En
52
52
  attributeValue !== null &&
53
53
  options.logAttributeObjectValues !== false
54
54
  ) {
55
- value = Logger.toJSON(attributeValue);
55
+ value = Diagnostic.json(attributeValue);
56
56
  }
57
57
  } catch (error) {
58
58
  if (error instanceof FabricScopeError) {
@@ -7,6 +7,7 @@
7
7
  import {
8
8
  asyncNew,
9
9
  Construction,
10
+ Diagnostic,
10
11
  ImplementationError,
11
12
  isObject,
12
13
  Logger,
@@ -151,7 +152,7 @@ export class OccurrenceManager {
151
152
 
152
153
  // TODO - log after fabric filtering and include fabric filter in log message?
153
154
  logger.debug(
154
- `Got ${occurrences.length} events for ${resolveEventName(eventPath)} with filters: ${Logger.toJSON(filters)}`,
155
+ `Got ${occurrences.length} events for ${resolveEventName(eventPath)} with filters: ${Diagnostic.json(filters)}`,
155
156
  );
156
157
 
157
158
  // Convert from MaybePromise[] to MaybePromise<[]>
@@ -210,7 +211,7 @@ export class OccurrenceManager {
210
211
 
211
212
  add(occurrence: Occurrence): MaybePromise<NumberedOccurrence> {
212
213
  return MaybePromise.then(this.#store.add(occurrence), entry => {
213
- logger.debug(`Recorded event #${entry.number}: ${Logger.toJSON(occurrence)}`);
214
+ logger.debug(`Recorded event #${entry.number}: ${Diagnostic.json(occurrence)}`);
214
215
  this.#occurrences[occurrence.priority].push(entry);
215
216
  this.#storedEventCount++;
216
217
  if (this.#storedEventCount > this.#bufferConfig.maxEventAllowance) {
@@ -107,7 +107,7 @@ export function expandPathsInAttributeData(
107
107
  dataVersion: value.dataVersion,
108
108
  };
109
109
  } else if (!acceptWildcardPaths) {
110
- throw new UnexpectedDataError("Tag compression disabled, but path is incomplete: " + Logger.toJSON(path));
110
+ throw new UnexpectedDataError("Tag compression disabled, but path is incomplete: " + Diagnostic.json(path));
111
111
  }
112
112
  });
113
113
  return data;
@@ -3,7 +3,7 @@
3
3
  * Copyright 2022-2025 Matter.js Authors
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Logger, MatterFlowError } from "#general";
6
+ import { Diagnostic, MatterFlowError } from "#general";
7
7
  import {
8
8
  ArraySchema,
9
9
  AttributeId,
@@ -77,7 +77,7 @@ export function encodeAttributePayloadData(
77
77
  const { attributeData } = attributePayload;
78
78
  if (attributeData === undefined) {
79
79
  throw new MatterFlowError(
80
- `Cannot encode Attribute Payload data with just a attributeStatus: ${Logger.toJSON(attributePayload)}`,
80
+ `Cannot encode Attribute Payload data with just a attributeStatus: ${Diagnostic.json(attributePayload)}`,
81
81
  );
82
82
  }
83
83
 
@@ -152,13 +152,13 @@ export function chunkAttributePayload(attributePayload: AttributeReportPayload):
152
152
  const { hasFabricSensitiveData, attributeData } = attributePayload;
153
153
  if (attributeData === undefined) {
154
154
  throw new MatterFlowError(
155
- `Cannot chunk an AttributePayload with just a attributeStatus: ${Logger.toJSON(attributePayload)}`,
155
+ `Cannot chunk an AttributePayload with just a attributeStatus: ${Diagnostic.json(attributePayload)}`,
156
156
  );
157
157
  }
158
158
  const { schema, path, dataVersion, payload } = attributeData;
159
159
  if (!(schema instanceof ArraySchema) || !Array.isArray(payload)) {
160
160
  throw new MatterFlowError(
161
- `Cannot chunk an AttributePayload with attributeData that is not an array: ${Logger.toJSON(
161
+ `Cannot chunk an AttributePayload with attributeData that is not an array: ${Diagnostic.json(
162
162
  attributePayload,
163
163
  )}`,
164
164
  );
@@ -5,6 +5,7 @@
5
5
  */
6
6
 
7
7
  import {
8
+ Diagnostic,
8
9
  Environment,
9
10
  Environmental,
10
11
  ImplementationError,
@@ -549,7 +550,7 @@ export class InteractionClient {
549
550
  `Sending write request: ${attributes
550
551
  .map(
551
552
  ({ endpointId, clusterId, attribute: { id }, value, dataVersion }) =>
552
- `${resolveAttributeName({ endpointId, clusterId, attributeId: id })} = ${Logger.toJSON(
553
+ `${resolveAttributeName({ endpointId, clusterId, attributeId: id })} = ${Diagnostic.json(
553
554
  value,
554
555
  )} (version=${dataVersion})`,
555
556
  )
@@ -973,7 +974,7 @@ export class InteractionClient {
973
974
  let maxEventNumber = this.#nodeStore?.maxEventNumber ?? eventReports[0].events[0].eventNumber;
974
975
  eventReports.forEach(data => {
975
976
  logger.debug(
976
- `Received event update: ${resolveEventName(data.path)}: ${Logger.toJSON(data.events)}`,
977
+ `Received event update: ${resolveEventName(data.path)}: ${Diagnostic.json(data.events)}`,
977
978
  );
978
979
  const { events } = data;
979
980
 
@@ -1001,7 +1002,7 @@ export class InteractionClient {
1001
1002
  endpointId,
1002
1003
  clusterId,
1003
1004
  attributeId,
1004
- })} = ${Logger.toJSON(value)} (version=${version})`,
1005
+ })} = ${Diagnostic.json(value)} (version=${version})`,
1005
1006
  );
1006
1007
  if (value === undefined) throw new MatterFlowError("Received empty subscription result value.");
1007
1008
  const { value: oldValue } =
@@ -1091,7 +1092,7 @@ export class InteractionClient {
1091
1092
  endpointId,
1092
1093
  clusterId,
1093
1094
  commandId: requestId,
1094
- })} with ${Logger.toJSON(request)}`,
1095
+ })} with ${Diagnostic.json(request)}`,
1095
1096
  );
1096
1097
 
1097
1098
  if (!skipValidation) {
@@ -1160,7 +1161,7 @@ export class InteractionClient {
1160
1161
  endpointId,
1161
1162
  clusterId,
1162
1163
  commandId: requestId,
1163
- })} with ${Logger.toJSON(response)})}`,
1164
+ })} with ${Diagnostic.json(response)})}`,
1164
1165
  );
1165
1166
  return response;
1166
1167
  }
@@ -1196,7 +1197,7 @@ export class InteractionClient {
1196
1197
  endpointId,
1197
1198
  clusterId,
1198
1199
  commandId: requestId,
1199
- })} with ${Logger.toJSON(request)}`,
1200
+ })} with ${Diagnostic.json(request)}`,
1200
1201
  );
1201
1202
  const commandFields = requestSchema.encodeTlv(request);
1202
1203
 
@@ -633,7 +633,7 @@ export class InteractionServerMessenger extends InteractionMessenger {
633
633
  const encodedMessage = TlvDataReportForSend.encode(dataReportToSend);
634
634
  if (encodedMessage.length > this.exchange.maxPayloadSize) {
635
635
  throw new MatterFlowError(
636
- `DataReport with ${encodedMessage.length}bytes is too long to fit in a single chunk (${this.exchange.maxPayloadSize}bytes), This should not happen! Data: ${Logger.toJSON(
636
+ `DataReport with ${encodedMessage.length}bytes is too long to fit in a single chunk (${this.exchange.maxPayloadSize}bytes), This should not happen! Data: ${Diagnostic.json(
637
637
  dataReportToSend,
638
638
  )}`,
639
639
  );
@@ -856,7 +856,7 @@ export class InteractionClientMessenger extends IncomingInteractionClientMesseng
856
856
  });
857
857
  if (requestWithoutDataVersionFilters.length > this.exchange.maxPayloadSize) {
858
858
  throw new MatterFlowError(
859
- `Request is too long to fit in a single chunk, This should not happen! Data: ${Logger.toJSON(request)}`,
859
+ `Request is too long to fit in a single chunk, This should not happen! Data: ${Diagnostic.json(request)}`,
860
860
  );
861
861
  }
862
862
 
@@ -365,7 +365,7 @@ export class InteractionServer implements ProtocolHandler, InteractionRecipient
365
365
  logger.debug(
366
366
  `Read event from ${exchange.channel.name}: ${this.#endpointStructure.resolveEventName(
367
367
  path,
368
- )}=${Logger.toJSON(matchingEvents)}`,
368
+ )}=${Diagnostic.json(matchingEvents)}`,
369
369
  );
370
370
  const { schema } = event;
371
371
  reportsForPath.push(
@@ -523,7 +523,7 @@ export class InteractionServer implements ProtocolHandler, InteractionRecipient
523
523
  logger.debug(
524
524
  `Read attribute from ${exchange.channel.name}: ${this.#endpointStructure.resolveAttributeName(
525
525
  path,
526
- )}=${Logger.toJSON(value)} (version=${version}) ignored because of dataVersionFilter`,
526
+ )}=${Diagnostic.json(value)} (version=${version}) ignored because of dataVersionFilter`,
527
527
  );
528
528
  continue;
529
529
  }
@@ -531,7 +531,7 @@ export class InteractionServer implements ProtocolHandler, InteractionRecipient
531
531
  logger.debug(
532
532
  `Read attribute from ${exchange.channel.name}: ${this.#endpointStructure.resolveAttributeName(
533
533
  path,
534
- )}=${Logger.toJSON(value)} (version=${version})`,
534
+ )}=${Diagnostic.json(value)} (version=${version})`,
535
535
  );
536
536
 
537
537
  const { schema } = attribute;
@@ -878,7 +878,7 @@ export class InteractionServer implements ProtocolHandler, InteractionRecipient
878
878
  logger.debug(
879
879
  `Handle write request from ${
880
880
  exchange.channel.name
881
- } resolved to: ${this.#endpointStructure.resolveAttributeName(path)}=${Logger.toJSON(
881
+ } resolved to: ${this.#endpointStructure.resolveAttributeName(path)}=${Diagnostic.json(
882
882
  value,
883
883
  )} (listIndex=${listIndex}, for-version=${dataVersion})`,
884
884
  );
@@ -960,7 +960,7 @@ export class InteractionServer implements ProtocolHandler, InteractionRecipient
960
960
  ? `with following errors: ${errorResults
961
961
  .map(
962
962
  ({ path, statusCode }) =>
963
- `${this.#endpointStructure.resolveAttributeName(path)}=${Logger.toJSON(statusCode)}`,
963
+ `${this.#endpointStructure.resolveAttributeName(path)}=${Diagnostic.json(statusCode)}`,
964
964
  )
965
965
  .join(", ")}`
966
966
  : "without errors"
@@ -6,6 +6,7 @@
6
6
 
7
7
  import { NumberedOccurrence } from "#events/Occurrence.js";
8
8
  import {
9
+ Diagnostic,
9
10
  InternalError,
10
11
  Logger,
11
12
  MatterAggregateError,
@@ -989,7 +990,7 @@ export class ServerSubscription extends Subscription {
989
990
  `Subscription attribute changes for ID ${this.id}: ${attributes
990
991
  .map(
991
992
  ({ path, value, version }) =>
992
- `${this.#structure.resolveAttributeName(path)}=${Logger.toJSON(value)} (${version})`,
993
+ `${this.#structure.resolveAttributeName(path)}=${Diagnostic.json(value)} (${version})`,
993
994
  )
994
995
  .join(", ")}`,
995
996
  ); // TODO Format path better using endpoint structure
@@ -213,7 +213,7 @@ export class MdnsScanner implements Scanner {
213
213
  if (dnsMessageDataToSend.answers.length === 0) {
214
214
  // The first answer is already too big, log at least a warning
215
215
  logger.warn(
216
- `MDNS Query with ${Logger.toJSON(
216
+ `MDNS Query with ${Diagnostic.json(
217
217
  queries,
218
218
  )} is too big to fit into a single MDNS message. Send anyway, but please report!`,
219
219
  );
@@ -265,7 +265,7 @@ export class MdnsScanner implements Scanner {
265
265
  answers = this.#combineStructuredAnswers(activeExistingQuery.answers, answers);
266
266
  }
267
267
  this.#activeAnnounceQueries.set(queryId, { queries, answers });
268
- logger.debug(`Set ${queries.length} query records for query ${queryId}: ${Logger.toJSON(queries)}`);
268
+ logger.debug(`Set ${queries.length} query records for query ${queryId}: ${Diagnostic.json(queries)}`);
269
269
  this.#queryTimer?.stop();
270
270
  this.#nextAnnounceIntervalSeconds = START_ANNOUNCE_INTERVAL_SECONDS; // Reset query interval
271
271
  this.#queryTimer = Time.getTimer("MDNS discovery", 0, () => this.#sendQueries()).start();
@@ -12,6 +12,7 @@ import {
12
12
  Channel,
13
13
  ChannelType,
14
14
  ClassExtends,
15
+ Diagnostic,
15
16
  Environment,
16
17
  Environmental,
17
18
  isIPv6,
@@ -220,9 +221,9 @@ export class ControllerCommissioner {
220
221
  const scannersToUse = this.#context.scanners.select(discoveryCapabilities);
221
222
 
222
223
  logger.info(
223
- `Connecting to device with identifier ${Logger.toJSON(identifierData)} and ${
224
+ `Connecting to device with identifier ${Diagnostic.json(identifierData)} and ${
224
225
  scannersToUse.length
225
- } scanners and knownAddress ${Logger.toJSON(knownAddress)}`,
226
+ } scanners and knownAddress ${Diagnostic.json(knownAddress)}`,
226
227
  );
227
228
 
228
229
  // If we have a known address we try this first before we discover the device