@camstack/types 1.2.123 → 1.2.124

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
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_event_category = require("./event-category-BaEgqJNv.js");
3
- const require_sleep = require("./sleep-DUxF5DdC.js");
3
+ const require_sleep = require("./sleep-CJrvRDlD.js");
4
4
  const require_err_msg = require("./err-msg-COpsHMw2.js");
5
5
  //#region src/generated/cap-input-defaults.ts
6
6
  /**
package/dist/addon.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as EventCategory } from "./event-category-BZL-fdNj.mjs";
2
- import { B as ReadinessRegistry, E as adminUiCapability, L as nodePin, R as readNodePin, St as emitReadiness, T as DeviceType, V as ReadinessTimeoutError, W as scopeKey, _t as DisposerChain, a as asJsonObject, b as deviceOpsCapability, d as BOOT_RECOVERY_BACKOFF_MS, f as DEVICE_SCOPED_CAPS, gt as DATAPLANE_SECRET_HEADER, h as createEventBusSliceSource, j as expandCapMethods, m as createDeviceProxy, p as isDeviceScopedCap, s as asString, t as sleep, u as parseJsonUnknown, vt as BaseAddon, x as viewerUiCapability, yt as normalizeAddonInitResult } from "./sleep-C9C8EoK8.mjs";
2
+ import { B as ReadinessRegistry, E as adminUiCapability, L as nodePin, R as readNodePin, St as emitReadiness, T as DeviceType, V as ReadinessTimeoutError, W as scopeKey, _t as DisposerChain, a as asJsonObject, b as deviceOpsCapability, d as BOOT_RECOVERY_BACKOFF_MS, f as DEVICE_SCOPED_CAPS, gt as DATAPLANE_SECRET_HEADER, h as createEventBusSliceSource, j as expandCapMethods, m as createDeviceProxy, p as isDeviceScopedCap, s as asString, t as sleep, u as parseJsonUnknown, vt as BaseAddon, x as viewerUiCapability, yt as normalizeAddonInitResult } from "./sleep-L5-bG_a_.mjs";
3
3
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
4
4
  //#region src/generated/cap-input-defaults.ts
5
5
  /**
@@ -2394,6 +2394,11 @@ export declare const pipelineAnalyticsCapability: {
2394
2394
  readonly startStorageMigrationMove: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
2395
2395
  toLocationId: z.ZodString;
2396
2396
  throttleMbps: z.ZodOptional<z.ZodNumber>;
2397
+ mode: z.ZodOptional<z.ZodEnum<{
2398
+ move: "move";
2399
+ seal: "seal";
2400
+ gallery: "gallery";
2401
+ }>>;
2397
2402
  leaseId: z.ZodString;
2398
2403
  }, z.core.$strip>, z.ZodObject<{
2399
2404
  jobId: z.ZodString;
@@ -2436,9 +2441,29 @@ export declare const pipelineAnalyticsCapability: {
2436
2441
  readonly relocateMedia: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
2437
2442
  toLocationId: z.ZodString;
2438
2443
  throttleMbps: z.ZodOptional<z.ZodNumber>;
2444
+ mode: z.ZodOptional<z.ZodEnum<{
2445
+ move: "move";
2446
+ seal: "seal";
2447
+ gallery: "gallery";
2448
+ }>>;
2439
2449
  }, z.core.$strip>, z.ZodObject<{
2440
2450
  jobId: z.ZodString;
2441
2451
  }, z.core.$strip>, "mutation">;
2452
+ /**
2453
+ * How many media / retrain rows still carry NO `locationId`.
2454
+ *
2455
+ * A NULL row means "wherever `eventMedia` points NOW", so the instant a
2456
+ * repoint moves that pointer every such row reads from the new disk while
2457
+ * its bytes are on the old one — the archive goes dark until a drain
2458
+ * happens to stamp it. This count is what the migration planner's
2459
+ * non-blocking gate reads; `relocateMedia({ mode: 'seal' })` is what drives
2460
+ * it to zero.
2461
+ */
2462
+ readonly countUnstampedEventMedia: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
2463
+ media: z.ZodNumber;
2464
+ retrainFrames: z.ZodNumber;
2465
+ total: z.ZodNumber;
2466
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
2442
2467
  /** Every relocate job this addon knows about, newest first (in RAM: the
2443
2468
  * move is resumable, so a lost list costs nothing but the display). */
2444
2469
  readonly listRelocateMediaJobs: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
@@ -15,31 +15,68 @@ export declare const storageMigrationCapability: {
15
15
  recordings: z.ZodOptional<z.ZodString>;
16
16
  recordingsLow: z.ZodOptional<z.ZodString>;
17
17
  eventMedia: z.ZodOptional<z.ZodString>;
18
+ backups: z.ZodOptional<z.ZodString>;
19
+ galleryMedia: z.ZodOptional<z.ZodString>;
18
20
  }, z.core.$strip>;
19
21
  throttleMbps: z.ZodOptional<z.ZodNumber>;
22
+ mode: z.ZodOptional<z.ZodEnum<{
23
+ blocking: "blocking";
24
+ nonBlocking: "nonBlocking";
25
+ }>>;
20
26
  }, z.core.$strip>, z.ZodObject<{
21
27
  destinations: z.ZodObject<{
22
28
  recordings: z.ZodOptional<z.ZodString>;
23
29
  recordingsLow: z.ZodOptional<z.ZodString>;
24
30
  eventMedia: z.ZodOptional<z.ZodString>;
31
+ backups: z.ZodOptional<z.ZodString>;
32
+ galleryMedia: z.ZodOptional<z.ZodString>;
25
33
  }, z.core.$strip>;
34
+ mode: z.ZodEnum<{
35
+ blocking: "blocking";
36
+ nonBlocking: "nonBlocking";
37
+ }>;
26
38
  moves: z.ZodArray<z.ZodObject<{
27
39
  storageClass: z.ZodEnum<{
28
40
  recordings: "recordings";
29
41
  recordingsLow: "recordingsLow";
30
42
  eventMedia: "eventMedia";
43
+ backups: "backups";
44
+ galleryMedia: "galleryMedia";
31
45
  }>;
32
46
  fromLocationId: z.ZodString;
33
47
  toLocationId: z.ZodString;
34
48
  }, z.core.$strip>>;
49
+ findings: z.ZodArray<z.ZodObject<{
50
+ code: z.ZodEnum<{
51
+ sharesDeviceWithSource: "sharesDeviceWithSource";
52
+ deviceIdentityUnknown: "deviceIdentityUnknown";
53
+ unstampedEventMediaRows: "unstampedEventMediaRows";
54
+ blockingOnly: "blockingOnly";
55
+ noMover: "noMover";
56
+ }>;
57
+ storageClass: z.ZodEnum<{
58
+ recordings: "recordings";
59
+ recordingsLow: "recordingsLow";
60
+ eventMedia: "eventMedia";
61
+ backups: "backups";
62
+ galleryMedia: "galleryMedia";
63
+ }>;
64
+ message: z.ZodString;
65
+ }, z.core.$strip>>;
35
66
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
36
67
  readonly start: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
37
68
  destinations: z.ZodObject<{
38
69
  recordings: z.ZodOptional<z.ZodString>;
39
70
  recordingsLow: z.ZodOptional<z.ZodString>;
40
71
  eventMedia: z.ZodOptional<z.ZodString>;
72
+ backups: z.ZodOptional<z.ZodString>;
73
+ galleryMedia: z.ZodOptional<z.ZodString>;
41
74
  }, z.core.$strip>;
42
75
  throttleMbps: z.ZodOptional<z.ZodNumber>;
76
+ mode: z.ZodOptional<z.ZodEnum<{
77
+ blocking: "blocking";
78
+ nonBlocking: "nonBlocking";
79
+ }>>;
43
80
  }, z.core.$strip>, z.ZodObject<{
44
81
  jobId: z.ZodString;
45
82
  }, z.core.$strip>, "mutation">;
@@ -54,15 +91,23 @@ export declare const storageMigrationCapability: {
54
91
  done: "done";
55
92
  cancelled: "cancelled";
56
93
  planning: "planning";
94
+ sealing: "sealing";
57
95
  pausing: "pausing";
96
+ draining: "draining";
58
97
  repointing: "repointing";
59
98
  refreshing: "refreshing";
60
99
  resuming: "resuming";
61
100
  }>;
101
+ mode: z.ZodEnum<{
102
+ blocking: "blocking";
103
+ nonBlocking: "nonBlocking";
104
+ }>;
62
105
  destinations: z.ZodObject<{
63
106
  recordings: z.ZodOptional<z.ZodString>;
64
107
  recordingsLow: z.ZodOptional<z.ZodString>;
65
108
  eventMedia: z.ZodOptional<z.ZodString>;
109
+ backups: z.ZodOptional<z.ZodString>;
110
+ galleryMedia: z.ZodOptional<z.ZodString>;
66
111
  }, z.core.$strip>;
67
112
  throttleMbps: z.ZodNumber;
68
113
  moves: z.ZodArray<z.ZodObject<{
@@ -70,6 +115,8 @@ export declare const storageMigrationCapability: {
70
115
  recordings: "recordings";
71
116
  recordingsLow: "recordingsLow";
72
117
  eventMedia: "eventMedia";
118
+ backups: "backups";
119
+ galleryMedia: "galleryMedia";
73
120
  }>;
74
121
  fromLocationId: z.ZodString;
75
122
  toLocationId: z.ZodString;
@@ -169,8 +169,23 @@ export declare const storageCapability: {
169
169
  createdAt: z.ZodNumber;
170
170
  updatedAt: z.ZodNumber;
171
171
  }, z.core.$strip>, "mutation">;
172
+ /**
173
+ * Remove a location record. REFUSES a location that still holds data —
174
+ * deleting a drained location whose durable rows still name it is how this
175
+ * hub acquired 2 131 ghost `recordings:high` segments, and playback does
176
+ * not stat, so the operator sees a silent black window rather than an
177
+ * error.
178
+ *
179
+ * `force` exists because the occupancy check is BEST-EFFORT and refuses on
180
+ * "unknown" as well as on "occupied" (a read that fails must not authorise
181
+ * a destruction — D49). A location on a removed disk, on another node, or
182
+ * behind a remote provider answers "unknown" forever, and a refusal an
183
+ * operator cannot override is its own failure mode. `force: true` is
184
+ * logged, loudly, with what the check saw.
185
+ */
172
186
  readonly deleteLocation: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
173
187
  id: z.ZodString;
188
+ force: z.ZodOptional<z.ZodBoolean>;
174
189
  }, z.core.$strip>, z.ZodVoid, "mutation">;
175
190
  readonly testLocation: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
176
191
  id: z.ZodString;
@@ -5121,6 +5121,13 @@ export type AppRouter = TrpcCoreRouter<{
5121
5121
  output: z.infer<typeof pipelineAnalyticsCapability.methods.relocateMedia.output>;
5122
5122
  meta: object;
5123
5123
  }>;
