# Aktualisierung von Matter.js auf 0.16

**URL:** <https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149>\
**Category:** Développement\
**Tags:** matter\
**Created:** [20. Februar 2026 um 13:34 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149 "2026-02-20T13:34:44Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [20. März 2026 um 19:22 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/21 "2026-03-20T19:22:04Z")

</div>

> [@pierre-gilles](#):
>
> `ladysassistant/gladys:updgrade-matter-0-16-8`

Hallo @pierre-gilles,

Kein Problem, ich bin geduldig 🙂  
Ich bevorzuge eine Arbeit, die Zeit braucht und gut gemacht ist 😉

Ich kann den Test mit funktionierendem Matterbridge mit der stabilen Version von Gladys durchführen, dann bin ich auf die Version umgestiegen, die du angibst:

![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/c/b/cbf29c1e9e9de25ee8ed20d99653ac0a6c6a0cad.png)

Und ich habe das gleiche Problem.

Ich sende dir die Logs per PN

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [22. März 2026 um 13:50 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/22 "2026-03-22T13:50:18Z")

</div>

Danke für das Feedback, tatsächlich habe ich eine Rückmeldung vom Maintainer von matter-js erhalten und es gibt tatsächlich einen Bug im Parameter `autoConnect: true` der Bibliothek.

Er hat einen Fix hier veröffentlicht:

> <https://github.com/matter-js/matter.js/pull/3436>
>
> \## Summary
> 
> \- \*\*Bug:\*\* \`CommissioningController.#initializeController()\` compu…tes the peer network \`isDisabled\` flag as \`!!this.#options.autoConnect\`, which inverts the intended behavior — \`autoConnect: true\` disables the network, and \`autoConnect: false\` enables it.
> \- \*\*Fix:\*\* Change to \`this.#options.autoConnect === false\` so only an explicit \`false\` disables auto-connection, matching the JSDoc contract where \`true\` and \`undefined\` both mean "connect all nodes on startup".
> 
> \## Details
> 
> At line 407 of \`CommissioningController.ts\`, the peer network disabled state was set as:
> 
> \`\`\`typescript
> const desiredDisabled = !!this.#options.autoConnect;
> \`\`\`
> 
> | \`autoConnect\` value | Before (buggy) \`isDisabled\` | After (fixed) \`isDisabled\` |
> |---|---|---|
> | \`true\` | \`true\` (network off) | \`false\` (network on) |
> | \`undefined\` | \`false\` (network on) | \`false\` (network on) |
> | \`false\` | \`false\` (network on) | \`true\` (network off) |
> 
> Users upgrading from older versions with \`autoConnect: true\` found their nodes no longer connecting on startup. The workaround was to set \`autoConnect: false\` (which paradoxically enabled connections) and manually call \`get()\` on each cluster to trigger lazy initialization.
> 
> 🤖 Generated with \[Claude Code\](https://claude.com/claude-code)

Und er hat mir einen Tipp gegeben, um das Problem in der Zwischenzeit zu beheben!

Ich halte dich auf dem Laufenden, sobald ich einen neuen funktionierenden und getesteten Build habe 🙂

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [23. März 2026 um 09:31 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/23 "2026-03-23T09:31:59Z")

</div>

Okay, ich habe heute Morgen einen neuen PR gemacht, und tatsächlich, mit dem funktionierenden `autoConnect` ändert sich alles, ich konnte 50% des Codes, den ich für diese Migration geschrieben hatte, löschen 😃

Ein neuer Build ist unter einem neuen Tag verfügbar:

```auto
gladysassistant/gladys:upgrade-matter-latest

```

Ich habe die Gelegenheit genutzt, um einige praktische Verbesserungen vorzunehmen:

1/ In den Logs werden die Warnmeldungen, wenn ein Gerät noch nicht zu Gladys hinzugefügt wurde, nun in einer einzigen Zeile auf der Log-Ebene «&nbsp;info&nbsp;» angezeigt, da es sich dabei nicht um einen Fehler, sondern nur um eine Warnung handelt:

 ![Capture d’écran 2026-03-23 à 10.08.58](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/3/b/3b9b651321e2ad675e64638004c1a5a5a65020f0.jpeg)  
 ![Capture d’écran 2026-03-23 à 09.49.01](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/a/3/a3b994d2d9d0cba8ca0c89c9362ebfe7ca05cc25.jpeg)

2/ Das Aktualisieren der Liste der Matter-Geräte, das bei großen Matter-Netzwerken mit nicht verfügbaren Geräten manchmal lange dauert, habe ich als nicht blockierende Operation für den Start von Gladys gemacht, um zu vermeiden, dass sich die Startzeit von Gladys verlängert.

@prohand kannst du es nochmal testen?

Der neue PR:

> <https://github.com/GladysAssistant/Gladys/pull/2501>
>
> \### Pull Request check-list
> 
> To ensure your Pull Request can be accepted as fa…st as possible, make sure to review and check all of these items:
> 
> \- \[x\] If your changes affect the code, did you write the tests?
> \- \[x\] Are tests passing? (\`npm test\` on both front/server)
> \- \[x\] Is the linter passing? (\`npm run eslint\` on both front/server)
> \- \[x\] Did you run prettier? (\`npm run prettier\` on both front/server)
> \- \[x\] If you are adding a new feature/service, did you run the integration comparator? (\`npm run compare-translations\` on front)
> \- \[x\] Did you test this pull request in real life? With real devices? If this development is a big feature or a new service, we recommend that you provide a Docker image to the community (\[forum\](https://community.gladysassistant.com/)) for testing before merging.
> \- \[x\] If your changes modify the API (REST or Node.js), did you modify the API documentation? (Documentation is based on comments in code)
> \- \[x\] If you are adding a new features/services which needs explanation, did you modify the user documentation? See \[the GitHub repo\](https://github.com/GladysAssistant/v4-website) and the \[website\](https://gladysassistant.com).
> \- \[x\] Did you add fake requests data for the demo mode (\`front/src/config/demo.js\`) so that the demo website is working without a backend? (if needed) See \[https://demo.gladysassistant.com\](https://demo.gladysassistant.com).
> 
> NOTE: these things are not required to open a PR and can be done afterwards / while the PR is open.
> 
> \### Description of change
> 
> Upgrade Matter.js to latest version
> 
> 
> \## Summary by CodeRabbit
> 
> \* \*\*Chores\*\*
> \* Updated Matter-related development dependencies.
> 
> \* \*\*Bug Fixes\*\*
> \* Stricter device filtering during startup to avoid incomplete device entries.
> \* Initialization now refreshes devices in the background to prevent startup failures.
> \* State events quietly skip processing when a target device/feature is missing instead of throwing.
> 
> \* \*\*Refactor\*\*
> \* Aligned device endpoint and cluster client handling with updated Matter accessor APIs.
> 
> \* \*\*Tests\*\*
> \* Updated test fixtures to match accessor-based device APIs.

---

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [23. März 2026 um 09:58 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/24 "2026-03-23T09:58:10Z")

</div>

Danke 🙂

Ich habe es gerade getestet und es scheint immer noch ein Problem zu geben, da alles offline angezeigt wird.  
Nach der Migration sehe ich 3 Matter-Knoten:

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/3/2/32403414321f5461f6f3d87f11a4a85da2091aeb.png)

Ich schicke dir die Logs per PN.

Vielleicht gibt es noch Reste von meinen verschiedenen Tests.  
Falls nicht, müsste ich Matter komplett löschen und von vorne beginnen, indem ich matterbridge so einbinde, als würde ich mit der letzten stabilen Version von Gladys neu installieren, und dann upgrade-matter-latest verwenden.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [23. März 2026 um 10:06 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/25 "2026-03-23T10:06:28Z")

</div>

Danke für den Test und die Logs, das hilft mir sehr!

Du hast ein Gerät, das nicht erreichbar ist, und dadurch bricht der Rest der Integration zusammen. Ich füge Code hinzu, damit das nicht passiert, und baue dir einen Build 🙂

Kleine Frage: Auf welcher Architektur testest du: amd64 oder arm64? Die ARM-Builds dauern länger, also wenn es amd64 ist, baue ich dir einen Docker-Build nur für amd64, das spart Zeit 🙂

---

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [23. März 2026 um 10:07 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/26 "2026-03-23T10:07:50Z")

</div>

Das ist amd64 🙂  
Danke

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [23. März 2026 um 10:17 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/27 "2026-03-23T10:17:10Z")

</div>

Neues Build mit Fix verfügbar unter:

`gladysassistant/gladys:upgrade-matter-latest`

---

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [23. März 2026 um 10:24 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/28 "2026-03-23T10:24:43Z")

</div>

Ich sehe die Matter-Knoten nicht mehr beim Aktualisieren.  
Ich habe das Gefühl, dass die Migration nicht stattfindet.  
Ich schicke dir die Logs per PN 😉

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [23. März 2026 um 10:28 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/29 "2026-03-23T10:28:50Z")

</div>

Der Fehler ist ziemlich klar, es ist ein Bug in der matter.js-Bibliothek!

```auto
2026-03-23 11:20:33.533 ERROR ClientNode [internal] Unsupported async initialization detected when loading known peer
  at ClientNode.initialize (/src/server/services/matter/node_modules/@matter/node/src/node/ClientNode.ts:101:19)
  at ClientNode.[construct] (/src/server/services/matter/node_modules/@matter/node/src/endpoint/Endpoint.ts:896:21)
  at initializer (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:289:80)
  at invokeInitializer (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:598:30)
  at Construction.start (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:290:17)
  at Factory.create (/src/server/services/matter/node_modules/@matter/node/src/node/client/Peers.ts:495:27)
  at Peers.initialize (/src/server/services/matter/node_modules/@matter/node/src/node/client/Peers.ts:108:25)
  at ServerNode.get peers [as peers] (/src/server/services/matter/node_modules/@matter/node/src/node/ServerNode.ts:168:29)
  at ChangeNotificationService.#beginPeerObservation (/src/server/services/matter/node_modules/@matter/node/src/node/integration/ChangeNotificationService.ts:112:27)
  at /src/server/services/matter/node_modules/@matter/node/src/node/integration/ChangeNotificationService.ts:35:50
  at BasicObservable.emit (/src/server/services/matter/node_modules/@matter/general/src/util/Observable.ts:377:26)
  at NodeLifecycle.change (/src/server/services/matter/node_modules/@matter/node/src/endpoint/properties/EndpointLifecycle.ts:226:32)
  at onReady (/src/server/services/matter/node_modules/@matter/node/src/endpoint/properties/Behaviors.ts:264:38)
  at ServerNode.initialize (/src/server/services/matter/node_modules/@matter/node/src/node/ServerNode.ts:188:9)
2026-03-23T11:20:33+0100 <warn> service.start.js:44 (Service.start) Unable to start service matter [crashed-dependency] MatterController unavailable due to initialization error
      at crashedError (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:623:32)
      at handleRejection (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:325:69)
    Caused by: [crashed-dependency] matter-controller-data.peer2 initialization failed
      at Object.assertActive (/src/server/services/matter/node_modules/@matter/general/src/util/Lifecycle.ts:48:23)
      at Construction.assert (/src/server/services/matter/node_modules/@matter/general/src/util/Construction.ts:298:23)
      at Behaviors.#backingFor (/src/server/services/matter/node_modules/@matter/node/src/endpoint/properties/Behaviors.ts:736:41)
      at Object.get [as commissioning] (/src/server/services/matter/node_modules/@matter/node/src/endpoint/properties/Behaviors.ts:799:32)
      at ClientNode.maybeStateOf (/src/server/services/matter/node_modules/@matter/node/src/endpoint/Endpoint.ts:225:22)
      at Peers.get (/src/server/services/matter/node_modules/@matter/node/src/node/client/Peers.ts:184:46)
      at MatterController.#migrateNodeData (/src/server/services/matter/node_modules/@project-chip/matter.js/src/MatterController.ts:695:45)
      at /src/server/services/matter/node_modules/@project-chip/matter.js/src/MatterController.ts:399:17

```

Ich habe den Fehler dem Maintainer gemeldet, ich halte dich auf dem Laufenden

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [23. März 2026 um 10:40 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/30 "2026-03-23T10:40:52Z")

</div>

Ich poste meine Nachricht hier noch einmal, damit wir uns daran erinnern: Der Maintainer von matter.js bittet um ein Archiv deines matter-Ordners (`/var/lib/gladysassistant/matter` in Gladys). Das wird ihm ermöglichen, die Migration erneut durchzuführen und zu sehen, was in deinem Fall abstürzt.

Danke!

---

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [23. März 2026 um 10:45 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/31 "2026-03-23T10:45:48Z")

</div>

> [@pierre-gilles](#):
>
> /var/lib/gladysassistant/matter

Ich schicke dir den Ordner per PN 🙂

---

<div class="post-metadata">

**Author:** ![mutmut](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/mutmut/32/14064_2.png) [@mutmut](https://community.gladysassistant.com/u/mutmut)\
**Post date:** [28. März 2026 um 21:47 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/32 "2026-03-28T21:47:42Z")

</div>

Hallo @pierre-gilles  
ich habe gerade deine letzte Build getestet und meine Matter-Integration funktioniert jetzt besser.

Erstens sehe ich den Matterbridge-Knoten wieder in den Matter-Einstellungen!  
Meine Somfy-Rollos waren offline. Ich konnte sie über das Teilen eines Rollos von Apple Home auf iOS „wiederherstellen“: Ich habe den Freigabecode eingegeben und dann sind meine Geräte auf `Aktualisieren` umgestellt (was ich angewendet habe), aber die Steuerung funktioniert nicht (ist aber im Moment nicht schlimm).

Dann habe ich versucht, meinen SONOFF-Schalter wieder zu integrieren (der immer noch nicht in den Matter-Knoten erscheint): Teilen des Codes von HA, Hinzufügen in Gladys und Problem:

 ![image](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/5/9/593764ff008ee839271e1f4639105fab6be8e10f.png)  
Mein großes Problem ist, dass ich nicht weiß, wie ich dieses Gerät löschen kann, das ich nirgends sehe.

---

<div class="post-metadata">

**Author:** ![prohand](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/prohand/32/15713_2.png) [@prohand](https://community.gladysassistant.com/u/prohand)\
**Post date:** [29. März 2026 um 10:46 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/33 "2026-03-29T10:46:40Z")

</div>

@pierre-gilles Hast du Neuigkeiten vom Entwickler von Matter.js?

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [30. März 2026 um 09:06 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/34 "2026-03-30T09:06:17Z")

</div>

Danke, dass du @mutmut getestet hast!

> [@mutmut](#):
>
> Meine Somfy-Rolladen sind offline gegangen. Ich konnte sie über das Teilen eines Rolladens von Apple Home auf iOS wiederherstellen

Hast du die Logs von Gladys zum Zeitpunkt des Container-Starts?

Diese Version von Matter.js führt viele breaking changes ein und startet eine Migration der Dateien. Vielleicht hast du, wie @prohand, Fehler während dieser Migration erlebt, was zum Verlust deiner Geräte geführt haben könnte?

> [@mutmut](#):
>
> Mein großes Problem ist, dass ich nicht weiß, wie ich dieses Gerät löschen soll, das ich nirgends sehe.

Siehst du sie wirklich nirgends? Nicht einmal unter «&nbsp;Einstellungen&nbsp;» → «&nbsp;Matter-Knoten&nbsp;»?

> [@prohand](#):
>
> @pierre-gilles Hast du Neuigkeiten vom Entwickler von Matter.js?

Keine Neuigkeiten! Ich habe ihn gerade wieder kontaktiert, das ist jetzt eine Woche her.

Falls nötig, erstellen wir ein Issue auf GitHub für `matter.js`.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [30. März 2026 um 12:44 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/35 "2026-03-30T12:44:43Z")

</div>

Ich habe heute Morgen Neuigkeiten erhalten, @prohand ich halte dich auf dem Laufenden, sobald ich etwas Neues habe 🙂

 ![Bildschirmfoto 2026-03-30 um 14.43.40](https://gladys-assistant-community.b-cdn.net/uploads/default/original/3X/4/a/4a9e780c22209d3937bcd8e4c15364ddabcdca54.png)

---

<div class="post-metadata">

**Author:** ![mutmut](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/mutmut/32/14064_2.png) [@mutmut](https://community.gladysassistant.com/u/mutmut)\
**Post date:** [30. März 2026 um 18:04 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/36 "2026-03-30T18:04:54Z")

</div>

> [@pierre-gilles](#):
>
> Siehst du sie wirklich nirgendwo? Nicht mal unter „Einstellungen“ → „Matter-Knoten“?

nichts, gar nichts, ich sehe nur meinen Matterbridge-Knoten 😕

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [31. März 2026 um 06:55 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/37 "2026-03-31T06:55:48Z")

</div>

Okay, hast du besondere Logs erhalten, als du den Container zum ersten Mal gestartet hast? In der letzten Version von Matter.js gibt es eine Dateimigration, und vielleicht ist das gescheitert. Wenn du die Logs hast, kann ich sie an den Maintainer von Matter.js weiterleiten!

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [4. April 2026 um 07:07 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/38 "2026-04-04T07:07:50Z")

</div>

Immer noch keine Neuigkeiten, ich habe ein Ticket auf Github erstellt, damit er es nicht vergisst 🙂

> <https://github.com/matter-js/matter.js/issues/3530>
>
> Hi!
> 
> We’re currently upgrading from 0.13.0 to 0.16.10 on Gladys Assistant (\[PR h…ere\](https://github.com/GladysAssistant/Gladys/pull/2501)￼) and have encountered a file migration issue affecting multiple users.
> 
> I’ve shared a .zip of the controller folder with you for investigation (in private on Discord), and I’m opening this issue for visibility and tracking.
> 
> Let me know if you need any additional information to help reproduce the problem.
> 
> Thanks a lot 🙌
> 
> \`\`\`
> 2026-03-23 11:20:33.533 ERROR ClientNode \[internal\] Unsupported async initialization detected when loading known peer
> at ClientNode.initialize (/src/server/services/matter/node\_modules/@matter/node/src/node/ClientNode.ts:101:19)
> at ClientNode.\[construct\] (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/Endpoint.ts:896:21)
> at initializer (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:289:80)
> at invokeInitializer (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:598:30)
> at Construction.start (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:290:17)
> at Factory.create (/src/server/services/matter/node\_modules/@matter/node/src/node/client/Peers.ts:495:27)
> at Peers.initialize (/src/server/services/matter/node\_modules/@matter/node/src/node/client/Peers.ts:108:25)
> at ServerNode.get peers \[as peers\] (/src/server/services/matter/node\_modules/@matter/node/src/node/ServerNode.ts:168:29)
> at ChangeNotificationService.#beginPeerObservation (/src/server/services/matter/node\_modules/@matter/node/src/node/integration/ChangeNotificationService.ts:112:27)
> at /src/server/services/matter/node\_modules/@matter/node/src/node/integration/ChangeNotificationService.ts:35:50
> at BasicObservable.emit (/src/server/services/matter/node\_modules/@matter/general/src/util/Observable.ts:377:26)
> at NodeLifecycle.change (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/properties/EndpointLifecycle.ts:226:32)
> at onReady (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/properties/Behaviors.ts:264:38)
> at ServerNode.initialize (/src/server/services/matter/node\_modules/@matter/node/src/node/ServerNode.ts:188:9)
> \`\`\`
> 
> \`\`\`
> 2026-03-23T11:20:33+0100 \<warn\> service.start.js:44 (Service.start) Unable to start service matter \[crashed-dependency\] MatterController unavailable due to initialization error
> at crashedError (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:623:32)
> at handleRejection (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:325:69)
> Caused by: \[crashed-dependency\] matter-controller-data.peer2 initialization failed
> at Object.assertActive (/src/server/services/matter/node\_modules/@matter/general/src/util/Lifecycle.ts:48:23)
> at Construction.assert (/src/server/services/matter/node\_modules/@matter/general/src/util/Construction.ts:298:23)
> at Behaviors.#backingFor (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/properties/Behaviors.ts:736:41)
> at Object.get \[as commissioning\] (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/properties/Behaviors.ts:799:32)
> at ClientNode.maybeStateOf (/src/server/services/matter/node\_modules/@matter/node/src/endpoint/Endpoint.ts:225:22)
> at Peers.get (/src/server/services/matter/node\_modules/@matter/node/src/node/client/Peers.ts:184:46)
> at MatterController.#migrateNodeData (/src/server/services/matter/node\_modules/@project-chip/matter.js/src/MatterController.ts:695:45)
> at /src/server/services/matter/node\_modules/@project-chip/matter.js/src/MatterController.ts:399:17
> \`\`\`

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [5. April 2026 um 14:01 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/39 "2026-04-05T14:01:49Z")

</div>

Okay, ich habe die Sache in die Hand genommen und versucht, den Bug selbst zu beheben 😄

Der Maintainer hat mir gut geholfen, das Problem zu identifizieren, und wir glauben, wir haben es gefunden!

Ich habe einen PR auf dem Matter.js-Repo eröffnet:

> <https://github.com/matter-js/matter.js/pull/3535>
>
> \## Fix: Add fallback \`discoveredAt\` in migration to prevent async initialization… error
> 
> \### Problem
> 
> When upgrading from Matter.js 0.13.x to 0.16.x, the migration of commissioned nodes fails with:
> 
> \`\`\`
> Unsupported async initialization detected when loading known peer
> \`\`\`
> 
> \### Root Cause
> 
> During migration, the \[CommissioningClient.initialize()\](cci:1://file:///Users/pierre-gilles/code/matter.js/packages/node/src/behavior/system/commissioning/CommissioningClient.ts:97:4-117:5) method checks if \`discoveredAt\` is undefined and sets it to the current time. This state modification triggers an async storage write via \[DatasourceCache.set()\](cci:1://file:///Users/pierre-gilles/code/matter.js/packages/node/src/behavior/state/managed/Datasource.ts:166:8-172:72).
> 
> For pre-existing nodes (\`isPreexisting = true\`), \[ClientNode.initialize()\](cci:1://file:///Users/pierre-gilles/code/matter.js/packages/node/src/node/ClientNode.ts:81:4-104:5) requires synchronous initialization and throws an error if any async operation occurs.
> 
> The old storage format didn't include \`discoveredAt\`, so migrated nodes would always trigger this async write during initialization.
> 
> \### Solution
> 
> Add \`discoveredAt: Time.nowMs\` as a fallback value in the migration code when building the \`commissioning\` data structure. By placing it before the spread operator, it will be overwritten if \`discoveryData\` already contains a real \`discoveredAt\` value.
> 
> This ensures \`discoveredAt\` is already defined when \[CommissioningClient.initialize()\](cci:1://file:///Users/pierre-gilles/code/matter.js/packages/node/src/behavior/system/commissioning/CommissioningClient.ts:97:4-117:5) runs, preventing the state modification and async storage write.

Ich werde den Fix auch auf die Version 0.16.x backporten, damit wir schnell davon profitieren können, ohne auf die Veröffentlichung der 0.17 warten zu müssen, die erst in etwa zwei Wochen geplant ist.

---

<div class="post-metadata">

**Author:** ![pierre-gilles](https://gladys-assistant-community.b-cdn.net/user_avatar/community.gladysassistant.com/pierre-gilles/32/5886_2.png) [@pierre-gilles](https://community.gladysassistant.com/u/pierre-gilles)\
**Post date:** [5. April 2026 um 15:00 UTC](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149/40 "2026-04-05T15:00:38Z")

</div>

Der Backport:

> <https://github.com/matter-js/matter.js/pull/3539>

[Vorherige Seite](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149.md?page=1)

[Nächste Seite](https://community.gladysassistant.com/t/mise-a-jour-de-matter-js-vers-0-16/10149.md?page=3)
