@camstack/addon-post-analysis 1.2.208 → 1.2.210

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.
@@ -7854,6 +7854,85 @@ var CameraSwitchGroupSchema = object({
7854
7854
  */
7855
7855
  var DETECTION_PIPELINE_CAP_NAME = "detection-pipeline";
7856
7856
  /**
7857
+ * Debug-note archive — the durable corpus of what operators asked to be
7858
+ * checked, and the ONE thing about a debug note that outlives its track.
7859
+ *
7860
+ * D353 bound `debugNote` to the `debug` flag: turning the flag off clears the
7861
+ * note in the same statement, so a track can never present a question without
7862
+ * the flag that explains it. That invariant is right and stays. Its side
7863
+ * effect was not: the act of REVIEWING a debug set destroyed every note in it,
7864
+ * and the notes that survived a sweep aged out with their tracks anyway. On
7865
+ * 2026-09-08 the notes from one morning's review — 25 to 27 of them — were
7866
+ * already unreadable by the afternoon, leaving 11.
7867
+ *
7868
+ * So the clear now ARCHIVES first (D405). A row here is:
7869
+ *
7870
+ * - written ONLY by the hub, from `applyTrackFlags`, immediately before the
7871
+ * note is cleared off the track row;
7872
+ * - keyed by ITS OWN id, derived from `(sourceTrackId, note)` so reviewing
7873
+ * the same track twice cannot double the corpus;
7874
+ * - NOT a track row, NOT subject to track retention, and NOT a durability pin
7875
+ * on anything — the track it names is expected to be gone.
7876
+ *
7877
+ * `sourceTrackId` is deliberately not called `trackId`. The analytics
7878
+ * retention model derives track OWNERSHIP from a declared `trackId` column
7879
+ * (`collection-classification.ts`), and a row that the cascade would delete
7880
+ * with its track is exactly the row this table exists to keep. The name says
7881
+ * PROVENANCE — the same distinction the stationary registry draws for the same
7882
+ * reason.
7883
+ */
7884
+ /**
7885
+ * How many archived notes the cluster keeps, across every camera.
7886
+ *
7887
+ * GLOBAL, not per-device, and a COUNT, not an age. Both halves are deliberate:
7888
+ *
7889
+ * - A per-device bound multiplies by the fleet — 30 cameras at 500 each is
7890
+ * 15 000 rows to protect a corpus that only ever gets read fleet-wide (the
7891
+ * thing being mined is "what keeps going wrong", not "what goes wrong on
7892
+ * 617"). One global ceiling is one number to reason about.
7893
+ * - An AGE bound would delete the corpus for being old, which is the failure
7894
+ * being fixed: a note from six months ago is the most valuable row in the
7895
+ * table precisely because the pattern it describes has had time to repeat.
7896
+ *
7897
+ * The number is sized off the measured rate. The 2026-09-08 sweep produced
7898
+ * 25–27 notes; call a heavy day 100. 5 000 rows is roughly fifty such days,
7899
+ * and at the observed rate (a few sweeps a week) several years. The cost is
7900
+ * bounded by construction: a note is capped at `MAX_TRACK_DEBUG_NOTE_LEN`
7901
+ * (500 chars) and the metadata beside it is under 100 bytes, so the ceiling is
7902
+ * ~3 MB of text and the realistic occupancy is well under 1 MB — against a
7903
+ * `tracks` table measured at 4.6 MB for a single 501-row page.
7904
+ */
7905
+ var MAX_ARCHIVED_DEBUG_NOTES = 5e3;
7906
+ /** One archived note — the operator's words plus enough context to find what
7907
+ * they were looking at, after the track itself is gone. */
7908
+ var ArchivedDebugNoteSchema = object({
7909
+ /** Archive row id. Derived from `(sourceTrackId, note)`, so re-archiving the
7910
+ * same sentence about the same track lands on the row already there. */
7911
+ id: string(),
7912
+ /** The operator's own words, verbatim. */
7913
+ note: string(),
7914
+ /** The camera. Required — every question here is asked per-camera. */
7915
+ deviceId: number().int(),
7916
+ /** The track the note was written on. PROVENANCE, not ownership: the track
7917
+ * is expected to be gone, and this row is not a reference to it. */
7918
+ sourceTrackId: string(),
7919
+ /** Epoch ms the note was moved here, i.e. when the operator reviewed it. */
7920
+ archivedAt: number().int(),
7921
+ /** The track's `firstSeen`, when the row still knew it; `null` otherwise. */
7922
+ trackStartedAt: number().int().nullable(),
7923
+ /** The track's detector class (`person`, `car`, …); `null` when unknown. */
7924
+ trackClass: string().nullable(),
7925
+ /** The track's display label at review time; `null` when it had none. */
7926
+ trackLabel: string().nullable()
7927
+ });
7928
+ /** Query input for `listArchivedDebugNotes` — newest first, one camera or all. */
7929
+ var ArchivedDebugNoteQueryInputSchema = object({
7930
+ /** Restrict to a single camera; omit for every row. */
7931
+ deviceId: number().int().optional(),
7932
+ /** Max rows returned, newest-first. */
7933
+ limit: number().int().min(1).max(1e3).optional()
7934
+ });
7935
+ /**
7857
7936
  * Ops-log — the durable, append-only operations audit shared by the
7858
7937
  * recordings and events management surfaces.
7859
7938
  *
@@ -16600,14 +16679,14 @@ var alarmPanelCapability = {
16600
16679
  code: string().min(1).optional()
16601
16680
  }), _void(), {
16602
16681
  kind: "mutation",
16603
- auth: "admin"
16682
+ auth: "protected"
16604
16683
  }),
16605
16684
  disarm: method(object({
16606
16685
  deviceId: number().int().nonnegative(),
16607
16686
  code: string().min(1).optional()
16608
16687
  }), _void(), {
16609
16688
  kind: "mutation",
16610
- auth: "admin"
16689
+ auth: "protected"
16611
16690
  }),
16612
16691
  /**
16613
16692
  * Force the panel into the `triggered` state — used by HA
@@ -16618,7 +16697,7 @@ var alarmPanelCapability = {
16618
16697
  */
16619
16698
  trigger: method(object({ deviceId: number().int().nonnegative() }), _void(), {
16620
16699
  kind: "mutation",
16621
- auth: "admin"
16700
+ auth: "protected"
16622
16701
  })
16623
16702
  },
16624
16703
  status: {
@@ -21389,6 +21468,31 @@ var pipelineAnalyticsCapability = {
21389
21468
  flags: TrackFlagsPatchSchema
21390
21469
  }), TrackFlagsSchema, { kind: "mutation" }),
