homebridge-roborock-matter 2.4.1 → 2.5.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,26 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.5.0
4
+
5
+ Supply-chain, robustness and capability-detection release. Every Socket.dev alert with a code-level source is eliminated at the source, and the plugin now adapts itself to unknown robot models instead of guessing silently.
6
+
7
+ - **Custom UI server moved to native ESM loading — no more dynamic code evaluation.** The `homebridge-ui` directory is now marked `"type": "module"`, so `server.js` imports the pure-ESM `@homebridge/plugin-ui-utils` natively and instantiates the exported (side-effect-free) server class from the compiled output. The `new Function("return import(...)")` interop shim is gone, and with it the Socket.dev "uses eval" alert.
8
+ - **Removed the dead ioBroker-era package/image downloader** (`roborockPackageHelper`) and its `jszip` dependency (12 packages out of the tree). The helper was never called by this fork, wrote to relative paths, and was the source of Socket.dev's AI-detected ZIP-slip/path-traversal alert. Deleting it removes the entire alert surface rather than patching around it.
9
+ - **Self-healing capability detection.** Any periodic poll request a robot definitively answers with an unsupported-method error is now remembered per device and skipped until the next restart (firmware updates get a fresh probe) — exotic and brand-new models stop generating repeated warnings for requests they will never answer. Timeouts and transport errors never count as unsupported.
10
+ - **Capability-derived poll profiles for unknown models.** Models without a dedicated poll profile (e.g. newly released Saros 10 / Q5 Max+ / QX Revo Plus-class devices) now derive their polls from the robot's own capability bitmask where available (carpet support), announce the chosen profile once in the log, and point to the model-report issue template. Known models keep their verified profiles unchanged.
11
+ - **Clearer model lookup mismatch logs:** a device whose HomeData model string does not look like a Roborock vacuum now logs exactly what was reported and how to file a useful report, instead of a generic "unsupported model" line.
12
+ - **Leaner npm package:** the mitmproxy sniffing script, the ioBroker map viewer, test files, and editor metadata no longer ship in the tarball.
13
+ - ROADMAP refreshed against live upstream status: applemanj#12 (pause/dock) confirmed fixed and closed upstream; applemanj#4 (S8 local timeouts) still awaiting reporter retest; homebridge#3951 stable with no recurrence since June. The legacy "HomeKit scene/room controls" item is superseded by the Matter-only design.
14
+ - Full suite: 241 passing (6 new capability-detection tests). Verified end to end under Homebridge 1.8.3 and 2.1.2-beta.3, including the plugin-verification harness's crash scenarios (invalid credentials, unreachable cloud).
15
+
16
+ ## 2.4.2
17
+
18
+ Robustness and supply-chain release (Homebridge verification runtime checks + Socket.dev scan).
19
+
20
+ - **Startup failures can no longer crash Homebridge.** A rejected Roborock login previously escaped `startService` as an unhandled promise rejection — under Homebridge 2 / Node 22+ that reads as a plugin crash and can trigger a crash-restart loop. Wrong credentials now stop cleanly with a clear log message ("check the email and password ..."), while unreachable-cloud errors retry with increasing backoff (1-10 minutes, up to 10 attempts) since Homebridge often boots before the network is up. A belt-and-braces catch at the platform call site guarantees nothing escapes.
21
+ - **node-forge removed** (flagged by Socket.dev: its prime-generation worker contains a Math.random() fallback). The protocol's RSA-2048 keypair is now generated by Node's built-in OpenSSL-backed `crypto.generateKeyPairSync` (CSPRNG entropy) with identical output format — the components are byte-for-byte compatible minimal hex strings, verified by new tests including a reconstruction/roundtrip check. One less production dependency.
22
+ - Full suite: 235 passing.
23
+
3
24
  ## 2.4.1
4
25
 
5
26
  - Added the standard `name` property to the config schema (Homebridge verification requirement) so the platform name is editable in the Homebridge UI.
