@camstack/addon-pipeline 1.2.75 → 1.2.77

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 (31) hide show
  1. package/dist/{addon-utils-a_36HH_N.js → addon-utils-bZcwLaVW.js} +1 -1
  2. package/dist/audio-analyzer/index.js +2 -2
  3. package/dist/audio-analyzer/index.mjs +1 -1
  4. package/dist/detection-pipeline/index.js +4 -4
  5. package/dist/detection-pipeline/index.mjs +2 -2
  6. package/dist/{dist-6ZJCV0jY.js → dist-DQZzL0Ri.js} +452 -42
  7. package/dist/{dist-T_8jMw7d.mjs → dist-HhcoV-Ky.mjs} +452 -42
  8. package/dist/{event-loop-stall-monitor-Cjof8vA1.js → event-loop-stall-monitor-CBOo1oh_.js} +1 -1
  9. package/dist/{event-loop-stall-monitor-XeGmL4xr.mjs → event-loop-stall-monitor-CqBEWGSZ.mjs} +1 -1
  10. package/dist/{lazy-sharp-DvwPafeP.js → lazy-sharp-DIC1rpea.js} +1 -1
  11. package/dist/motion-wasm/index.js +2 -2
  12. package/dist/motion-wasm/index.mjs +1 -1
  13. package/dist/pipeline-runner/index.js +278 -15
  14. package/dist/pipeline-runner/index.mjs +277 -14
  15. package/dist/recorder/index.js +368 -18
  16. package/dist/recorder/index.mjs +367 -17
  17. package/dist/session-decode/decode-worker-child.js +2 -2
  18. package/dist/session-decode/decode-worker-child.mjs +1 -1
  19. package/dist/stream-broker/_stub.js +2 -2
  20. package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-H2OTmgR6.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-De_xzvjU.mjs} +3 -3
  21. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DHJSxHH1.mjs +26 -0
  22. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Dg08SxUW.mjs +26 -0
  23. package/dist/stream-broker/{hostInit-4XDN_Nt0.mjs → hostInit-CDS5frmk.mjs} +3 -3
  24. package/dist/stream-broker/index.js +306 -71
  25. package/dist/stream-broker/index.mjs +306 -71
  26. package/dist/stream-broker/remoteEntry.js +1 -1
  27. package/dist/{worker-protocol-SqED7Y9i.mjs → worker-protocol-BNlLGLBV.mjs} +1 -1
  28. package/dist/{worker-protocol-B0cbTXyw.js → worker-protocol-DZVGVAPU.js} +1 -1
  29. package/package.json +1 -1
  30. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-RYTOS6B-.mjs +0 -26
  31. package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DfsLsn2e.mjs +0 -26
@@ -1,4 +1,4 @@
1
- import { At as string, Dt as number, J as recordingExportCapability, Mt as EventCategory, N as deriveRecordingMode, Ot as object, St as array, Z as storageEvictableCapability, _ as OpsLogEntrySchema, b as RECORDING_EXPORT_MAX_READ_BYTES, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, ft as hydrateSchema, gt as nodePin, kt as record, p as ExportRecordSchema, q as recordingCapability, st as BaseAddon, tt as errMsg, ut as DeviceType, x as RecordingConfigSchema, yt as selectAssignedProfileSlots } from "../dist-T_8jMw7d.mjs";
1
+ import { At as string, Dt as number, J as recordingExportCapability, Mt as EventCategory, N as deriveRecordingMode, Ot as object, St as array, Z as storageEvictableCapability, _ as OpsLogEntrySchema, b as RECORDING_EXPORT_MAX_READ_BYTES, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, ft as hydrateSchema, gt as nodePin, kt as record, p as ExportRecordSchema, q as recordingCapability, st as BaseAddon, tt as errMsg, ut as DeviceType, x as RecordingConfigSchema, yt as selectAssignedProfileSlots } from "../dist-HhcoV-Ky.mjs";
2
2
  import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
3
3
  import { n as createFileDataPlaneHandler, s as parseRangeHeader, t as contentTypeFor } from "../addon-utils-A2S9D7pu.mjs";
4
4
  import { randomUUID } from "node:crypto";