21391
21470
  /**
21471
+ * The archived debug notes, newest first — the corpus of what operators
21472
+ * have asked to be checked, across tracks that no longer exist (D405).
21473
+ *
21474
+ * `setTrackFlags` writes it: a patch carrying `debug: false` still clears
21475
+ * the note off the track row in the same statement (D353's invariant is
21476
+ * untouched), but the note is APPENDED here first. That is the whole point
21477
+ * — before D405, finishing a review destroyed every note written during it,
21478
+ * and the ones that survived aged out with their tracks. This method is the
21479
+ * only way to read what was kept.
21480
+ *
21481
+ * `auth: 'protected'`, matching `setTrackFlags` next door and for the same
21482
+ * reason: the notes are written from the viewer, by an authenticated
21483
+ * non-admin session, and a corpus only an admin can read is a corpus the
21484
+ * person who wrote it cannot use. It carries operator prose about cameras
21485
+ * and nothing else — no media, no paths, no identities beyond a track's
21486
+ * own display label.
21487
+ *
21488
+ * Newest-first, capped by `limit` (default
21489
+ * {@link ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT}), optionally one camera. The
21490
+ * table itself is bounded by row count, not by age — see
21491
+ * {@link MAX_ARCHIVED_DEBUG_NOTES} for why an age clock would be the wrong
21492
+ * bound for exactly this data.
21493
+ */
21494
+ listArchivedDebugNotes: method(ArchivedDebugNoteQueryInputSchema, array(ArchivedDebugNoteSchema).readonly(), { kind: "query" }),
21495
+ /**
21392
21496
  * Durable event-store footprint for the management UI: event rows
21393
21497
  * (motion + object + audio) counted per camera + total, plus the
21394
21498
  * event-owned media bytes on disk per camera + total. Stat/count-based,
@@ -25795,7 +25899,7 @@ var brightnessCapability = {
25795
25899
  percentage: number().min(0).max(100)
25796
25900
  }), _void(), {
25797
25901
  kind: "mutation",
25798
- auth: "admin"
25902
+ auth: "protected"
25799
25903
  }) },
25800
25904
  events: {
25801
25905
  /**
@@ -25828,7 +25932,7 @@ onBrightnessChanged: { data: object({
25828
25932
  };
25829
25933
  DeviceType.Button, method(object({ deviceId: number().int().nonnegative() }), _void(), {
25830
25934
  kind: "mutation",
25831
- auth: "admin"
25935
+ auth: "protected"
25832
25936
  });
25833
25937
  /**
25834
25938
  * camera-credentials — device-scoped cap exposing the camera's network
@@ -26020,28 +26124,28 @@ var climateControlCapability = {
26020
26124
  mode: HvacModeSchema
26021
26125
  }), _void(), {
26022
26126
  kind: "mutation",
26023
- auth: "admin"
26127
+ auth: "protected"
26024
26128
  }),
26025
26129
  setFanMode: method(object({
26026
26130
  deviceId: number().int().nonnegative(),
26027
26131
  fanMode: string().min(1)
26028
26132
  }), _void(), {
26029
26133
  kind: "mutation",
26030
- auth: "admin"
26134
+ auth: "protected"
26031
26135
  }),
26032
26136
  setPreset: method(object({
26033
26137
  deviceId: number().int().nonnegative(),
26034
26138
  preset: string().min(1)
26035
26139
  }), _void(), {
26036
26140
  kind: "mutation",
26037
- auth: "admin"
26141
+ auth: "protected"
26038
26142
  }),
26039
26143
  setTarget: method(object({
26040
26144
  deviceId: number().int().nonnegative(),
26041
26145
  target: number()
26042
26146
  }), _void(), {
26043
26147
  kind: "mutation",
26044
- auth: "admin"
26148
+ auth: "protected"
26045
26149
  }),
26046
26150
  setTargetRange: method(object({
26047
26151
  deviceId: number().int().nonnegative(),
@@ -26049,28 +26153,28 @@ var climateControlCapability = {
26049
26153
  targetHigh: number()
26050
26154
  }), _void(), {
26051
26155
  kind: "mutation",
26052
- auth: "admin"
26156
+ auth: "protected"
26053
26157
  }),
26054
26158
  setTargetHumidity: method(object({
26055
26159
  deviceId: number().int().nonnegative(),
26056
26160
  targetHumidity: number().min(0).max(100)
26057
26161
  }), _void(), {
26058
26162
  kind: "mutation",
26059
- auth: "admin"
26163
+ auth: "protected"
26060
26164
  }),
26061
26165
  setSwingVertical: method(object({
26062
26166
  deviceId: number().int().nonnegative(),
26063
26167
  on: boolean()
26064
26168
  }), _void(), {
26065
26169
  kind: "mutation",
26066
- auth: "admin"
26170
+ auth: "protected"
26067
26171
  }),
26068
26172
  setSwingHorizontal: method(object({
26069
26173
  deviceId: number().int().nonnegative(),
26070
26174
  on: boolean()
26071
26175
  }), _void(), {
26072
26176
  kind: "mutation",
26073
- auth: "admin"
26177
+ auth: "protected"
26074
26178
  })
26075
26179
  },
26076
26180
  status: {
@@ -26170,7 +26274,7 @@ var colorCapability = {
26170
26274
  color: ColorInputSchema
26171
26275
  }), _void(), {
26172
26276
  kind: "mutation",
26173
- auth: "admin"
26277
+ auth: "protected"
26174
26278
  }) },
26175
26279
  events: {
26176
26280
  /**
@@ -26499,7 +26603,7 @@ var controlCapability = {
26499
26603
  control: ControlSetValueInputSchema
26500
26604
  }), _void(), {
26501
26605
  kind: "mutation",
26502
- auth: "admin"
26606
+ auth: "protected"
26503
26607
  }) },
26504
26608
  status: {
26505
26609
  schema: ControlStatusSchema,
@@ -26545,29 +26649,29 @@ var coverCapability = {
26545
26649
  methods: {
26546
26650
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26547
26651
  kind: "mutation",
26548
- auth: "admin"
26652
+ auth: "protected"
26549
26653
  }),
26550
26654
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26551
26655
  kind: "mutation",
26552
- auth: "admin"
26656
+ auth: "protected"
26553
26657
  }),
26554
26658
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
26555
26659
  kind: "mutation",
26556
- auth: "admin"
26660
+ auth: "protected"
26557
26661
  }),
26558
26662
  setPosition: method(object({
26559
26663
  deviceId: number().int().nonnegative(),
26560
26664
  position: number().min(0).max(100)
26561
26665
  }), _void(), {
26562
26666
  kind: "mutation",
26563
- auth: "admin"
26667
+ auth: "protected"
26564
26668
  }),
26565
26669
  setTiltPosition: method(object({
26566
26670
  deviceId: number().int().nonnegative(),
26567
26671
  tiltPosition: number().min(0).max(100)
26568
26672
  }), _void(), {
26569
26673
  kind: "mutation",
26570
- auth: "admin"
26674
+ auth: "protected"
26571
26675
  })
26572
26676
  },
26573
26677
  status: {
@@ -27389,28 +27493,28 @@ var fanControlCapability = {
27389
27493
  percentage: number().min(0).max(100)
27390
27494
  }), _void(), {
27391
27495
  kind: "mutation",
27392
- auth: "admin"
27496
+ auth: "protected"
27393
27497
  }),
27394
27498
  setPreset: method(object({
27395
27499
  deviceId: number().int().nonnegative(),
27396
27500
  preset: string().min(1)
27397
27501
  }), _void(), {
27398
27502
  kind: "mutation",
27399
- auth: "admin"
27503
+ auth: "protected"
27400
27504
  }),
27401
27505
  setDirection: method(object({
27402
27506
  deviceId: number().int().nonnegative(),
27403
27507
  direction: FanDirectionSchema
27404
27508
  }), _void(), {
27405
27509
  kind: "mutation",
27406
- auth: "admin"
27510
+ auth: "protected"
27407
27511
  }),
27408
27512
  setOscillating: method(object({
27409
27513
  deviceId: number().int().nonnegative(),
27410
27514
  oscillating: boolean()
27411
27515
  }), _void(), {
27412
27516
  kind: "mutation",
27413
- auth: "admin"
27517
+ auth: "protected"
27414
27518
  })
27415
27519
  },
27416
27520
  status: {
@@ -27632,21 +27736,21 @@ var humidifierCapability = {
27632
27736
  on: boolean()
27633
27737
  }), _void(), {
27634
27738
  kind: "mutation",
27635
- auth: "admin"
27739
+ auth: "protected"
27636
27740
  }),
27637
27741
  setTargetHumidity: method(object({
27638
27742
  deviceId: number().int().nonnegative(),
27639
27743
  humidity: number().min(0).max(100)
27640
27744
  }), _void(), {
27641
27745
  kind: "mutation",
27642
- auth: "admin"
27746
+ auth: "protected"
27643
27747
  }),
27644
27748
  setMode: method(object({
27645
27749
  deviceId: number().int().nonnegative(),
27646
27750
  mode: string().min(1)
27647
27751
  }), _void(), {
27648
27752
  kind: "mutation",
27649
- auth: "admin"
27753
+ auth: "protected"
27650
27754
  })
27651
27755
  },
27652
27756
  status: {
@@ -28347,15 +28451,15 @@ var lawnMowerControlCapability = {
28347
28451
  methods: {
28348
28452
  startMowing: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28349
28453
  kind: "mutation",
28350
- auth: "admin"
28454
+ auth: "protected"
28351
28455
  }),
28352
28456
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28353
28457
  kind: "mutation",
28354
- auth: "admin"
28458
+ auth: "protected"
28355
28459
  }),
28356
28460
  dock: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28357
28461
  kind: "mutation",
28358
- auth: "admin"
28462
+ auth: "protected"
28359
28463
  })
28360
28464
  },
28361
28465
  status: {
@@ -28640,18 +28744,18 @@ var lockControlCapability = {
28640
28744
  code: string().min(1).optional()
28641
28745
  }), _void(), {
28642
28746
  kind: "mutation",
28643
- auth: "admin"
28747
+ auth: "protected"
28644
28748
  }),
28645
28749
  unlock: method(object({
28646
28750
  deviceId: number().int().nonnegative(),
28647
28751
  code: string().min(1).optional()
28648
28752
  }), _void(), {
28649
28753
  kind: "mutation",
28650
- auth: "admin"
28754
+ auth: "protected"
28651
28755
  }),
28652
28756
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28653
28757
  kind: "mutation",
28654
- auth: "admin"
28758
+ auth: "protected"
28655
28759
  })
28656
28760
  },
28657
28761
  status: {
@@ -28754,65 +28858,65 @@ var mediaPlayerCapability = {
28754
28858
  methods: {
28755
28859
  play: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28756
28860
  kind: "mutation",
28757
- auth: "admin"
28861
+ auth: "protected"
28758
28862
  }),
28759
28863
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28760
28864
  kind: "mutation",
28761
- auth: "admin"
28865
+ auth: "protected"
28762
28866
  }),
28763
28867
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28764
28868
  kind: "mutation",
28765
- auth: "admin"
28869
+ auth: "protected"
28766
28870
  }),
28767
28871
  next: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28768
28872
  kind: "mutation",
28769
- auth: "admin"
28873
+ auth: "protected"
28770
28874
  }),
28771
28875
  previous: method(object({ deviceId: number().int().nonnegative() }), _void(), {
28772
28876
  kind: "mutation",
28773
- auth: "admin"
28877
+ auth: "protected"
28774
28878
  }),
28775
28879
  seek: method(object({
28776
28880
  deviceId: number().int().nonnegative(),
28777
28881
  positionMs: number().int().nonnegative()
28778
28882
  }), _void(), {
28779
28883
  kind: "mutation",
28780
- auth: "admin"
28884
+ auth: "protected"
28781
28885
  }),
28782
28886
  setVolume: method(object({
28783
28887
  deviceId: number().int().nonnegative(),
28784
28888
  volumeLevel: number().min(0).max(100)
28785
28889
  }), _void(), {
28786
28890
  kind: "mutation",
28787
- auth: "admin"
28891
+ auth: "protected"
28788
28892
  }),
28789
28893
  setMute: method(object({
28790
28894
  deviceId: number().int().nonnegative(),
28791
28895
  muted: boolean()
28792
28896
  }), _void(), {
28793
28897
  kind: "mutation",
28794
- auth: "admin"
28898
+ auth: "protected"
28795
28899
  }),
28796
28900
  setShuffle: method(object({
28797
28901
  deviceId: number().int().nonnegative(),
28798
28902
  shuffle: boolean()
28799
28903
  }), _void(), {
28800
28904
  kind: "mutation",
28801
- auth: "admin"
28905
+ auth: "protected"
28802
28906
  }),
28803
28907
  setRepeat: method(object({
28804
28908
  deviceId: number().int().nonnegative(),
28805
28909
  repeat: MediaPlayerRepeatSchema
28806
28910
  }), _void(), {
28807
28911
  kind: "mutation",
28808
- auth: "admin"
28912
+ auth: "protected"
28809
28913
  }),
28810
28914
  selectSource: method(object({
28811
28915
  deviceId: number().int().nonnegative(),
28812
28916
  source: string().min(1)
28813
28917
  }), _void(), {
28814
28918
  kind: "mutation",
28815
- auth: "admin"
28919
+ auth: "protected"
28816
28920
  }),
28817
28921
  playMedia: method(object({
28818
28922
  deviceId: number().int().nonnegative(),
@@ -28823,7 +28927,7 @@ var mediaPlayerCapability = {
28823
28927
  mediaType: string().min(1)
28824
28928
  }), _void(), {
28825
28929
  kind: "mutation",
28826
- auth: "admin"
28930
+ auth: "protected"
28827
28931
  })
28828
28932
  },
28829
28933
  status: {
@@ -30416,27 +30520,27 @@ var petFeederCapability = {
30416
30520
  hopper2: gramsPortion.optional()
30417
30521
  }), _void(), {
30418
30522
  kind: "mutation",
30419
- auth: "admin"
30523
+ auth: "protected"
30420
30524
  }),
30421
30525
  /** Cancel an in-progress manual feed. */