package/dist/platform.js CHANGED
@@ -136,10 +136,15 @@ class RoborockPlatform {
136
136
  self.roborockAPI.setDeviceNotify(function (id, homeData) {
137
137
  self.dispatchDeviceUpdate(id, homeData);
138
138
  });
139
- self.roborockAPI.startService(function () {
139
+ // Belt and braces: no rejection from the service startup may ever
140
+ // escape as an unhandled rejection (Homebridge 2 / Node 22+ would
141
+ // treat that as a plugin crash).
142
+ Promise.resolve(self.roborockAPI.startService(function () {
140
143
  self.log.info("Service started");
141
144
  //call the discoverDevices function
142
145
  self.discoverDevices();
146
+ })).catch((error) => {
147
+ self.log.error(`Roborock service failed to start: ${error instanceof Error ? error.message : String(error)}`);
143
148
  });
144
149
  }
145
150
  dispatchDeviceUpdate(id, homeData) {
@@ -1 +1 @@
1
- {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"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"}
package/dist/ui/index.js CHANGED
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RoborockUiServer = void 0;
6
7
  const crypto_1 = __importDefault(require("crypto"));
7
8
  const path_1 = __importDefault(require("path"));
8
9
  const fs_1 = __importDefault(require("fs"));
@@ -721,21 +722,5 @@ class RoborockUiServer {
721
722
  }
722
723
  }
723
724
  }
724
- // IMPORTANT: Use Function constructor to create a dynamic import that TypeScript won't transform
725
- //
726
- // Background: @homebridge/plugin-ui-utils v2+ is a pure ES module that cannot be loaded with require()
727
- // in Node.js 18+. Normally we would use `await import('@homebridge/plugin-ui-utils')`, but because
728
- // this project uses TypeScript with "module": "commonjs" in tsconfig.json, TypeScript transforms
729
- // dynamic imports into require() calls in the compiled output, which defeats the purpose.
730
- //
731
- // Solution: Using the Function constructor prevents TypeScript from transforming the import statement.
732
- // The Function constructor is evaluated at runtime, so TypeScript cannot statically analyze or transform it.
733
- // This is the recommended workaround for ES module/CommonJS interop when using TypeScript with CommonJS output.
734
- //
735
- // Security note: This is safe because the module specifier is a hardcoded string literal, not user input.
736
- (async () => {
737
- const dynamicImport = new Function("specifier", "return import(specifier)");
738
- const { HomebridgePluginUiServer } = await dynamicImport("@homebridge/plugin-ui-utils");
739
- new RoborockUiServer(HomebridgePluginUiServer);
740
- })();
725
+ exports.RoborockUiServer = RoborockUiServer;
741
726
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ {
2
+ "type": "module",
3
+ "private": true,
4
+ "description": "Marks the custom UI server directory as ESM so server.js can natively import the pure-ESM @homebridge/plugin-ui-utils without dynamic-code-evaluation shims."
5
+ }
@@ -1,3 +1,12 @@
1
- "use strict";
1
+ // ESM entry point for the Homebridge custom UI server (this directory is
2
+ // "type": "module"). plugin-ui-utils v2+ is a pure ES module, so it is
3
+ // imported natively here; the compiled CommonJS server implementation is
4
+ // loaded via createRequire and instantiated with the imported base class.
5
+ import { createRequire } from "node:module";
2
6
 
3
- require("../dist/ui/index.js");
7
+ import { HomebridgePluginUiServer } from "@homebridge/plugin-ui-utils";
8
+
9
+ const require = createRequire(import.meta.url);
10
+ const { RoborockUiServer } = require("../dist/ui/index.js");
11
+
12
+ new RoborockUiServer(HomebridgePluginUiServer);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "homebridge-roborock-matter",
3
- "version": "2.4.1",
3
+ "version": "2.5.0",
4
4
  "description": "Matter-only Homebridge plugin publishing Roborock robot vacuums (including 2025 B01/Q7-series) as native Matter accessories for Apple Home. Fork of homebridge-roborock-vacuum2.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -47,9 +47,7 @@
47
47
  "axios": "^1.13.4",
48
48
  "binary-parser": "^2.3.0",
49
49
  "crc-32": "^1.2.2",
50
- "jszip": "^3.10.1",
51
50
  "mqtt": "^5.15.0",
52
- "node-forge": "^1.3.3",
53
51
  "qrcode": "^1.5.4"
54
52
  },
