homebridge-plugin-klares4 2.0.1-beta2 → 2.0.1

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
@@ -7,6 +7,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.0.1] - 2026-03-13
11
+
12
+ ### Added
13
+
14
+ - KSA import pipeline (`ksaImport`) with deterministic derivation for thermostat command routing, Domus sensor mapping, room mapping, and optional custom names.
15
+ - Sanitized KSA runtime cache (`klares4-ksa-cache.json`) with whitelist-only structural metadata (no raw backup persistence).
16
+ - Bilingual technical documentation under `docs/en` and `docs/it` covering architecture, websocket behavior, Domus routing, config, and troubleshooting.
17
+ - CI/CD upgrade:
18
+ - Node 20/22 CI validation matrix with strict type-check + tests + build artifact
19
+ - npm publish workflow via GitHub Actions (tag/manual release path, provenance, and publish guards).
20
+
21
+ ### Fixed
22
+
23
+ - Thermostat authoritative state alignment on Domus installations using `STATUS_TEMPERATURES` for realtime mode/setpoint/current state.
24
+ - Thermostat routing mismatch on systems where output IDs, Domus sensor IDs, and `CFG_THERMOSTATS.ID` are not numerically aligned.
25
+ - Startup synchronization robustness by preloading thermostat structural mapping from sanitized KSA cache when `PRG_THERMOSTATS` is not exposed by firmware.
26
+ - Degraded routing behavior now evaluates mapped Domus sensor candidates before raw output fallback in non-PRG environments.
27
+
10
28
  ## [2.0.1-beta2] - 2026-03-13
11
29
 
12
30
  ### Added
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Paolo Trivi
3
+ Copyright (c) 2025-26 Paolo Trivisonno
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
18
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
21
+ SOFTWARE.
package/README.md CHANGED
@@ -8,6 +8,13 @@ Complete plugin for Ksenia Lares4 systems integrating security zones, lights, co
8
8
 
9
9
  ---
10
10
 
11
+ ## Full Documentation
12
+
13
+ - English docs: `docs/en/`
14
+ - Documentazione italiana: `docs/it/`
15
+
16
+ ---
17
+
11
18
  ## English Documentation
12
19
 
13
20
  ### Features
@@ -252,11 +259,31 @@ npm run verify
252
259
 
253
260
  This runs:
254
261
 
255
- - max file size gate (`src/**/*.ts` <= 300 lines),
262
+ - max file size gate (`src/**/*.ts` <= 350 lines),
256
263
  - strict TypeScript checks (`--noUnusedLocals --noUnusedParameters`),
257
264
  - full test suite,
258
265
  - build compatibility gate.
259
266
 
267
+ ### CI/CD
268
+
269
+ GitHub Actions workflows:
270
+
271
+ - `CI` (`.github/workflows/ci.yml`): Node 20/22 validation, strict type-checks, tests, build artifact.
272
+ - `Release Publish` (`.github/workflows/release-publish.yml`): npm publish with provenance from tags (`v*`) or manual dispatch.
273
+
274
+ Trusted publishing:
275
+
276
+ - `Release Publish` uses GitHub OIDC trusted publishing (`id-token: write`).
277
+ - No `NPM_TOKEN` secret is required.
278
+
279
+ Release policy:
280
+
281
+ - tag push `v<package.json version>` triggers publish;
282
+ - npm dist-tag auto-derived from version:
283
+ - `*-beta*` -> `beta`
284
+ - `*-rc*` -> `rc`
285
+ - stable -> `latest`
286
+
260
287
  ### Roadmap
261
288
 
262
289
  #### Planned for v1.2.0
@@ -4,7 +4,7 @@
4
4
  "singular": true,
5
5
  "customUi": false,
6
6
  "headerDisplay": "<div style='margin-bottom:12px;'><h3 style='margin:0 0 6px 0;'>Klares4 - Ksenia Lares4 per Homebridge</h3><p style='margin:0 0 12px 0;'>Plugin Homebridge per controllo locale della centrale Ksenia Lares4.</p><div style='padding:10px 12px;border:1px solid currentColor;border-radius:8px;'><strong>Prerequisiti:</strong><ul style='margin:8px 0 0 18px;padding:0;'><li>Centrale raggiungibile in rete locale</li><li>Interfaccia WebSocket abilitata</li><li>PIN utente valido (4-8 cifre)</li></ul></div></div>",
