@camstack/addon-provider-homematic 1.2.63 → 1.2.65

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/dist/addon.js CHANGED
@@ -13002,6 +13002,24 @@ var deviceProviderCapability = {
13002
13002
  })
13003
13003
  }
13004
13004
  };
13005
+ /**
13006
+ * Device Manager capability — hub-side singleton that unifies device persistence,
13007
+ * live registry access, and all management operations into a single tRPC surface.
13008
+ *
13009
+ * Replaces:
13010
+ * - `device-persistence` capability (persistence methods absorbed here)
13011
+ * - `device-management.router.ts` (deleted in Phase 2)
13012
+ * - `device-ops.router.ts` (compat layer — deleted; device-provider ops absorbed here)
13013
+ *
13014
+ * All device provider addons (rtsp, onvif, frigate, …) are hub-local: they may
13015
+ * fork into separate processes but never run on remote cluster agents. Therefore:
13016
+ * - No nodeId routing needed — this is a pure hub singleton.
13017
+ * - The hub's DeviceRegistry is the single source of truth for all live devices.
13018
+ * - No shadow registry or cross-node aggregation required.
13019
+ *
13020
+ * Forked workers register devices back to the hub via `ctx.devices`
13021
+ * (DeviceManagerApi → ctx.api.deviceManager.registerDevice), same as today.
13022
+ */
13005
13023
  /** One child-placement directive on a container's `childLayout`. Structurally
13006
13024
  * identical to `ChildLayoutEntry` in `device-management.ts` — the cap wire
13007
13025
  * shape for the same field. The child is identified by its re-sync-stable
@@ -18728,6 +18746,9 @@ var RetrainStatusSchema = _enum([
18728
18746
  *
18729
18747
  * `debug` does NOT pin; it is attention, not durability.
18730
18748
  *
18749
+ * `debugNote` is the operator's own words about WHAT should be checked on this
18750
+ * track, and it lives and dies with `debug` — see {@link MAX_TRACK_DEBUG_NOTE_LEN}.
18751
+ *
18731
18752
  * `favourited` IS a BOOLEAN pin (durability bit), not a retrain lifecycle.
18732
18753
  * A favourited track is skipped by retention the same way `staging` is, but
18733
18754
  * it does not enter `none|staging|trained` and has no staging budget.
@@ -18738,6 +18759,21 @@ var TrackFlagFields = {
18738
18759
  markForTrain: boolean().optional(),
18739
18760
  /** Operator marked this track for diagnostic attention. */
18740
18761
  debug: boolean().optional(),
18762
+ /**
18763
+ * What the operator wants CHECKED on this track, in their own words.
18764
+ *
18765
+ * The flag alone says "look at this" and nothing about what for; a debug set
18766
+ * reviewed hours later is a list of tracks with no question attached. Bound
18767
+ * to `debug` on the WRITE side — the body clears it when `debug` goes off,
18768
+ * and refuses it on a track whose debug is off — so a note can never outlive
18769
+ * the attention it belongs to.
18770
+ *
18771
+ * `''` is a real value ("marked, nothing to add"); the ABSENT key means
18772
+ * "leave whatever is stored alone", which is what lets a surface turn debug
18773
+ * on without a note (a cancelled prompt) and what lets it edit the note
18774
+ * without touching the flag.
18775
+ */
18776
+ debugNote: string().max(500).optional(),
18741
18777
  /** Operator favourited this track. Pins it against pruning. */
18742
18778
  favourited: boolean().optional()
18743
18779
  };