55
53
  "devDependencies": {
@@ -1,37 +1,48 @@
1
1
  "use strict";
2
2
 
3
3
  const crypto = require("crypto");
4
- const forge = require("node-forge");
5
4
 
5
+ /**
6
+ * Convert a base64url JWK component to the minimal lowercase hex string
7
+ * format the previous node-forge implementation produced (BigInteger
8
+ * .toString(16): no leading zero digits).
9
+ * @param {string} base64url
10
+ * @returns {string}
11
+ */
12
+ function jwkComponentToHex(base64url) {
13
+ const hex = Buffer.from(base64url, "base64url").toString("hex");
14
+ return hex.replace(/^0+(?=.)/, "");
15
+ }
16
+
17
+ /**
18
+ * Generate the 2048-bit RSA keypair used by the Roborock protocol's photo
19
+ * security block, via Node's built-in OpenSSL-backed generator (CSPRNG
20
+ * entropy). Output shape and hex formatting match the previous node-forge
21
+ * implementation exactly: n/e/d/p/q/dmp1/dmq1/coeff as minimal hex strings.
22
+ */
6
23
  function generateRsaKeyPair() {
7
- const keypair = forge.pki.rsa.generateKeyPair(2048);
8
- const keys = {
9
- public: { n: null, e: null },
24
+ const { publicKey, privateKey } = crypto.generateKeyPairSync("rsa", {
25
+ modulusLength: 2048,
26
+ });
27
+ const jwk = privateKey.export({ format: "jwk" });
28
+ void publicKey;
29
+
30
+ return {
31
+ public: {
32
+ n: jwkComponentToHex(jwk.n),
33
+ e: jwkComponentToHex(jwk.e),
34
+ },
10
35
  private: {
11
- n: null,
12
- e: null,
13
- d: null,
14
- p: null,
15
- q: null,
16
- dmp1: null,
17
- dmq1: null,
18
- coeff: null,
36
+ n: jwkComponentToHex(jwk.n),
37
+ e: jwkComponentToHex(jwk.e),
38
+ d: jwkComponentToHex(jwk.d),
39
+ p: jwkComponentToHex(jwk.p),
40
+ q: jwkComponentToHex(jwk.q),
41
+ dmp1: jwkComponentToHex(jwk.dp),
42
+ dmq1: jwkComponentToHex(jwk.dq),
43
+ coeff: jwkComponentToHex(jwk.qi),
19
44
  },
20
45
  };
21
-
22
- // Convert the keys to the desired format
23
- keys.public.n = keypair.publicKey.n.toString(16);
24
- keys.public.e = keypair.publicKey.e.toString(16);
25
- keys.private.n = keypair.privateKey.n.toString(16);
26
- keys.private.e = keypair.privateKey.e.toString(16);
27
- keys.private.d = keypair.privateKey.d.toString(16);
28
- keys.private.p = keypair.privateKey.p.toString(16);
29
- keys.private.q = keypair.privateKey.q.toString(16);
30
- keys.private.dmp1 = keypair.privateKey.dP.toString(16);
31
- keys.private.dmq1 = keypair.privateKey.dQ.toString(16);
32
- keys.private.coeff = keypair.privateKey.qInv.toString(16);
33
-
34
- return keys;
35
46
  }
36
47
 
37
48
  function md5bin(str) {
@@ -279,6 +279,9 @@ class vacuum {
279
279
  }
280
280
 
281
281
  async getParameter(duid, parameter, attribute, options = {}) {
282
+ if (this.adapter.isPollCommandUnsupported?.(duid, parameter)) {
283
+ return;
284
+ }
282
285
  let mode;
283
286
 
284
287
  try {
@@ -809,6 +812,11 @@ class vacuum {
809
812
  }
810
813
  }
811
814
  } catch (error) {
815
+ if (
816
+ this.adapter.rememberUnsupportedPollCommand?.(duid, parameter, error)
817
+ ) {
818
+ return;
819
+ }
812
820
  this.adapter.catchError(error, parameter, duid, this.robotModel);
813
821
  }
814
822
  }
@@ -13,8 +13,6 @@ const roborock_mqtt_connector =
13
13
  require("./lib/roborock_mqtt_connector").roborock_mqtt_connector;
14
14
  const rrMessage = require("./lib/message").message;
15
15
  const vacuum_class = require("./lib/vacuum").vacuum;
16
- const roborockPackageHelper =
17
- require("./lib/roborockPackageHelper").roborockPackageHelper;
18
16
  const deviceFeatures = require("./lib/deviceFeatures").deviceFeatures;
19
17
  const messageQueueHandler =
20
18
  require("./lib/messageQueueHandler").messageQueueHandler;
@@ -110,8 +108,6 @@ class Roborock {
110
108
  this.nonce = crypto.randomBytes(16);
111
109
  this.messageQueue = new Map();
112
110
 
113
- this.roborockPackageHelper = new roborockPackageHelper(this);
114
-
115
111
  this.localConnector = new rrLocalConnector(this);
116
112
  this.rr_mqtt_connector = new roborock_mqtt_connector(this);
117
113
  this.message = new rrMessage(this);
@@ -129,6 +125,11 @@ class Roborock {
129
125
  this.deviceNotify = null;
130
126
  this.serviceAreaRoomMapRefreshAttempts = new Map();
131
127
  this.matterUnsupportedSettingCommands = new Set();
128
+ // Poll commands a robot has answered with "unsupported"/"unknown method":
129
+ // remembered per device (until restart) so exotic models stop generating
130
+ // repeated warnings for requests they will never answer.
131
+ this.unsupportedPollCommands = new Set();
132
+ this.loggedPollProfiles = new Set();
132
133
  this.baseURL = options.baseURL || "usiot.roborock.com";
133
134
 
134
135
  this.userData = options.userData || null;
@@ -1258,7 +1259,56 @@ class Roborock {
1258
1259
  await this.setStateAsync("info.connection", { val: true, ack: true });
1259
1260
  // api/v1/getUrlByEmail(email = ...)
1260
1261
 
1261
- const userdata = await this.getUserData(this.loginApi);
1262
+ // A failed login must NEVER escape as an unhandled rejection: wrong
1263
+ // credentials or an unreachable Roborock cloud would otherwise send
1264
+ // Homebridge into a crash-restart loop. Credential errors stop here
1265
+ // with a clear message; transient/network errors retry with backoff
1266
+ // (Homebridge frequently boots before the network is up).
1267
+ let userdata;
1268
+ try {
1269
+ userdata = await this.getUserData(this.loginApi);
1270
+ } catch (error) {
1271
+ const message = error?.message || String(error);
1272
+ await this.setStateAsync("info.connection", { val: false, ack: true });
1273
+
1274
+ const isCredentialError =
1275
+ /"code":\s*(2012|2008|2018)/.test(message) ||
1276
+ /username or password/i.test(message);
1277
+ if (isCredentialError) {
1278
+ this.log.error(
1279
+ `Roborock login rejected: ${message}. Check the email and password in the plugin settings; the plugin stays idle until the configuration is fixed.`
1280
+ );
1281
+ this.authState.statusMessage =
1282
+ "Login rejected - check email and password.";
1283
+ return;
1284
+ }
1285
+
1286
+ this._startupLoginAttempts = (this._startupLoginAttempts || 0) + 1;
1287
+ if (this._startupLoginAttempts <= 10) {
1288
+ const delayMs = Math.min(
1289
+ 60000 * this._startupLoginAttempts,
1290
+ 10 * 60000
1291
+ );
1292
+ this.log.warn(
1293
+ `Could not reach the Roborock cloud (attempt ${this._startupLoginAttempts}/10): ${message}. Retrying in ${Math.round(delayMs / 60000)} minute(s).`
1294
+ );
1295
+ const retryTimer = this.setTimeout(() => {
1296
+ this.startService(callback).catch((retryError) => {
1297
+ this.log.error(
1298
+ `Roborock startup retry failed unexpectedly: ${retryError?.message || retryError}`
1299
+ );
1300
+ });
1301
+ }, delayMs);
1302
+ if (typeof retryTimer?.unref === "function") {
1303
+ retryTimer.unref();
1304
+ }
1305
+ } else {
1306
+ this.log.error(
1307
+ `Could not reach the Roborock cloud after ${this._startupLoginAttempts - 1} attempts: ${message}. Giving up until the next Homebridge restart.`
1308
+ );
1309
+ }
1310
+ return;
1311
+ }
1262
1312
  if (!userdata) {
1263
1313
  this.log.error(
1264
1314
  "Login failed or requires 2FA. Please complete authentication in the Config UI."
@@ -1266,6 +1316,7 @@ class Roborock {
1266
1316
  await this.setStateAsync("info.connection", { val: false, ack: true });
1267
1317
  return;
1268
1318
  }
1319
+ this._startupLoginAttempts = 0;
1269
1320
 
1270
1321
  try {
1271
1322
  this.loginApi.defaults.headers.common["Authorization"] = userdata.token;
@@ -2126,6 +2177,37 @@ class Roborock {
2126
2177
  return message.includes("request") && message.includes("timed out after");
2127
2178
  }
2128
2179
 
2180
+ /**
2181
+ * Self-healing capability detection for periodic poll commands: once a
2182
+ * robot definitively answers a request with an "unsupported"-class error,
2183
+ * the command is skipped for that device until the next restart (firmware
2184
+ * updates get a fresh probe). Timeouts and transport errors never count.
2185
+ * @param {string} duid @param {string} parameter
2186
+ */
2187
+ isPollCommandUnsupported(duid, parameter) {
2188
+ return this.unsupportedPollCommands.has(`${duid}:${parameter}`);
2189
+ }
2190
+
2191
+ /**
2192
+ * @param {string} duid @param {string} parameter @param {unknown} error
2193
+ * @returns {boolean} true when the error was an unsupported-class answer
2194
+ * and has been remembered (the caller can stop treating it as a failure).
2195
+ */
2196
+ rememberUnsupportedPollCommand(duid, parameter, error) {
2197
+ if (!this.shouldRememberUnsupportedMatterCommand(error)) {
2198
+ return false;
2199
+ }
2200
+ const key = `${duid}:${parameter}`;
2201
+ if (!this.unsupportedPollCommands.has(key)) {
2202
+ this.unsupportedPollCommands.add(key);
2203
+ const model = this.getProductAttribute(duid, "model") || duid;
2204
+ this.log.info(
2205
+ `${model} answered '${parameter}' with an unsupported-method error; skipping that request for this device until the next restart.`
2206
+ );
2207
+ }
2208
+ return true;
2209
+ }
2210
+
2129
2211
  startMainUpdateInterval(duid, online) {
2130
2212
  if (!this.hasInitializedVacuum(duid)) {
2131
2213
  return;
@@ -2321,14 +2403,33 @@ class Roborock {
2321
2403
  await vacuum.getParameter(duid, "get_smart_wash_params");
2322
2404
  await vacuum.getParameter(duid, "app_get_dryer_setting");
2323
2405
  break;
2324
- default:
2325
- await vacuum.getParameter(duid, "get_carpet_mode");
2326
- await vacuum.getParameter(duid, "get_carpet_clean_mode");
2406
+ default: {
2407
+ // No dedicated poll profile for this model: derive it from the
2408
+ // robot's own capability bitmask when available instead of blindly
2409
+ // probing, and say so once — clearer than silent guessing for
2410
+ // newly released models (Saros 10, Q5 Max+, QX Revo Plus, ...).
2411
+ const featureList =
2412
+ this.vacuums[duid]?.features?.getFeatureList?.() || null;
2413
+ const carpetSupported = featureList
2414
+ ? Boolean(featureList.isCarpetSupported)
2415
+ : true;
2416
+ const profileKey = `${duid}:${robotModel}`;
2417
+ if (!this.loggedPollProfiles.has(profileKey)) {
2418
+ this.loggedPollProfiles.add(profileKey);
2419
+ this.log.info(
2420
+ `No dedicated poll profile for model '${robotModel}'; using ${featureList ? "capability-derived" : "generic"} polls (carpet=${carpetSupported ? "yes" : "no"}, water-box probe=yes). Requests the robot reports as unsupported are disabled automatically. If states look wrong for this model, please open a model report issue on GitHub.`
2421
+ );
2422
+ }
2423
+ if (carpetSupported) {
2424
+ await vacuum.getParameter(duid, "get_carpet_mode");
2425
+ await vacuum.getParameter(duid, "get_carpet_clean_mode");
2426
+ }
2327
2427
  await vacuum.getParameter(duid, "get_water_box_custom_mode");
2428
+ }
2328
2429
  }
2329
2430
  } else {
2330
2431
  this.log.warn(
2331
- `Unsupported model '${robotModel || "unknown"}'. Skipping minimum data update for ${duid}.`
2432
+ `Model lookup mismatch for ${duid}: HomeData reports '${robotModel || "unknown"}', which does not look like a Roborock vacuum model string. Skipping the periodic data update for this device. If this is a real vacuum, please open a model report issue on GitHub with a diagnostics export from the plugin settings.`
2332
2433
  );
2333
2434
  }
2334
2435
  }
package/.gitattributes DELETED
@@ -1,13 +0,0 @@
1
- # Normalize line endings to LF in the repository and on checkout for all
2
- # platforms. Prevents Windows (core.autocrlf=true) from checking files out as
3
- # CRLF, which otherwise makes `npm run lint` (Prettier, endOfLine: lf) fail
4
- # locally even though the committed files are LF and pass in CI.
5
- * text=auto eol=lf
6
-
7
- # Leave common binary assets untouched.
8
- *.png binary
9
- *.jpg binary
10
- *.jpeg binary
11
- *.gif binary
12
- *.ico binary
13
- *.webp binary
@@ -1,6 +0,0 @@
1
- {
2
- "t": 1765660648,
3
- "dps": {
4
- "10001": "{\"msgId\":\"200000000001\",\"code\":0,\"method\":\"prop.get\",\"data\":{\"status\":4,\"main_brush\":4088}}"
5
- }
6
- }
@@ -1,16 +0,0 @@
1
- {
2
- "serial": "RCOEHP52901640",
3
- "model": "roborock.vacuum.sc05",
4
- "expectedMapKey": "8b843fa941befe34",
5
- "payloadBase64": "dJvBLyjxxSb0cQ1J8sw07L79P8tQ5pBshSuy77vNc3GnbZaRcIwTcEpaETDI2ehx8XpNGYqy5ac1irT3svbeTOiRtj31RhErHEKGm1NSAQBOwHHDKR8aLcXVUT0wewNM9Vd5H1C0L3uaxwHPW1Pp9A==",
6
- "expectedRooms": [
7
- {
8
- "roomId": 42,
9
- "roomName": "Køkken"
10
- },
11
- {
12
- "roomId": 7,
13
- "roomName": "Stue"
14
- }
15
- ]
16
- }
@@ -1,7 +0,0 @@
1
- {
2
- "folders": [
3
- {
4
- "path": ".",
5
- },
6
- ],
7
- }