7
- "footerDisplay": "<div style='margin-top:16px;padding-top:12px;border-top:1px solid currentColor;'><p style='margin:0 0 8px 0;'>Versione 2.0.1-beta2 • Sviluppato da Paolo Trivisonno</p><p style='margin:0;'><a href='https://github.com/paolo-trivi/homebridge-plugin-klares4' target='_blank' rel='noopener noreferrer'>Documentazione</a> | <a href='https://github.com/paolo-trivi/homebridge-plugin-klares4/issues' target='_blank' rel='noopener noreferrer'>Segnala Bug</a> | <a href='https://github.com/sponsors/paolo-trivi' target='_blank' rel='noopener noreferrer'>Supporta</a></p></div>",
7
+ "footerDisplay": "<div style='margin-top:16px;padding-top:12px;border-top:1px solid currentColor;'><p style='margin:0 0 8px 0;'>Versione 2.0.1 • Sviluppato da Paolo Trivisonno</p><p style='margin:0;'><a href='https://github.com/paolo-trivi/homebridge-plugin-klares4' target='_blank' rel='noopener noreferrer'>Documentazione</a> | <a href='https://github.com/paolo-trivi/homebridge-plugin-klares4/issues' target='_blank' rel='noopener noreferrer'>Segnala Bug</a> | <a href='https://github.com/sponsors/paolo-trivi' target='_blank' rel='noopener noreferrer'>Supporta</a></p></div>",
8
8
  "schema": {
9
9
  "type": "object",
10
10
  "properties": {
@@ -1 +1 @@
1
- {"version":3,"file":"thermostat-status-updater.d.ts","sourceRoot":"","sources":["../../src/websocket-client/thermostat-status-updater.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,YAAY,EACZ,0BAA0B,EAE7B,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,UAAU,2BAA2B;IACjC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,sBAAsB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC1D;AAED,qBAAa,uBAAuB;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,2BAA2B;IAEvD,yBAAyB,CAAC,OAAO,EAAE,0BAA0B,EAAE,GAAG,IAAI;IA2BtE,+BAA+B,IAAI,IAAI;IAQ9C,OAAO,CAAC,0BAA0B;IA0BlC,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,sBAAsB;CAkBjC;AAED,wBAAgB,+BAA+B,CAC3C,KAAK,EAAE,oBAAoB,EAC3B,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAMT"}
1
+ {"version":3,"file":"thermostat-status-updater.d.ts","sourceRoot":"","sources":["../../src/websocket-client/thermostat-status-updater.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,YAAY,EACZ,0BAA0B,EAC7B,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD,UAAU,2BAA2B;IACjC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,sBAAsB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;CAC1D;AAED,qBAAa,uBAAuB;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,2BAA2B;IAEvD,yBAAyB,CAAC,OAAO,EAAE,0BAA0B,EAAE,GAAG,IAAI;IA2BtE,+BAA+B,IAAI,IAAI;IAQ9C,OAAO,CAAC,0BAA0B;IA0BlC,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,sBAAsB;CAkBjC;AAED,wBAAgB,+BAA+B,CAC3C,KAAK,EAAE,oBAAoB,EAC3B,kBAAkB,EAAE,MAAM,GAC3B,OAAO,CAMT"}
@@ -1 +1 @@
1
- {"version":3,"file":"thermostat-status-updater.js","sourceRoot":"","sources":["../../src/websocket-client/thermostat-status-updater.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thermostat-status-updater.js","sourceRoot":"","sources":["../../src/websocket-client/thermostat-status-updater.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "homebridge-plugin-klares4",
3
- "version": "2.0.1-beta2",
3
+ "version": "2.0.1",
4
4
  "description": "Plugin completo per sistemi Ksenia Lares4 - Zone, Luci, Tapparelle, Termostati, Sensori",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
7
7
  "build": "tsc",
8
- "check:max-lines": "node scripts/check-max-lines.js src 300",
8
+ "check:max-lines": "node scripts/check-max-lines.js src 350",
9
9
  "verify": "npm run check:max-lines && npx tsc --noEmit --noUnusedLocals --noUnusedParameters && npm test",
10
10
  "release:dry-run": "npm publish --tag rc --dry-run",
11
11
  "release:rc": "npm publish --tag rc",