5124
+ countUnstampedEventMedia: TRPCQueryProcedure<{
5125
+ input: {
5126
+ [x: string]: unknown;
5127
+ } & z.input<typeof pipelineAnalyticsCapability.methods.countUnstampedEventMedia.input>;
5128
+ output: z.infer<typeof pipelineAnalyticsCapability.methods.countUnstampedEventMedia.output>;
5129
+ meta: object;
5130
+ }>;
5124
5131
  listRelocateMediaJobs: TRPCQueryProcedure<{
5125
5132
  input: {
5126
5133
  [x: string]: unknown;
@@ -6,7 +6,7 @@
6
6
  * scope+access check inside `protectedProcedure` (see
7
7
  * `server/backend/src/api/trpc/trpc.middleware.ts`).
8
8
  *
9
- * Coverage: 978 method paths across 126 capabilities.
9
+ * Coverage: 979 method paths across 126 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_event_category = require("./event-category-BaEgqJNv.js");
3
- const require_sleep = require("./sleep-DUxF5DdC.js");
3
+ const require_sleep = require("./sleep-CJrvRDlD.js");
4
4
  const require_canonical_hash = require("./canonical-hash-DNV8S5ET.js");
5
5
  const require_enums = require("./enums.js");
6
6
  const require_err_msg = require("./err-msg-COpsHMw2.js");
@@ -2225,18 +2225,61 @@ var RelocateFootageInputSchema = zod.z.object({
2225
2225
  * `RecordingConfig.enabled` or camera wrapper bindings. */
2226
2226
  var StorageMigrationLeaseInputSchema = zod.z.object({ leaseId: zod.z.string().min(1) });
2227
2227
  var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: zod.z.string().min(1) });
2228
+ /**
2229
+ * What a `relocateMedia` pass DOES. One engine, three passes — never a second
2230
+ * mover (the engine already walks both collections with a timestamp cursor and
2231
+ * already has a stamp-without-copy path).
2232
+ *
2233
+ * - `move` — the default and the historical behaviour: event-media and
2234
+ * retrain blobs move to `toLocationId` and their rows are
2235
+ * stamped. The enrolled gallery is skipped (D197).
2236
+ * - `seal` — ROWS ONLY, no bytes. Every row whose `locationId` is NULL is
2237
+ * stamped with `toLocationId`. `toLocationId` here is the id the
2238
+ * bytes ALREADY sit on — today's `eventMedia` default — because
2239
+ * a NULL row means "wherever `eventMedia` points *now*", and the
2240
+ * instant a repoint moves that pointer the row reads from the
2241
+ * new disk while its bytes are on the old one.
2242
+ * - `gallery` — the inverse selection of `move`: ONLY the retention-exempt
2243
+ * (enrolled-gallery) rows, which `move` deliberately skips.
2244
+ * `galleryMedia` is `cardinality: 'single'`, so this pass can
2245
+ * never run beside a live second location: it is stop-the-world
2246
+ * by construction, which is acceptable only because the gallery
2247
+ * is a few KB per enrolled sample.
2248
+ */
2249
+ var MediaRelocateModeSchema = zod.z.enum([
2250
+ "move",
2251
+ "seal",
2252
+ "gallery"
2253
+ ]);
2228
2254
  var RelocateMediaInputSchema = zod.z.object({
2229
2255
  toLocationId: zod.z.string(),
2230
- throttleMbps: zod.z.number().min(1).max(1e3).optional()
2256
+ throttleMbps: zod.z.number().min(1).max(1e3).optional(),
2257
+ /** Omitted = `move`, the pre-existing behaviour. */
2258
+ mode: MediaRelocateModeSchema.optional()
2259
+ });
2260
+ /** How many rows still carry NO `locationId` — the population a repoint would
2261
+ * silently re-aim at a disk that does not hold their bytes. Zero is the only
2262
+ * value that permits a non-blocking `eventMedia` cutover. */
2263
+ var UnstampedEventMediaCountSchema = zod.z.object({
2264
+ media: zod.z.number().int().nonnegative(),
2265
+ retrainFrames: zod.z.number().int().nonnegative(),
2266
+ total: zod.z.number().int().nonnegative()
2231
2267
  });
2232
2268
  var StorageMigrationMediaMoveInputSchema = RelocateMediaInputSchema.extend({ leaseId: zod.z.string().min(1) });
2233
- /** The independently selectable logical storage classes. `recordings`
2234
- * encompasses the high and mid segment profiles; `recordingsLow` is low
2235
- * segments; `eventMedia` is post-analysis blobs. */
2269
+ /** The independently selectable logical storage classes — every class
2270
+ * `storage.listLocationDeclarations` reports, so an operator never meets a
2271
+ * Zod enum error where they should meet an explanation.
2272
+ *
2273
+ * `recordings` encompasses the high and mid segment profiles; `recordingsLow`
2274
+ * is low segments; `eventMedia` is post-analysis blobs; `galleryMedia` is the
2275
+ * enrolled gallery; `backups` is the system backup archive. The last two have
2276
+ * their own rules — see {@link StorageMigrationFindingCodeSchema}. */
2236
2277
  var StorageMigrationClassSchema = zod.z.enum([
2237
2278
  "recordings",
2238
2279
  "recordingsLow",
2239
- "eventMedia"
2280
+ "eventMedia",
2281
+ "backups",
2282
+ "galleryMedia"
2240
2283
  ]);
2241
2284
  /** A destination is always an existing, fully-qualified location id. The
2242
2285
  * migration API intentionally never changes a source location's `basePath`:
@@ -2244,20 +2287,56 @@ var StorageMigrationClassSchema = zod.z.enum([
2244
2287
  var StorageMigrationDestinationsSchema = zod.z.object({
2245
2288
  recordings: zod.z.string().min(1).optional(),
2246
2289
  recordingsLow: zod.z.string().min(1).optional(),
2247
- eventMedia: zod.z.string().min(1).optional()
2290
+ eventMedia: zod.z.string().min(1).optional(),
2291
+ backups: zod.z.string().min(1).optional(),
2292
+ galleryMedia: zod.z.string().min(1).optional()
2248
2293
  }).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
2294
+ /**
2295
+ * How a migration sequences the cutover against the byte move.
2296
+ *
2297
+ * - `blocking` — the historical order: pause, move every byte, repoint,
2298
+ * resume. Recording is stopped for the whole move. Right
2299
+ * for a small or a cold class, and the only legal mode for
2300
+ * a `cardinality: 'single'` class.
2301
+ * - `nonBlocking` — repoint FIRST, drain behind: seal, pause, repoint,
2302
+ * refresh, resume, then move the past with everything
2303
+ * running. The pause is three bounded instants (a detach +
2304
+ * attach round, a write-gate drain, a lease) instead of one
2305
+ * bounded by bytes. 1.09 TB at 7–14 MB/s is thirty hours of
2306
+ * stopped recording under `blocking`; the same move is
2307
+ * seconds of stopped recording under `nonBlocking`.
2308
+ *
2309
+ * The mode is on the JOB, not only on the input, because `status` is where an
2310
+ * operator finds out which one is running.
2311
+ */
2312
+ var StorageMigrationModeSchema = zod.z.enum(["blocking", "nonBlocking"]);
2249
2313
  /** Shared input for planning and starting an orchestrated storage migration. */
2250
2314
  var StorageMigrationInputSchema = zod.z.object({
2251
2315
  destinations: StorageMigrationDestinationsSchema,
2252
- throttleMbps: zod.z.number().min(1).max(1e3).optional()
2316
+ throttleMbps: zod.z.number().min(1).max(1e3).optional(),
2317
+ /** Omitted = `blocking`, which stays the default. */
2318
+ mode: StorageMigrationModeSchema.optional()
2253
2319
  });
2254
- /** The durable coordinator state machine. The only phase that changes default
2255
- * locations is `repointing`, after every selected mover has completed and been
2256
- * verified. */
2320
+ /**
2321
+ * The durable coordinator state machine.
2322
+ *
2323
+ * `blocking`:
2324
+ * planning → pausing → moving → verifying → repointing → refreshing → resuming → done
2325
+ *
2326
+ * `nonBlocking`:
2327
+ * planning → sealing → pausing → repointing → refreshing → resuming → draining → verifying → done
2328
+ *
2329
+ * Same phases, different order plus two new ones — not a second mover.
2330
+ * `sealing` closes the `eventMedia` NULL-row hole BEFORE anything is paused;
2331
+ * `draining` runs the same movers UNLEASED, after every writer is back up.
2332
+ * `repointing` is still the only phase that changes a default location.
2333
+ */
2257
2334
  var StorageMigrationPhaseSchema = zod.z.enum([
2258
2335
  "planning",
2336
+ "sealing",
2259
2337
  "pausing",
2260
2338
  "moving",
2339
+ "draining",
2261
2340
  "verifying",
2262
2341
  "repointing",
2263
2342
  "refreshing",
@@ -2282,6 +2361,9 @@ var StorageMigrationMoveSchema = zod.z.object({
2282
2361
  var StorageMigrationJobSchema = zod.z.object({
2283
2362
  jobId: zod.z.string(),
2284
2363
  phase: StorageMigrationPhaseSchema,
2364
+ /** Which order this job is running. `status` is the only place an operator
2365
+ * can tell a seconds-long cutover from a thirty-hour one. */
2366
+ mode: StorageMigrationModeSchema,
2285
2367
  destinations: StorageMigrationDestinationsSchema,
2286
2368
  throttleMbps: zod.z.number(),
2287
2369
  moves: zod.z.array(StorageMigrationMoveSchema),
@@ -2294,13 +2376,54 @@ var StorageMigrationJobSchema = zod.z.object({
2294
2376
  finishedAt: zod.z.number().nullable(),
2295
2377
  error: zod.z.string().nullable()
2296
2378
  });
2379
+ /**
2380
+ * What the planner NOTICED but did not refuse.
2381
+ *
2382
+ * A refusal throws — the operator cannot miss it. A finding is the other half:
2383
+ * something true about this plan that changes what the operator should expect,
2384
+ * surfaced where they read it rather than in a document they will not open.
2385
+ *
2386
+ * - `sharesDeviceWithSource` — the destination realpath's to the same place as
2387
+ * the source. The move will be a row re-stamp, not a byte move, and it buys
2388
+ * no redundancy. NOTE: this is PATH identity, not `st_dev` — two distinct
2389
+ * directories on one filesystem are NOT detected. See
2390
+ * `deviceIdentityUnknown`.
2391
+ * - `deviceIdentityUnknown` — a location carries a `nodeId` other than this
2392
+ * one (or has no `basePath`), so its realpath cannot be taken here and the
2393
+ * same-device question was not answered at all. Stated rather than assumed
2394
+ * clear: a check that silently never fires is worse than no check.
2395
+ * - `unstampedEventMediaRows` — how many `eventMedia`/retrain rows still carry
2396
+ * no `locationId`. Non-zero refuses a `nonBlocking` cutover.
2397
+ * - `blockingOnly` — this class is `cardinality: 'single'`, so it can never
2398
+ * span two locations and can only ever be moved stop-the-world.
2399
+ * - `noMover` — the class is selectable and planned, but no addon owns a mover
2400
+ * for it. The migration cannot move its bytes.
2401
+ */
2402
+ var StorageMigrationFindingCodeSchema = zod.z.enum([
2403
+ "sharesDeviceWithSource",
2404
+ "deviceIdentityUnknown",
2405
+ "unstampedEventMediaRows",
2406
+ "blockingOnly",
2407
+ "noMover"
2408
+ ]);
2409
+ var StorageMigrationFindingSchema = zod.z.object({
2410
+ code: StorageMigrationFindingCodeSchema,
2411
+ storageClass: StorageMigrationClassSchema,
2412
+ /** Human-readable, already carrying the ids and counts. */
2413
+ message: zod.z.string()
2414
+ });
2297
2415
  var StorageMigrationPlanSchema = zod.z.object({
2298
2416
  destinations: StorageMigrationDestinationsSchema,
2417
+ /** The mode this plan was built for. A plan is only valid for its mode: the
2418
+ * `eventMedia` seal gate and the single-cardinality refusal both depend on
2419
+ * it. */
2420
+ mode: StorageMigrationModeSchema,
2299
2421
  moves: zod.z.array(zod.z.object({
2300
2422
  storageClass: StorageMigrationClassSchema,
2301
2423
  fromLocationId: zod.z.string(),
2302
2424
  toLocationId: zod.z.string()
2303
- }))
2425
+ })),
2426
+ findings: zod.z.array(StorageMigrationFindingSchema)
2304
2427
  });
2305
2428
  //#endregion
2306
2429
  //#region src/interfaces/server-analysis.ts
@@ -18630,6 +18753,17 @@ var pipelineAnalyticsCapability = {
18630
18753
  kind: "mutation",
18631
18754
  auth: "admin"
18632
18755
  }),
18756
+ /**
18757
+ * How many media / retrain rows still carry NO `locationId`.
18758
+ *
18759
+ * A NULL row means "wherever `eventMedia` points NOW", so the instant a
18760
+ * repoint moves that pointer every such row reads from the new disk while
18761
+ * its bytes are on the old one — the archive goes dark until a drain
18762
+ * happens to stamp it. This count is what the migration planner's
18763
+ * non-blocking gate reads; `relocateMedia({ mode: 'seal' })` is what drives
18764
+ * it to zero.
18765
+ */
18766
+ countUnstampedEventMedia: require_sleep.method(zod.z.object({}), UnstampedEventMediaCountSchema, { auth: "admin" }),
18633
18767
  /** Every relocate job this addon knows about, newest first (in RAM: the
18634
18768
  * move is resumable, so a lost list costs nothing but the display). */
18635
18769
  listRelocateMediaJobs: require_sleep.method(zod.z.object({}), zod.z.array(RelocateJobSchema).readonly(), {
@@ -21702,7 +21836,24 @@ var storageCapability = {
21702
21836
  kind: "mutation",
21703
21837
  auth: "admin"
21704
21838
  }),
21705
- deleteLocation: require_sleep.method(zod.z.object({ id: zod.z.string() }), zod.z.void(), {
21839
+ /**
21840
+ * Remove a location record. REFUSES a location that still holds data —
21841
+ * deleting a drained location whose durable rows still name it is how this
21842
+ * hub acquired 2 131 ghost `recordings:high` segments, and playback does
21843
+ * not stat, so the operator sees a silent black window rather than an
21844
+ * error.
21845
+ *
21846
+ * `force` exists because the occupancy check is BEST-EFFORT and refuses on
21847
+ * "unknown" as well as on "occupied" (a read that fails must not authorise
21848
+ * a destruction — D49). A location on a removed disk, on another node, or
21849
+ * behind a remote provider answers "unknown" forever, and a refusal an
21850
+ * operator cannot override is its own failure mode. `force: true` is
21851
+ * logged, loudly, with what the check saw.
21852
+ */
21853
+ deleteLocation: require_sleep.method(zod.z.object({
21854
+ id: zod.z.string(),
21855
+ force: zod.z.boolean().optional()
21856
+ }), zod.z.void(), {
21706
21857
  kind: "mutation",
21707
21858
  auth: "admin"
21708
21859
  }),
@@ -40739,6 +40890,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
40739
40890
  addonId: null,
40740
40891
  access: "create"
40741
40892
  },
40893
+ "pipelineAnalytics.countUnstampedEventMedia": {
40894
+ capName: "pipeline-analytics",
40895
+ capScope: "device",
40896
+ addonId: null,
40897
+ access: "view"
40898
+ },
40742
40899
  "pipelineAnalytics.deleteDeviceEvents": {
40743
40900
  capName: "pipeline-analytics",
40744
40901
  capScope: "device",
@@ -51104,6 +51261,7 @@ exports.MediaFileSchema = MediaFileSchema;
51104
51261
  exports.MediaPlayerRepeatSchema = MediaPlayerRepeatSchema;
51105
51262
  exports.MediaPlayerStateSchema = MediaPlayerStateSchema;
51106
51263
  exports.MediaPlayerStatusSchema = MediaPlayerStatusSchema;
51264
+ exports.MediaRelocateModeSchema = MediaRelocateModeSchema;
51107
51265
  exports.MeshPeerSchema = MeshPeerSchema;
51108
51266
  exports.MeshStatusSchema = MeshStatusSchema;
51109
51267
  exports.MethodAccessSchema = MethodAccessSchema;
@@ -51481,11 +51639,14 @@ exports.StorageLocationSchema = StorageLocationSchema;
51481
51639
  exports.StorageLocationTypeSchema = StorageLocationTypeSchema;
51482
51640
  exports.StorageMigrationClassSchema = StorageMigrationClassSchema;
51483
51641
  exports.StorageMigrationDestinationsSchema = StorageMigrationDestinationsSchema;
51642
+ exports.StorageMigrationFindingCodeSchema = StorageMigrationFindingCodeSchema;
51643
+ exports.StorageMigrationFindingSchema = StorageMigrationFindingSchema;
51484
51644
  exports.StorageMigrationFootageMoveInputSchema = StorageMigrationFootageMoveInputSchema;
51485
51645
  exports.StorageMigrationInputSchema = StorageMigrationInputSchema;
51486
51646
  exports.StorageMigrationJobSchema = StorageMigrationJobSchema;
51487
51647
  exports.StorageMigrationLeaseInputSchema = StorageMigrationLeaseInputSchema;
51488
51648
  exports.StorageMigrationMediaMoveInputSchema = StorageMigrationMediaMoveInputSchema;
51649
+ exports.StorageMigrationModeSchema = StorageMigrationModeSchema;
51489
51650
  exports.StorageMigrationMoveSchema = StorageMigrationMoveSchema;
51490
51651
  exports.StorageMigrationParticipantSchema = StorageMigrationParticipantSchema;
51491
51652
  exports.StorageMigrationPhaseSchema = StorageMigrationPhaseSchema;
@@ -51561,6 +51722,7 @@ exports.UNATTRIBUTED_BUCKET_KEY = UNATTRIBUTED_BUCKET_KEY;
51561
51722
  exports.UNIT_TABLE = UNIT_TABLE;
51562
51723
  exports.UnifiedBrokerInfoSchema = BrokerInfoSchema$1;
51563
51724
  exports.UnitConversionError = UnitConversionError;
51725
+ exports.UnstampedEventMediaCountSchema = UnstampedEventMediaCountSchema;
51564
51726
  exports.UpdateIntegrationInputSchema = UpdateIntegrationInputSchema;
51565
51727
  exports.UpdateStatusSchema = UpdateStatusSchema;
51566
51728
  exports.UpdateUserInputSchema = UpdateUserInputSchema;
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as EventCategory } from "./event-category-BZL-fdNj.mjs";
2
- import { $ as DecodedFrameSchema, A as event, B as ReadinessRegistry, C as DeviceFeature, Ct as isEvent, D as DEFAULT_RUNTIME_STATE_DURABILITY, Dt as collectHydratedFieldValues, E as adminUiCapability, Et as collectHydratedFieldEntries, F as systemMethod, G as BrokerStatsSchema, H as emitDownForOwnedCaps, I as CAP_NODE_PIN_CONTEXT_KEY, J as CamProfileSchema, K as BrokerStatusSchema, L as nodePin, M as isDeviceConfigCap, N as method, O as DEVICE_SETTINGS_CONTRIBUTION_METHODS, Ot as hydrateSchema, P as resolveCapMount, Q as DecodedAudioChunkSchema, R as readNodePin, S as ChargingStatus, St as emitReadiness, T as DeviceType, Tt as WELL_KNOWN_TAB_MAP, U as readinessKey, V as ReadinessTimeoutError, W as scopeKey, X as CamStreamResolutionSchema, Y as CamStreamKindSchema, Z as CameraStreamSchema, _ as createMirrorSource, _t as DisposerChain, a as asJsonObject, at as ProfileSlotStatusSchema, b as deviceOpsCapability, bt as createDurableState, c as parseJsonArray, ct as SubscribeAudioChunksInputSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as SubscribeFramesResultSchema, et as EncodedPacketSchema, f as DEVICE_SCOPED_CAPS, ft as makeProfileBrokerId, g as createLazyTrpcSource, gt as DATAPLANE_SECRET_HEADER, h as createEventBusSliceSource, ht as selectAssignedProfileSlots, i as asJsonArray, it as ProfileSlotSchema, j as expandCapMethods, k as DEVICE_STATUS_METHOD, kt as resolveHydratedFieldValue, l as parseJsonObject, lt as SubscribeAudioChunksResultSchema, m as createDeviceProxy, mt as parseProfileBrokerId, n as sleepCancellable, nt as FrameHandleSchema, o as asNumber, ot as StreamSourceEntrySchema, p as isDeviceScopedCap, pt as makeSourceBrokerId, q as CAM_PROFILE_ORDER, r as asBoolean, rt as ProfileRtspEntrySchema, s as asString, st as StreamSourceSchema, t as sleep, tt as FrameHandleFormatSchema, u as parseJsonUnknown, ut as SubscribeFramesInputSchema, v as createSliceHandle, vt as BaseAddon, w as DeviceRole, wt as WELL_KNOWN_TABS, x as viewerUiCapability, xt as createEvent, y as RawStateResultSchema, yt as normalizeAddonInitResult, z as toNodeId } from "./sleep-C9C8EoK8.mjs";
2
+ import { $ as DecodedFrameSchema, A as event, B as ReadinessRegistry, C as DeviceFeature, Ct as isEvent, D as DEFAULT_RUNTIME_STATE_DURABILITY, Dt as collectHydratedFieldValues, E as adminUiCapability, Et as collectHydratedFieldEntries, F as systemMethod, G as BrokerStatsSchema, H as emitDownForOwnedCaps, I as CAP_NODE_PIN_CONTEXT_KEY, J as CamProfileSchema, K as BrokerStatusSchema, L as nodePin, M as isDeviceConfigCap, N as method, O as DEVICE_SETTINGS_CONTRIBUTION_METHODS, Ot as hydrateSchema, P as resolveCapMount, Q as DecodedAudioChunkSchema, R as readNodePin, S as ChargingStatus, St as emitReadiness, T as DeviceType, Tt as WELL_KNOWN_TAB_MAP, U as readinessKey, V as ReadinessTimeoutError, W as scopeKey, X as CamStreamResolutionSchema, Y as CamStreamKindSchema, Z as CameraStreamSchema, _ as createMirrorSource, _t as DisposerChain, a as asJsonObject, at as ProfileSlotStatusSchema, b as deviceOpsCapability, bt as createDurableState, c as parseJsonArray, ct as SubscribeAudioChunksInputSchema, d as BOOT_RECOVERY_BACKOFF_MS, dt as SubscribeFramesResultSchema, et as EncodedPacketSchema, f as DEVICE_SCOPED_CAPS, ft as makeProfileBrokerId, g as createLazyTrpcSource, gt as DATAPLANE_SECRET_HEADER, h as createEventBusSliceSource, ht as selectAssignedProfileSlots, i as asJsonArray, it as ProfileSlotSchema, j as expandCapMethods, k as DEVICE_STATUS_METHOD, kt as resolveHydratedFieldValue, l as parseJsonObject, lt as SubscribeAudioChunksResultSchema, m as createDeviceProxy, mt as parseProfileBrokerId, n as sleepCancellable, nt as FrameHandleSchema, o as asNumber, ot as StreamSourceEntrySchema, p as isDeviceScopedCap, pt as makeSourceBrokerId, q as CAM_PROFILE_ORDER, r as asBoolean, rt as ProfileRtspEntrySchema, s as asString, st as StreamSourceSchema, t as sleep, tt as FrameHandleFormatSchema, u as parseJsonUnknown, ut as SubscribeFramesInputSchema, v as createSliceHandle, vt as BaseAddon, w as DeviceRole, wt as WELL_KNOWN_TABS, x as viewerUiCapability, xt as createEvent, y as RawStateResultSchema, yt as normalizeAddonInitResult, z as toNodeId } from "./sleep-L5-bG_a_.mjs";
3
3
  import { a as buildAudioArgs, c as buildVideoArgs, d as logBannerArgs, f as pickVideoEncoder, i as audioPlanFromEncodeProfile, l as invocationFromEncodeProfile, n as Fmp4BoxSplitter, o as buildFfmpegArgs, r as AUDIO_PRESETS, s as buildInputArgs, t as canonicalHash, u as isSoftwareDecode } from "./canonical-hash-rO1sRmEK.mjs";
4
4
  import { EventSourceType } from "./enums.mjs";
5
5
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
@@ -2224,18 +2224,61 @@ var RelocateFootageInputSchema = z.object({
2224
2224
  * `RecordingConfig.enabled` or camera wrapper bindings. */
2225
2225
  var StorageMigrationLeaseInputSchema = z.object({ leaseId: z.string().min(1) });
2226
2226
  var StorageMigrationFootageMoveInputSchema = RelocateFootageInputSchema.extend({ leaseId: z.string().min(1) });
2227
+ /**
2228
+ * What a `relocateMedia` pass DOES. One engine, three passes — never a second
2229
+ * mover (the engine already walks both collections with a timestamp cursor and
2230
+ * already has a stamp-without-copy path).
2231
+ *
2232
+ * - `move` — the default and the historical behaviour: event-media and
2233
+ * retrain blobs move to `toLocationId` and their rows are
2234
+ * stamped. The enrolled gallery is skipped (D197).
2235
+ * - `seal` — ROWS ONLY, no bytes. Every row whose `locationId` is NULL is
2236
+ * stamped with `toLocationId`. `toLocationId` here is the id the
2237
+ * bytes ALREADY sit on — today's `eventMedia` default — because
2238
+ * a NULL row means "wherever `eventMedia` points *now*", and the
2239
+ * instant a repoint moves that pointer the row reads from the
2240
+ * new disk while its bytes are on the old one.
2241
+ * - `gallery` — the inverse selection of `move`: ONLY the retention-exempt
2242
+ * (enrolled-gallery) rows, which `move` deliberately skips.
2243
+ * `galleryMedia` is `cardinality: 'single'`, so this pass can
2244
+ * never run beside a live second location: it is stop-the-world
2245
+ * by construction, which is acceptable only because the gallery
2246
+ * is a few KB per enrolled sample.
2247
+ */
2248
+ var MediaRelocateModeSchema = z.enum([
2249
+ "move",
2250
+ "seal",
2251
+ "gallery"
2252
+ ]);
2227
2253
  var RelocateMediaInputSchema = z.object({
2228
2254
  toLocationId: z.string(),
2229
- throttleMbps: z.number().min(1).max(1e3).optional()
2255
+ throttleMbps: z.number().min(1).max(1e3).optional(),
2256
+ /** Omitted = `move`, the pre-existing behaviour. */
2257
+ mode: MediaRelocateModeSchema.optional()
2258
+ });
2259
+ /** How many rows still carry NO `locationId` — the population a repoint would
2260
+ * silently re-aim at a disk that does not hold their bytes. Zero is the only
2261
+ * value that permits a non-blocking `eventMedia` cutover. */
2262
+ var UnstampedEventMediaCountSchema = z.object({
2263
+ media: z.number().int().nonnegative(),
2264
+ retrainFrames: z.number().int().nonnegative(),
2265
+ total: z.number().int().nonnegative()
2230
2266
  });
2231
2267
  var StorageMigrationMediaMoveInputSchema = RelocateMediaInputSchema.extend({ leaseId: z.string().min(1) });
2232
- /** The independently selectable logical storage classes. `recordings`
2233
- * encompasses the high and mid segment profiles; `recordingsLow` is low
2234
- * segments; `eventMedia` is post-analysis blobs. */
2268
+ /** The independently selectable logical storage classes — every class
2269
+ * `storage.listLocationDeclarations` reports, so an operator never meets a
2270
+ * Zod enum error where they should meet an explanation.
2271
+ *
2272
+ * `recordings` encompasses the high and mid segment profiles; `recordingsLow`
2273
+ * is low segments; `eventMedia` is post-analysis blobs; `galleryMedia` is the
2274
+ * enrolled gallery; `backups` is the system backup archive. The last two have
2275
+ * their own rules — see {@link StorageMigrationFindingCodeSchema}. */
2235
2276
  var StorageMigrationClassSchema = z.enum([
2236
2277
  "recordings",
2237
2278
  "recordingsLow",
2238
- "eventMedia"
2279
+ "eventMedia",
2280
+ "backups",
2281
+ "galleryMedia"
2239
2282
  ]);
2240
2283
  /** A destination is always an existing, fully-qualified location id. The
2241
2284
  * migration API intentionally never changes a source location's `basePath`:
@@ -2243,20 +2286,56 @@ var StorageMigrationClassSchema = z.enum([
2243
2286
  var StorageMigrationDestinationsSchema = z.object({
2244
2287
  recordings: z.string().min(1).optional(),
2245
2288
  recordingsLow: z.string().min(1).optional(),
2246
- eventMedia: z.string().min(1).optional()
2289
+ eventMedia: z.string().min(1).optional(),
2290
+ backups: z.string().min(1).optional(),
2291
+ galleryMedia: z.string().min(1).optional()
2247
2292
  }).refine((value) => Object.keys(value).length > 0, { message: "select at least one storage class" });
2293
+ /**
2294
+ * How a migration sequences the cutover against the byte move.
2295
+ *
2296
+ * - `blocking` — the historical order: pause, move every byte, repoint,
2297
+ * resume. Recording is stopped for the whole move. Right
2298
+ * for a small or a cold class, and the only legal mode for
2299
+ * a `cardinality: 'single'` class.
2300
+ * - `nonBlocking` — repoint FIRST, drain behind: seal, pause, repoint,
2301
+ * refresh, resume, then move the past with everything
2302
+ * running. The pause is three bounded instants (a detach +
2303
+ * attach round, a write-gate drain, a lease) instead of one
2304
+ * bounded by bytes. 1.09 TB at 7–14 MB/s is thirty hours of
2305
+ * stopped recording under `blocking`; the same move is
2306
+ * seconds of stopped recording under `nonBlocking`.
2307
+ *
2308
+ * The mode is on the JOB, not only on the input, because `status` is where an
2309
+ * operator finds out which one is running.
2310
+ */
2311
+ var StorageMigrationModeSchema = z.enum(["blocking", "nonBlocking"]);
2248
2312
  /** Shared input for planning and starting an orchestrated storage migration. */
2249
2313
  var StorageMigrationInputSchema = z.object({
2250
2314
  destinations: StorageMigrationDestinationsSchema,
2251
- throttleMbps: z.number().min(1).max(1e3).optional()
2315
+ throttleMbps: z.number().min(1).max(1e3).optional(),
2316
+ /** Omitted = `blocking`, which stays the default. */
2317
+ mode: StorageMigrationModeSchema.optional()
2252
2318
  });
2253
- /** The durable coordinator state machine. The only phase that changes default
2254
- * locations is `repointing`, after every selected mover has completed and been
2255
- * verified. */
2319
+ /**
2320
+ * The durable coordinator state machine.
2321
+ *
2322
+ * `blocking`:
2323
+ * planning → pausing → moving → verifying → repointing → refreshing → resuming → done
2324
+ *
2325
+ * `nonBlocking`:
2326
+ * planning → sealing → pausing → repointing → refreshing → resuming → draining → verifying → done
2327
+ *
2328
+ * Same phases, different order plus two new ones — not a second mover.
2329
+ * `sealing` closes the `eventMedia` NULL-row hole BEFORE anything is paused;
2330
+ * `draining` runs the same movers UNLEASED, after every writer is back up.
2331
+ * `repointing` is still the only phase that changes a default location.
2332
+ */
2256
2333
  var StorageMigrationPhaseSchema = z.enum([
2257
2334
  "planning",
2335
+ "sealing",
2258
2336
  "pausing",
2259
2337
  "moving",
2338
+ "draining",
2260
2339
  "verifying",
2261
2340
  "repointing",
2262
2341
  "refreshing",
@@ -2281,6 +2360,9 @@ var StorageMigrationMoveSchema = z.object({
2281
2360
  var StorageMigrationJobSchema = z.object({
2282
2361
  jobId: z.string(),
2283
2362
  phase: StorageMigrationPhaseSchema,
2363
+ /** Which order this job is running. `status` is the only place an operator
2364
+ * can tell a seconds-long cutover from a thirty-hour one. */
2365
+ mode: StorageMigrationModeSchema,
2284
2366
  destinations: StorageMigrationDestinationsSchema,
2285
2367
  throttleMbps: z.number(),
2286
2368
  moves: z.array(StorageMigrationMoveSchema),
@@ -2293,13 +2375,54 @@ var StorageMigrationJobSchema = z.object({
2293
2375
  finishedAt: z.number().nullable(),
2294
2376
  error: z.string().nullable()
2295
2377
  });
2378
+ /**
2379
+ * What the planner NOTICED but did not refuse.
2380
+ *
2381
+ * A refusal throws — the operator cannot miss it. A finding is the other half:
2382
+ * something true about this plan that changes what the operator should expect,
2383
+ * surfaced where they read it rather than in a document they will not open.
2384
+ *
2385
+ * - `sharesDeviceWithSource` — the destination realpath's to the same place as
2386
+ * the source. The move will be a row re-stamp, not a byte move, and it buys
2387
+ * no redundancy. NOTE: this is PATH identity, not `st_dev` — two distinct
2388
+ * directories on one filesystem are NOT detected. See
2389
+ * `deviceIdentityUnknown`.
2390
+ * - `deviceIdentityUnknown` — a location carries a `nodeId` other than this
2391
+ * one (or has no `basePath`), so its realpath cannot be taken here and the
2392
+ * same-device question was not answered at all. Stated rather than assumed
2393
+ * clear: a check that silently never fires is worse than no check.
2394
+ * - `unstampedEventMediaRows` — how many `eventMedia`/retrain rows still carry
2395
+ * no `locationId`. Non-zero refuses a `nonBlocking` cutover.
2396
+ * - `blockingOnly` — this class is `cardinality: 'single'`, so it can never
2397
+ * span two locations and can only ever be moved stop-the-world.
2398
+ * - `noMover` — the class is selectable and planned, but no addon owns a mover
2399
+ * for it. The migration cannot move its bytes.
2400
+ */
2401
+ var StorageMigrationFindingCodeSchema = z.enum([
2402
+ "sharesDeviceWithSource",
2403
+ "deviceIdentityUnknown",
2404
+ "unstampedEventMediaRows",
2405
+ "blockingOnly",
2406
+ "noMover"
2407
+ ]);
2408
+ var StorageMigrationFindingSchema = z.object({
2409
+ code: StorageMigrationFindingCodeSchema,
2410
+ storageClass: StorageMigrationClassSchema,
2411
+ /** Human-readable, already carrying the ids and counts. */
2412
+ message: z.string()
2413
+ });
2296
2414
  var StorageMigrationPlanSchema = z.object({
2297
2415
  destinations: StorageMigrationDestinationsSchema,
2416
+ /** The mode this plan was built for. A plan is only valid for its mode: the
2417
+ * `eventMedia` seal gate and the single-cardinality refusal both depend on
2418
+ * it. */
2419
+ mode: StorageMigrationModeSchema,
2298
2420
  moves: z.array(z.object({
2299
2421
  storageClass: StorageMigrationClassSchema,
2300
2422
  fromLocationId: z.string(),
2301
2423
  toLocationId: z.string()
2302
- }))
2424
+ })),
2425
+ findings: z.array(StorageMigrationFindingSchema)
2303
2426
  });
2304
2427
  //#endregion
2305
2428
  //#region src/interfaces/server-analysis.ts
@@ -18629,6 +18752,17 @@ var pipelineAnalyticsCapability = {
18629
18752
  kind: "mutation",
18630
18753
  auth: "admin"
18631
18754
  }),
18755
+ /**
18756
+ * How many media / retrain rows still carry NO `locationId`.
18757
+ *
18758
+ * A NULL row means "wherever `eventMedia` points NOW", so the instant a
18759
+ * repoint moves that pointer every such row reads from the new disk while
18760
+ * its bytes are on the old one — the archive goes dark until a drain
18761
+ * happens to stamp it. This count is what the migration planner's
18762
+ * non-blocking gate reads; `relocateMedia({ mode: 'seal' })` is what drives
18763
+ * it to zero.
18764
+ */
18765
+ countUnstampedEventMedia: method(z.object({}), UnstampedEventMediaCountSchema, { auth: "admin" }),
18632
18766
  /** Every relocate job this addon knows about, newest first (in RAM: the
18633
18767
  * move is resumable, so a lost list costs nothing but the display). */
18634
18768
  listRelocateMediaJobs: method(z.object({}), z.array(RelocateJobSchema).readonly(), {
@@ -21701,7 +21835,24 @@ var storageCapability = {
21701
21835
  kind: "mutation",
21702
21836
  auth: "admin"
21703
21837
  }),
21704
- deleteLocation: method(z.object({ id: z.string() }), z.void(), {
21838
+ /**
21839
+ * Remove a location record. REFUSES a location that still holds data —
21840
+ * deleting a drained location whose durable rows still name it is how this
21841
+ * hub acquired 2 131 ghost `recordings:high` segments, and playback does
21842
+ * not stat, so the operator sees a silent black window rather than an
21843
+ * error.
21844
+ *
21845
+ * `force` exists because the occupancy check is BEST-EFFORT and refuses on
21846
+ * "unknown" as well as on "occupied" (a read that fails must not authorise
21847
+ * a destruction — D49). A location on a removed disk, on another node, or
21848
+ * behind a remote provider answers "unknown" forever, and a refusal an
21849
+ * operator cannot override is its own failure mode. `force: true` is
21850
+ * logged, loudly, with what the check saw.
21851
+ */
21852
+ deleteLocation: method(z.object({
21853
+ id: z.string(),
21854
+ force: z.boolean().optional()
21855
+ }), z.void(), {
21705
21856
  kind: "mutation",
21706
21857
  auth: "admin"
21707
21858
  }),
@@ -40731,6 +40882,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
40731
40882
  addonId: null,
40732
40883
  access: "create"
40733
40884
  },
40885
+ "pipelineAnalytics.countUnstampedEventMedia": {
40886
+ capName: "pipeline-analytics",
40887
+ capScope: "device",
40888
+ addonId: null,
40889
+ access: "view"
40890
+ },
40734
40891
  "pipelineAnalytics.deleteDeviceEvents": {
40735
40892
  capName: "pipeline-analytics",
40736
40893
  capScope: "device",
@@ -50614,4 +50771,4 @@ function enumerateInferenceDevices(hw) {
50614
50771
  return out;
50615
50772
  }
50616
50773
  //#endregion
50617
- export { ACCESSORY_LABEL, ACCESS_ROLES, ALEXA_EGRESS_PROFILE, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_ANALYSIS_CAP_NAME, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AUDIO_PRESETS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionCandidateResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, AdoptionJobSchema, AdoptionJobStateSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, AdoptionOutcomeSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, AnalyticsGroupDetailSchema, AnalyticsGroupMemberSchema, AnalyticsGroupRecordSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationActionSchema, AutomationConditionOperatorSchema, AutomationConditionSchema, AutomationControlStatusSchema, AutomationRecipeSchema, AutomationTriggerSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BASE_LIVE_EGRESS_PROFILE, BATTERY_DEVICE_PROFILE, BATTERY_UNREACHABLE_AFTER_MS, BOOT_RECOVERY_BACKOFF_MS, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, BulkRecordSchema, CAMERA_SWITCH_CATALOG, CAMERA_SWITCH_ORDER, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, CLASS_MAP_MACRO_TARGETS, CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CORE_BLOCKS_ADDON_ID, CORE_BLOCK_ADDON_PREFIX, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusDegradationReasonSchema, CameraStatusDegradationSchema, CameraStatusSchema, CameraStatusStageSchema, CameraStreamSchema, CameraSwitchAuthoritySchema, CameraSwitchGroupSchema, CameraSwitchIdSchema, CameraSwitchSchema, CameraSwitchUnavailableReasonSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectionTestDescriptorSchema, ConnectionTestInputSchema, ConnectionTestOutcomeSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoreBlockCompileResultSchema, CoreBlockInputSchema, CoreBlockPlacementSchema, CoreBlockSchema, CoreBlockStatusSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DECLARED_DEVICE_SWEEP_LIMIT, DECLARED_INTEGRATION_FIXED_KEY, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_POOL_MEMORY_POLICY, DEFAULT_RECORDING_PROFILES, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DEFAULT_TOKEN_EXPIRY, DETAIL_CROP_PADDING_FIELD, DETAIL_CROP_PADDING_KEY, DETAIL_CROP_SECTION_ID, DETAIL_CROP_SQUARE_KEY, DETECTION_MACRO_CLASSES, DETECTION_PIPELINE_CAP_NAME, DEVICE_BACKEND_TO_FORMAT, DEVICE_CAP_NAMES, DEVICE_CHILDREN_BATCH_MAX, DEVICE_PROFILES, DEVICE_SCOPED_CAPS, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATE_READERS, DEVICE_STATUS_METHOD, DEVICE_TYPE_CONTROL_KIND, DEVICE_TYPE_INFO, EngineInfoSchema as DataStoreEngineInfoSchema, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DeclaredDevices, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetailCropConventionSchema, DetectionCatalogClassMapSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiagnosticIdSchema, DiagnosticWindowPatchSchema, DiagnosticWindowSchema, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DiskReconcileJobSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPORT_DENSE_MAX_RANGES, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, EgressEncodeSchema, EgressRateControlSchema, EgressTranscodeRequestSchema, EgressTranscodeSchema, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventKindsForDeviceSchema, EventMediaArtifactSchema, EventMediaCoverageSchema, EventMediaKindSchema, EventMediaProductionSchema, EventSourceType, ExportBytesSchema, ExportDenseRangeSchema, ExportDenseSchema, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionBindingSourceSchema, ExpressionEvalError, ExpressionFieldBindingSchema, ExpressionGlobalBindingSchema, ExpressionLiteralBindingSchema, ExpressionParseError, ExpressionSourceSchema, FIRST_LEVEL_MACRO_CLASSES, FULL_IMAGE_BBOX, FailureContributionSchema, FailureCounters, FailureReasonCountSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, FrameLazyCountersSchema, FrameLazyMetricsSchema, GasStatusSchema, GetLoggingSettingsInputSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HAP_AUDIO_BASE, HAP_AUDIO_BITRATE_KBPS, HAP_AUDIO_VBV_KBITS, HAP_KEYFRAME_INTERVAL_SEC, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HfModelResolutionSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, INFERENCE_DEVICE_EXCLUSION_REASONS, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, InferenceDeviceExclusionReasonSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LOAD_CONTRIBUTION_ATTRIBUTIONS, LOAD_CONTRIBUTION_ROLES, LOG_CHANNEL_TICK_MS, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, ListGroupsPageSchema, ListGroupsQueryInput, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LoadContributionSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogChannelApplyResultSchema, LogChannelDescriptorSchema, LogChannelGate, LogChannelLevelSchema, LogChannelRegistry, LogChannelWindowPatchSchema, LogChannelWindowSchema, LogChannelWindowStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoggingEffectiveSchema, LoggingExplicitSchema, LoggingLevelLayerSchema, LoggingLevelSourceSchema, LoggingScopeKindSchema, LoggingSettingsPatchSchema, LoggingSettingsStateSchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CLIP_EVENT_IDS, MAX_CLIP_LABELS, MAX_CONDITION_DEPTH, MAX_CONDITION_LEAVES, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, MAX_KEYS, MAX_REASONS_PER_KEY, MAX_SENSOR_TRIGGER_DEVICES, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MODEL_PROVIDER_IDS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelProviderIdSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, MutationFilterSchema, NATIVE_LEASE_ACTIVITY_FIELD, NATIVE_LEASE_ACTIVITY_KEY, NATIVE_LEASE_ADMISSION_FIELD, NATIVE_LEASE_ADMISSION_KEY, NATIVE_LEASE_BUDGET_FIELD, NATIVE_LEASE_BUDGET_KEY, NATIVE_LEASE_HOLD_FIELD, NATIVE_LEASE_HOLD_KEY, NATIVE_LEASE_SCENE_BUDGET_FIELD, NATIVE_LEASE_SCENE_BUDGET_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_CONFIRM_HITS_DEFAULT, NC_AUDIO_CONFIRM_HITS_MAX, NC_AUDIO_CONFIRM_HITS_MIN, NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, NC_AUDIO_DBFS_FLOOR, NC_AUDIO_DB_MAX, NC_AUDIO_DB_MIN, NC_AUDIO_DB_OFFERED, NC_AUDIO_DB_STEP, NC_AUDIO_DEFAULTS, NC_AUDIO_HIT_PERCENT_MAX, NC_AUDIO_HIT_PERCENT_MIN, NC_AUDIO_SAMPLING_MAX_SEC, NC_AUDIO_SAMPLING_MIN_SEC, NC_AUDIO_SEED, NC_AUTHORABLE_SYSTEM_EVENT_KINDS, NC_BASE_CONDITION_KEYS, NC_CONDITION_CATALOG, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, NC_CONFIRM_DEFAULT_TIMEOUT_MS, NC_CONFIRM_MAX_TIMEOUT_MS, NC_CONFIRM_MIN_TIMEOUT_MS, NC_DEFAULT_SNOOZE_MINUTES, NC_HISTORY_LIMIT_DEFAULT, NC_HISTORY_LIMIT_MAX, NC_MAX_PER_TRACK_IMMEDIATE, NC_OCCUPANCY_DEFAULTS, NC_RULE_EDITOR_SECTION_ORDER, NC_RULE_KIND_SPECS, NC_RULE_SECTIONS, NC_SNOOZE_MAX_MINUTES, NC_SYSTEM_DELIVERY, NC_SYSTEM_EVENT_FILTER_KEYS, NC_TAXONOMY, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NcAlarmConfigSchema, NcAlarmModeCoverageSchema, NcAlarmSettingsPatchSchema, NcAlarmSettingsSchema, NcAlarmSkipReasonSchema, NcAlarmSkippedDeviceSchema, NcAudioConditionSchema, NcConditionDescriptorSchema, NcConditionsSchema, NcConfirmExpectSchema, NcConfirmSchema, NcCrossingSchema, NcDeliverySchema, NcDeviceStateConditionSchema, NcHistoryEntrySchema, NcHistoryFilterSchema, NcHistoryRecordKindSchema, NcHistoryStatusSchema, NcHistorySubjectSchema, NcMediaFrameSchema, NcMediaPolicySchema, NcOccupancyConditionSchema, NcPlateMatcherSchema, NcRuleActionSchema, NcRuleActionSequenceSchema, NcRuleActionsSchema, NcRuleInputSchema, NcRuleNotificationButtonSchema, NcRulePatchSchema, NcRuleSchema, NcRuleTargetSchema, NcSceneConditionSchema, NcScheduleSchema, NcScheduleWindowSchema, NcSnoozeInputSchema, NcSnoozeSchema, NcSnoozeScopeSchema, NcSnoozeSuppressedSchema, NcSystemEventConditionSchema, NcSystemEventKindSchema, NcTaxonomyEntrySchema, NcTaxonomySchema, NcTestResultSchema, NcThrottleGranularitySchema, NcThrottleSchema, NcZoneConditionSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPERATOR_WRITTEN_STALE_MS, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OVERFLOW_REASON, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdRenderOutcomeEnum, OsdRenderResultSchema, OsdSlotBindingSchema, OsdSlotViewSchema, OsdSourceOptionSchema, OsdSourceSchema, OsdSourceValueTypeEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PRIVACY_MASK_CAP_NAME, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PoolMemoryWatchdog, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzOptionsSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, RATE_CONTROL_RELAXED, RATE_CONTROL_TIGHT, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RECORDING_EXPORT_MAX_READ_BYTES, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, ROOT_BUCKET_KEY, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_STATE_REFRESH_MISS_COOLDOWN_MS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadWindowBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingObjectTriggerClassSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RenderedAsSchema, ReportMotionInputSchema, ReportedFailureContributionSchema, ReportedLoadContributionSchema, RequestCensusGroupSchema, RequestCensusProcedureSchema, RequestCensusSnapshotSchema, RequestCensusStatusSchema, RetrainAnnotationDraftSchema, RetrainAnnotationKindSchema, RetrainAnnotationSchema, RetrainAnnotationSourceSchema, RetrainAssistResultSchema, RetrainAssistSubjectSchema, RetrainCopyRefusalSchema, RetrainFrameCandidateSchema, RetrainFrameListSchema, RetrainFrameSchema, RetrainFrameSelectionSchema, RetrainMacroClassSchema, RetrainStatusSchema, RetrainTrackSchema, RetrainTransitionResultSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerInferenceDeviceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCENE_CONDITIONS, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, SCENE_DEFAULT_ANCHOR_THRESHOLD, SCENE_DEFAULT_CHECK_INTERVAL_SEC, SCENE_DEFAULT_OBSERVATION_SPACING_SEC, SCENE_DEFAULT_QUIET_SECONDS, SCENE_DEFAULT_UNCOVERED_POLICY, SCENE_DIVERGED, SCENE_RESET_RECAPTURES, SCOPE_PRESETS, SENSOR_FEATURES, SENSOR_MAP, SOURCE_CAPS, SOURCE_CAP_ACTIVE_FIELD, SOURCE_CAP_CHANGED_AT_FIELD, SOURCE_DEVICE_TYPES, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetLoggingSettingsInputSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationMoveSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMELAPSE_DENSE_FLOOR_SEC, TIMEZONES, TRANSCODE_DOWN_MAX_BITRATE_KBPS, TRANSCODE_DOWN_MAX_HEIGHT, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TerminalInstanceInfoSchema, TerminalLegacyCameraSchema, TerminalOutputBatchSchema, TerminalOutputEventSchema, TerminalProfileInfoSchema, TerminalSessionInfoSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestConnectionStatusEnum, TestResultSchema, TimelapseRuleInputSchema, TimelapseRulePatchSchema, TimelapseRuleSchema, TimelapseTemplateSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackFlagsPatchSchema, TrackFlagsSchema, TrackProjectionSchema, TrackSchema, TrackSourceSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TrainingExportDeviceTotalsSchema, TrainingExportSummarySchema, TransportPlaneCountsSchema, TransportPlaneSchema, TurnServerSchema, UNATTRIBUTED_BUCKET_KEY, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VISIT_MERGE_GAP_MS, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VectorDeclareIndexInputSchema, VectorDeleteByFilterInputSchema, VectorDeleteInputSchema, VectorDeleteResultSchema, VectorFilterSchema, VectorGetInputSchema, VectorGetResultSchema, VectorItemSchema, VectorMatchSchema, VectorMetadataSchema, VectorMetricSchema, VectorQueryInputSchema, VectorQueryResultSchema, VectorStatsInputSchema, VectorStatsResultSchema, VectorUpsertInputSchema, VectorUpsertResultSchema, VibrationStatusSchema, VideoEncodeSchema, WEBRTC_EGRESS_PROFILE, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneCrossingDirectionSchema, ZoneCrossingSchema, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, __resetLogChannelRegistryForTests, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioKindId, audioLabelChoices, audioMetricsCapability, audioModeOf, audioOrDefaults, audioPlanFromEncodeProfile, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, bareAddonId, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildAudioArgs, buildEventKindDescriptor, buildFfmpegArgs, buildInputArgs, buildModelVariantGroups, buildNcTaxonomy, buildRoleScopes, buildStreamParamsConfigSchema, buildVideoArgs, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, canonicalEgressPlan, carbonMonoxideCapability, cellsToRects, classifyBearerPrincipal, classifyStream, classifyStreams, climateControlCapability, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, commitWatchdogRestart, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, conditionExclusionReason, conditionVisibleForKind, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createEventBusSliceSource, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createLogChannelsProvider, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, declareLogChannel, decodeVectorBase64, decoderCapability, defaultDeliveryForSection, defaultDeviceFor, defineCustomActions, deriveBatteryPresence, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, droppedConditionsForKind, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluatePoolMemory, evaluateSensorEdge, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, failureContributionCapability, failureRate, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, foldSnapshotByFunction, formatForBackend, formatForRuntime, gasCapability, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getLogChannelRegistry, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, inferModelProvider, initialPoolMemoryState, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isAudioRule, isBaseConditionKey, isBatteryPresenceFault, isClusterScopedStep, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isFirstLevelMacroClass, isIsolatedBuiltin, isNode, isObjectInput, isOccupancyRule, isRestoredCap, isSameAddonId, isScheduleActive, isSoftwareDecode, isSourceCap, isSystemDelivery, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, loadContributionCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logChannelsCapability, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, overlayClusterStepSettings, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProcStatus, parseProfileBrokerId, parseRuleSection, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickClusterStepModels, pickClusterStepSettings, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickRestartCandidate, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, poolMemoryThreshold, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readClusterStepModels, readClusterStepSettings, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, reducePoints, requiresPython, resetPoolBaseline, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveBucketMs, resolveCapMount, resolveClusterStepModelId, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveMethodAuth, resolveModelFormat, resolveMutate, resolvePoolMemoryPolicy, resolveRecordingProfiles, resolveRunnerId, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, ruleEditorSectionsForKind, ruleKindOf, ruleKindSpec, ruleMatchesSection, ruleSection, ruleSectionOf, ruleSeedForSection, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, sliceActiveValue, sliceChangedAt, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, systemEventFilterApplies, systemEventFilterAppliesToAnyKind, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, terminalSessionCapability, textToHtml, toDeviceSummary, toExpressionValue, toNodeId, toStreamSourceEntry, toastCapability, toggleAudioLabel, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, validateRecipeBounds, valveCapability, vectorDimFromBase64, vectorStoreCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
50774
+ export { ACCESSORY_LABEL, ACCESS_ROLES, ALEXA_EGRESS_PROFILE, ALL_CAPABILITY_DEFINITIONS, APPLE_SA_TO_MACRO, AUDIO_ANALYSIS_CAP_NAME, AUDIO_BACKEND_CHOICES, AUDIO_MACRO_LABELS, AUDIO_PRESETS, AccessoriesStatusSchema, AccessoryKind, AddBrokerInputSchema, AddonAutoUpdateSchema, AddonListItemSchema, AddonPageDeclarationSchema, AddonPageInfoSchema, AdoptInputSchema as AdoptionAdoptInputSchema, AdoptResultSchema as AdoptionAdoptResultSchema, AdoptionCandidateResultSchema, AdoptionFilterSchema, GetCandidateInputSchema as AdoptionGetCandidateInputSchema, AdoptionJobSchema, AdoptionJobStateSchema, ListCandidatesInputSchema as AdoptionListCandidatesInputSchema, ListCandidatesOutputSchema as AdoptionListCandidatesOutputSchema, AdoptionOutcomeSchema, ReleaseInputSchema as AdoptionReleaseInputSchema, AdoptionStatusSchema, AgentLoadSummarySchema, AirQualitySensorStatusSchema, AlarmArmModeSchema, AlarmPanelStatusSchema, AlarmStateSchema, AlertSchema, AlertSeveritySchema, AlertSourceSchema, AlertStatusSchema, AmbientLightSensorStatusSchema, AnalyticsGroupDetailSchema, AnalyticsGroupMemberSchema, AnalyticsGroupRecordSchema, ApiKeyRecordSchema, ApiKeySummarySchema, ArchiveEntrySchema, ArchiveManifestSchema, AttachmentMediaTypeSchema, AttachmentSchema, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioChunkInputSchema, AudioClassSummarySchema, AudioClassificationLabelSchema, AudioClassificationResultSchema, AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodeSchema, AudioEncodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEventSchema, AudioLevelSchema, AudioMetricsHistoryPointSchema, AudioMetricsHistorySchema, AudioMetricsSnapshotSchema, AudioPcmChunkSchema, AuthResultSchema, AutoUpdateSettingsSchema, AutomationActionSchema, AutomationConditionOperatorSchema, AutomationConditionSchema, AutomationControlStatusSchema, AutomationRecipeSchema, AutomationTriggerSchema, AvailableIntegrationTypeSchema, BACKEND_TO_FORMAT, BASE_LIVE_EGRESS_PROFILE, BATTERY_DEVICE_PROFILE, BATTERY_UNREACHABLE_AFTER_MS, BOOT_RECOVERY_BACKOFF_MS, BacklightModeSchema, BackupDestinationInfoSchema, BackupEntrySchema, BaseAddon, BaseDevice, BaseDeviceProvider, BatteryStatusSchema, BinaryStatusSchema, BoundingBoxSchema, BrightnessStatusSchema, AddInputSchema as BrokerAddInputSchema, BrokerAudioClientSchema, BrokerClientsSchema, BrokerConnectionDetailsSchema, BrokerConsumerAttributionSchema, BrokerConsumerKindSchema, BrokerDecodedClientSchema, BrokerEncodedClientSchema, GetStateInputSchema as BrokerGetStateInputSchema, BrokerInfoSchema, BrokerProviderInfoSchema, PublishInputSchema as BrokerPublishInputSchema, RegistryStatusSchema as BrokerRegistryStatusSchema, BrokerRtspClientSchema, BrokerStatsSchema, BrokerStatusEnum, BrokerStatusSchema, SubscribeInputSchema as BrokerSubscribeInputSchema, SubscribeResultSchema as BrokerSubscribeResultSchema, TestConnectionResultSchema as BrokerTestConnectionResultSchema, UnsubscribeInputSchema as BrokerUnsubscribeInputSchema, BulkRecordSchema, CAMERA_SWITCH_CATALOG, CAMERA_SWITCH_ORDER, CAM_PROFILE_ORDER, CAPABILITY_NAMES, CAPABILITY_ROUTER_KEYS, CAP_NAMES_WITH_STATUS, CAP_NODE_PIN_CONTEXT_KEY, CAP_PROVIDER_KIND_MAP, CLASS_MAP_MACRO_TARGETS, CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, COCO_80_LABELS, COCO_TO_MACRO, CONNECTION_TEST_TIMEOUT_MS, CORE_BLOCKS_ADDON_ID, CORE_BLOCK_ADDON_PREFIX, CamProfileSchema, CamStreamDescriptorSchema, CamStreamKindSchema, CamStreamResolutionSchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraCredentialsSchema, CameraCredentialsStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusDegradationReasonSchema, CameraStatusDegradationSchema, CameraStatusSchema, CameraStatusStageSchema, CameraStreamSchema, CameraSwitchAuthoritySchema, CameraSwitchGroupSchema, CameraSwitchIdSchema, CameraSwitchSchema, CameraSwitchUnavailableReasonSchema, CandidateQueryFilterSchema, CapScopeSchema, CapabilityBindingsSchema, CarbonMonoxideStatusSchema, ChargingStatus, ClientNetworkStatsSchema, ClimateControlStatusSchema, ClipPlaybackSchema, ClipSchema, ClusterAddonNodeDeploymentSchema, ClusterAddonStatusEntrySchema, CollectionColumnSchema, CollectionIndexSchema, ColorStatusSchema, ConfigEntrySchema, ConfigSectionWithValuesSchema, ConfigTabDeclarationSchema, ConnectionTestDescriptorSchema, ConnectionTestInputSchema, ConnectionTestOutcomeSchema, ConnectivityStatusSchema, ConsumableItemSchema, ConsumablesStatusSchema, ContactStatusSchema, ControlKindSchema, ControlStatusSchema, ConvertArtifactSchema, ConvertResultSchema, ConvertTargetSchema, CoreBlockCompileResultSchema, CoreBlockInputSchema, CoreBlockPlacementSchema, CoreBlockSchema, CoreBlockStatusSchema, CoverStateSchema, CoverStatusSchema, CreateApiKeyInputSchema, CreateApiKeyResultSchema, CreateIntegrationInputSchema, CreateScopedTokenInputSchema, CreateScopedTokenResultSchema, CreateUserInputSchema, CustomActionInputSchema, CustomModelDescriptorSchema, DATAPLANE_SECRET_HEADER, DECLARED_DEVICE_SWEEP_LIMIT, DECLARED_INTEGRATION_FIXED_KEY, DEFAULT_ADDON_PLACEMENT, DEFAULT_AUDIO_ANALYZER_CONFIG, DEFAULT_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_DECODER_HWACCEL_CONFIG, DEFAULT_DETAIL_CROP_CONVENTION, DEFAULT_EVENTS_BAND_BUFFER_SEC, DEFAULT_EVENT_COLOR, DEFAULT_FEATURES, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, DEFAULT_NATIVE_LEASE_SETTINGS, DEFAULT_POOL_MEMORY_POLICY, DEFAULT_RECORDING_PROFILES, DEFAULT_RETENTION, DEFAULT_RUNTIME_STATE_DURABILITY, DEFAULT_TIMELAPSE_PREVIEW_TEXT, DEFAULT_TOKEN_EXPIRY, DETAIL_CROP_PADDING_FIELD, DETAIL_CROP_PADDING_KEY, DETAIL_CROP_SECTION_ID, DETAIL_CROP_SQUARE_KEY, DETECTION_MACRO_CLASSES, DETECTION_PIPELINE_CAP_NAME, DEVICE_BACKEND_TO_FORMAT, DEVICE_CAP_NAMES, DEVICE_CHILDREN_BATCH_MAX, DEVICE_PROFILES, DEVICE_SCOPED_CAPS, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATE_READERS, DEVICE_STATUS_METHOD, DEVICE_TYPE_CONTROL_KIND, DEVICE_TYPE_INFO, EngineInfoSchema as DataStoreEngineInfoSchema, DayNightModeSchema, DayNightOptionsSchema, DayNightSettingsPatchSchema, DayNightStatusSchema, DeclaredDevices, DecodedAudioChunkSchema, DecodedFrameSchema, DecoderSessionConfigSchema, DecoderStatsSchema, DeleteIntegrationResultSchema, DetailCropConventionSchema, DetectionCatalogClassMapSchema, DetectionSourceSchema, DeviceCodeSeveritySchema, DeviceConfig, DeviceDiscoveryStatusSchema, ExposeInputSchema as DeviceExportExposeInputSchema, DeviceExportStatusSchema, UnexposeInputSchema as DeviceExportUnexposeInputSchema, DeviceFeature, DeviceInfoSchema, DeviceNetworkStatsSchema, DeviceRole, DeviceRuntimeState, DeviceSelectorSchema, DeviceStatusSchema, DeviceType, DiagnosticIdSchema, DiagnosticWindowPatchSchema, DiagnosticWindowSchema, DiscoveredChildDeviceSchema, DiscoveredChildStatusSchema, DiscoveredDeviceSchema, DiscoveredTargetSchema, DiskReconcileJobSchema, DisposerChain, DoorbellPressEventSchema, DoorbellStatusSchema, EVENTFUL_CAP_NAMES, EVENT_KIND_BY_CAP, EVENT_PAD_MS, EVENT_TAXONOMY, EXPORT_DENSE_MAX_RANGES, EXPRESSION_BUILTINS, EXPRESSION_BUILTIN_NAMES, EXPRESSION_COMPILE_CACHE_CAPACITY, EXPRESSION_IDENTIFIER_RE, EXPRESSION_INJECTED_NOW, EgressEncodeSchema, EgressRateControlSchema, EgressTranscodeRequestSchema, EgressTranscodeSchema, ElementConfigStore, EmbeddingInfoSchema, EmbeddingResultSchema, EncodeProfileSchema, EncodedPacketSchema, EnrichedWidgetMetadataSchema, EnumSensorDateTimeFormatSchema, EnumSensorStatusSchema, EventCategory, EventEmitterStatusSchema, EventFireSchema, EventItemSchema, EventKindCategorySchema, EventKindDescriptorSchema, EventKindIconSchema, EventKindSchema, EventKindsForDeviceSchema, EventMediaArtifactSchema, EventMediaCoverageSchema, EventMediaKindSchema, EventMediaProductionSchema, EventSourceType, ExportBytesSchema, ExportDenseRangeSchema, ExportDenseSchema, ExportDownloadSchema, ExportOptionsSchema, ExportRecordSchema, ExportSetupFieldSchema, ExportSetupSchema, ExportSpeedSchema, ExportStateSchema, ExportTimelapseSchema, ExposedDeviceSchema, ExposureModeSchema, ExpressionBindingSourceSchema, ExpressionEvalError, ExpressionFieldBindingSchema, ExpressionGlobalBindingSchema, ExpressionLiteralBindingSchema, ExpressionParseError, ExpressionSourceSchema, FIRST_LEVEL_MACRO_CLASSES, FULL_IMAGE_BBOX, FailureContributionSchema, FailureCounters, FailureReasonCountSchema, FanControlStatusSchema, FanDirectionSchema, FeatureManifestSchema, FeatureProbeStatusSchema, FloodStatusSchema, Fmp4BoxSplitter, FrameHandleFormatSchema, FrameHandleSchema, FrameInputSchema, FrameLazyCountersSchema, FrameLazyMetricsSchema, GasStatusSchema, GetLoggingSettingsInputSchema, GetStreamWithCodecInputSchema, GlobalMetricsSchema, HAP_AUDIO_BASE, HAP_AUDIO_BITRATE_KBPS, HAP_AUDIO_VBV_KBITS, HAP_KEYFRAME_INTERVAL_SEC, HF_BASE_URL, HF_REPO, HWACCEL_OPTIONS, HealthStatusSchema, HfModelResolutionSchema, HistoryPointSchema, HistoryResolutionEnum, HumidifierStatusSchema, HumiditySensorStatusSchema, HvacModeSchema, INFERENCE_DEVICE_EXCLUSION_REASONS, ImageContractSchema, ImageContractStateSchema, ImageRotateSchema, ImageSettingsOptionsSchema, ImageSettingsPatchSchema, ImageSettingsStatusSchema, ImageStatusSchema, InferenceDeviceExclusionReasonSchema, IngestOwnerSchema, InstalledPackageSchema, IntegrationLiteSchema, IntegrationWithStateSchema, IntercomAbilitySchema, IntercomStatusSchema, KNOWN_CAP_NAMES, KeyEventSchema, LOAD_CONTRIBUTION_ATTRIBUTIONS, LOAD_CONTRIBUTION_ROLES, LOG_CHANNEL_TICK_MS, LOG_LEVEL_RANK, LabelAttributionSchema, LabelDefinitionSchema, LabelTierSchema, LawnMowerActivitySchema, LawnMowerControlStatusSchema, LinkedDeviceSchema, LinkedDevicesModeSchema, ListGroupsPageSchema, ListGroupsQueryInput, LlmDefaultSchema, LlmDefaultSelectorSchema, LlmDownloadProgressSchema, LlmErrorCodeSchema, LlmGenerateBaseInputSchema, LlmGenerateErrSchema, LlmGenerateOkSchema, LlmGenerateResultSchema, LlmImageSchema, LlmNodeModelSchema, LlmProfileKindDescriptorSchema, LlmProfileKindSchema, LlmProfileSchema, LlmRetryPolicySchema, LlmRuntimeCompleteInputSchema, LlmRuntimeDiskUsageSchema, LlmRuntimeNodeSchema, LlmRuntimeStatusSchema, LlmTimeoutDefaults, LlmUsageRollupSchema, LlmUsageSchema, LoadContributionSchema, LocateSegmentResultSchema, LocationStatSchema, LockControlStatusSchema, LockStateSchema, LogChannelApplyResultSchema, LogChannelDescriptorSchema, LogChannelGate, LogChannelLevelSchema, LogChannelRegistry, LogChannelWindowPatchSchema, LogChannelWindowSchema, LogChannelWindowStateSchema, LogEntrySchema, LogLevelSchema, LogStreamEntrySchema, LoggingEffectiveSchema, LoggingExplicitSchema, LoggingLevelLayerSchema, LoggingLevelSourceSchema, LoggingScopeKindSchema, LoggingSettingsPatchSchema, LoggingSettingsStateSchema, LoginMethodContributionSchema, LoginStageEnum, MACRO_LABELS, MAX_CLIP_EVENT_IDS, MAX_CLIP_LABELS, MAX_CONDITION_DEPTH, MAX_CONDITION_LEAVES, MAX_EXPRESSION_AST_NODES, MAX_EXPRESSION_BINDINGS, MAX_EXPRESSION_CALL_ARGS, MAX_EXPRESSION_EVAL_STEPS, MAX_EXPRESSION_SOURCE_LENGTH, MAX_KEYS, MAX_REASONS_PER_KEY, MAX_SENSOR_TRIGGER_DEVICES, METHOD_ACCESS_MAP, METHOD_DEVICE_SELECTORS, MODEL_FORMATS, MODEL_PROVIDER_IDS, MOTION_TRIGGER_FEATURE, ManagedModelCatalogEntrySchema, ManagedModelExtraFileSchema, ManagedModelRefSchema, ManagedRuntimeConfigSchema, MaskGridDimsSchema, MaskGridShapeSchema, MaskLineShapeSchema, MaskPointSchema, MaskPolygonShapeSchema, MaskPolygonVerticesSchema, MaskRectShapeSchema, MaskShapeKindSchema, MaskShapeSchema, MediaFileInfoSchema, MediaFileSchema, MediaPlayerRepeatSchema, MediaPlayerStateSchema, MediaPlayerStatusSchema, MediaRelocateModeSchema, MeshPeerSchema, MeshStatusSchema, MethodAccessSchema, ModelCatalogEntrySchema, ModelConvertInputSchema, ModelConvertMetadataSchema, ModelDistributeInputSchema, ModelDistributeResultSchema, ModelExtraFileSchema, ModelFormatEntrySchema, ModelFormatsSchema, ModelProviderIdSchema, ModelSubstitutionSchema, ModelVariantGroupSchema, MotionAnalysisResultSchema, MotionEventSchema, MotionOnMotionChangedDataSchema, MotionRegionSchema, MotionSourceEnum, MotionSourcesSchema, MotionStatusSchema, MotionTriggerRuntimeStateSchema, MotionTriggerStatusSchema, MotionZoneOptionsSchema, MotionZonePatchSchema, MotionZoneRegionSchema, MotionZoneStatusSchema, StatusSchema as MqttBrokerStatusSchema, MutationFilterSchema, NATIVE_LEASE_ACTIVITY_FIELD, NATIVE_LEASE_ACTIVITY_KEY, NATIVE_LEASE_ADMISSION_FIELD, NATIVE_LEASE_ADMISSION_KEY, NATIVE_LEASE_BUDGET_FIELD, NATIVE_LEASE_BUDGET_KEY, NATIVE_LEASE_HOLD_FIELD, NATIVE_LEASE_HOLD_KEY, NATIVE_LEASE_SCENE_BUDGET_FIELD, NATIVE_LEASE_SCENE_BUDGET_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, NC_ALARM_SYSTEM_EVENT_KINDS, NC_AUDIO_CONFIRM_HITS_DEFAULT, NC_AUDIO_CONFIRM_HITS_MAX, NC_AUDIO_CONFIRM_HITS_MIN, NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, NC_AUDIO_DBFS_FLOOR, NC_AUDIO_DB_MAX, NC_AUDIO_DB_MIN, NC_AUDIO_DB_OFFERED, NC_AUDIO_DB_STEP, NC_AUDIO_DEFAULTS, NC_AUDIO_HIT_PERCENT_MAX, NC_AUDIO_HIT_PERCENT_MIN, NC_AUDIO_SAMPLING_MAX_SEC, NC_AUDIO_SAMPLING_MIN_SEC, NC_AUDIO_SEED, NC_AUTHORABLE_SYSTEM_EVENT_KINDS, NC_BASE_CONDITION_KEYS, NC_CONDITION_CATALOG, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, NC_CONFIRM_DEFAULT_TIMEOUT_MS, NC_CONFIRM_MAX_TIMEOUT_MS, NC_CONFIRM_MIN_TIMEOUT_MS, NC_DEFAULT_SNOOZE_MINUTES, NC_HISTORY_LIMIT_DEFAULT, NC_HISTORY_LIMIT_MAX, NC_MAX_PER_TRACK_IMMEDIATE, NC_OCCUPANCY_DEFAULTS, NC_RULE_EDITOR_SECTION_ORDER, NC_RULE_KIND_SPECS, NC_RULE_SECTIONS, NC_SNOOZE_MAX_MINUTES, NC_SYSTEM_DELIVERY, NC_SYSTEM_EVENT_FILTER_KEYS, NC_TAXONOMY, NativeCropBboxSchema, NativeCropRefSchema, NativeCropResultSchema, NativeDetectionSchema, NativeLeaseAdmissionSchema, NativeLeaseSettingsSchema, NativeObjectClassEnum, NativeObjectDetectionRuntimeStateSchema, NativeObjectDetectionStatusSchema, NcAlarmConfigSchema, NcAlarmModeCoverageSchema, NcAlarmSettingsPatchSchema, NcAlarmSettingsSchema, NcAlarmSkipReasonSchema, NcAlarmSkippedDeviceSchema, NcAudioConditionSchema, NcConditionDescriptorSchema, NcConditionsSchema, NcConfirmExpectSchema, NcConfirmSchema, NcCrossingSchema, NcDeliverySchema, NcDeviceStateConditionSchema, NcHistoryEntrySchema, NcHistoryFilterSchema, NcHistoryRecordKindSchema, NcHistoryStatusSchema, NcHistorySubjectSchema, NcMediaFrameSchema, NcMediaPolicySchema, NcOccupancyConditionSchema, NcPlateMatcherSchema, NcRuleActionSchema, NcRuleActionSequenceSchema, NcRuleActionsSchema, NcRuleInputSchema, NcRuleNotificationButtonSchema, NcRulePatchSchema, NcRuleSchema, NcRuleTargetSchema, NcSceneConditionSchema, NcScheduleSchema, NcScheduleWindowSchema, NcSnoozeInputSchema, NcSnoozeSchema, NcSnoozeScopeSchema, NcSnoozeSuppressedSchema, NcSystemEventConditionSchema, NcSystemEventKindSchema, NcTaxonomyEntrySchema, NcTaxonomySchema, NcTestResultSchema, NcThrottleGranularitySchema, NcThrottleSchema, NcZoneConditionSchema, NetworkAccessStatusSchema, NetworkAddressSchema, NetworkEndpointSchema, NotificationActionIconSchema, NotificationActionSchema, NotificationFormatSchema, NotificationSchema, NotifierStatusSchema, NumericSensorStatusSchema, OPERATOR_WRITTEN_STALE_MS, OPS_LOG_DEFAULT_LIMIT, OPS_LOG_RING_DEFAULT_MAX, OVERFLOW_REASON, OauthIntegrationDescriptorSchema, ObjectEventSchema, OpsLogDomainSchema, OpsLogEntrySchema, OpsLogOpSchema, OpsLogQueryInputSchema, OpsLogReasonSchema, OrchestratorMetricsSchema, OsdOverlayKindEnum, OsdOverlayPatchSchema, OsdOverlaySchema, OsdPositionEnum, OsdRenderOutcomeEnum, OsdRenderResultSchema, OsdSlotBindingSchema, OsdSlotViewSchema, OsdSourceOptionSchema, OsdSourceSchema, OsdSourceValueTypeEnum, OsdStatusSchema, PET_FEEDER_MANUAL_FEED_MAX, PET_FEEDER_MANUAL_FEED_MIN, PIPELINE_FLOW_CAPABILITY_NAMES, PIPELINE_OWNER_CAPABILITY_NAMES, PRIVACY_MASK_CAP_NAME, PROVIDER_KIND_CAP_NAMES, PYTHON_SCRIPT, PackageUpdateSchema, PackageVersionInfoSchema, PasskeyLoginMethodSchema, PasskeySummarySchema, PcmSampleFormatSchema, PerScopeBreakdownSchema, PetFeederStatusSchema, PickStreamPreferencesSchema, PickStreamRequirementsSchema, PickedCamStreamSchema, PipelineAssignmentSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, PlaceholderReasonSchema, PolygonPointSchema, PoolMemoryWatchdog, PowerMeterStatusSchema, PresenceStatusSchema, PressureSensorStatusSchema, PrivacyMaskOptionsSchema, PrivacyMaskPatchSchema, PrivacyMaskRegionSchema, PrivacyMaskShapeSchema, PrivacyMaskStatusSchema, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, ProviderStatusSchema, PtzAutotrackRuntimeStateSchema, PtzAutotrackSettingsSchema, PtzAutotrackStatusSchema, PtzAutotrackTargetOptionSchema, PtzMoveCommandSchema, PtzOptionsSchema, PtzPositionSchema, PtzPresetSchema, PtzStatusSchema, QueryFilterSchema, RATE_CONTROL_RELAXED, RATE_CONTROL_TIGHT, REACHABILITY_FAILURES_TO_OFFLINE, REACHABILITY_POLL_INTERVAL_MS, REACHABILITY_PROBE_TIMEOUT_MS, RECOGNITION_TYPES, RECORDING_EXPORT_MAX_READ_BYTES, RESERVED_BINDING_NAMES, RESTORED_CAP_NAMES, ROOT_BUCKET_KEY, RUNTIME_DEFAULTS, RUNTIME_STATE_POLICY, RUNTIME_STATE_REFRESH_MISS_COOLDOWN_MS, RUNTIME_TO_FORMAT, RawStateResultSchema, ReadGopBytesResultSchema, ReadSegmentBytesResultSchema, ReadWindowBytesResultSchema, ReadinessRegistry, ReadinessTimeoutError, RecentTracksPageSchema, RecentTracksQueryInput, RecordingAvailabilitySchema, RecordingBandModeSchema, RecordingBandSchema, RecordingBandTriggersSchema, RecordingConfigSchema, RecordingDaysSchema, RecordingDeviceUsageSchema, RecordingLocationUsageSchema, RecordingManifestSchema, RecordingObjectTriggerClassSchema, RecordingRangeSchema, RecordingRebalanceInputSchema, RecordingRebalanceMoveSchema, RecordingRebalancePlanSchema, RecordingRebalanceSkipReasonSchema, RecordingRebalanceSkipSchema, RecordingRetentionSchema, RecordingStatusSchema, RecordingStorageModeSchema, RecordingStorageUsageSchema, RecordingTriggersSchema, RecordingWeekdaySchema, RedirectLoginMethodSchema, RelocateFootageClassSchema, RelocateFootageInputSchema, RelocateJobSchema, RelocateJobStateSchema, RelocateMediaInputSchema, RenderedAsSchema, ReportMotionInputSchema, ReportedFailureContributionSchema, ReportedLoadContributionSchema, RequestCensusGroupSchema, RequestCensusProcedureSchema, RequestCensusSnapshotSchema, RequestCensusStatusSchema, RetrainAnnotationDraftSchema, RetrainAnnotationKindSchema, RetrainAnnotationSchema, RetrainAnnotationSourceSchema, RetrainAssistResultSchema, RetrainAssistSubjectSchema, RetrainCopyRefusalSchema, RetrainFrameCandidateSchema, RetrainFrameListSchema, RetrainFrameSchema, RetrainFrameSelectionSchema, RetrainMacroClassSchema, RetrainStatusSchema, RetrainTrackSchema, RetrainTransitionResultSchema, RingBuffer, RtpSourceSchema, RtspRestreamEntrySchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerInferenceDeviceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, SCENE_CONDITIONS, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, SCENE_DEFAULT_ANCHOR_THRESHOLD, SCENE_DEFAULT_CHECK_INTERVAL_SEC, SCENE_DEFAULT_OBSERVATION_SPACING_SEC, SCENE_DEFAULT_QUIET_SECONDS, SCENE_DEFAULT_UNCOVERED_POLICY, SCENE_DIVERGED, SCENE_RESET_RECAPTURES, SCOPE_PRESETS, SENSOR_FEATURES, SENSOR_MAP, SOURCE_CAPS, SOURCE_CAP_ACTIVE_FIELD, SOURCE_CAP_CHANGED_AT_FIELD, SOURCE_DEVICE_TYPES, SOURCE_INFO_METADATA_KEY, STREAM_PROFILE_META, STREAM_QUALITY_LABELS, SUB_DETECTION_TYPES, SYSTEM_CAP_NAMES, SYSTEM_SCOPE_DEVICE_METHODS, SceneCheckSchema, SceneConditionSchema, SceneConfirmSchema, SceneMonitorSchema, SceneMonitorStateSchema, SceneMonitorStatusSchema, SceneReferenceSchema, SceneUnavailableSchema, SceneUncoveredPolicySchema, SceneVerdictSchema, ScopedTokenSchema, ScopedTokenSummarySchema, ScoredObjectEventSchema, ScriptRunnerStatusSchema, SearchResultSchema, SendEmailInputSchema, SendEmailResultSchema, SendResultSchema, SensorEventSchema, ServerBootModeSchema, ServerPackageStatusSchema, ServerRollbackInfoSchema, ServerUpdateActionResultSchema, ServerUpdateCheckResultSchema, ServerUpdateStateSchema, SetLoggingSettingsInputSchema, SetSiteLocationInputSchema, SettingsPatchSchema, SettingsRecordSchema, SettingsSchemaWithValuesSchema, SettingsUpdateResultSchema, ShmRingStatsSchema, SiteLocationSchema, SiteLocationSourceSchema, SiteLocationStatusSchema, SmokeStatusSchema, SmtpStatusSchema, SnapshotImageSchema, SourceInfoSchema, SpatialDetectionSchema, SsoBridgeClaimsSchema, StartEmbeddedInputSchema, StationaryObjectSchema, AbortUploadInputSchema as StorageAbortUploadInputSchema, BeginDownloadInputSchema as StorageBeginDownloadInputSchema, BeginDownloadResultSchema as StorageBeginDownloadResultSchema, BeginUploadInputSchema as StorageBeginUploadInputSchema, BeginUploadResultSchema as StorageBeginUploadResultSchema, EndDownloadInputSchema as StorageEndDownloadInputSchema, FinalizeUploadInputSchema as StorageFinalizeUploadInputSchema, StorageLocationDeclarationSchema, StorageLocationRefSchema, StorageLocationSchema, StorageLocationTypeSchema, StorageMigrationClassSchema, StorageMigrationDestinationsSchema, StorageMigrationFindingCodeSchema, StorageMigrationFindingSchema, StorageMigrationFootageMoveInputSchema, StorageMigrationInputSchema, StorageMigrationJobSchema, StorageMigrationLeaseInputSchema, StorageMigrationMediaMoveInputSchema, StorageMigrationModeSchema, StorageMigrationMoveSchema, StorageMigrationParticipantSchema, StorageMigrationPhaseSchema, StorageMigrationPlanSchema, ProviderInfoSchema as StorageProviderInfoSchema, ReadChunkInputSchema as StorageReadChunkInputSchema, TestLocationResultSchema as StorageTestLocationResultSchema, WriteChunkInputSchema as StorageWriteChunkInputSchema, StreamCodecSchema, StreamFormatSchema, StreamNetworkStatsSchema, StreamParamsOptionsSchema, StreamParamsStatusSchema, StreamProfileConfigSchema, StreamProfileOptionsSchema, StreamProfilePatchSchema, StreamProfileSchema, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, SwitchStatusSchema, SystemMetricsSchema, SystemMirror, TAXONOMY_COLORS, TIMELAPSE_DENSE_FLOOR_SEC, TIMEZONES, TRANSCODE_DOWN_MAX_BITRATE_KBPS, TRANSCODE_DOWN_MAX_HEIGHT, TamperStatusSchema, TankStatusSchema, TargetKindCapsSchema, TargetKindLevelSchema, TargetKindSchema, TargetSchema, TemperatureSensorStatusSchema, TerminalInstanceInfoSchema, TerminalLegacyCameraSchema, TerminalOutputBatchSchema, TerminalOutputEventSchema, TerminalProfileInfoSchema, TerminalSessionInfoSchema, TestConnectionResultSchema$1 as TestConnectionResultSchema, TestConnectionStatusEnum, TestResultSchema, TimelapseRuleInputSchema, TimelapseRulePatchSchema, TimelapseRuleSchema, TimelapseTemplateSchema, ToastSchema, TokenScopeSchema, TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, TrackCascadeCountsSchema, TrackEnvelopeSchema, TrackFlagsPatchSchema, TrackFlagsSchema, TrackProjectionSchema, TrackSchema, TrackSourceSchema, TrackStateSchema, TrackZoneFilterSchema, TrackedDetectionSchema, TrainingExportDeviceTotalsSchema, TrainingExportSummarySchema, TransportPlaneCountsSchema, TransportPlaneSchema, TurnServerSchema, UNATTRIBUTED_BUCKET_KEY, UNIT_TABLE, BrokerInfoSchema$1 as UnifiedBrokerInfoSchema, UnitConversionError, UnstampedEventMediaCountSchema, UpdateIntegrationInputSchema, UpdateStatusSchema, UpdateUserInputSchema, UserRecordSchema, UserSummarySchema, VISIT_MERGE_GAP_MS, VacuumControlStatusSchema, VacuumStateSchema, ValveStateSchema, ValveStatusSchema, VectorDeclareIndexInputSchema, VectorDeleteByFilterInputSchema, VectorDeleteInputSchema, VectorDeleteResultSchema, VectorFilterSchema, VectorGetInputSchema, VectorGetResultSchema, VectorItemSchema, VectorMatchSchema, VectorMetadataSchema, VectorMetricSchema, VectorQueryInputSchema, VectorQueryResultSchema, VectorStatsInputSchema, VectorStatsResultSchema, VectorUpsertInputSchema, VectorUpsertResultSchema, VibrationStatusSchema, VideoEncodeSchema, WEBRTC_EGRESS_PROFILE, WELL_KNOWN_TABS, WELL_KNOWN_TAB_MAP, WaterHeaterStatusSchema, WeatherStatusSchema, WebrtcStreamChoiceSchema, WebrtcStreamTargetSchema, WhiteBalanceModeSchema, WidgetHostEnum, WidgetLoginMethodSchema, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, YAMNET_TO_MACRO, ZoneCrossingDirectionSchema, ZoneCrossingSchema, ZoneKindEnum, ZoneRuleModeEnum, ZoneRuleSchema, ZoneRuleStageEnum, ZoneRulesArraySchema, ZoneSchema, ZoneScopeBreakdownSchema, __resetLogChannelRegistryForTests, accessoriesCapability, accessoryStableId, addonPagesCapability, addonPagesSourceCapability, addonRoutesCapability, addonSettingsCapability, addonWidgetsCapability, addonWidgetsSourceCapability, addonsCapability, adminUiCapability, airQualitySensorCapability, alarmPanelCapability, alertsCapability, ambientLightSensorCapability, asBoolean, asJsonArray, asJsonObject, asNumber, asString, assertTimelapseCadences, audioAnalysisCapability, audioAnalyzerCapability, audioCodecCapability, audioIsFailClosed, audioKindId, audioLabelChoices, audioMetricsCapability, audioModeOf, audioOrDefaults, audioPlanFromEncodeProfile, authProviderCapability, autoAssignProfiles, automationControlCapability, backupCapability, bareAddonId, batteryCapability, bestLocationMatch, binaryCapability, bindAddonActions, brightnessCapability, brokerCapability, buildAddonRouteProvider, buildAudioArgs, buildEventKindDescriptor, buildFfmpegArgs, buildInputArgs, buildModelVariantGroups, buildNcTaxonomy, buildRoleScopes, buildStreamParamsConfigSchema, buildVideoArgs, buttonCapability, cameraCredentialsCapability, cameraPipelineConfigCapability, cameraStreamsCapability, canConvertUnit, canonicalEgressPlan, carbonMonoxideCapability, cellsToRects, classifyBearerPrincipal, classifyStream, classifyStreams, climateControlCapability, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, collectHydratedFieldEntries, collectHydratedFieldValues, colorCapability, colorForKind, commitWatchdogRestart, compileExpression, compileExpressionSafe, composeSwitchedOff, conditionDepth, conditionExclusionReason, conditionVisibleForKind, connectionTestCapability, connectivityCapability, consumablesCapability, contactCapability, controlCapability, convertUnit, coreBlockAddonId, coreBlockIdFromAddonId, coreBlocksCapability, cosineSimilarity, countConditionLeaves, coverCapability, createDeviceProxy, createDurableState, createEvent, createEventBusSliceSource, createExpressionScope, createHwAccelCache, createLazyTrpcSource, createLogChannelsProvider, createMirrorSource, createRuntimeStateBridge, createSliceHandle, createSystemProxy, customAction, customModelRegistryCapability, dataStoreProviderCapability, dayNightCapability, declarationOwnerNodeId, declareLogChannel, decodeVectorBase64, decoderCapability, defaultDeliveryForSection, defaultDeviceFor, defineCustomActions, deriveBatteryPresence, deriveCameraSwitches, deriveDetailCropRect, deriveRecordingMode, describeModelVariant, detectAccessRole, detectionPipelineCapability, deviceAdoptionCapability, deviceBackendToFormat, deviceCustomAction, deviceDiscoveryCapability, deviceExportCapability, deviceManagerCapability, deviceMatchesProfile, deviceOpsCapability, deviceProviderCapability, deviceSelectorMatches, deviceStateCapability, deviceStatusCapability, doorbellCapability, droppedConditionsForKind, egressTranscodeSharingKey, egressTransportFromRequest, embeddingEncoderCapability, emitDownForOwnedCaps, emitReadiness, encodeProfileFromStreamShape, encodeVectorBase64, enumSensorCapability, enumerateInferenceDevices, enumerateItemArrayFields, enumerateSchemaFields, errMsg, evaluateAst, evaluateExpressionSource, evaluatePoolMemory, evaluateSensorEdge, evaluateZoneRules, event, eventEmitterCapability, eventsCapability, expandCapMethods, extractNestedAddonId, extractSourceInfoFromMetadata, faceGalleryCapability, failureContributionCapability, failureRate, fanControlCapability, featureProbeCapability, filesystemBrowseCapability, findTimezone, floodCapability, foldSnapshotByFunction, formatForBackend, formatForRuntime, gasCapability, generateAutomationBlock, getAudioMacroClassIds, getByPath, getCapsByProviderKind, getLogChannelRegistry, getTaxonomyEntry, hasMotionTrigger, hfModelUrl, htmlToText, humidifierCapability, humiditySensorCapability, hydrateSchema, imageCapability, imageSettingsCapability, inferModelProvider, initialPoolMemoryState, integrationsCapability, intercomCapability, invocationFromEncodeProfile, isAgentOnlyPlacement, isArrayOutputSchema, isAudioLabelSelected, isAudioRule, isBaseConditionKey, isBatteryPresenceFault, isClusterScopedStep, isCollectionArrayMethod, isDeployableToAgent, isDetectionMacroClass, isDeviceConfigCap, isDeviceScopedCap, isEvent, isFirstLevelMacroClass, isIsolatedBuiltin, isNode, isObjectInput, isOccupancyRule, isRestoredCap, isSameAddonId, isScheduleActive, isSoftwareDecode, isSourceCap, isSystemDelivery, isVoidInput, jobKindSchema, kebabToCamel, knownValues, lawnMowerControlCapability, lifecycleJobSchema, lifecycleJobScopeSchema, lifecycleJobStateSchema, lifecycleTaskSchema, llmCapability, llmRuntimeCapability, loadContributionCapability, localNetworkCapability, locationSimilarity, lockControlCapability, logBannerArgs, logChannelsCapability, logDestinationCapability, logLevelAtMost, loginMethodCapability, looseSchema, makeProfileBrokerId, makeSourceBrokerId, mapAudioLabelToMacro, markdownToHtmlLite, markdownToText, maskUrlCredentials, mediaPlayerCapability, mergeSourceInfo, meshNetworkCapability, method, methodAccessForHttpMethod, metricsProviderCapability, modelConvertCapability, modelDistributorCapability, modelFormatForRuntime, motionCapability, motionDetectionCapability, motionTriggerCapability, motionZonesCapability, mqttBrokerCapability, nativeObjectDetectionCapability, networkAccessCapability, networkQualityCapability, nodePin, nodesCapability, normalizeAddonInitResult, normalizeAudioLabel, normalizeTokenScopes, normalizeUnit, notificationOutputCapability, notificationRulesCapability, notifierCapability, numericSensorCapability, oauthIntegrationCapability, objectInputDeclaresAddonId, osdCapability, osdManagerCapability, overlayClusterStepSettings, parseCameraStreamConfig, parseExpression, parseJsonArray, parseJsonObject, parseJsonUnknown, parseProcStatus, parseProfileBrokerId, parseRuleSection, parseStreamParamsFormPatch, patchAudio, petFeederCapability, pickAccessoryControl, pickClusterStepModels, pickClusterStepSettings, pickDetailCropConvention, pickNativeLeaseOverride, pickPreferredRtspEntry, pickRestartCandidate, pickVideoEncoder, pickerForCondition, pipelineAnalyticsCapability, pipelineExecutorCapability, pipelineOrchestratorCapability, pipelineRunnerCapability, plateGalleryCapability, platformProbeCapability, poolMemoryThreshold, powerMeterCapability, prepareNotification, presenceCapability, pressureSensorCapability, principalMayReachAddon, privacyMaskCapability, procedureAuthKey, ptzAutotrackCapability, ptzCapability, pythonScriptForBackend, readClusterStepModels, readClusterStepSettings, readDetailCropConvention, readDeviceStateFrom, readNativeLeaseOverride, readNodePin, readTimelapseGeneratedAt, readinessKey, rebootCapability, recordingCapability, recordingExportCapability, rectsToCells, reducePoints, requiresPython, resetPoolBaseline, resolveAddonExecution, resolveAddonGroup, resolveAddonPlacement, resolveAddonRuntime, resolveBucketMs, resolveCapMount, resolveClusterStepModelId, resolveDetectionRuntime, resolveDeviceControlKind, resolveDeviceProfile, resolveEgressDecodeHwAccel, resolveFormat, resolveHydratedFieldValue, resolveMethodAuth, resolveModelFormat, resolveMutate, resolvePoolMemoryPolicy, resolveRecordingProfiles, resolveRunnerId, resolveVariantModelId, resolveViewableDeviceIds, roleSpec, ruleEditorSectionsForKind, ruleKindOf, ruleKindSpec, ruleMatchesSection, ruleSection, ruleSectionOf, ruleSeedForSection, runInferenceStep, runtimeDevices, runtimeStatePolicyFor, sceneMonitorCapability, scopeInherits, scopeKey, scopesAllowAddon, scopesAllowDeviceCap, scoreRuntimes, scriptRunnerCapability, selectAssignedProfileSlots, serverManagementCapability, setByPath, settingsStoreCapability, sleep, sleepCancellable, sliceActiveValue, sliceChangedAt, smokeCapability, smtpProviderCapability, snapshotCapability, ssoBridgeCapability, startReachabilityPoll, stateVocabularyFor, storageCapability, storageEvictableCapability, storageMigrationCapability, storageProviderCapability, streamBrokerCapability, streamCatalogCapability, streamParamsCapability, streamPixels, streamQualityLabel, subKindsOf, summarisePrivacyAudio, summarizeEffectiveScope, supportedRuntimes, switchCapability, switchedOffIds, synthesizeSourceInfo, systemCapability, systemEventFilterApplies, systemEventFilterAppliesToAnyKind, tamperCapability, taskLogEntrySchema, taskPhaseSchema, taskTargetSchema, temperatureSensorCapability, terminalSessionCapability, textToHtml, toDeviceSummary, toExpressionValue, toNodeId, toStreamSourceEntry, toastCapability, toggleAudioLabel, tokenize, transcodeBody, tryConvertUnit, turnProviderCapability, unitDimension, unitsForDimension, updateCapability, userManagementCapability, userPasskeysCapability, vacuumControlCapability, validateExpressionSource, validateRecipeBounds, valveCapability, vectorDimFromBase64, vectorStoreCapability, vibrationCapability, videoclipsCapability, viewerUiCapability, waterHeaterCapability, weatherCapability, webrtcClientHintsSchema, webrtcSessionCapability, wiringAddonHealthSchema, wiringHealthSnapshotSchema, wiringNodeHealthSchema, wiringProbeKindSchema, wiringProbeResultSchema, zodEntriesToConfigUI, zoneAnalyticsCapability, zoneRulesCapability, zonesCapability };
@@ -91,24 +91,77 @@ export declare const StorageMigrationFootageMoveInputSchema: z.ZodObject<{
91
91
  leaseId: z.ZodString;
92
92
  }, z.core.$strip>;
93
93
  export type StorageMigrationFootageMoveInput = z.infer<typeof StorageMigrationFootageMoveInputSchema>;
94
+ /**
95
+ * What a `relocateMedia` pass DOES. One engine, three passes — never a second
96
+ * mover (the engine already walks both collections with a timestamp cursor and
97
+ * already has a stamp-without-copy path).
98
+ *
99
+ * - `move` — the default and the historical behaviour: event-media and
100
+ * retrain blobs move to `toLocationId` and their rows are
101
+ * stamped. The enrolled gallery is skipped (D197).
102
+ * - `seal` — ROWS ONLY, no bytes. Every row whose `locationId` is NULL is
103
+ * stamped with `toLocationId`. `toLocationId` here is the id the
104
+ * bytes ALREADY sit on — today's `eventMedia` default — because
105
+ * a NULL row means "wherever `eventMedia` points *now*", and the
106
+ * instant a repoint moves that pointer the row reads from the
107
+ * new disk while its bytes are on the old one.
108
+ * - `gallery` — the inverse selection of `move`: ONLY the retention-exempt
109
+ * (enrolled-gallery) rows, which `move` deliberately skips.
110
+ * `galleryMedia` is `cardinality: 'single'`, so this pass can
111
+ * never run beside a live second location: it is stop-the-world
112
+ * by construction, which is acceptable only because the gallery
113
+ * is a few KB per enrolled sample.
114
+ */
115
+ export declare const MediaRelocateModeSchema: z.ZodEnum<{
116
+ move: "move";
117
+ seal: "seal";
118
+ gallery: "gallery";
119
+ }>;
120
+ export type MediaRelocateMode = z.infer<typeof MediaRelocateModeSchema>;
94
121
  export declare const RelocateMediaInputSchema: z.ZodObject<{
95
122
  toLocationId: z.ZodString;
96
123
  throttleMbps: z.ZodOptional<z.ZodNumber>;
124
+ mode: z.ZodOptional<z.ZodEnum<{
125
+ move: "move";
126
+ seal: "seal";
127
+ gallery: "gallery";
128
+ }>>;
97
129
  }, z.core.$strip>;
98
130
  export type RelocateMediaInput = z.infer<typeof RelocateMediaInputSchema>;
131
+ /** How many rows still carry NO `locationId` — the population a repoint would
132
+ * silently re-aim at a disk that does not hold their bytes. Zero is the only
133
+ * value that permits a non-blocking `eventMedia` cutover. */
134
+ export declare const UnstampedEventMediaCountSchema: z.ZodObject<{
135
+ media: z.ZodNumber;
136
+ retrainFrames: z.ZodNumber;
137
+ total: z.ZodNumber;
138
+ }, z.core.$strip>;
139
+ export type UnstampedEventMediaCount = z.infer<typeof UnstampedEventMediaCountSchema>;
99
140
  export declare const StorageMigrationMediaMoveInputSchema: z.ZodObject<{
100
141
  toLocationId: z.ZodString;
101
142
  throttleMbps: z.ZodOptional<z.ZodNumber>;
143
+ mode: z.ZodOptional<z.ZodEnum<{
144
+ move: "move";
145
+ seal: "seal";
146
+ gallery: "gallery";
147
+ }>>;
102
148
  leaseId: z.ZodString;
103
149
  }, z.core.$strip>;
104
150
  export type StorageMigrationMediaMoveInput = z.infer<typeof StorageMigrationMediaMoveInputSchema>;
105
- /** The independently selectable logical storage classes. `recordings`
106
- * encompasses the high and mid segment profiles; `recordingsLow` is low
107
- * segments; `eventMedia` is post-analysis blobs. */
151
+ /** The independently selectable logical storage classes — every class
152
+ * `storage.listLocationDeclarations` reports, so an operator never meets a
153
+ * Zod enum error where they should meet an explanation.
154
+ *
155
+ * `recordings` encompasses the high and mid segment profiles; `recordingsLow`
156
+ * is low segments; `eventMedia` is post-analysis blobs; `galleryMedia` is the
157
+ * enrolled gallery; `backups` is the system backup archive. The last two have
158
+ * their own rules — see {@link StorageMigrationFindingCodeSchema}. */
108
159
  export declare const StorageMigrationClassSchema: z.ZodEnum<{
109
160
  recordings: "recordings";
110
161
  recordingsLow: "recordingsLow";
111
162
  eventMedia: "eventMedia";
163
+ backups: "backups";
164
+ galleryMedia: "galleryMedia";
112
165
  }>;
113
166
  export type StorageMigrationClass = z.infer<typeof StorageMigrationClassSchema>;
114
167
  /** A destination is always an existing, fully-qualified location id. The
@@ -118,21 +171,63 @@ export declare const StorageMigrationDestinationsSchema: z.ZodObject<{
118
171
  recordings: z.ZodOptional<z.ZodString>;
119
172
  recordingsLow: z.ZodOptional<z.ZodString>;
120
173
  eventMedia: z.ZodOptional<z.ZodString>;
174
+ backups: z.ZodOptional<z.ZodString>;
175
+ galleryMedia: z.ZodOptional<z.ZodString>;
121
176
  }, z.core.$strip>;
122
177
  export type StorageMigrationDestinations = z.infer<typeof StorageMigrationDestinationsSchema>;
178
+ /**
179
+ * How a migration sequences the cutover against the byte move.
180
+ *
181
+ * - `blocking` — the historical order: pause, move every byte, repoint,
182
+ * resume. Recording is stopped for the whole move. Right
183
+ * for a small or a cold class, and the only legal mode for
184
+ * a `cardinality: 'single'` class.
185
+ * - `nonBlocking` — repoint FIRST, drain behind: seal, pause, repoint,
186
+ * refresh, resume, then move the past with everything
187
+ * running. The pause is three bounded instants (a detach +
188
+ * attach round, a write-gate drain, a lease) instead of one
189
+ * bounded by bytes. 1.09 TB at 7–14 MB/s is thirty hours of
190
+ * stopped recording under `blocking`; the same move is
191
+ * seconds of stopped recording under `nonBlocking`.
192
+ *
193
+ * The mode is on the JOB, not only on the input, because `status` is where an
194
+ * operator finds out which one is running.
195
+ */
196
+ export declare const StorageMigrationModeSchema: z.ZodEnum<{
197
+ blocking: "blocking";
198
+ nonBlocking: "nonBlocking";
199
+ }>;
200
+ export type StorageMigrationMode = z.infer<typeof StorageMigrationModeSchema>;
123
201
  /** Shared input for planning and starting an orchestrated storage migration. */
124
202
  export declare const StorageMigrationInputSchema: z.ZodObject<{
125
203
  destinations: z.ZodObject<{
126
204
  recordings: z.ZodOptional<z.ZodString>;
127
205
  recordingsLow: z.ZodOptional<z.ZodString>;
128
206
  eventMedia: z.ZodOptional<z.ZodString>;
207
+ backups: z.ZodOptional<z.ZodString>;
208
+ galleryMedia: z.ZodOptional<z.ZodString>;
129
209
  }, z.core.$strip>;
130
210
  throttleMbps: z.ZodOptional<z.ZodNumber>;
211
+ mode: z.ZodOptional<z.ZodEnum<{
212
+ blocking: "blocking";
213
+ nonBlocking: "nonBlocking";
214
+ }>>;
131
215
  }, z.core.$strip>;
132
216
  export type StorageMigrationInput = z.infer<typeof StorageMigrationInputSchema>;
133
- /** The durable coordinator state machine. The only phase that changes default
134
- * locations is `repointing`, after every selected mover has completed and been
135
- * verified. */
217
+ /**
218
+ * The durable coordinator state machine.
219
+ *
220
+ * `blocking`:
221
+ * planning → pausing → moving → verifying → repointing → refreshing → resuming → done
222
+ *
223
+ * `nonBlocking`:
224
+ * planning → sealing → pausing → repointing → refreshing → resuming → draining → verifying → done
225
+ *
226
+ * Same phases, different order plus two new ones — not a second mover.
227
+ * `sealing` closes the `eventMedia` NULL-row hole BEFORE anything is paused;
228
+ * `draining` runs the same movers UNLEASED, after every writer is back up.
229
+ * `repointing` is still the only phase that changes a default location.
230
+ */
136
231
  export declare const StorageMigrationPhaseSchema: z.ZodEnum<{
137
232
  moving: "moving";
138
233
  verifying: "verifying";
@@ -140,7 +235,9 @@ export declare const StorageMigrationPhaseSchema: z.ZodEnum<{
140
235
  done: "done";
141
236
  cancelled: "cancelled";
142
237
  planning: "planning";
238
+ sealing: "sealing";
143
239
  pausing: "pausing";
240
+ draining: "draining";
144
241
  repointing: "repointing";
145
242
  refreshing: "refreshing";
146
243
  resuming: "resuming";
@@ -157,6 +254,8 @@ export declare const StorageMigrationMoveSchema: z.ZodObject<{
157
254
  recordings: "recordings";
158
255
  recordingsLow: "recordingsLow";
159
256
  eventMedia: "eventMedia";
257
+ backups: "backups";
258
+ galleryMedia: "galleryMedia";
160
259
  }>;
161
260
  fromLocationId: z.ZodString;
162
261
  toLocationId: z.ZodString;
@@ -180,15 +279,23 @@ export declare const StorageMigrationJobSchema: z.ZodObject<{
180
279
  done: "done";
181
280
  cancelled: "cancelled";
182
281
  planning: "planning";
282
+ sealing: "sealing";
183
283
  pausing: "pausing";
284
+ draining: "draining";
184
285
  repointing: "repointing";
185
286
  refreshing: "refreshing";
186
287
  resuming: "resuming";
187
288
  }>;
289
+ mode: z.ZodEnum<{
290
+ blocking: "blocking";
291
+ nonBlocking: "nonBlocking";
292
+ }>;
188
293
  destinations: z.ZodObject<{
189
294
  recordings: z.ZodOptional<z.ZodString>;
190
295
  recordingsLow: z.ZodOptional<z.ZodString>;
191
296
  eventMedia: z.ZodOptional<z.ZodString>;
297
+ backups: z.ZodOptional<z.ZodString>;
298
+ galleryMedia: z.ZodOptional<z.ZodString>;
192
299
  }, z.core.$strip>;
193
300
  throttleMbps: z.ZodNumber;
194
301
  moves: z.ZodArray<z.ZodObject<{
@@ -196,6 +303,8 @@ export declare const StorageMigrationJobSchema: z.ZodObject<{
196
303
  recordings: "recordings";
197
304
  recordingsLow: "recordingsLow";
198
305
  eventMedia: "eventMedia";
306
+ backups: "backups";
307
+ galleryMedia: "galleryMedia";
199
308
  }>;
200
309
  fromLocationId: z.ZodString;
201
310
  toLocationId: z.ZodString;
@@ -223,20 +332,94 @@ export declare const StorageMigrationJobSchema: z.ZodObject<{
223
332
  error: z.ZodNullable<z.ZodString>;
224
333
  }, z.core.$strip>;
225
334
  export type StorageMigrationJob = z.infer<typeof StorageMigrationJobSchema>;
335
+ /**
336
+ * What the planner NOTICED but did not refuse.
337
+ *
338
+ * A refusal throws — the operator cannot miss it. A finding is the other half:
339
+ * something true about this plan that changes what the operator should expect,
340
+ * surfaced where they read it rather than in a document they will not open.
341
+ *
342
+ * - `sharesDeviceWithSource` — the destination realpath's to the same place as
343
+ * the source. The move will be a row re-stamp, not a byte move, and it buys
344
+ * no redundancy. NOTE: this is PATH identity, not `st_dev` — two distinct
345
+ * directories on one filesystem are NOT detected. See
346
+ * `deviceIdentityUnknown`.
347
+ * - `deviceIdentityUnknown` — a location carries a `nodeId` other than this
348
+ * one (or has no `basePath`), so its realpath cannot be taken here and the
349
+ * same-device question was not answered at all. Stated rather than assumed
350
+ * clear: a check that silently never fires is worse than no check.
351
+ * - `unstampedEventMediaRows` — how many `eventMedia`/retrain rows still carry
352
+ * no `locationId`. Non-zero refuses a `nonBlocking` cutover.
353
+ * - `blockingOnly` — this class is `cardinality: 'single'`, so it can never
354
+ * span two locations and can only ever be moved stop-the-world.
355
+ * - `noMover` — the class is selectable and planned, but no addon owns a mover
356
+ * for it. The migration cannot move its bytes.
357
+ */
358
+ export declare const StorageMigrationFindingCodeSchema: z.ZodEnum<{
359
+ sharesDeviceWithSource: "sharesDeviceWithSource";
360
+ deviceIdentityUnknown: "deviceIdentityUnknown";
361
+ unstampedEventMediaRows: "unstampedEventMediaRows";
362
+ blockingOnly: "blockingOnly";
363
+ noMover: "noMover";
364
+ }>;
365
+ export type StorageMigrationFindingCode = z.infer<typeof StorageMigrationFindingCodeSchema>;
366
+ export declare const StorageMigrationFindingSchema: z.ZodObject<{
367
+ code: z.ZodEnum<{
368
+ sharesDeviceWithSource: "sharesDeviceWithSource";
369
+ deviceIdentityUnknown: "deviceIdentityUnknown";
370
+ unstampedEventMediaRows: "unstampedEventMediaRows";
371
+ blockingOnly: "blockingOnly";
372
+ noMover: "noMover";
373
+ }>;
374
+ storageClass: z.ZodEnum<{
375
+ recordings: "recordings";
376
+ recordingsLow: "recordingsLow";
377
+ eventMedia: "eventMedia";
378
+ backups: "backups";
379
+ galleryMedia: "galleryMedia";
380
+ }>;
381
+ message: z.ZodString;
382
+ }, z.core.$strip>;
383
+ export type StorageMigrationFinding = z.infer<typeof StorageMigrationFindingSchema>;
226
384
  export declare const StorageMigrationPlanSchema: z.ZodObject<{
227
385
  destinations: z.ZodObject<{
228
386
  recordings: z.ZodOptional<z.ZodString>;
229
387
  recordingsLow: z.ZodOptional<z.ZodString>;
230
388
  eventMedia: z.ZodOptional<z.ZodString>;
389
+ backups: z.ZodOptional<z.ZodString>;
390
+ galleryMedia: z.ZodOptional<z.ZodString>;
231
391
  }, z.core.$strip>;
392
+ mode: z.ZodEnum<{
393
+ blocking: "blocking";
394
+ nonBlocking: "nonBlocking";
395
+ }>;
232
396
  moves: z.ZodArray<z.ZodObject<{
233
397
  storageClass: z.ZodEnum<{
234
398
  recordings: "recordings";
235
399
  recordingsLow: "recordingsLow";
236
400
  eventMedia: "eventMedia";
401
+ backups: "backups";
402
+ galleryMedia: "galleryMedia";
237
403
  }>;
238
404
  fromLocationId: z.ZodString;
239
405
  toLocationId: z.ZodString;
240
406
  }, z.core.$strip>>;
407
+ findings: z.ZodArray<z.ZodObject<{
408
+ code: z.ZodEnum<{
409
+ sharesDeviceWithSource: "sharesDeviceWithSource";
410
+ deviceIdentityUnknown: "deviceIdentityUnknown";
411
+ unstampedEventMediaRows: "unstampedEventMediaRows";
412
+ blockingOnly: "blockingOnly";
413
+ noMover: "noMover";
414
+ }>;
415
+ storageClass: z.ZodEnum<{
416
+ recordings: "recordings";
417
+ recordingsLow: "recordingsLow";
418
+ eventMedia: "eventMedia";
419
+ backups: "backups";
420
+ galleryMedia: "galleryMedia";
421
+ }>;
422
+ message: z.ZodString;
423
+ }, z.core.$strip>>;
241
424
  }, z.core.$strip>;
242
425
  export type StorageMigrationPlan = z.infer<typeof StorageMigrationPlanSchema>;
@@ -3445,6 +3445,7 @@ function createDeviceProxy(api, binding, opts) {
3445
3445
  getStorageMigrationMoveStatus: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getStorageMigrationMoveStatus", "query", input),
3446
3446
  cancelStorageMigrationMove: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "cancelStorageMigrationMove", "mutation", input),
3447
3447
  relocateMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "relocateMedia", "mutation", input),
3448
+ countUnstampedEventMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "countUnstampedEventMedia", "query", input),
3448
3449
  listRelocateMediaJobs: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "listRelocateMediaJobs", "query", input),
3449
3450
  cancelRelocateMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "cancelRelocateMedia", "mutation", input),
3450
3451
  listOpsLog: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "listOpsLog", "query", input),
@@ -3445,6 +3445,7 @@ function createDeviceProxy(api, binding, opts) {
3445
3445
  getStorageMigrationMoveStatus: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "getStorageMigrationMoveStatus", "query", input),
3446
3446
  cancelStorageMigrationMove: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "cancelStorageMigrationMove", "mutation", input),
3447
3447
  relocateMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "relocateMedia", "mutation", input),
3448
+ countUnstampedEventMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "countUnstampedEventMedia", "query", input),
3448
3449
  listRelocateMediaJobs: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "listRelocateMediaJobs", "query", input),
3449
3450
  cancelRelocateMedia: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "cancelRelocateMedia", "mutation", input),
3450
3451
  listOpsLog: (input) => dispatch("pipeline-analytics", "pipelineAnalytics", "listOpsLog", "query", input),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/types",
3
- "version": "1.2.123",
3
+ "version": "1.2.124",
4
4
  "description": "Shared types, interfaces, and model catalogs for the CamStack detection ecosystem",
5
5
  "keywords": [
6
6
  "camstack",