@@ -1709,7 +1709,7 @@ async function availabilityProfile(root, deviceId) {
1709
1709
  * NOT profiles (`events/`, plus the `strips/` trees the retired filmstrip tier
1710
1710
  * left on disk); a walker that trusts readdir would offer them as playable
1711
1711
  * profiles. */
1712
- var KNOWN_PROFILES = new Set([
1712
+ var KNOWN_PROFILES$1 = new Set([
1713
1713
  "high",
1714
1714
  "mid",
1715
1715
  "low"
@@ -1717,7 +1717,7 @@ var KNOWN_PROFILES = new Set([
1717
1717
  /** `<root>/<deviceId>/` PROFILE subdirectories. Empty when absent. */
1718
1718
  async function profilesOf(root, deviceId) {
1719
1719
  try {
1720
- return (await promises.readdir(path.join(root, String(deviceId)))).filter((e) => KNOWN_PROFILES.has(e));
1720
+ return (await promises.readdir(path.join(root, String(deviceId)))).filter((e) => KNOWN_PROFILES$1.has(e));
1721
1721
  } catch {
1722
1722
  return [];
1723
1723
  }
@@ -5664,26 +5664,29 @@ var PENDING_GRACE_MS = 3e4;
5664
5664
  * segment of every recording would be classified as a previous run's leftover
5665
5665
  * and dropped.
5666
5666
  */
5667
- var PREVIOUS_RUN_SKEW_MS = 1e3;
5667
+ var PREVIOUS_RUN_SKEW_MS$1 = 1e3;
5668
5668
  /**
5669
5669
  * Decide whether a missing flat file is a late flush or a previous run's entry.
5670
5670
  *
5671
- * ffmpeg's `-segment_list` file is not cleared between runs and a fresh watcher
5672
- * starts at `processed = 0`, so the first passes after every attach replay the
5673
- * PREVIOUS run's playlist. Those entries were relocated into the bucket tree
5674
- * long ago; their absence is the system working. Over 2026-08-10..13 they were
5675
- * 83% of all retries (median age 1 615 s, max 17.4 h) and produced 68 of the
5676
- * 122 `never landed` warnings a warning that reads like data loss for a file
5677
- * that was correctly filed hours earlier.
5671
+ * ffmpeg opens `-segment_list` in TRUNCATE mode when it spawns, but not
5672
+ * instantly: a fresh watcher starts at `processed = 0` and, in the window
5673
+ * between spawn and that truncation, reads the PREVIOUS run's playlist body.
5674
+ * Those entries were relocated into the bucket tree long ago; their absence is
5675
+ * the system working. Over 2026-08-10..13 they were 83% of all retries (median
5676
+ * age 1 615 s, max 17.4 h) and produced 68 of the 122 `never landed` warnings —
5677
+ * a warning that reads like data loss for a file that was correctly filed hours
5678
+ * earlier.
5678
5679
  *
5679
- * Note what this deliberately does NOT do: it does not skip a previous run's
5680
- * entry whose file is STILL THERE. That case is real crash recovery — an
5681
- * unclean stop leaves un-relocated segments in `.rec-tmp` and the playlist is
5682
- * the only record of their durations so the caller stats first and only asks
5683
- * this question once the file is known to be absent.
5680
+ * What this is NOT is crash recovery, and an earlier version of this comment
5681
+ * claimed it was. Once ffmpeg truncates, the previous run's un-relocated
5682
+ * segments are named by NOTHING, so no amount of care in this function can
5683
+ * reach them on 2026-08-14 that had stranded 179 GB across the fleet. They
5684
+ * are recovered from the DIRECTORY instead, by `staging-reconcile.ts`, which
5685
+ * the addon runs once at boot. This function only has to be right about the
5686
+ * entries a playlist does name.
5684
5687
  */
5685
5688
  function classifyMissingEntry(input) {
5686
- return input.segmentStartMs < input.writerStartedMs - PREVIOUS_RUN_SKEW_MS ? "stale-previous-run" : "pending";
5689
+ return input.segmentStartMs < input.writerStartedMs - PREVIOUS_RUN_SKEW_MS$1 ? "stale-previous-run" : "pending";
5687
5690
  }
5688
5691
  /** Whether a pending entry has outlived its grace. Pure — the caller clocks it. */
5689
5692
  function shouldGiveUpOnPending(input) {
@@ -6978,6 +6981,312 @@ var RetentionSweeper = class {
6978
6981
  }
6979
6982
  };
6980
6983
  //#endregion
6984
+ //#region src/recorder/addon/staging-reconcile.ts
6985
+ /**
6986
+ * Recover `.rec-tmp` segments that a writer restart orphaned.
6987
+ *
6988
+ * WHY THIS EXISTS
6989
+ * ───────────────
6990
+ * The segment watcher's ONLY record of what it still owes is ffmpeg's
6991
+ * `-segment_list live.m3u8`. ffmpeg opens that file in TRUNCATE mode on every
6992
+ * spawn, so a writer respawn destroys it. Every segment written but not yet
6993
+ * relocated at that instant becomes permanently unreachable:
6994
+ *
6995
+ * - no playlist names it, so no watcher will ever finalize it;
6996
+ * - `parseSegmentPath` cannot see it — staging is flat and dot-prefixed, kept
6997
+ * deliberately out of the hydrate walk — so retention never counts it;
6998
+ * - the one `.rec-tmp` sweep that exists (`sweepUnassignedStaging`) touches
6999
+ * only locations with ZERO placement assignments, never the live one.
7000
+ *
7001
+ * So the footage is not deleted and not kept: it is stranded, and it accrues
7002
+ * for as long as the install runs.
7003
+ *
7004
+ * `segment-watcher.ts` carries a comment asserting the opposite — that the
7005
+ * playlist "is NOT cleared between runs", which is what its `stale-previous-run`
7006
+ * classification and its documented "that is the crash recovery" path are built
7007
+ * on. The live filesystem refutes it, and a leftover that describes the right
7008
+ * design reads as verification: on 2026-08-14 `/recordings/.rec-tmp/590/high/`
7009
+ * held a `live.m3u8` of 50 entries, every one named at or after that writer's
7010
+ * 20:28:31 start, beside **5 863 older `.m4s` files referenced by nobody** —
7011
+ * the oldest from 2026-07-04. Fleet total: 179 GB, on an array at 90% full.
7012
+ *
7013
+ * WHAT THIS DOES NOT DO
7014
+ * ─────────────────────
7015
+ * It never deletes. Recovery is the same `SegmentStore.onFinalized` the live
7016
+ * path uses — stat, relocate into the UTC bucket, index — so a recovered
7017
+ * segment is indistinguishable from one that was never orphaned, and a segment
7018
+ * it cannot place stays exactly where it is for the next attempt.
7019
+ */
7020
+ /**
7021
+ * How far before the writer's own start a segment may be named and still count
7022
+ * as belonging to THIS run.
7023
+ *
7024
+ * Mirrors `segment-watcher.PREVIOUS_RUN_SKEW_MS`, and for the same reason:
7025
+ * ffmpeg names segments with whole-second `%s`, so the first segment of a run
7026
+ * carries the second already in progress when the process spawned. Without the
7027
+ * tolerance a recovery pass would reach for the live writer's opening segment —
7028
+ * the one file in the directory that is still being written.
7029
+ */
7030
+ var PREVIOUS_RUN_SKEW_MS = 1e3;
7031
+ /**
7032
+ * How much longer than nominal an inter-segment gap may be and still be read as
7033
+ * one segment's duration.
7034
+ *
7035
+ * ffmpeg cuts on keyframes, so a real segment overshoots `-segment_time` by up
7036
+ * to a GOP; a gap of twice nominal is still plausibly one segment. Anything
7037
+ * wider is a RUN BOUNDARY — the writer was down in between — and the honest
7038
+ * duration is the nominal one. Trusting the gap there would paint a solid
7039
+ * timeline bar across hours of footage that does not exist, which is a worse
7040
+ * failure than under-reporting by a few seconds.
7041
+ */
7042
+ var MAX_GAP_FACTOR = 2;
7043
+ /**
7044
+ * Decide which staged files belong to a previous run, and how long each ran.
7045
+ *
7046
+ * Pure — the caller does the I/O. The gate is the file's own name against the
7047
+ * writer's start: a segment named before this ffmpeg spawned cannot be one this
7048
+ * ffmpeg is writing, whatever the playlist says.
7049
+ */
7050
+ function planStagingRecovery(input) {
7051
+ const nominalMs = input.segmentSeconds * 1e3;
7052
+ const cutoffMs = input.writerStartedMs - PREVIOUS_RUN_SKEW_MS;
7053
+ const owned = input.playlistNames;
7054
+ const candidates = [];
7055
+ for (const name of input.names) {
7056
+ const startMs = parseEpochStartMs(name);
7057
+ if (startMs === null) continue;
7058
+ if (startMs >= cutoffMs) continue;
7059
+ if (owned?.has(name) === true) continue;
7060
+ candidates.push({
7061
+ name,
7062
+ startMs
7063
+ });
7064
+ }
7065
+ candidates.sort((a, b) => a.startMs - b.startMs);
7066
+ const maxGapMs = nominalMs * MAX_GAP_FACTOR;
7067
+ return candidates.map((c, i) => {
7068
+ const next = candidates[i + 1];
7069
+ const gapMs = next === void 0 ? 0 : next.startMs - c.startMs;
7070
+ const durMs = gapMs > 0 && gapMs <= maxGapMs ? gapMs : nominalMs;
7071
+ return {
7072
+ name: c.name,
7073
+ startMs: c.startMs,
7074
+ durMs
7075
+ };
7076
+ });
7077
+ }
7078
+ /** The real filesystem. The only production value of {@link StagingIo}. */
7079
+ var nodeStagingIo = {
7080
+ listDir: (dir) => promises.readdir(dir),
7081
+ readPlaylist: (dir) => promises.readFile(path.join(dir, "live.m3u8"), "utf8").catch(() => null)
7082
+ };
7083
+ /** The only `<deviceId>/` subdirectories of staging that hold segments. */
7084
+ var KNOWN_PROFILES = new Set([
7085
+ "high",
7086
+ "mid",
7087
+ "low"
7088
+ ]);
7089
+ /** Default orphans per chunk. 590/high alone had 5 863 of them. */
7090
+ var DEFAULT_CHUNK_SIZE = 100;
7091
+ var macrotask = () => new Promise((resolve) => {
7092
+ setTimeout(resolve, 0);
7093
+ });
7094
+ /**
7095
+ * Relocate every previous-run segment left in one staging dir.
7096
+ *
7097
+ * Chunked with a yield between batches: this runs alongside a live recorder and
7098
+ * a backlog is measured in thousands of files over shfs/FUSE — a single
7099
+ * uninterrupted loop is exactly the event-loop stall the recorder has already
7100
+ * paid for once (D128).
7101
+ *
7102
+ * A failure is per-segment and never aborts the pass: the file stays in staging
7103
+ * and the next attach retries it. Every drop is logged with the segment name —
7104
+ * silence reads as "never happened", and this whole class of loss went
7105
+ * unnoticed for six weeks precisely because nothing said anything.
7106
+ */
7107
+ async function recoverStagingOrphans(dir, input, deps) {
7108
+ let names;
7109
+ try {
7110
+ names = await deps.listDir(dir);
7111
+ } catch (err) {
7112
+ deps.logger.warn("recorder: staging recovery could not list the staging dir", { meta: {
7113
+ dir,
7114
+ error: err instanceof Error ? err.message : String(err)
7115
+ } });
7116
+ return {
7117
+ found: 0,
7118
+ recovered: 0,
7119
+ failed: 0,
7120
+ aborted: false
7121
+ };
7122
+ }
7123
+ let playlistNames;
7124
+ const body = await deps.readPlaylist(dir).catch(() => null);
7125
+ if (body !== null) playlistNames = new Set(parseLivePlaylist(body).map((e) => e.segPath.replace(/^.*\//, "")));
7126
+ const plan = planStagingRecovery({
7127
+ ...input,
7128
+ names,
7129
+ playlistNames
7130
+ });
7131
+ if (plan.length === 0) return {
7132
+ found: 0,
7133
+ recovered: 0,
7134
+ failed: 0,
7135
+ aborted: false
7136
+ };
7137
+ const chunkSize = deps.chunkSize ?? DEFAULT_CHUNK_SIZE;
7138
+ const yieldBetween = deps.yieldBetween ?? macrotask;
7139
+ let recovered = 0;
7140
+ let failed = 0;
7141
+ let aborted = false;
7142
+ for (let i = 0; i < plan.length; i++) {
7143
+ const orphan = plan[i];
7144
+ if (deps.shouldStop?.() === true) {
7145
+ aborted = true;
7146
+ deps.logger.warn("recorder: staging recovery stopped short by shutdown", { meta: {
7147
+ dir,
7148
+ recovered,
7149
+ failed,
7150
+ remaining: plan.length - i
7151
+ } });
7152
+ break;
7153
+ }
7154
+ try {
7155
+ await deps.finalize(orphan, `${dir}/${orphan.name}`);
7156
+ recovered += 1;
7157
+ } catch (err) {
7158
+ failed += 1;
7159
+ deps.logger.warn("recorder: staging recovery could not relocate an orphaned segment", { meta: {
7160
+ dir,
7161
+ seg: orphan.name,
7162
+ startMs: orphan.startMs,
7163
+ durMs: orphan.durMs,
7164
+ error: err instanceof Error ? err.message : String(err)
7165
+ } });
7166
+ }
7167
+ if ((i + 1) % chunkSize === 0 && i + 1 < plan.length) await yieldBetween();
7168
+ }
7169
+ deps.logger.info("recorder: recovered segments a writer restart had orphaned in staging", { meta: {
7170
+ dir,
7171
+ found: plan.length,
7172
+ recovered,
7173
+ failed,
7174
+ aborted,
7175
+ oldestMs: plan[0]?.startMs,
7176
+ newestMs: plan[plan.length - 1]?.startMs
7177
+ } });
7178
+ return {
7179
+ found: plan.length,
7180
+ recovered,
7181
+ failed,
7182
+ aborted
7183
+ };
7184
+ }
7185
+ /**
7186
+ * Boot reconcile: relocate every previous-run segment stranded in staging, on
7187
+ * every location, for every camera — attached or not.
7188
+ *
7189
+ * WHY BOOT, AND NOT ATTACH
7190
+ * ────────────────────────
7191
+ * Orphans are created by a writer restart, so by construction they all predate
7192
+ * the runner that finds them; boot is when the whole backlog is visible at
7193
+ * once. Attach looked like the natural hook and is the wrong one twice over: it
7194
+ * only ever reaches cameras that are currently recording (device 1438 had a
7195
+ * staging backlog while attached to nothing), and it puts unbounded filesystem
7196
+ * work on the path that must start recording NOW — measured, it kept microtasks
7197
+ * in flight across `RecordingController.stop()` and made the runner's 5 s
7198
+ * SIGTERM-grace test fail under load.
7199
+ *
7200
+ * `bootMs` is the cutoff, and it is what makes this safe to run while writers
7201
+ * are spawning: a live writer's segments are all named after boot, so the plan
7202
+ * cannot select one. Nothing is deleted, and a segment that cannot be placed is
7203
+ * left exactly where it is for the next boot.
7204
+ */
7205
+ async function recoverAllStagedOrphans(deps) {
7206
+ let dirs = 0;
7207
+ let found = 0;
7208
+ let recovered = 0;
7209
+ let failed = 0;
7210
+ let aborted = false;
7211
+ for (const location of deps.locations()) {
7212
+ const stagingRoot = `${location.root}/${STAGING_DIR_NAME}`;
7213
+ let deviceDirs;
7214
+ try {
7215
+ deviceDirs = await deps.listDir(stagingRoot);
7216
+ } catch {
7217
+ continue;
7218
+ }
7219
+ for (const deviceDir of deviceDirs) {
7220
+ if (aborted) break;
7221
+ const deviceId = Number(deviceDir);
7222
+ if (!Number.isInteger(deviceId) || deviceId <= 0) continue;
7223
+ let profileDirs;
7224
+ try {
7225
+ profileDirs = await deps.listDir(`${stagingRoot}/${deviceDir}`);
7226
+ } catch {
7227
+ continue;
7228
+ }
7229
+ const segmentSeconds = await deps.segmentSecondsFor(deviceId);
7230
+ for (const profile of profileDirs) {
7231
+ if (aborted) break;
7232
+ if (!KNOWN_PROFILES.has(profile)) continue;
7233
+ const dir = `${stagingRoot}/${deviceDir}/${profile}`;
7234
+ dirs += 1;
7235
+ const report = await recoverStagingOrphans(dir, {
7236
+ writerStartedMs: deps.bootMs,
7237
+ segmentSeconds
7238
+ }, {
7239
+ listDir: deps.listDir,
7240
+ readPlaylist: deps.readPlaylist,
7241
+ finalize: (orphan, flatAbsPath) => deps.finalize({
7242
+ deviceId,
7243
+ profile,
7244
+ locationId: location.id,
7245
+ locationRoot: location.root,
7246
+ flatAbsPath,
7247
+ startMs: orphan.startMs,
7248
+ durMs: orphan.durMs
7249
+ }),
7250
+ logger: withDeviceTag(deps.logger, deviceId),
7251
+ chunkSize: deps.chunkSize,
7252
+ yieldBetween: deps.yieldBetween,
7253
+ shouldStop: deps.shouldStop
7254
+ });
7255
+ found += report.found;
7256
+ recovered += report.recovered;
7257
+ failed += report.failed;
7258
+ if (report.aborted) aborted = true;
7259
+ }
7260
+ }
7261
+ }
7262
+ if (found > 0 || failed > 0) deps.logger.info("recorder: staging boot reconcile complete", { meta: {
7263
+ dirs,
7264
+ found,
7265
+ recovered,
7266
+ failed,
7267
+ aborted
7268
+ } });
7269
+ return {
7270
+ dirs,
7271
+ found,
7272
+ recovered,
7273
+ failed,
7274
+ aborted
7275
+ };
7276
+ }
7277
+ /** Bind `tags: { deviceId }` onto every line a per-dir pass writes. */
7278
+ function withDeviceTag(logger, deviceId) {
7279
+ const tag = (extras) => ({
7280
+ ...typeof extras === "object" && extras !== null ? extras : {},
7281
+ tags: { deviceId }
7282
+ });
7283
+ return {
7284
+ info: (message, extras) => logger.info(message, tag(extras)),
7285
+ warn: (message, extras) => logger.warn(message, tag(extras)),
7286
+ debug: (message, extras) => logger.debug(message, tag(extras))
7287
+ };
7288
+ }
7289
+ //#endregion
6981
7290
  //#region src/recorder/addon/index.ts
6982
7291
  /**
6983
7292
  * recorder addon SHELL — recording + storage-evictable providers on the
@@ -7515,11 +7824,13 @@ var RecorderV2Addon = class extends BaseAddon {
7515
7824
  force: true
7516
7825
  }).catch(() => {});
7517
7826
  await this.sweepUnassignedStaging();
7827
+ const stagingBootMs = Date.now();
7518
7828
  try {
7519
7829
  await this.controller?.start();
7520
7830
  } catch (err) {
7521
7831
  this.ctx.logger.warn("recorder: controller start failed", { meta: { error: errMsg(err) } });
7522
7832
  }
7833
+ this.recoverStagedOrphans(stagingBootMs);
7523
7834
  if (this.eventUnsub === null) this.eventUnsub = subscribeEventCapture({
7524
7835
  eventBus: this.ctx.eventBus,
7525
7836
  map: this.eventMap,
@@ -7824,6 +8135,45 @@ var RecorderV2Addon = class extends BaseAddon {
7824
8135
  }
7825
8136
  }
7826
8137
  /**
8138
+ * Boot reconcile for `.rec-tmp`: relocate every segment a previous runner's
8139
+ * writers left stranded, on every location, for every camera.
8140
+ *
8141
+ * The counterpart to {@link sweepUnassignedStaging} above, which only ever
8142
+ * looks at locations nothing is assigned to — so the LIVE root, the one that
8143
+ * actually accumulates, had no pass at all (D148). Nothing here deletes: each
8144
+ * orphan goes through the same `SegmentStore.onFinalized` a live segment
8145
+ * does, and one it cannot place is left on disk for the next boot.
8146
+ */
8147
+ async recoverStagedOrphans(bootMs) {
8148
+ try {
8149
+ await recoverAllStagedOrphans({
8150
+ locations: () => this.resolvedLocations.map((l) => ({
8151
+ id: l.id,
8152
+ root: l.root
8153
+ })),
8154
+ listDir: nodeStagingIo.listDir,
8155
+ readPlaylist: nodeStagingIo.readPlaylist,
8156
+ finalize: async (input) => {
8157
+ const store = this.segmentStore;
8158
+ if (store === null) throw new Error("recorder is shutting down");
8159
+ await store.onFinalized(input);
8160
+ },
8161
+ logger: this.ctx.logger,
8162
+ bootMs,
8163
+ segmentSecondsFor: async (deviceId) => {
8164
+ try {
8165
+ return (await loadDeviceConfig(this.configStore(), deviceId)).segmentSeconds ?? this.config.segmentSeconds;
8166
+ } catch {
8167
+ return this.config.segmentSeconds;
8168
+ }
8169
+ },
8170
+ shouldStop: () => this.segmentStore === null
8171
+ });
8172
+ } catch (err) {
8173
+ this.ctx.logger.warn("recorder: staging boot reconcile failed", { meta: { error: errMsg(err) } });
8174
+ }
8175
+ }
8176
+ /**
7827
8177
  * Surface a storage-placement fault on the liveness/alert surface. STRICTLY
7828
8178
  * best-effort: the alerts cap is a nice-to-have and an unmounted disk must
7829
8179
  * still be shouted about in the log even when it is unreachable.
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_worker_protocol = require("../worker-protocol-B0cbTXyw.js");
3
- const require_lazy_sharp = require("../lazy-sharp-DvwPafeP.js");
2
+ const require_worker_protocol = require("../worker-protocol-DZVGVAPU.js");
3
+ const require_lazy_sharp = require("../lazy-sharp-DIC1rpea.js");
4
4
  //#region src/session-decode/color-conversion.ts
5
5
  /**
6
6
  * Explicit YUV→RGB colorspace/range resolution for the session-decode worker.
@@ -1,4 +1,4 @@
1
- import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-SqED7Y9i.mjs";
1
+ import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-BNlLGLBV.mjs";
2
2
  import { n as setSharpWarnSink, r as hostExternalEntryUrls, t as getSharp } from "../lazy-sharp-6oymT_yf.mjs";
3
3
  //#region src/session-decode/color-conversion.ts
4
4
  /**
@@ -1,7 +1,7 @@
1
- import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-DfsLsn2e.mjs";
1
+ import { a as e, c as t, d as n, f as r, i, l as a, n as o, o as s, p as c, r as l, s as u, t as d, u as f } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-Dg08SxUW.mjs";
2
2
  import { a as p, i as m, n as h, o as g, r as _, t as v } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react__loadShare__.js-C9j-2lBe.mjs";
3
3
  import { n as y, r as b, t as x } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare__react_mf_1_jsx_mf_2_runtime__loadShare__.js-XO0-Pyu6.mjs";
4
- import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-RYTOS6B-.mjs";
4
+ import { t as S } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DHJSxHH1.mjs";
5
5
  import { n as C, t as w } from "./_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_tanstack_mf_1_react_mf_2_query__loadShare__.js-BO7TIbJV.mjs";
6
6
  //#region ../../node_modules/lucide-react/dist/esm/shared/src/utils.js
7
7
  var T = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), E = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), D = (e) => {
@@ -3,7 +3,7 @@ import "./dist-CYZr2fwk.mjs";
3
3
  var e = {
4
4
  "@camstack/sdk": {
5
5
  name: "@camstack/sdk",
6
- version: "1.2.18",
6
+ version: "1.2.19",
7
7
  scope: ["default"],
8
8
  loaded: !1,
9
9
  from: "addon_stream_broker_widgets",
@@ -18,7 +18,7 @@ var e = {
18
18
  },
19
19
  "@camstack/types": {
20
20
  name: "@camstack/types",
21
- version: "1.2.70",
21
+ version: "1.2.73",
22
22
  scope: ["default"],
23
23
  loaded: !1,
24
24
  from: "addon_stream_broker_widgets",
@@ -33,7 +33,7 @@ var e = {
33
33
  },
34
34
  "@camstack/ui-library": {
35
35
  name: "@camstack/ui-library",
36
- version: "1.2.49",
36
+ version: "1.2.51",
37
37
  scope: ["default"],
38
38
  loaded: !1,
39
39
  from: "addon_stream_broker_widgets",
@@ -0,0 +1,26 @@
1
+ //#region \0virtual:mf:__mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
2
+ var e = "__mf_init__virtual:mf:__mfe_internal__addon_stream_broker_widgets__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
3
+ if (!t) {
4
+ let n, r, i = new Promise((e, t) => {
5
+ n = e, r = t;
6
+ });
7
+ t = globalThis[e] = {
8
+ initPromise: i,
9
+ initResolve: n,
10
+ initReject: r
11
+ };
12
+ }
13
+ var n = t.initPromise, r = "__mf_module_cache__";
14
+ globalThis[r] ||= {
15
+ share: {},
16
+ remote: {}
17
+ }, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
18
+ var i = globalThis[r], a, o = (e) => {
19
+ e.ACCESSORY_LABEL, e.ACCESS_ROLES, e.ALEXA_EGRESS_PROFILE, e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_ANALYSIS_CAP_NAME, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AUDIO_PRESETS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionCandidateResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionJobSchema, e.AdoptionJobStateSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionOutcomeSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationActionSchema, e.AutomationConditionOperatorSchema, e.AutomationConditionSchema, e.AutomationControlStatusSchema, e.AutomationRecipeSchema, e.AutomationTriggerSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BASE_LIVE_EGRESS_PROFILE, e.BATTERY_DEVICE_PROFILE, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAMERA_SWITCH_CATALOG, e.CAMERA_SWITCH_ORDER, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CONNECTION_TEST_TIMEOUT_MS, e.CORE_BLOCKS_ADDON_ID, e.CORE_BLOCK_ADDON_PREFIX, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusDegradationReasonSchema, e.CameraStatusDegradationSchema, e.CameraStatusSchema, e.CameraStatusStageSchema, e.CameraStreamSchema, e.CameraSwitchAuthoritySchema, e.CameraSwitchGroupSchema, e.CameraSwitchIdSchema, e.CameraSwitchSchema, e.CameraSwitchUnavailableReasonSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectionTestDescriptorSchema, e.ConnectionTestInputSchema, e.ConnectionTestOutcomeSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoreBlockCompileResultSchema, e.CoreBlockInputSchema, e.CoreBlockPlacementSchema, e.CoreBlockSchema, e.CoreBlockStatusSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DECLARED_DEVICE_SWEEP_LIMIT, e.DECLARED_INTEGRATION_FIXED_KEY, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_DETAIL_CROP_CONVENTION, e.DEFAULT_EVENTS_BAND_BUFFER_SEC, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_NATIVE_LEASE_SETTINGS, e.DEFAULT_RETENTION, e.DEFAULT_RUNTIME_STATE_DURABILITY, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEFAULT_TIMELAPSE_PREVIEW_TEXT, e.DETAIL_CROP_PADDING_FIELD, e.DETAIL_CROP_PADDING_KEY, e.DETAIL_CROP_SECTION_ID, e.DETAIL_CROP_SQUARE_KEY, e.DETECTION_MACRO_CLASSES, e.DETECTION_PIPELINE_CAP_NAME, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SCOPED_CAPS, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATE_READERS, e.DEVICE_STATUS_METHOD, e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DataStoreEngineInfoSchema, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DeclaredDevices, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetailCropConventionSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceNetworkStatsSchema, e.DeviceRole, e.DeviceRuntimeState, e.DeviceSelectorSchema, e.DeviceStatusSchema, e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, e.EVENT_TAXONOMY, e.EXPORT_DENSE_MAX_RANGES, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.EgressEncodeSchema, e.EgressRateControlSchema, e.EgressTranscodeRequestSchema, e.EgressTranscodeSchema, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventKindsForDeviceSchema, e.EventMediaArtifactSchema, e.EventMediaCoverageSchema, e.EventMediaKindSchema, e.EventMediaProductionSchema, e.EventSourceType, e.ExportBytesSchema, e.ExportDenseRangeSchema, e.ExportDenseSchema, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionBindingSourceSchema, e.ExpressionEvalError, e.ExpressionFieldBindingSchema, e.ExpressionGlobalBindingSchema, e.ExpressionLiteralBindingSchema, e.ExpressionParseError, e.ExpressionSourceSchema, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.Fmp4BoxSplitter, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HAP_AUDIO_BASE, e.HAP_AUDIO_BITRATE_KBPS, e.HAP_AUDIO_VBV_KBITS, e.HAP_KEYFRAME_INTERVAL_SEC, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageContractSchema, e.ImageContractStateSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LOG_LEVEL_RANK, e.LabelAttributionSchema, e.LabelDefinitionSchema, e.LabelTierSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LinkedDevicesModeSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRetryPolicySchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmTimeoutDefaults, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, e.MACRO_LABELS, e.MAX_CONDITION_DEPTH, e.MAX_CONDITION_LEAVES, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.METHOD_DEVICE_SELECTORS, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileInfoSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.MutationFilterSchema, e.NATIVE_LEASE_ACTIVITY_FIELD, e.NATIVE_LEASE_ACTIVITY_KEY, e.NATIVE_LEASE_ADMISSION_FIELD, e.NATIVE_LEASE_ADMISSION_KEY, e.NATIVE_LEASE_BUDGET_FIELD, e.NATIVE_LEASE_BUDGET_KEY, e.NATIVE_LEASE_HOLD_FIELD, e.NATIVE_LEASE_HOLD_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TILE_BUDGET_FIELD, e.NATIVE_LEASE_TILE_BUDGET_KEY, e.NC_ALARM_SYSTEM_EVENT_KINDS, e.NC_AUDIO_DBFS_FLOOR, e.NC_AUDIO_DB_MAX, e.NC_AUDIO_DB_MIN, e.NC_AUDIO_DB_OFFERED, e.NC_AUDIO_DB_STEP, e.NC_AUDIO_DEFAULTS, e.NC_AUDIO_HIT_PERCENT_MAX, e.NC_AUDIO_HIT_PERCENT_MIN, e.NC_AUDIO_SAMPLING_MAX_SEC, e.NC_AUDIO_SAMPLING_MIN_SEC, e.NC_AUTHORABLE_SYSTEM_EVENT_KINDS, e.NC_BASE_CONDITION_KEYS, e.NC_CONDITION_CATALOG, e.NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.NC_CONFIRM_DEFAULT_TIMEOUT_MS, e.NC_CONFIRM_MAX_TIMEOUT_MS, e.NC_CONFIRM_MIN_TIMEOUT_MS, e.NC_DEFAULT_SNOOZE_MINUTES, e.NC_HISTORY_LIMIT_DEFAULT, e.NC_HISTORY_LIMIT_MAX, e.NC_MAX_PER_TRACK_IMMEDIATE, e.NC_SNOOZE_MAX_MINUTES, e.NC_TAXONOMY, e.NativeCropBboxSchema, e.NativeCropRefSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeLeaseAdmissionSchema, e.NativeLeaseSettingsSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NcAlarmConfigSchema, e.NcAlarmModeCoverageSchema, e.NcAlarmSettingsPatchSchema, e.NcAlarmSettingsSchema, e.NcAlarmSkipReasonSchema, e.NcAlarmSkippedDeviceSchema, e.NcAudioConditionSchema, e.NcConditionDescriptorSchema, e.NcConditionsSchema, e.NcConfirmExpectSchema, e.NcConfirmSchema, e.NcCrossingSchema, e.NcDeliverySchema, e.NcDeviceStateConditionSchema, e.NcHistoryEntrySchema, e.NcHistoryFilterSchema, e.NcHistoryRecordKindSchema, e.NcHistoryStatusSchema, e.NcHistorySubjectSchema, e.NcMediaFrameSchema, e.NcMediaPolicySchema, e.NcOccupancyConditionSchema, e.NcPlateMatcherSchema, e.NcRuleActionSchema, e.NcRuleActionSequenceSchema, e.NcRuleActionsSchema, e.NcRuleInputSchema, e.NcRuleNotificationButtonSchema, e.NcRulePatchSchema, e.NcRuleSchema, e.NcRuleTargetSchema, e.NcScheduleSchema, e.NcScheduleWindowSchema, e.NcSnoozeInputSchema, e.NcSnoozeSchema, e.NcSnoozeScopeSchema, e.NcSnoozeSuppressedSchema, e.NcSystemEventConditionSchema, e.NcSystemEventKindSchema, e.NcTaxonomyEntrySchema, e.NcTaxonomySchema, e.NcTestResultSchema, e.NcThrottleGranularitySchema, e.NcThrottleSchema, e.NcZoneConditionSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionIconSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdRenderOutcomeEnum, e.OsdRenderResultSchema, e.OsdSlotBindingSchema, e.OsdSlotViewSchema, e.OsdSourceOptionSchema, e.OsdSourceSchema, e.OsdSourceValueTypeEnum, e.OsdStatusSchema, e.PET_FEEDER_MANUAL_FEED_MAX, e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PRIVACY_MASK_CAP_NAME, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzOptionsSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.RATE_CONTROL_RELAXED, e.RATE_CONTROL_TIGHT, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RECORDING_EXPORT_MAX_READ_BYTES, e.RESERVED_BINDING_NAMES, e.RESTORED_CAP_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_STATE_POLICY, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadGopBytesResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingRangeSchema, e.RecordingRebalanceInputSchema, e.RecordingRebalanceMoveSchema, e.RecordingRebalancePlanSchema, e.RecordingRebalanceSkipReasonSchema, e.RecordingRebalanceSkipSchema, e.RecordingRetentionSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocateFootageClassSchema, e.RelocateFootageInputSchema, e.RelocateJobSchema, e.RelocateJobStateSchema, e.RelocateMediaInputSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RetrainAnnotationDraftSchema, e.RetrainAnnotationKindSchema, e.RetrainAnnotationSchema, e.RetrainAnnotationSourceSchema, e.RetrainAssistResultSchema, e.RetrainAssistSubjectSchema, e.RetrainCopyRefusalSchema, e.RetrainFrameCandidateSchema, e.RetrainFrameListSchema, e.RetrainFrameSchema, e.RetrainFrameSelectionSchema, e.RetrainMacroClassSchema, e.RetrainStatusSchema, e.RetrainTrackSchema, e.RetrainTransitionResultSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerInferenceDeviceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCENE_CONDITIONS, e.SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, e.SCENE_DEFAULT_ANCHOR_THRESHOLD, e.SCENE_DEFAULT_CHECK_INTERVAL_SEC, e.SCENE_DEFAULT_OBSERVATION_SPACING_SEC, e.SCENE_DEFAULT_QUIET_SECONDS, e.SCENE_DIVERGED, e.SCENE_RESET_RECAPTURES, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SYSTEM_SCOPE_DEVICE_METHODS, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneConfirmSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.SceneUnavailableSchema, e.SceneVerdictSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SetSiteLocationInputSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SiteLocationSchema, e.SiteLocationSourceSchema, e.SiteLocationStatusSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageMigrationClassSchema, e.StorageMigrationDestinationsSchema, e.StorageMigrationFootageMoveInputSchema, e.StorageMigrationInputSchema, e.StorageMigrationJobSchema, e.StorageMigrationLeaseInputSchema, e.StorageMigrationMediaMoveInputSchema, e.StorageMigrationMoveSchema, e.StorageMigrationParticipantSchema, e.StorageMigrationPhaseSchema, e.StorageMigrationPlanSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMELAPSE_DENSE_FLOOR_SEC, e.TIMEZONES, e.TRANSCODE_DOWN_MAX_BITRATE_KBPS, e.TRANSCODE_DOWN_MAX_HEIGHT, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TerminalInstanceInfoSchema, e.TerminalLegacyCameraSchema, e.TerminalOutputBatchSchema, e.TerminalOutputEventSchema, e.TerminalProfileInfoSchema, e.TerminalSessionInfoSchema, e.TestConnectionResultSchema, e.TestConnectionStatusEnum, e.TestResultSchema, e.TimelapseRuleInputSchema, e.TimelapseRulePatchSchema, e.TimelapseRuleSchema, e.TimelapseTemplateSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackFlagsPatchSchema, e.TrackFlagsSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackSourceSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TrainingExportDeviceTotalsSchema, e.TrainingExportSummarySchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VectorDeclareIndexInputSchema, e.VectorDeleteByFilterInputSchema, e.VectorDeleteInputSchema, e.VectorDeleteResultSchema, e.VectorFilterSchema, e.VectorGetInputSchema, e.VectorGetResultSchema, e.VectorItemSchema, e.VectorMatchSchema, e.VectorMetadataSchema, e.VectorMetricSchema, e.VectorQueryInputSchema, e.VectorQueryResultSchema, e.VectorStatsInputSchema, e.VectorStatsResultSchema, e.VectorUpsertInputSchema, e.VectorUpsertResultSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WEBRTC_EGRESS_PROFILE, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneCrossingDirectionSchema, e.ZoneCrossingSchema, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.assertTimelapseCadences, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioIsFailClosed, e.audioLabelChoices, e.audioMetricsCapability, e.audioModeOf, e.audioOrDefaults, e.audioPlanFromEncodeProfile, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.bareAddonId, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildAudioArgs, e.buildEventKindDescriptor, e.buildFfmpegArgs, e.buildInputArgs, e.buildModelVariantGroups, e.buildNcTaxonomy, e.buildRoleScopes, e.buildStreamParamsConfigSchema, e.buildVideoArgs, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.canonicalEgressPlan, e.carbonMonoxideCapability, e.cellsToRects, e.classifyBearerPrincipal, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.compileExpression, e.compileExpressionSafe, e.composeSwitchedOff, e.conditionDepth, e.connectionTestCapability, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.coreBlockAddonId, e.coreBlockIdFromAddonId, e.coreBlocksCapability, e.cosineSimilarity, e.countConditionLeaves, e.coverCapability, e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createHwAccelCache, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dataStoreProviderCapability, e.dayNightCapability, e.declarationOwnerNodeId, e.decodeVectorBase64, e.decoderCapability, e.defaultDeviceFor, e.defineCustomActions, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeModelVariant, e.detectAccessRole, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceSelectorMatches, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.egressTranscodeSharingKey, e.egressTransportFromRequest, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.encodeVectorBase64, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateExpressionSource, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.generateAutomationBlock, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.integrationsCapability, e.intercomCapability, e.invocationFromEncodeProfile, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isAudioLabelSelected, e.isBaseConditionKey, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDetectionMacroClass, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isIsolatedBuiltin, e.isNode, e.isObjectInput, e.isRestoredCap, e.isSameAddonId, e.isScheduleActive, e.isSoftwareDecode, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.knownValues, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logBannerArgs, e.logDestinationCapability, e.logLevelAtMost, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, a = e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.methodAccessForHttpMethod, e.metricsProviderCapability, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeAudioLabel, e.normalizeTokenScopes, e.normalizeUnit, e.notificationOutputCapability, e.notificationRulesCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.osdManagerCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProfileBrokerId, e.parseStreamParamsFormPatch, e.patchAudio, e.petFeederCapability, e.pickAccessoryControl, e.pickDetailCropConvention, e.pickNativeLeaseOverride, e.pickPreferredRtspEntry, e.pickVideoEncoder, e.pickerForCondition, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.principalMayReachAddon, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readDetailCropConvention, e.readDeviceStateFrom, e.readNativeLeaseOverride, e.readNodePin, e.readTimelapseGeneratedAt, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveEgressDecodeHwAccel, e.resolveFormat, e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.resolveViewableDeviceIds, e.roleSpec, e.runInferenceStep, e.runtimeDevices, e.runtimeStatePolicyFor, e.sceneMonitorCapability, e.scopeInherits, e.scopeKey, e.scopesAllowAddon, e.scopesAllowDeviceCap, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.stateVocabularyFor, e.storageCapability, e.storageEvictableCapability, e.storageMigrationCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.summarisePrivacyAudio, e.summarizeEffectiveScope, e.supportedRuntimes, e.switchCapability, e.switchedOffIds, e.synthesizeSourceInfo, e.systemCapability, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.terminalSessionCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toNodeId, e.toStreamSourceEntry, e.toastCapability, e.toggleAudioLabel, e.tokenize, e.transcodeBody, e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.validateRecipeBounds, e.valveCapability, e.vectorDimFromBase64, e.vectorStoreCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
20
+ }, s = i.share["default:@camstack/types"];
21
+ s === void 0 ? n.then(() => {
22
+ if (s = i.share["default:@camstack/types"], s === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
23
+ o(s);
24
+ }) : o(s);
25
+ //#endregion
26
+ export { a as t };