@camstack/addon-post-analysis 1.2.622 → 1.2.623

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.
Files changed (15) hide show
  1. package/THIRD_PARTY_MODELS.md +2 -2
  2. package/dist/{clip-model-registry-EDTOCKN9.mjs → clip-model-registry-C58fyELd.mjs} +181 -65
  3. package/dist/{clip-model-registry-MHJ9BSUV.js → clip-model-registry-KKT83z9U.js} +192 -64
  4. package/dist/embedding-encoder/index.js +1 -1
  5. package/dist/embedding-encoder/index.mjs +1 -1
  6. package/dist/pipeline-analytics/_stub.js +2 -2
  7. package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-DAyVukQp.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-_ahOxwNA.mjs} +3 -3
  8. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-V5-s2hmZ.mjs +26 -0
  9. package/dist/pipeline-analytics/{_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-CssYIiFD.mjs → _virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-B1HZu0i3.mjs} +1 -1
  10. package/dist/pipeline-analytics/{hostInit-C4-dCKYR.mjs → hostInit-CdRVx4vF.mjs} +3 -3
  11. package/dist/pipeline-analytics/index.js +335 -86
  12. package/dist/pipeline-analytics/index.mjs +335 -86
  13. package/dist/pipeline-analytics/remoteEntry.js +1 -1
  14. package/package.json +1 -1
  15. package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-CTvx3PDS.mjs +0 -26
@@ -123,8 +123,8 @@ entry kept resolvable for a saved selection but no longer offered.
123
123
  | --- | --- | --- | --- | --- | --- |
