[3.11.3] - 2026-11-13
Development News
- [chip]: RootNode endpoint 0 CHIP conformance is green ✅ for all automated harness tests covering the
TimeSynchronizationcluster (TC_TIMESYNC_2_1.pytoTC_TIMESYNC_3_1.py, 14 tests), with its ownroot-camera.pics. - [chip]: RootNode endpoint 0 CHIP conformance is green ✅ for all automated harness tests covering the
TlsCertificateManagementcluster (TC_TLSCERT_2_1.pytoTC_TLSCERT_2_13.py, 13 tests). - [chip]: RootNode endpoint 0 CHIP conformance is green ✅ for all available automated harness tests covering the
TlsClientManagementcluster (TC_TLSCLIENT_2_1.py,3_1,3_2,3_3,3_10and3_20, 6 tests).
Breaking changes
- [core]: Replace
/api/commandwith/api/selectand/api/unselect, requiringpluginName,serialNumberanddeviceNamewithout acommandparameter. - [core]:
/api/devices(WebSocket and HTTP) returns the storedDevice[]instead ofApiDevice[]; the platform devices are served by/api/platform-devices. - [core]: Rename
/api/select/devicesand/api/select/entitiesto/api/select-devicesand/api/select-entities. - [core]: Rename
/api/savepluginconfigto/api/save-plugin-config. - [core]: Rename
/api/viewhistory,/api/downloadhistory,/api/viewhistorypageand/api/downloadhistorypageto/api/view-history,/api/download-history,/api/view-historypageand/api/download-historypage. - [types]: Rename
BaseDevicetoDevice. - [core]: Remove the
setUtcTime,setTimeZoneandsetDstOffsetTime Synchronization entries fromCommandHandlers: the cluster lives on the Root Node, which has no plugin command handler. - [matterbridge]: Replace the
--root-power-sourceparam with--root-camera, which adds the Power Source, Time Synchronization, TLS Certificate Management and TLS Client Management clusters on the Root endpoint, as required by the camera device types;MATTERBRIDGE_CHIP_TESTenables it too.
Added
- [core]: Add default Window Covering options helpers for lift, lift/tilt and tilt servers.
- [types]: Add
platform_select_deviceandplatform_unselect_devicebroadcast contracts matching the frontend selection parameters. - [core]: Handle platform select/unselect broadcasts using schema selection mode, postfix stripping and white/black lists, with config saving and restart/refresh notifications.
- [types]: Add the
/api/platform-devicesrequest/response contracts; the response carries the requestedpluginName. - [core]: Handle
/api/platform-devicesin the frontend and backend WebSocket servers, returning theApiDevice[]of one plugin platform. - [core]: Add the
MatterbridgeTimeSynchronizationServer,MatterbridgeTlsCertificateManagementServerandMatterbridgeTlsClientManagementServerRoot Node behaviors from matterbridge-example-camera, with vitest and bun tests. - [core]:
MatterbridgeTimeSynchronizationServerrepeats theDSTTableEmptyevent at most once per hour while theDSTOffsetlist is empty (Matter 1.6.1 § 11.17.10.1). - [core]:
MatterbridgeTlsCertificateManagementServerrejects aClientCSRkey pair colliding with another TLS or operational key pair withDYNAMIC_CONSTRAINT_ERROR(Matter 1.6.1 § 14.4.6.8). - [chip]: Add
root-camera.picsand the 33TIMESYNC,TLSCERTandTLSCLIENTconformance tests on the Root endpoint (npm run chip:test:time-sync,chip:test:tls-certandchip:test:tls-client).
Changed
- [core]: Rename
toBaseDevice()totoDevice(), thedevices_basearraybroadcast todevices_arrayandBackend.getApiDevices()togetDevices(); removedevices_apidevicearrayandDeviceManager.apiDeviceArray(). - [types]: Move
ApiSettings,ApiSelectDevice,ApiSelectDeviceEntity,ApiSelectEntityandApiSystemUpdatefromfrontendTypestomatterbridgeTypes. - [frontend]: Home, Devices table and Devices icons request
/api/platform-devicesfor each started plugin and replace the rows of that plugin only; an empty reply removes them. - [frontend]: Devices table and Devices icons refresh on
refresh_requiredlike the Home devices: on every change exceptmatterand a lockedpluginsrefresh. - [core]: Document the
Plugininterface fields. - [agents]: Add Bionic / LM Studio to the shared agent stack: update
AGENTS.mdto v.1.0.12 (@<name>skill invocation, read the global~/.agents/AGENTS.mdfirst),.agents/README.mdto v.1.0.5,STYLEGUIDE.mdto v.1.1.1 andSHARED-AGENTS.md. - [agents]: Update the
verify-agent-contextskill to v.1.0.6: report the global instruction file, the global~/.agents/AGENTS.mdmaster and global settings, and group skills by source. - [matterbridge]: Bump
matterbridgeversion to v.3.11.3. - [matterbridge]: Bump
@vitest/coverage-v8to v.5.1.0. - [matterbridge]: Bump
jsdomto v.31.0.0, replacing CSS parsing, selector matching and computed styles; frontend style assertions may receive different serialized values. See the release notes. - [matterbridge]: Bump
markedto v.18.1.3. - [matterbridge]: Bump
oxfmtto v.0.77.0, including the new HTML formatter introduced in v.0.76.0 and a fix preserving inline JSDoc tags. See the v.0.76.0 and v.0.77.0 release notes. - [matterbridge]: Bump
oxlintto v.1.92.0, fixingjsdoc/require-paramhandling of enclosing function JSDoc and improving lint performance. See the release notes. - [matterbridge]: Bump
oxlint-tsgolintto v.7.0.2006. - [matterbridge]: Bump
vitestto v.5.1.0, adding--last-failedand--since-last-run, Node.js module fake-timer support, and fixes for concurrent mock imports and linked-package mocks. See the release notes. - [frontend]: Bump
@rjsf/coreto v.6.11.1. - [frontend]: Bump
@rjsf/utilsto v.6.11.1. - [frontend]: Bump
@rjsf/validator-ajv8to v.6.11.1. - [frontend]: Bump
@vitejs/plugin-reactto v.6.2.1. - [frontend]: Bump
viteto v.8.3.6. - [core]: Bump
express-rate-limitto v.8.7.3.
Fixed
- [core]: Forward childbridge status updates to experimental backend WebSocket clients.
- [frontend]: Devices table clears the selected device and its clusters on a full reload.
- [frontend]: Devices table reloads when the bridge starts, instead of staying empty until remounted.
- [core]:
/api/create-backupworks with--profile: the profile directories are stored flat as.matterbridge,Matterbridgeand.mattercertinstead of failing on duplicate entry names. - [thread]: The archive worker logs an error and responds with
success: falsewhen the archive command throws. - [core]: The
ClosureControl,ClosureDimensionandSoilMeasurementdefinitions register inMatterDefinitioneven when a device type has the same id (DimmerSwitch0x0104,ColorDimmerSwitch0x0105).