30422
30526
  cancelFeed: method(object({ deviceId: number().int().nonnegative() }), _void(), {
30423
30527
  kind: "mutation",
30424
- auth: "admin"
30528
+ auth: "protected"
30425
30529
  }),
30426
30530
  /** Reset the desiccant "days remaining" counter after replacing it. */
30427
30531
  resetDesiccant: method(object({ deviceId: number().int().nonnegative() }), _void(), {
30428
30532
  kind: "mutation",
30429
- auth: "admin"
30533
+ auth: "protected"
30430
30534
  }),
30431
30535
  /** Mark a hopper as refilled (D4H/D4S/D4SH). */
30432
30536
  markFoodReplenished: method(object({ deviceId: number().int().nonnegative() }), _void(), {
30433
30537
  kind: "mutation",
30434
- auth: "admin"
30538
+ auth: "protected"
30435
30539
  }),
30436
30540
  /** Call the pet with the recorded prompt (D3). */
30437
30541
  callPet: method(object({ deviceId: number().int().nonnegative() }), _void(), {
30438
30542
  kind: "mutation",
30439
- auth: "admin"
30543
+ auth: "protected"
30440
30544
  }),
30441
30545
  /** Play a stored sound by id (D3 / D4H / D4SH). */
30442
30546
  playSound: method(object({
@@ -30444,7 +30548,7 @@ var petFeederCapability = {
30444
30548
  soundId: number().int().nonnegative()
30445
30549
  }), _void(), {
30446
30550
  kind: "mutation",
30447
- auth: "admin"
30551
+ auth: "protected"
30448
30552
  }),
30449
30553
  /** Toggle the child-lock (manual-lock) setting. */
30450
30554
  setChildLock: method(object({
@@ -30452,7 +30556,7 @@ var petFeederCapability = {
30452
30556
  on: boolean()
30453
30557
  }), _void(), {
30454
30558
  kind: "mutation",
30455
- auth: "admin"
30559
+ auth: "protected"
30456
30560
  }),
30457
30561
  /** Toggle the front indicator light. */
30458
30562
  setIndicatorLight: method(object({
@@ -30460,7 +30564,7 @@ var petFeederCapability = {
30460
30564
  on: boolean()
30461
30565
  }), _void(), {
30462
30566
  kind: "mutation",
30463
- auth: "admin"
30567
+ auth: "protected"
30464
30568
  }),
30465
30569
  /** Toggle the dispense chime. */
30466
30570
  setFeedSound: method(object({
@@ -30468,7 +30572,7 @@ var petFeederCapability = {
30468
30572
  on: boolean()
30469
30573
  }), _void(), {
30470
30574
  kind: "mutation",
30471
- auth: "admin"
30575
+ auth: "protected"
30472
30576
  }),
30473
30577
  /** Set the speaker / prompt volume level. */
30474
30578
  setVolume: method(object({
@@ -30476,7 +30580,7 @@ var petFeederCapability = {
30476
30580
  level: number().int().nonnegative()
30477
30581
  }), _void(), {
30478
30582
  kind: "mutation",
30479
- auth: "admin"
30583
+ auth: "protected"
30480
30584
  })
30481
30585
  },
30482
30586
  status: {
@@ -32831,7 +32935,7 @@ var switchCapability = {
32831
32935
  on: boolean()
32832
32936
  }), _void(), {
32833
32937
  kind: "mutation",
32834
- auth: "admin"
32938
+ auth: "protected"
32835
32939
  }) },
32836
32940
  events: { onStateChanged: { data: object({
32837
32941
  deviceId: number(),
@@ -33819,30 +33923,30 @@ var vacuumControlCapability = {
33819
33923
  methods: {
33820
33924
  start: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33821
33925
  kind: "mutation",
33822
- auth: "admin"
33926
+ auth: "protected"
33823
33927
  }),
33824
33928
  pause: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33825
33929
  kind: "mutation",
33826
- auth: "admin"
33930
+ auth: "protected"
33827
33931
  }),
33828
33932
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33829
33933
  kind: "mutation",
33830
- auth: "admin"
33934
+ auth: "protected"
33831
33935
  }),
33832
33936
  returnToBase: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33833
33937
  kind: "mutation",
33834
- auth: "admin"
33938
+ auth: "protected"
33835
33939
  }),