124
124
  | `yolo26n-seg`, `yolo26s-seg`, `yolo26m-seg` | [Ultralytics](https://github.com/ultralytics/ultralytics) | AGPL-3.0 / AGPL-3.0 (`AGPL-3.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | exported to ONNX, OpenVINO IR and CoreML | mirror `segmentation/yolo26-seg` |
125
125
  | `yolo26n` (default), `yolo26s`, `yolo26m`, `yolo26l`, `yolo26x` (hidden), `yolo26n-fp16` (hidden), `yolo26n-int8`, `yolo26s-fp16` (hidden), `yolo26s-int8`, `yolo26m-fp16` (hidden), `yolo26m-int8`, `yolo26l-fp16` (hidden), `yolo26l-int8`, `yolo26n-320`, `yolo26n-320-int8`, `yolo26n-256`, `yolo26n-256-int8`, `yolo26s-320`, `yolo26s-320-int8`, `yolo26s-256`, `yolo26s-256-int8`, `yolo26m-320`, `yolo26m-320-int8`, `yolo26m-256`, `yolo26m-256-int8`, `yolo26l-320`, `yolo26l-320-int8`, `yolo26l-256`, `yolo26l-256-int8`, `yolo26x-fp16` (hidden), `yolo26x-int8` (hidden) | [Ultralytics](https://github.com/ultralytics/ultralytics) | AGPL-3.0 / AGPL-3.0 (`AGPL-3.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | exported to ONNX, OpenVINO IR and CoreML (scripts/build-camstack-models.py); OpenVINO FP16 export; exported to OpenVINO IR, then OpenVINO NNCF INT8 post-training quantisation; re-exported at 320×320 to ONNX, OpenVINO IR and CoreML; re-exported at 320×320 to OpenVINO IR; OpenVINO NNCF INT8 post-training quantisation; re-exported at 256×256 to ONNX, OpenVINO IR and CoreML; re-exported at 256×256 to OpenVINO IR; OpenVINO NNCF INT8 post-training quantisation | mirror `objectDetection/yolo26` |
126
- | `ssd-mobilenet-v2-coco-edgetpu` (default) | [Google Coral test_data](https://github.com/google-coral/test_data) | Apache-2.0 / Apache-2.0 (`Apache-2.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | none | https://github.com/google-coral/test_data |
127
- | `yolov9s-320-edgetpu`, `yolov9s-512-edgetpu` | [YOLOv9-s EdgeTPU (Dan Brown)](https://github.com/dbro/frigate-detector-edgetpu-yolo9) | GPL-3.0 / GPL-3.0 (`GPL-3.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | none: the publisher release files are mirrored byte-identical | mirror `objectDetection/yolov9` |
126
+ | `ssd-mobilenet-v2-coco-edgetpu` | [Google Coral test_data](https://github.com/google-coral/test_data) | Apache-2.0 / Apache-2.0 (`Apache-2.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | none | https://github.com/google-coral/test_data |
127
+ | `yolov9s-320-edgetpu` (default), `yolov9s-512-edgetpu` | [YOLOv9-s EdgeTPU (Dan Brown)](https://github.com/dbro/frigate-detector-edgetpu-yolo9) | GPL-3.0 / GPL-3.0 (`GPL-3.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | none: the publisher release files are mirrored byte-identical | mirror `objectDetection/yolov9` |
128
128
  | `yolov9t-320`, `yolov9t-320-int8`, `yolov9t-640`, `yolov9t-640-int8`, `yolov9s-320`, `yolov9s-320-int8`, `yolov9s-640`, `yolov9s-640-int8`, `yolov9m-320`, `yolov9m-320-int8`, `yolov9m-640`, `yolov9m-640-int8`, `yolov9c-320`, `yolov9c-320-int8`, `yolov9c-640`, `yolov9c-640-int8` | [Ultralytics](https://github.com/ultralytics/ultralytics) | AGPL-3.0 / AGPL-3.0 (`AGPL-3.0.txt`) | COCO 2017: annotations CC-BY-4.0; images under their Flickr owners' terms | exported at 320×320 to ONNX, OpenVINO IR FP16 and CoreML; exported at 320×320 to OpenVINO IR; OpenVINO NNCF INT8 post-training quantisation; exported at 640×640 to ONNX, OpenVINO IR FP16 and CoreML; exported at 640×640 to OpenVINO IR; OpenVINO NNCF INT8 post-training quantisation | mirror `objectDetection/yolov9` |
129
129
 
130
130
  ### Package detection
@@ -1,5 +1,5 @@
1
1
  import { createHash } from "node:crypto";
2
- //#region ../types/dist/event-category-7pZEBmVg.mjs
2
+ //#region ../types/dist/event-category-BfJwUd2S.mjs
3
3
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
4
4
  EventCategory["SystemBoot"] = "system.boot";
5
5
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -316,6 +316,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
316
316
  */
317
317
  EventCategory["PipelineDetectionBlind"] = "pipeline.detection-blind";
318
318
  /**
319
+ * A camera's motion source has fired constantly with no subject for an hour
320
+ * (motion duty or session count over the bar, zero detections) — it is not
321
+ * blind, its motion zones or sensitivity want tuning (D907). Paired with
322
+ * {@link PipelineMotionCalm}.
323
+ */
324
+ EventCategory["PipelineMotionNoisy"] = "pipeline.motion-noisy";
325
+ /** The recovery edge of {@link PipelineMotionNoisy}: the motion fell back, or a detection arrived. */
326
+ EventCategory["PipelineMotionCalm"] = "pipeline.motion-calm";
327
+ /**
319
328
  * Per-camera pipeline config was mutated by the orchestrator
320
329
  * (3-level settings change via `setAgentAddonDefaults` /
321
330
  * `setCameraStepToggle` / `setCameraPipelineForAgent` or a
@@ -5620,7 +5629,7 @@ var ZodIssueCode = {
5620
5629
  var ZodFirstPartyTypeKind;
5621
5630
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5622
5631
  //#endregion
5623
- //#region ../types/dist/sleep-CueztlR1.mjs
5632
+ //#region ../types/dist/sleep-DJFUfKvA.mjs
5624
5633
  /**
5625
5634
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5626
5635
  * window to float samples (D455).
@@ -8212,7 +8221,7 @@ var EntryDescriptorSchema = object({
8212
8221
  /** JSON Schema of the entry body; `secret: true` marks a password field. */
8213
8222
  fields: record(string(), unknown())
8214
8223
  }).strict();
8215
- /** What crosses the wire and sits in the engine's catalog: JSON only, no Zod. */
8224
+ /** What crosses the wire from an addon: JSON only, no Zod. An unknown key is refused. */
8216
8225
  var RecordKindDeclarationSchema = object({
8217
8226
  database: _enum(RECORD_DATABASES).default("settings"),
8218
8227
  class: _enum(RECORD_CLASSES),
@@ -8231,14 +8240,6 @@ var RecordKindDeclarationSchema = object({
8231
8240
  secretPaths: array(string().min(1)).default([]),
8232
8241
  /** The id key of each array that carries a secret (`{ headers: 'name' }`). */
8233
8242
  secretArrayKeys: record(string(), string()).default({}),
8234
- /**
8235
- * RETIRED (D900): the legacy table a kind adopted from during the records
8236
- * migration. Nothing declares it any more and nothing reads it; the schema
8237
- * still ACCEPTS it because the catalog rows the migration wrote carry it
8238
- * (an orphaned kind is never redeclared) and an addon built before the
8239
- * removal still sends it. Never set it.
8240
- */
8241
- adoptsFrom: string().min(1).optional(),
8242
8243
  /** Kinds that must agree through `transact` sit in one file under one family name. */
8243
8244
  transactFamily: string().min(1).optional(),
8244
8245
  entry: EntryDescriptorSchema.optional()
@@ -14140,17 +14141,6 @@ object({
14140
14141
  createdAt: number(),
14141
14142
  updatedAt: number()
14142
14143
  });
14143
- object({
14144
- id: string(),
14145
- label: string(),
14146
- isAdmin: boolean().default(false),
14147
- allowedProviders: AllowedProviderSchema,
14148
- allowedDevices: AllowedDevicesSchema,
14149
- tokenHash: string(),
14150
- tokenPrefix: string(),
14151
- createdAt: number(),
14152
- lastUsedAt: number().optional()
14153
- });
14154
14144
  object({
14155
14145
  id: string(),
14156
14146
  userId: string(),
@@ -18162,16 +18152,36 @@ var RecordKindStateSchema = _enum([
18162
18152
  var DeclareKindResultSchema = object({
18163
18153
  kindId: number().int(),
18164
18154
  state: RecordKindStateSchema,
18165
- createdIndexes: array(string()),
18166
- /**
18167
- * RETIRED (D900): always `null`. It carried the records-migration boot guard;
18168
- * it stays on the wire, null, because an addon built before the removal reads
18169
- * an ABSENT field as "adoption pending" and refuses to start.
18170
- */
18171
- adoptionPending: _null()
18155
+ createdIndexes: array(string())
18172
18156
  });
18173
18157
  /** Keychain refs a write released (the old marker is gone from the row): the owner deletes the values. */
18174
18158
  var SecretRefsList = array(string());
18159
+ /**
18160
+ * One op of a `transact`: the single-row writes, each on a kind of the caller.
18161
+ * All ops of one call share ONE database file and ONE `transactFamily`.
18162
+ */
18163
+ var RecordTransactOpSchema = discriminatedUnion("op", [
18164
+ object({
18165
+ op: literal("put"),
18166
+ kind: RecordKindNameSchema,
18167
+ record: RecordInputSchema,
18168
+ ifRev: number().int().min(0).optional()
18169
+ }),
18170
+ object({
18171
+ op: literal("patch"),
18172
+ kind: RecordKindNameSchema,
18173
+ id: RecordIdSchema,
18174
+ data: RecordBodySchema,
18175
+ at: number().int().nullable().optional(),
18176
+ expiresAt: number().int().nullable().optional(),
18177
+ ifRev: number().int().min(1).optional()
18178
+ }),
18179
+ object({
18180
+ op: literal("delete"),
18181
+ kind: RecordKindNameSchema,
18182
+ id: RecordIdSchema
18183
+ })
18184
+ ]);
18175
18185
  var RecordSecretRefsSchema = record(string(), record(string(), string()));
18176
18186
  method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema) }), object({ kinds: record(string(), DeclareKindResultSchema) }), {
18177
18187
  kind: "mutation",
@@ -18278,6 +18288,16 @@ method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema)
18278
18288
  }), {
18279
18289
  kind: "mutation",
18280
18290
  auth: "admin"
18291
+ }), method(object({ ops: array(RecordTransactOpSchema).min(1).max(RECORD_BATCH_MAX) }), object({
18292
+ results: array(object({
18293
+ rev: number().int().nullable(),
18294
+ deleted: boolean()
18295
+ })),
18296
+ releasedRefs: SecretRefsList,
18297
+ secretRefs: SecretRefsList
18298
+ }), {
18299
+ kind: "mutation",
18300
+ auth: "admin"
18281
18301
  }), method(object({
18282
18302
  deviceId: number().int(),
18283
18303
  kinds: array(RecordKindNameSchema).optional()
@@ -44019,9 +44039,13 @@ var NcSystemEventKindSchema = _enum([
44019
44039
  "node-updating",
44020
44040
  "node-inference-unavailable",
44021
44041
  "detection-blind",
44042
+ "motion-noisy",
44043
+ "motion-calm",
44022
44044
  "recording-stalled",
44023
44045
  "recording-healthy",
44024
44046
  "recording-degraded",
44047
+ "device-attention-required",
44048
+ "device-attention-resolved",
44025
44049
  "storage-location-low",
44026
44050
  "storage-location-critical",
44027
44051
  "storage-location-ok",
@@ -45576,6 +45600,14 @@ var NC_CONDITION_CATALOG = [
45576
45600
  value: "detection-blind",
45577
45601
  label: "Camera detecting nothing"
45578
45602
  },
45603
+ {
45604
+ value: "motion-noisy",
45605
+ label: "Camera motion constant, no subject"
45606
+ },
45607
+ {
45608
+ value: "motion-calm",
45609
+ label: "Camera motion calm again"
45610
+ },
45579
45611
  {
45580
45612
  value: "recording-stalled",
45581
45613
  label: "Recording stalled"
@@ -45588,6 +45620,14 @@ var NC_CONDITION_CATALOG = [
45588
45620
  value: "recording-degraded",
45589
45621
  label: "Recording degraded (restart storm)"
45590
45622
  },
45623
+ {
45624
+ value: "device-attention-required",
45625
+ label: "Device needs attention"
45626
+ },
45627
+ {
45628
+ value: "device-attention-resolved",
45629
+ label: "Device attention resolved"
45630
+ },
45591
45631
  {
45592
45632
  value: "storage-location-low",
45593
45633
  label: "Storage location low"
@@ -59235,6 +59275,16 @@ var DishwasherStatusSchema = object({
59235
59275
  powerState: string().nullable(),
59236
59276
  saltLevel: DishwasherConsumableLevelSchema.nullable(),
59237
59277
  rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
59278
+ /**
59279
+ * True while the appliance asks for its filter to be cleaned (smart-filter, filter-system or
59280
+ * combined care-and-filter reminder raised); false when every such reminder reads clear; null
59281
+ * when none is reported. A cleared reminder is not an unknown one.
59282
+ */
59283
+ filterCleaningDue: boolean().nullable(),
59284
+ /** True while the machine-care (descaling / cleaning-program) reminder is raised; false when clear; null when not reported. */
59285
+ machineCareDue: boolean().nullable(),
59286
+ /** Program runs left before the machine-care reminder is due; null when the appliance does not say. */
59287
+ machineCareRemainingRuns: number().int().nonnegative().nullable(),
59238
59288
  /** Option states: null when the appliance does not expose the option or has not said. */
59239
59289
  halfLoad: boolean().nullable(),
59240
59290
  hygienePlus: boolean().nullable(),
@@ -68054,16 +68104,6 @@ var UpdateUserInputSchema = object({
68054
68104
  allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
68055
68105
  scopes: array(TokenScopeSchema).optional()
68056
68106
  });
68057
- var ApiKeySummarySchema = object({
68058
- id: string(),
68059
- label: string(),
68060
- isAdmin: boolean().default(false),
68061
- allowedProviders: union([array(string()), literal("*")]).optional(),
68062
- allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
68063
- tokenPrefix: string(),
68064
- createdAt: number(),
68065
- lastUsedAt: number().optional()
68066
- });
68067
68107
  var OauthSessionSummarySchema = object({
68068
68108
  id: string(),
68069
68109
  userId: string(),
@@ -68085,8 +68125,7 @@ var TotpStatusSchema = object({
68085
68125
  confirmedAt: number().nullable()
68086
68126
  });
68087
68127
  /**
68088
- * user-management — singleton capability for user accounts and the
68089
- * legacy API-key rows.
68128
+ * user-management — singleton capability for user accounts.
68090
68129
  *
68091
68130
  * v2 model: every method gated by `auth: 'admin'`. Admin-only delegation
68092
68131
  * — the subset check on `setUserScopes` is moot
@@ -68142,10 +68181,6 @@ method(_void(), array(UserSummarySchema), { auth: "admin" }), method(CreateUserI
68142
68181
  }), UserSummarySchema.extend({ passwordHash: string() }).nullable(), {
68143
68182
  kind: "mutation",
68144
68183
  access: "view"
68145
- }), method(_void(), array(ApiKeySummarySchema), { auth: "admin" }), method(object({ id: string() }), object({ success: literal(true) }), {
68146
- kind: "mutation",
68147
- auth: "admin",
68148
- access: "delete"
68149
68184
  }), method(object({ userId: string() }), TotpSetupResultSchema, {
68150
68185
  kind: "mutation",
68151
68186
  auth: "admin",
@@ -77171,6 +77206,12 @@ Object.freeze({
77171
77206
  addonId: null,
77172
77207
  access: "view"
77173
77208
  },
77209
+ "records.transact": {
77210
+ capName: "records",
77211
+ capScope: "system",
77212
+ addonId: null,
77213
+ access: "create"
77214
+ },
77174
77215
  "sceneMonitor.captureReference": {
77175
77216
  capName: "scene-monitor",
77176
77217
  capScope: "device",
@@ -78503,12 +78544,6 @@ Object.freeze({
78503
78544
  addonId: null,
78504
78545
  access: "view"
78505
78546
  },
78506
- "userManagement.listApiKeys": {
78507
- capName: "user-management",
78508
- capScope: "system",
78509
- addonId: null,
78510
- access: "view"
78511
- },
78512
78547
  "userManagement.listExternalIdentities": {
78513
78548
  capName: "user-management",
78514
78549
  capScope: "system",
@@ -78563,12 +78598,6 @@ Object.freeze({
78563
78598
  addonId: null,
78564
78599
  access: "create"
78565
78600
  },
78566
- "userManagement.revokeApiKey": {
78567
- capName: "user-management",
78568
- capScope: "system",
78569
- addonId: null,
78570
- access: "delete"
78571
- },
78572
78601
  "userManagement.revokeOauthSession": {
78573
78602
  capName: "user-management",
78574
78603
  capScope: "system",
@@ -82058,8 +82087,8 @@ var NC_SYSTEM_EVENT_FILTER_KEYS = [
82058
82087
  */
82059
82088
  function systemEventFilterApplies(kind, filter) {
82060
82089
  switch (filter) {
82061
- case "deviceIds": return kind.startsWith("device-") || kind.startsWith("stream-") || kind === "detection-blind" || kind.startsWith("recording-") || kind === "alarm-triggered";
82062
- case "deviceTypes": return kind.startsWith("device-") || kind === "detection-blind";
82090
+ case "deviceIds": return kind.startsWith("device-") || kind.startsWith("stream-") || kind === "detection-blind" || kind.startsWith("motion-") || kind.startsWith("recording-") || kind === "alarm-triggered";
82091
+ case "deviceTypes": return kind.startsWith("device-") || kind === "detection-blind" || kind.startsWith("motion-");
82063
82092
  case "nodeIds": return kind.startsWith("node-") || kind === "addon-crash-loop" || kind === "addon-update-available" || kind === "addon-updated" || kind === "server-update-available" || kind === "wrapper-update-available" || kind === "server-updated" || kind.startsWith("storage-location-") || kind.startsWith("alert-");
82064
82093
  case "packageNames": return kind.endsWith("update-available") || kind === "addon-updated" || kind === "node-updating" || kind === "server-updated";
82065
82094
  case "consumableLowPercent": return NC_CONSUMABLE_SYSTEM_EVENT_KINDS.includes(kind);
@@ -82104,9 +82133,13 @@ var NC_SYSTEM_EVENT_FAMILY = {
82104
82133
  "stream-online": "device-events",
82105
82134
  "stream-offline": "device-events",
82106
82135
  "detection-blind": "device-events",
82136
+ "motion-noisy": "device-events",
82137
+ "motion-calm": "device-events",
82107
82138
  "recording-stalled": "device-events",
82108
82139
  "recording-healthy": "device-events",
82109
82140
  "recording-degraded": "device-events",
82141
+ "device-attention-required": "device-events",
82142
+ "device-attention-resolved": "device-events",
82110
82143
  "node-online": "system",
82111
82144
  "node-offline": "system",
82112
82145
  "node-restarting": "system",
@@ -82207,6 +82240,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
82207
82240
  label: "Detecting nothing",
82208
82241
  kinds: ["detection-blind"]
82209
82242
  },
82243
+ {
82244
+ id: "motion-noise",
82245
+ family: "device-events",
82246
+ label: "Motion without a subject",
82247
+ kinds: ["motion-noisy", "motion-calm"]
82248
+ },
82210
82249
  {
82211
82250
  id: "recording",
82212
82251
  family: "device-events",
@@ -82217,6 +82256,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
82217
82256
  "recording-degraded"
82218
82257
  ]
82219
82258
  },
82259
+ {
82260
+ id: "device-attention",
82261
+ family: "device-events",
82262
+ label: "Needs attention",
82263
+ kinds: ["device-attention-required", "device-attention-resolved"]
82264
+ },
82220
82265
  {
82221
82266
  id: "nodes",
82222
82267
  family: "system",
@@ -83564,6 +83609,16 @@ function alertEpisodeKind(severity, phase) {
83564
83609
  if (severity === "error" && phase === "raised") return "alert-error";
83565
83610
  return null;
83566
83611
  }
83612
+ /**
83613
+ * The kind of a CRITICAL episode edge about a DEVICE (D911): the alert's source
83614
+ * is `device`, so it is announced in the devices family as
83615
+ * `device-attention-required` / `-resolved` INSTEAD of `alert-critical`. One
83616
+ * alert notifies once, through one family. `null` for any other severity.
83617
+ */
83618
+ function deviceAttentionKind(severity, phase) {
83619
+ if (severity !== "critical") return null;
83620
+ return phase === "raised" ? "device-attention-required" : "device-attention-resolved";
83621
+ }
83567
83622
  function alertEpisodePayload(alert, phase, at) {
83568
83623
  const nodeId = alertNodeId(alert);
83569
83624
  return {
@@ -83597,6 +83652,7 @@ var ALERT_EPISODE = [
83597
83652
  "alert-error",
83598
83653
  "alert-critical-resolved"
83599
83654
  ];
83655
+ var DEVICE_ATTENTION = ["device-attention-required", "device-attention-resolved"];
83600
83656
  var UPDATES = [
83601
83657
  "addon-update-available",
83602
83658
  "server-update-available",
@@ -83626,9 +83682,12 @@ var DEVICE_EVENTS = [
83626
83682
  "stream-online",
83627
83683
  "stream-offline",
83628
83684
  "detection-blind",
83685
+ "motion-noisy",
83686
+ "motion-calm",
83629
83687
  "recording-stalled",
83630
83688
  "recording-healthy",
83631
83689
  "recording-degraded",
83690
+ ...DEVICE_ATTENTION,
83632
83691
  ...ALARM
83633
83692
  ];
83634
83693
  /** Every kind a summary may speak about — the two summarisable families. */
@@ -84202,7 +84261,36 @@ var NC_TEMPLATE_VARS = [
84202
84261
  families: ["rule"],
84203
84262
  fields: [...RULE_TEXT],
84204
84263
  kinds: ["system"],
84205
- systemEventKinds: ["detection-blind", "recording-stalled"]
84264
+ systemEventKinds: [
84265
+ "detection-blind",
84266
+ "motion-noisy",
84267
+ "motion-calm",
84268
+ "recording-stalled"
84269
+ ]
84270
+ },
84271
+ {
84272
+ name: "duty",
84273
+ label: "Motion share (%)",
84274
+ example: "55",
84275
+ group: "system",
84276
+ families: ["rule"],
84277
+ fields: [...RULE_TEXT],
84278
+ kinds: ["system"],
84279
+ systemEventKinds: ["motion-noisy", "motion-calm"]
84280
+ },
84281
+ {
84282
+ name: "sessions",
84283
+ label: "Detection sessions",
84284
+ example: "96",
84285
+ group: "system",
84286
+ families: ["rule"],
84287
+ fields: [...RULE_TEXT],
84288
+ kinds: ["system"],
84289
+ systemEventKinds: [
84290
+ "detection-blind",
84291
+ "motion-noisy",
84292
+ "motion-calm"
84293
+ ]
84206
84294
  },
84207
84295
  {
84208
84296
  name: "message",
@@ -84212,7 +84300,11 @@ var NC_TEMPLATE_VARS = [
84212
84300
  families: ["rule"],
84213
84301
  fields: [...RULE_TEXT],
84214
84302
  kinds: ["system"],
84215
- systemEventKinds: ["recording-degraded", ...ALERT_EPISODE]
84303
+ systemEventKinds: [
84304
+ "recording-degraded",
84305
+ ...DEVICE_ATTENTION,
84306
+ ...ALERT_EPISODE
84307
+ ]
84216
84308
  },
84217
84309
  {
84218
84310
  name: "ruleName",
@@ -84456,7 +84548,11 @@ var NC_TEMPLATE_VARS = [
84456
84548
  families: ["rule"],
84457
84549
  fields: [...RULE_TEXT],
84458
84550
  kinds: ["system"],
84459
- systemEventKinds: ["export-completed", ...ALERT_EPISODE]
84551
+ systemEventKinds: [
84552
+ "export-completed",
84553
+ ...DEVICE_ATTENTION,
84554
+ ...ALERT_EPISODE
84555
+ ]
84460
84556
  },
84461
84557
  {
84462
84558
  name: "severity",
@@ -84476,7 +84572,7 @@ var NC_TEMPLATE_VARS = [
84476
84572
  families: ["rule"],
84477
84573
  fields: [...RULE_TEXT],
84478
84574
  kinds: ["system"],
84479
- systemEventKinds: [...ALERT_EPISODE]
84575
+ systemEventKinds: [...DEVICE_ATTENTION, ...ALERT_EPISODE]
84480
84576
  },
84481
84577
  {
84482
84578
  name: "source",
@@ -84496,7 +84592,7 @@ var NC_TEMPLATE_VARS = [
84496
84592
  families: ["rule"],
84497
84593
  fields: [...RULE_TEXT],
84498
84594
  kinds: ["system"],
84499
- systemEventKinds: [...ALERT_EPISODE]
84595
+ systemEventKinds: [...DEVICE_ATTENTION, ...ALERT_EPISODE]
84500
84596
  },
84501
84597
  {
84502
84598
  name: "exportId",
@@ -84711,6 +84807,8 @@ var NC_TEMPLATE_HELD_BACK_SYSTEM_EVENT_KINDS = [
84711
84807
  "alert-critical",
84712
84808
  "alert-error",
84713
84809
  "alert-critical-resolved",
84810
+ "device-attention-required",
84811
+ "device-attention-resolved",
84714
84812
  "rule-broken",
84715
84813
  "rule-repaired"
84716
84814
  ];
@@ -84872,6 +84970,15 @@ var CLASS_BY_KIND = new Map([
84872
84970
  snapshotLabel: "Tanks low or full now",
84873
84971
  snapshotSection: "tanks"
84874
84972
  },
84973
+ {
84974
+ id: "motion-noise",
84975
+ family: "device-events",
84976
+ label: "Motion without a subject (constant / calm again)",
84977
+ bad: ["motion-noisy"],
84978
+ recovery: ["motion-calm"],
84979
+ snapshotLabel: "Cameras with constant motion now",
84980
+ snapshotSection: null
84981
+ },
84875
84982
  {
84876
84983
  id: "recording-health",
84877
84984
  family: "device-events",
@@ -84881,6 +84988,15 @@ var CLASS_BY_KIND = new Map([
84881
84988
  snapshotLabel: "Recordings stalled now",
84882
84989
  snapshotSection: null
84883
84990
  },
84991
+ {
84992
+ id: "device-attention",
84993
+ family: "device-events",
84994
+ label: "Device needs attention (raised / resolved)",
84995
+ bad: ["device-attention-required"],
84996
+ recovery: ["device-attention-resolved"],
84997
+ snapshotLabel: "Devices needing attention now",
84998
+ snapshotSection: null
84999
+ },
84884
85000
  {
84885
85001
  id: "node-connectivity",
84886
85002
  family: "system",
@@ -86767,4 +86883,4 @@ function buildClipModelRegistry(entries) {
86767
86883
  /** The built-in catalog's registry. */
86768
86884
  var BUILTIN_CLIP_MODELS = buildClipModelRegistry(CLIP_IMAGE_MODELS);
86769
86885
  //#endregion
86770
- export { MediaFileKindEnum as $, hydrateSchema as $i, cosineSimilarity as $n, projectSubjectPath as $r, OpsLogEntrySchema as $t, DeclaredDevices as A, systemEventFilterApplies as Ai, activateAlarmProfile as An, isEventOwnerType as Ar, NcAlarmSensorsInputSchema as At, FULL_IMAGE_BBOX as B, canonicalHash as Bi, applySecureOnArmEdit as Bn, kebabToCamel as Br, NcRuleUpdateInputSchema as Bt, ClearTrackRelationResultSchema as C, subKindsOf as Ci, TimelapseRulePatchSchema as Cn, isAlertEpisodeSeverity as Cr, NC_SNOOZE_MAX_MINUTES as Ct, DEFAULT_TIMELAPSE_PREVIEW_TEXT as D, syncActiveAlarmProfileSettings as Di, TrackRelationSchema as Dn, isDetectionMacroClass as Dr, NC_TEMPLATE_VARS as Dt, DEFAULT_EVENT_COLOR as E, summarizeReview as Ei, TrackRelationKindSchema as En, isDefaultAlarmProfileId as Er, NC_TAXONOMY as Et, EVENT_DENSITY_BATCH_MAX as F, vectorDimFromBase64 as Fi, alertEpisodeKind as Fn, isRootSuppliableStepId as Fr, NcRuleActionSchema as Ft, ListTrackRelationsResultSchema as G, BaseAddon as Gi, buildEventKindDescriptor as Gn, normalizeNcMediaPolicy as Gr, NcSnoozeSuppressedSchema as Gt, LABEL_SUPPLY_MACRO as H, isSourceCap as Hi, assertTimelapseCadences as Hn, mayWriteToLocation as Hr, NcSharedSequenceSchema as Ht, EVENT_KIND_BY_CAP as I, viewerLinkBaseOf as Ii, alertEpisodePayload as In, isScheduleActive as Ir, NcRuleInputSchema as It, MAX_BIRTH_DECISION_RECORDS as J, RECORD_QUERY_MAX as Ji, calendarEventLocalSpan as Jn, parseAlertEpisodePayload as Jr, NcTaxonomySchema as Jt, LockStateSchema as K, CamProfileSchema as Ki, buildSubjectPath as Kn, notificationRulesCapability as Kr, NcStateSummarySectionIdSchema as Kt, EVENT_OWNER_TYPES as L, withSystemEventClasses as Li, applyBlockingEdit as Ln, isSystemDelivery as Lr, NcRulePatchSchema as Lt, EMBEDDING_MODEL_FAILED as M, systemEventSummarySplitOf as Mi, alarmDeviceSecureOnArm as Mn, isLabelSupplyStepId as Mr, NcAlarmSettingsPatchSchema as Mt, EMBEDDING_REQUIREMENTS_FAILED as N, templateCarriesSummary as Ni, alarmPanelCapability as Nn, isMediaOwnerType as Nr, NcConditionDescriptorSchema as Nt, DETECTION_MACRO_CLASSES as O, systemEventDeliveryProblems as Oi, TrackSideSchema as On, isDrawableSubjectPath as Or, NcAlarmConfigSchema as Ot, EMBEDDING_REQUIREMENTS_UNAVAILABLE as P, templateVarsFor as Pi, alertEpisodeId as Pn, isRetiredClearKey as Pr, NcConditionsSchema as Pt, MOTION_CLOSE_AFTER_MS as Q, defineRecordKinds as Qi, coreBlockIdFromAddonId as Qn, plateGalleryCapability as Qr, OPS_LOG_DEFAULT_LIMIT as Qt, EXPORT_DENSE_MAX_RANGES as R, zoneAnalyticsCapability as Ri, applyModeDelaysEdits as Rn, isSystemEventSummaryRule as Rr, NcRuleSchema as Rt, ClearTrackRelationInputSchema as S, storageOccupancyCapability as Si, TimelapseRuleInputSchema as Sn, isAlertEpisodeOpen as Sr, NC_SENSOR_TRANSITION_KINDS as St, DEFAULT_DETAIL_CROP_CONVENTION as T, subjectPathSvgPoints as Ti, TrackPuritySchema as Tn, isAudioClassName as Tr, NC_TANK_SYSTEM_EVENT_KINDS as Tt, LabelAttributionSchema as U, DeviceType as Ui, audioMetricsCapability as Un, memoizePinnedFfmpeg as Ur, NcSnoozeInputSchema as Ut, FailureCounters as V, evaluateSensorEdge as Vi, armRemovalReconcile as Vn, linkedStepOf as Vr, NcScheduleSchema as Vt, ListTrackRelationsInputSchema as W, errMsg as Wi, audioModeOf as Wn, ncMediaPolicyError as Wr, NcSnoozeSchema as Wt, MAX_TRACK_PURITIES as X, customAction as Xi, cloneAlarmSettings as Xn, pickFaceRescoreIntervalMinutes as Xr, NcTemplatePreviewSchema as Xt, MAX_BIRTH_LATENCY_PROXY_MS as Y, createEvent as Yi, classifyRetrainReview as Yn, parseProcStatus as Yr, NcTemplatePreviewInputSchema as Yt, MAX_TRACK_RELATIONS as Z, defineCustomActions as Zi, consumableLowPercentOf as Zn, pipelineAnalyticsCapability as Zr, NcTemplateVarDescriptorSchema as Zt, BIRTH_DECISION_DEFAULT_LIMIT as _, templateLiteral as _a, sceneMonitorCapability as _i, SetTrackPurityInputSchema as _n, faceGalleryCapability as _r, NC_CONSUMABLE_SYSTEM_EVENT_KINDS as _t, CLIP_EMBEDDING_STEP_ID as a, _enum as aa, resolveLocationMode as ai, RetrainOriginSchema as an, describeSystemEventDeliveryProblem as ar, NC_ALARM_NOTIFY_FIELDS as at, BucketAccumulator as b, unknown as ba, servedTemplateVars as bi, TIMELAPSE_DENSE_FLOOR_SEC as bn, gifFromMp4Args as br, NC_GROUPING_MAX_SEC as bt, readClusterModelPinStrict as c, discriminatedUnion as ca, resolveNcMediaImage as ci, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS as cn, embeddingEncoderCapability as cr, NC_AUDIO_CONFIRM_HITS_DEFAULT as ct, APPEARANCE_BLOCKS as d, number as da, rootSupplyServes as di, SCENE_DEFAULT_OBSERVATION_SPACING_SEC as dn, embeddingRequirementsFailedError as dr, NC_CLIP_PRE_ROLL_DEFAULT_SEC as dt, isDeviceScopedCap as ea, readDeviceStateFrom as ei, PoolMemoryWatchdog as en, createAlarmProfile as er, MotionTriggeredBySchema as et, APPEARANCE_RESOLVES_AMBIGUITY_DEFAULT as f, object as fa, ruleAutoTriggersAlarm as fi, SCENE_DEFAULT_QUIET_SECONDS as fn, embeddingRequirementsUnavailableError as fr, NC_CLIP_RETENTION_MAX_SEC as ft, ArchivedDebugNoteSchema as g, string as ga, ruleKindOf as gi, SceneMonitorSchema as gn, evictionPolicyOfLocation as gr, NC_CONSUMABLE_LOW_PERCENT_DEFAULT as gt, AlarmArmModeSchema as h, strictObject as ha, ruleGroupingApplies as hi, SCENE_RESET_RECAPTURES as hn, eventKindLabel as hr, NC_CONFIRM_DEFAULT_TIMEOUT_MS as ht, CLIP_TEXT_MODELS as i, ZodObject as ia, resolveClipSearchMinScore as ii, RetrainDismissedSchema as in, deriveRecordingMode as ir, NC_ALARM_DELAY_MAX_SEC as it, DetectionSourceSchema as j, systemEventSummaryScheduleOf as ji, addonWidgetsSourceCapability as jn, isKnownTemplateVar as jr, NcAlarmSensorsSchema as jt, DETECTION_PIPELINE_CAP_NAME as k, systemEventFamilyProblems as ki, TrackSourceSchema as kn, isEventKindLabelKey as kr, NcAlarmPostTriggeredActionSchema as kt, resolveClusterModelPin as l, literal as la, resolvePoolMemoryPolicy as li, SCENE_DEFAULT_ANCHOR_THRESHOLD as ln, embeddingModelFailedError as lr, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT as lt, AUDIO_MACRO_LABELS as m, record as ma, ruleDeviceCompatCapQueries as mi, SCENE_DIVERGED as mn, ensureAlarmProfiles as mr, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX as mt, DEFAULT_CLIP_MODEL as n, normalizeNodeId as na, readTimelapseGeneratedAt as ni, RECORDING_SOURCE_CAMSTACK_ADDON as nn, deriveDetailCropRect as nr, NC_ALARM_DEFAULT_TRIGGERED_DURATION_SEC as nt, CLUSTER_MODEL_OWNER_ADDON_ID as o, array as oa, resolveModeDelays as oi, RetrainStatusSchema as on, describeSystemEventFamilyProblem as or, NC_ALARM_SYSTEM_EVENT_KINDS as ot, ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT as p, partialRecord as pa, ruleBelongsToAlarm as pi, SCENE_DEFAULT_UNCOVERED_POLICY as pn, encodeVectorBase64 as pr, NC_CONDITION_CATALOG as pt, MAX_ARCHIVED_DEBUG_NOTES as q, RECORD_MAX_DATA_BYTES as qi, buildViewerLink as qn, occupancyScope as qr, NcSystemEventKindSchema as qt, CLIP_IMAGE_MODELS as r, sleep as ra, renameAlarmProfile as ri, RebuildObjectEmbeddingsRefusalSchema as rn, derivePostTriggeredAction as rr, NC_ALARM_DELAY_FIELDS as rt, FACE_EMBEDDING_STEP_ID as s, boolean as sa, resolveModeNotifyPolicy as si, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX as sn, deviceRemovalHookCapability as sr, NC_ALARM_TRIGGERED_MAX_SEC as st, BUILTIN_CLIP_MODELS as t, nodePin as ta, readMotionTriggeredBy as ti, RECORDING_EXPORT_MAX_READ_BYTES as tn, deleteAlarmProfile as tr, NC_ALARM_DEFAULT_PROFILE_ID as tt, APPEARANCE_BIN_COUNT as u, looseObject as ua, retrainRevisionConflictMessage as ui, SCENE_DEFAULT_CHECK_INTERVAL_SEC as un, embeddingRefusalOf as ur, NC_CLIP_POST_ROLL_DEFAULT_SEC as ut, BaseDevice as v, tuple as va, secureActuationFor as vi, SetTrackPurityResultSchema as vn, failureContributionCapability as vr, NC_DEFAULT_SNOOZE_MINUTES as vt, CoverStateSchema as w, subjectPathSampleFromBox as wi, TimelapseRuleSchema as wn, isAppLinkBase as wr, NC_SYSTEM_EVENT_KIND_GROUP_SPECS as wt, COCO_TO_MACRO as x, EventCategory as xa, startMoverUnderClearance as xi, TRACK_RELATIONS_DEFAULT_LIMIT as xn, isAlarmControllableCap as xr, NC_GROUPING_MIN_SEC as xt, BirthDecisionRecordSchema as y, union as ya, sensorRaisedOf as yi, SetTrackRelationInputSchema as yn, gifDeriveSpeed as yr, NC_GROUPING_DEFAULT_SEC as yt, FIRST_LEVEL_MACRO_CLASSES as z, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as zi, applyNonBlockingEdit as zn, isVectorIndexDimConflict as zr, NcRuleTargetSchema as zt };
86886
+ export { MediaFileKindEnum as $, defineCustomActions as $i, cosineSimilarity as $n, plateGalleryCapability as $r, OpsLogEntrySchema as $t, DeclaredDevices as A, systemEventFamilyProblems as Ai, activateAlarmProfile as An, isEventKindLabelKey as Ar, NcAlarmSensorsInputSchema as At, FULL_IMAGE_BBOX as B, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as Bi, applySecureOnArmEdit as Bn, isVectorIndexDimConflict as Br, NcRuleUpdateInputSchema as Bt, ClearTrackRelationResultSchema as C, EventCategory as Ca, storageOccupancyCapability as Ci, TimelapseRulePatchSchema as Cn, isAlertEpisodeOpen as Cr, NC_SNOOZE_MAX_MINUTES as Ct, DEFAULT_TIMELAPSE_PREVIEW_TEXT as D, summarizeReview as Di, TrackRelationSchema as Dn, isDefaultAlarmProfileId as Dr, NC_TEMPLATE_VARS as Dt, DEFAULT_EVENT_COLOR as E, subjectPathSvgPoints as Ei, TrackRelationKindSchema as En, isAudioClassName as Er, NC_TAXONOMY as Et, EVENT_DENSITY_BATCH_MAX as F, templateVarsFor as Fi, alertEpisodeKind as Fn, isRetiredClearKey as Fr, NcRuleActionSchema as Ft, ListTrackRelationsResultSchema as G, errMsg as Gi, buildEventKindDescriptor as Gn, ncMediaPolicyError as Gr, NcSnoozeSuppressedSchema as Gt, LABEL_SUPPLY_MACRO as H, evaluateSensorEdge as Hi, assertTimelapseCadences as Hn, linkedStepOf as Hr, NcSharedSequenceSchema as Ht, EVENT_KIND_BY_CAP as I, vectorDimFromBase64 as Ii, alertEpisodePayload as In, isRootSuppliableStepId as Ir, NcRuleInputSchema as It, MAX_BIRTH_DECISION_RECORDS as J, InvalidRecordError as Ji, calendarEventLocalSpan as Jn, occupancyScope as Jr, NcTaxonomySchema as Jt, LockStateSchema as K, BaseAddon as Ki, buildSubjectPath as Kn, normalizeNcMediaPolicy as Kr, NcStateSummarySectionIdSchema as Kt, EVENT_OWNER_TYPES as L, viewerLinkBaseOf as Li, applyBlockingEdit as Ln, isScheduleActive as Lr, NcRulePatchSchema as Lt, EMBEDDING_MODEL_FAILED as M, systemEventSummaryScheduleOf as Mi, alarmDeviceSecureOnArm as Mn, isKnownTemplateVar as Mr, NcAlarmSettingsPatchSchema as Mt, EMBEDDING_REQUIREMENTS_FAILED as N, systemEventSummarySplitOf as Ni, alarmPanelCapability as Nn, isLabelSupplyStepId as Nr, NcConditionDescriptorSchema as Nt, DETECTION_MACRO_CLASSES as O, syncActiveAlarmProfileSettings as Oi, TrackSideSchema as On, isDetectionMacroClass as Or, NcAlarmConfigSchema as Ot, EMBEDDING_REQUIREMENTS_UNAVAILABLE as P, templateCarriesSummary as Pi, alertEpisodeId as Pn, isMediaOwnerType as Pr, NcConditionsSchema as Pt, MOTION_CLOSE_AFTER_MS as Q, customAction as Qi, coreBlockIdFromAddonId as Qn, pipelineAnalyticsCapability as Qr, OPS_LOG_DEFAULT_LIMIT as Qt, EXPORT_DENSE_MAX_RANGES as R, withSystemEventClasses as Ri, applyModeDelaysEdits as Rn, isSystemDelivery as Rr, NcRuleSchema as Rt, ClearTrackRelationInputSchema as S, unknown as Sa, startMoverUnderClearance as Si, TimelapseRuleInputSchema as Sn, isAlarmControllableCap as Sr, NC_SENSOR_TRANSITION_KINDS as St, DEFAULT_DETAIL_CROP_CONVENTION as T, subjectPathSampleFromBox as Ti, TrackPuritySchema as Tn, isAppLinkBase as Tr, NC_TANK_SYSTEM_EVENT_KINDS as Tt, LabelAttributionSchema as U, isSourceCap as Ui, audioMetricsCapability as Un, mayWriteToLocation as Ur, NcSnoozeInputSchema as Ut, FailureCounters as V, canonicalHash as Vi, armRemovalReconcile as Vn, kebabToCamel as Vr, NcScheduleSchema as Vt, ListTrackRelationsInputSchema as W, DeviceType as Wi, audioModeOf as Wn, memoizePinnedFfmpeg as Wr, NcSnoozeSchema as Wt, MAX_TRACK_PURITIES as X, RECORD_QUERY_MAX as Xi, cloneAlarmSettings as Xn, parseProcStatus as Xr, NcTemplatePreviewSchema as Xt, MAX_BIRTH_LATENCY_PROXY_MS as Y, RECORD_MAX_DATA_BYTES as Yi, classifyRetrainReview as Yn, parseAlertEpisodePayload as Yr, NcTemplatePreviewInputSchema as Yt, MAX_TRACK_RELATIONS as Z, createEvent as Zi, consumableLowPercentOf as Zn, pickFaceRescoreIntervalMinutes as Zr, NcTemplateVarDescriptorSchema as Zt, BIRTH_DECISION_DEFAULT_LIMIT as _, strictObject as _a, ruleKindOf as _i, SetTrackPurityInputSchema as _n, evictionPolicyOfLocation as _r, NC_CONSUMABLE_SYSTEM_EVENT_KINDS as _t, CLIP_EMBEDDING_STEP_ID as a, sleep as aa, resolveClipSearchMinScore as ai, RetrainOriginSchema as an, describeSystemEventDeliveryProblem as ar, NC_ALARM_NOTIFY_FIELDS as at, BucketAccumulator as b, tuple as ba, sensorRaisedOf as bi, TIMELAPSE_DENSE_FLOOR_SEC as bn, gifDeriveSpeed as br, NC_GROUPING_MAX_SEC as bt, readClusterModelPinStrict as c, array as ca, resolveModeNotifyPolicy as ci, SCENE_CONFIRM_DEFAULT_TIMEOUT_MS as cn, deviceRemovalHookCapability as cr, NC_AUDIO_CONFIRM_HITS_DEFAULT as ct, APPEARANCE_BLOCKS as d, literal as da, retrainRevisionConflictMessage as di, SCENE_DEFAULT_OBSERVATION_SPACING_SEC as dn, embeddingRefusalOf as dr, NC_CLIP_PRE_ROLL_DEFAULT_SEC as dt, defineRecordKinds as ea, projectSubjectPath as ei, PoolMemoryWatchdog as en, createAlarmProfile as er, MotionTriggeredBySchema as et, APPEARANCE_RESOLVES_AMBIGUITY_DEFAULT as f, looseObject as fa, rootSupplyServes as fi, SCENE_DEFAULT_QUIET_SECONDS as fn, embeddingRequirementsFailedError as fr, NC_CLIP_RETENTION_MAX_SEC as ft, ArchivedDebugNoteSchema as g, record as ga, ruleGroupingApplies as gi, SceneMonitorSchema as gn, eventKindLabel as gr, NC_CONSUMABLE_LOW_PERCENT_DEFAULT as gt, AlarmArmModeSchema as h, partialRecord as ha, ruleDeviceCompatCapQueries as hi, SCENE_RESET_RECAPTURES as hn, ensureAlarmProfiles as hr, NC_CONFIRM_DEFAULT_TIMEOUT_MS as ht, CLIP_TEXT_MODELS as i, normalizeNodeId as ia, renameAlarmProfile as ii, RetrainDismissedSchema as in, deriveRecordingMode as ir, NC_ALARM_DELAY_MAX_SEC as it, DetectionSourceSchema as j, systemEventFilterApplies as ji, addonWidgetsSourceCapability as jn, isEventOwnerType as jr, NcAlarmSensorsSchema as jt, DETECTION_PIPELINE_CAP_NAME as k, systemEventDeliveryProblems as ki, TrackSourceSchema as kn, isDrawableSubjectPath as kr, NcAlarmPostTriggeredActionSchema as kt, resolveClusterModelPin as l, boolean as la, resolveNcMediaImage as li, SCENE_DEFAULT_ANCHOR_THRESHOLD as ln, embeddingEncoderCapability as lr, NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT as lt, AUDIO_MACRO_LABELS as m, object as ma, ruleBelongsToAlarm as mi, SCENE_DIVERGED as mn, encodeVectorBase64 as mr, NC_CONFIRM_DEFAULT_MAX_IMAGE_PX as mt, DEFAULT_CLIP_MODEL as n, isDeviceScopedCap as na, readMotionTriggeredBy as ni, RECORDING_SOURCE_CAMSTACK_ADDON as nn, deriveDetailCropRect as nr, NC_ALARM_DEFAULT_TRIGGERED_DURATION_SEC as nt, CLUSTER_MODEL_OWNER_ADDON_ID as o, ZodObject as oa, resolveLocationMode as oi, RetrainStatusSchema as on, describeSystemEventFamilyProblem as or, NC_ALARM_SYSTEM_EVENT_KINDS as ot, ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT as p, number as pa, ruleAutoTriggersAlarm as pi, SCENE_DEFAULT_UNCOVERED_POLICY as pn, embeddingRequirementsUnavailableError as pr, NC_CONDITION_CATALOG as pt, MAX_ARCHIVED_DEBUG_NOTES as q, CamProfileSchema as qi, buildViewerLink as qn, notificationRulesCapability as qr, NcSystemEventKindSchema as qt, CLIP_IMAGE_MODELS as r, nodePin as ra, readTimelapseGeneratedAt as ri, RebuildObjectEmbeddingsRefusalSchema as rn, derivePostTriggeredAction as rr, NC_ALARM_DELAY_FIELDS as rt, FACE_EMBEDDING_STEP_ID as s, _enum as sa, resolveModeDelays as si, SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX as sn, deviceAttentionKind as sr, NC_ALARM_TRIGGERED_MAX_SEC as st, BUILTIN_CLIP_MODELS as t, hydrateSchema as ta, readDeviceStateFrom as ti, RECORDING_EXPORT_MAX_READ_BYTES as tn, deleteAlarmProfile as tr, NC_ALARM_DEFAULT_PROFILE_ID as tt, APPEARANCE_BIN_COUNT as u, discriminatedUnion as ua, resolvePoolMemoryPolicy as ui, SCENE_DEFAULT_CHECK_INTERVAL_SEC as un, embeddingModelFailedError as ur, NC_CLIP_POST_ROLL_DEFAULT_SEC as ut, BaseDevice as v, string as va, sceneMonitorCapability as vi, SetTrackPurityResultSchema as vn, faceGalleryCapability as vr, NC_DEFAULT_SNOOZE_MINUTES as vt, CoverStateSchema as w, subKindsOf as wi, TimelapseRuleSchema as wn, isAlertEpisodeSeverity as wr, NC_SYSTEM_EVENT_KIND_GROUP_SPECS as wt, COCO_TO_MACRO as x, union as xa, servedTemplateVars as xi, TRACK_RELATIONS_DEFAULT_LIMIT as xn, gifFromMp4Args as xr, NC_GROUPING_MIN_SEC as xt, BirthDecisionRecordSchema as y, templateLiteral as ya, secureActuationFor as yi, SetTrackRelationInputSchema as yn, failureContributionCapability as yr, NC_GROUPING_DEFAULT_SEC as yt, FIRST_LEVEL_MACRO_CLASSES as z, zoneAnalyticsCapability as zi, applyNonBlockingEdit as zn, isSystemEventSummaryRule as zr, NcRuleTargetSchema as zt };