@camstack/addon-export-google 0.1.27 → 0.1.29
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.
|
@@ -12903,6 +12903,24 @@ method(_void(), _void(), { kind: "mutation" }), method(_void(), _void(), { kind:
|
|
|
12903
12903
|
kind: "mutation",
|
|
12904
12904
|
auth: "admin"
|
|
12905
12905
|
});
|
|
12906
|
+
/**
|
|
12907
|
+
* Device Manager capability — hub-side singleton that unifies device persistence,
|
|
12908
|
+
* live registry access, and all management operations into a single tRPC surface.
|
|
12909
|
+
*
|
|
12910
|
+
* Replaces:
|
|
12911
|
+
* - `device-persistence` capability (persistence methods absorbed here)
|
|
12912
|
+
* - `device-management.router.ts` (deleted in Phase 2)
|
|
12913
|
+
* - `device-ops.router.ts` (compat layer — deleted; device-provider ops absorbed here)
|
|
12914
|
+
*
|
|
12915
|
+
* All device provider addons (rtsp, onvif, frigate, …) are hub-local: they may
|
|
12916
|
+
* fork into separate processes but never run on remote cluster agents. Therefore:
|
|
12917
|
+
* - No nodeId routing needed — this is a pure hub singleton.
|
|
12918
|
+
* - The hub's DeviceRegistry is the single source of truth for all live devices.
|
|
12919
|
+
* - No shadow registry or cross-node aggregation required.
|
|
12920
|
+
*
|
|
12921
|
+
* Forked workers register devices back to the hub via `ctx.devices`
|
|
12922
|
+
* (DeviceManagerApi → ctx.api.deviceManager.registerDevice), same as today.
|
|
12923
|
+
*/
|
|
12906
12924
|
/** One child-placement directive on a container's `childLayout`. Structurally
|
|
12907
12925
|
* identical to `ChildLayoutEntry` in `device-management.ts` — the cap wire
|
|
12908
12926
|
* shape for the same field. The child is identified by its re-sync-stable
|
|
@@ -13001,7 +13019,12 @@ var ConfigEntrySchema = object({
|
|
|
13001
13019
|
value: unknown(),
|
|
13002
13020
|
description: string().optional()
|
|
13003
13021
|
});
|
|
13004
|
-
|
|
13022
|
+
/**
|
|
13023
|
+
* Only `manual` since D356: the operator picks, nothing links itself. The
|
|
13024
|
+
* field survives on the wire because a viewer already OTA'd parses it —
|
|
13025
|
+
* drop it once no shipped client reads `mode`.
|
|
13026
|
+
*/
|
|
13027
|
+
var LinkedDevicesModeSchema = _enum(["manual"]);
|
|
13005
13028
|
/** One resolved linked device — the compact projection consumers need. */
|
|
13006
13029
|
var LinkedDeviceSchema = object({
|
|
13007
13030
|
deviceId: number(),
|
|
@@ -18567,6 +18590,9 @@ var RetrainStatusSchema = _enum([
|
|
|
18567
18590
|
*
|
|
18568
18591
|
* `debug` does NOT pin; it is attention, not durability.
|
|
18569
18592
|
*
|
|
18593
|
+
* `debugNote` is the operator's own words about WHAT should be checked on this
|
|
18594
|
+
* track, and it lives and dies with `debug` — see {@link MAX_TRACK_DEBUG_NOTE_LEN}.
|
|
18595
|
+
*
|
|
18570
18596
|
* `favourited` IS a BOOLEAN pin (durability bit), not a retrain lifecycle.
|
|
18571
18597
|
* A favourited track is skipped by retention the same way `staging` is, but
|
|
18572
18598
|
* it does not enter `none|staging|trained` and has no staging budget.
|
|
@@ -18577,6 +18603,21 @@ var TrackFlagFields = {
|
|
|
18577
18603
|
markForTrain: boolean().optional(),
|
|
18578
18604
|
/** Operator marked this track for diagnostic attention. */
|
|
18579
18605
|
debug: boolean().optional(),
|
|
18606
|
+
/**
|
|
18607
|
+
* What the operator wants CHECKED on this track, in their own words.
|
|
18608
|
+
*
|
|
18609
|
+
* The flag alone says "look at this" and nothing about what for; a debug set
|
|
18610
|
+
* reviewed hours later is a list of tracks with no question attached. Bound
|
|
18611
|
+
* to `debug` on the WRITE side — the body clears it when `debug` goes off,
|
|
18612
|
+
* and refuses it on a track whose debug is off — so a note can never outlive
|
|
18613
|
+
* the attention it belongs to.
|
|
18614
|
+
*
|
|
18615
|
+
* `''` is a real value ("marked, nothing to add"); the ABSENT key means
|
|
18616
|
+
* "leave whatever is stored alone", which is what lets a surface turn debug
|
|
18617
|
+
* on without a note (a cancelled prompt) and what lets it edit the note
|
|
18618
|
+
* without touching the flag.
|
|
18619
|
+
*/
|
|
18620
|
+
debugNote: string().max(500).optional(),
|
|
18580
18621
|
/** Operator favourited this track. Pins it against pruning. */
|
|
18581
18622
|
favourited: boolean().optional()
|
|
18582
18623
|
};
|
|
@@ -18603,6 +18644,12 @@ var TrackFlagsSchema = object({
|
|
|
18603
18644
|
trackId: string(),
|
|
18604
18645
|
markForTrain: boolean(),
|
|
18605
18646
|
debug: boolean(),
|
|
18647
|
+
/** The note as it STANDS after the write — never absent here (a track with no
|
|
18648
|
+
* note reports `''`), for the same reason the booleans are required: a
|
|
18649
|
+
* surface that has just written must be able to render the note it now owns
|
|
18650
|
+
* without a re-fetch, and an absent key would read as "unchanged" on a
|
|
18651
|
+
* screen that has no previous value to keep. */
|
|
18652
|
+
debugNote: string(),
|
|
18606
18653
|
favourited: boolean(),
|
|
18607
18654
|
/** The lifecycle state the boolean was derived from. Required here (unlike on
|
|
18608
18655
|
* a track row) because this shape is only ever produced by the write body,
|
|
@@ -12899,6 +12899,24 @@ method(_void(), _void(), { kind: "mutation" }), method(_void(), _void(), { kind:
|
|
|
12899
12899
|
kind: "mutation",
|
|
12900
12900
|
auth: "admin"
|
|
12901
12901
|
});
|
|
12902
|
+
/**
|
|
12903
|
+
* Device Manager capability — hub-side singleton that unifies device persistence,
|
|
12904
|
+
* live registry access, and all management operations into a single tRPC surface.
|
|
12905
|
+
*
|
|
12906
|
+
* Replaces:
|
|
12907
|
+
* - `device-persistence` capability (persistence methods absorbed here)
|
|
12908
|
+
* - `device-management.router.ts` (deleted in Phase 2)
|
|
12909
|
+
* - `device-ops.router.ts` (compat layer — deleted; device-provider ops absorbed here)
|
|
12910
|
+
*
|
|
12911
|
+
* All device provider addons (rtsp, onvif, frigate, …) are hub-local: they may
|
|
12912
|
+
* fork into separate processes but never run on remote cluster agents. Therefore:
|
|
12913
|
+
* - No nodeId routing needed — this is a pure hub singleton.
|
|
12914
|
+
* - The hub's DeviceRegistry is the single source of truth for all live devices.
|
|
12915
|
+
* - No shadow registry or cross-node aggregation required.
|
|
12916
|
+
*
|
|
12917
|
+
* Forked workers register devices back to the hub via `ctx.devices`
|
|
12918
|
+
* (DeviceManagerApi → ctx.api.deviceManager.registerDevice), same as today.
|
|
12919
|
+
*/
|
|
12902
12920
|
/** One child-placement directive on a container's `childLayout`. Structurally
|
|
12903
12921
|
* identical to `ChildLayoutEntry` in `device-management.ts` — the cap wire
|
|
12904
12922
|
* shape for the same field. The child is identified by its re-sync-stable
|
|
@@ -12997,7 +13015,12 @@ var ConfigEntrySchema = object({
|
|
|
12997
13015
|
value: unknown(),
|
|
12998
13016
|
description: string().optional()
|
|
12999
13017
|
});
|
|
13000
|
-
|
|
13018
|
+
/**
|
|
13019
|
+
* Only `manual` since D356: the operator picks, nothing links itself. The
|
|
13020
|
+
* field survives on the wire because a viewer already OTA'd parses it —
|
|
13021
|
+
* drop it once no shipped client reads `mode`.
|
|
13022
|
+
*/
|
|
13023
|
+
var LinkedDevicesModeSchema = _enum(["manual"]);
|
|
13001
13024
|
/** One resolved linked device — the compact projection consumers need. */
|
|
13002
13025
|
var LinkedDeviceSchema = object({
|
|
13003
13026
|
deviceId: number(),
|
|
@@ -18563,6 +18586,9 @@ var RetrainStatusSchema = _enum([
|
|
|
18563
18586
|
*
|
|
18564
18587
|
* `debug` does NOT pin; it is attention, not durability.
|
|
18565
18588
|
*
|
|
18589
|
+
* `debugNote` is the operator's own words about WHAT should be checked on this
|
|
18590
|
+
* track, and it lives and dies with `debug` — see {@link MAX_TRACK_DEBUG_NOTE_LEN}.
|
|
18591
|
+
*
|
|
18566
18592
|
* `favourited` IS a BOOLEAN pin (durability bit), not a retrain lifecycle.
|
|
18567
18593
|
* A favourited track is skipped by retention the same way `staging` is, but
|
|
18568
18594
|
* it does not enter `none|staging|trained` and has no staging budget.
|
|
@@ -18573,6 +18599,21 @@ var TrackFlagFields = {
|
|
|
18573
18599
|
markForTrain: boolean().optional(),
|
|
18574
18600
|
/** Operator marked this track for diagnostic attention. */
|
|
18575
18601
|
debug: boolean().optional(),
|
|
18602
|
+
/**
|
|
18603
|
+
* What the operator wants CHECKED on this track, in their own words.
|
|
18604
|
+
*
|
|
18605
|
+
* The flag alone says "look at this" and nothing about what for; a debug set
|
|
18606
|
+
* reviewed hours later is a list of tracks with no question attached. Bound
|
|
18607
|
+
* to `debug` on the WRITE side — the body clears it when `debug` goes off,
|
|
18608
|
+
* and refuses it on a track whose debug is off — so a note can never outlive
|
|
18609
|
+
* the attention it belongs to.
|
|
18610
|
+
*
|
|
18611
|
+
* `''` is a real value ("marked, nothing to add"); the ABSENT key means
|
|
18612
|
+
* "leave whatever is stored alone", which is what lets a surface turn debug
|
|
18613
|
+
* on without a note (a cancelled prompt) and what lets it edit the note
|
|
18614
|
+
* without touching the flag.
|
|
18615
|
+
*/
|
|
18616
|
+
debugNote: string().max(500).optional(),
|
|
18576
18617
|
/** Operator favourited this track. Pins it against pruning. */
|
|
18577
18618
|
favourited: boolean().optional()
|
|
18578
18619
|
};
|
|
@@ -18599,6 +18640,12 @@ var TrackFlagsSchema = object({
|
|
|
18599
18640
|
trackId: string(),
|
|
18600
18641
|
markForTrain: boolean(),
|
|
18601
18642
|
debug: boolean(),
|
|
18643
|
+
/** The note as it STANDS after the write — never absent here (a track with no
|
|
18644
|
+
* note reports `''`), for the same reason the booleans are required: a
|
|
18645
|
+
* surface that has just written must be able to render the note it now owns
|
|
18646
|
+
* without a re-fetch, and an absent key would read as "unchanged" on a
|
|
18647
|
+
* screen that has no previous value to keep. */
|
|
18648
|
+
debugNote: string(),
|
|
18602
18649
|
favourited: boolean(),
|
|
18603
18650
|
/** The lifecycle state the boolean was derived from. Required here (unlike on
|
|
18604
18651
|
* 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-export-google",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.29",
|
|
4
4
|
"description": "Google Home export — hub-side smart-home fulfillment (SYNC / QUERY / EXECUTE / DISCONNECT) for the non-camera fleet, served over the hub's own OAuth account link. No Google credential is stored, sent or required.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|