33836
33940
  locate: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33837
33941
  kind: "mutation",
33838
- auth: "admin"
33942
+ auth: "protected"
33839
33943
  }),
33840
33944
  setFanSpeed: method(object({
33841
33945
  deviceId: number().int().nonnegative(),
33842
33946
  speed: string().min(1)
33843
33947
  }), _void(), {
33844
33948
  kind: "mutation",
33845
- auth: "admin"
33949
+ auth: "protected"
33846
33950
  })
33847
33951
  },
33848
33952
  status: {
@@ -33886,22 +33990,22 @@ var valveCapability = {
33886
33990
  methods: {
33887
33991
  open: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33888
33992
  kind: "mutation",
33889
- auth: "admin"
33993
+ auth: "protected"
33890
33994
  }),
33891
33995
  close: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33892
33996
  kind: "mutation",
33893
- auth: "admin"
33997
+ auth: "protected"
33894
33998
  }),
33895
33999
  stop: method(object({ deviceId: number().int().nonnegative() }), _void(), {
33896
34000
  kind: "mutation",
33897
- auth: "admin"
34001
+ auth: "protected"
33898
34002
  }),
33899
34003
  setPosition: method(object({
33900
34004
  deviceId: number().int().nonnegative(),
33901
34005
  position: number().min(0).max(100)
33902
34006
  }), _void(), {
33903
34007
  kind: "mutation",
33904
- auth: "admin"
34008
+ auth: "protected"
33905
34009
  })