@@ -18764,6 +18800,12 @@ var TrackFlagsSchema = object({
18764
18800
  trackId: string(),
18765
18801
  markForTrain: boolean(),
18766
18802
  debug: boolean(),
18803
+ /** The note as it STANDS after the write — never absent here (a track with no
18804
+ * note reports `''`), for the same reason the booleans are required: a
18805
+ * surface that has just written must be able to render the note it now owns
18806
+ * without a re-fetch, and an absent key would read as "unchanged" on a
18807
+ * screen that has no previous value to keep. */
18808
+ debugNote: string(),
18767
18809
  favourited: boolean(),
18768
18810
  /** The lifecycle state the boolean was derived from. Required here (unlike on
18769
18811
  * a track row) because this shape is only ever produced by the write body,
package/dist/addon.mjs CHANGED
@@ -13003,6 +13003,24 @@ var deviceProviderCapability = {
13003
13003
  })
13004
13004
  }
13005
13005
  };
13006
+ /**
13007
+ * Device Manager capability — hub-side singleton that unifies device persistence,
13008
+ * live registry access, and all management operations into a single tRPC surface.
13009
+ *
13010
+ * Replaces:
13011
+ * - `device-persistence` capability (persistence methods absorbed here)
13012
+ * - `device-management.router.ts` (deleted in Phase 2)
13013
+ * - `device-ops.router.ts` (compat layer — deleted; device-provider ops absorbed here)
13014
+ *
13015
+ * All device provider addons (rtsp, onvif, frigate, …) are hub-local: they may
13016
+ * fork into separate processes but never run on remote cluster agents. Therefore:
13017
+ * - No nodeId routing needed — this is a pure hub singleton.
13018
+ * - The hub's DeviceRegistry is the single source of truth for all live devices.
13019
+ * - No shadow registry or cross-node aggregation required.
13020
+ *
13021
+ * Forked workers register devices back to the hub via `ctx.devices`
13022
+ * (DeviceManagerApi → ctx.api.deviceManager.registerDevice), same as today.
13023
+ */
13006
13024
  /** One child-placement directive on a container's `childLayout`. Structurally
13007
13025
  * identical to `ChildLayoutEntry` in `device-management.ts` — the cap wire
13008
13026
  * shape for the same field. The child is identified by its re-sync-stable
@@ -18729,6 +18747,9 @@ var RetrainStatusSchema = _enum([
18729
18747
  *
18730
18748
  * `debug` does NOT pin; it is attention, not durability.
18731
18749
  *
18750
+ * `debugNote` is the operator's own words about WHAT should be checked on this
18751
+ * track, and it lives and dies with `debug` — see {@link MAX_TRACK_DEBUG_NOTE_LEN}.
18752
+ *
18732
18753
  * `favourited` IS a BOOLEAN pin (durability bit), not a retrain lifecycle.
18733
18754
  * A favourited track is skipped by retention the same way `staging` is, but
18734
18755
  * it does not enter `none|staging|trained` and has no staging budget.
@@ -18739,6 +18760,21 @@ var TrackFlagFields = {
18739
18760
  markForTrain: boolean().optional(),
18740
18761
  /** Operator marked this track for diagnostic attention. */
18741
18762
  debug: boolean().optional(),
18763
+ /**
18764
+ * What the operator wants CHECKED on this track, in their own words.
18765
+ *
18766
+ * The flag alone says "look at this" and nothing about what for; a debug set
18767
+ * reviewed hours later is a list of tracks with no question attached. Bound
18768
+ * to `debug` on the WRITE side — the body clears it when `debug` goes off,
18769
+ * and refuses it on a track whose debug is off — so a note can never outlive
18770
+ * the attention it belongs to.
18771
+ *
18772
+ * `''` is a real value ("marked, nothing to add"); the ABSENT key means
18773
+ * "leave whatever is stored alone", which is what lets a surface turn debug
18774
+ * on without a note (a cancelled prompt) and what lets it edit the note
18775
+ * without touching the flag.
18776
+ */
18777
+ debugNote: string().max(500).optional(),
18742
18778
  /** Operator favourited this track. Pins it against pruning. */
18743
18779
  favourited: boolean().optional()
18744
18780
  };
@@ -18765,6 +18801,12 @@ var TrackFlagsSchema = object({
18765
18801
  trackId: string(),
18766
18802
  markForTrain: boolean(),
18767
18803
  debug: boolean(),
18804
+ /** The note as it STANDS after the write — never absent here (a track with no
18805
+ * note reports `''`), for the same reason the booleans are required: a
18806
+ * surface that has just written must be able to render the note it now owns
18807
+ * without a re-fetch, and an absent key would read as "unchanged" on a
18808
+ * screen that has no previous value to keep. */
18809
+ debugNote: string(),
18768
18810
  favourited: boolean(),
18769
18811
  /** The lifecycle state the boolean was derived from. Required here (unlike on
18770
18812
  * a track row) because this shape is only ever produced by the write body,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-homematic",
3
- "version": "1.2.63",
3
+ "version": "1.2.65",
4
4
  "description": "Homematic / HomematicIP (CCU3 / RaspberryMatic) device-provider addon for CamStack — wraps the nodehomematic library",
5
5
  "keywords": [
6
6
  "camstack",