33906
34010
  },
33907
34011
  status: {
@@ -34000,21 +34104,21 @@ var waterHeaterCapability = {
34000
34104
  temp: number().finite()
34001
34105
  }), _void(), {
34002
34106
  kind: "mutation",
34003
- auth: "admin"
34107
+ auth: "protected"
34004
34108
  }),
34005
34109
  setOperationMode: method(object({
34006
34110
  deviceId: number().int().nonnegative(),
34007
34111
  mode: string().min(1)
34008
34112
  }), _void(), {
34009
34113
  kind: "mutation",
34010
- auth: "admin"
34114
+ auth: "protected"
34011
34115
  }),
34012
34116
  setAway: method(object({
34013
34117
  deviceId: number().int().nonnegative(),
34014
34118
  on: boolean()
34015
34119
  }), _void(), {
34016
34120
  kind: "mutation",
34017
- auth: "admin"
34121
+ auth: "protected"
34018
34122
  })
34019
34123
  },
34020
34124
  status: {
@@ -39060,6 +39164,12 @@ Object.freeze({
39060
39164
  addonId: null,
39061
39165
  access: "view"
39062
39166
  },
39167
+ "pipelineAnalytics.listArchivedDebugNotes": {
39168
+ capName: "pipeline-analytics",
39169
+ capScope: "device",
39170
+ addonId: null,
39171
+ access: "view"
39172
+ },
39063
39173
  "pipelineAnalytics.listEventKinds": {
39064
39174
  capName: "pipeline-analytics",
39065
39175
  capScope: "device",
@@ -42847,6 +42957,11 @@ Object.freeze({
42847
42957
  form: "array",
42848
42958
  optional: true
42849
42959
  }],
42960
+ "pipelineAnalytics.listArchivedDebugNotes": [{
42961
+ name: "deviceId",
42962
+ form: "single",
42963
+ optional: true
42964
+ }],
42850
42965
  "pipelineAnalytics.listEventKinds": [{
42851
42966
  name: "deviceId",
42852
42967
  form: "single",
@@ -44779,6 +44894,12 @@ Object.defineProperty(exports, "AUDIO_MACRO_LABELS", {
44779
44894
  return AUDIO_MACRO_LABELS;
44780
44895
  }
44781
44896
  });
44897
+ Object.defineProperty(exports, "ArchivedDebugNoteSchema", {
44898
+ enumerable: true,
44899
+ get: function() {
44900
+ return ArchivedDebugNoteSchema;
44901
+ }
44902
+ });
44782
44903
  Object.defineProperty(exports, "BaseAddon", {
44783
44904
  enumerable: true,
44784
44905
  get: function() {
@@ -44893,6 +45014,12 @@ Object.defineProperty(exports, "MACRO_LABELS", {
44893
45014
  return MACRO_LABELS;
44894
45015
  }
44895
45016
  });
45017
+ Object.defineProperty(exports, "MAX_ARCHIVED_DEBUG_NOTES", {
45018
+ enumerable: true,
45019
+ get: function() {
45020
+ return MAX_ARCHIVED_DEBUG_NOTES;
45021
+ }
45022
+ });
44896
45023
  Object.defineProperty(exports, "MediaFileKindEnum", {
44897
45024
  enumerable: true,
44898
45025
  get: function() {
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_dist = require("../dist-CoLA3NHh.js");
5
+ const require_dist = require("../dist-FHSaZkf_.js");
6
6
  let node_fs = require("node:fs");
7
7
  node_fs = require_dist.__toESM(node_fs);
8
8
  let node_path = require("node:path");