@camstack/system 1.2.76 → 1.2.78

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 (56) hide show
  1. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  2. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  3. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  4. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/alerts/alerts.addon.js +1 -1
  6. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  7. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
  8. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
  9. package/dist/builtins/console-logging/index.js +1 -1
  10. package/dist/builtins/console-logging/index.mjs +1 -1
  11. package/dist/builtins/core-blocks/core-blocks.addon.js +1 -1
  12. package/dist/builtins/core-blocks/core-blocks.addon.mjs +1 -1
  13. package/dist/builtins/device-manager/device-manager.addon.js +1 -1
  14. package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
  15. package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
  16. package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
  17. package/dist/builtins/hub-forwarder/index.js +1 -1
  18. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  19. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  20. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  21. package/dist/builtins/local-auth/local-auth.addon.js +1 -1
  22. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  23. package/dist/builtins/local-network/local-network.addon.js +1 -1
  24. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  25. package/dist/builtins/loki-logging/index.js +1 -1
  26. package/dist/builtins/loki-logging/index.mjs +1 -1
  27. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  28. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  29. package/dist/builtins/platform-probe/index.js +1 -1
  30. package/dist/builtins/platform-probe/index.mjs +1 -1
  31. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  32. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  33. package/dist/builtins/snapshot/index.js +1 -1
  34. package/dist/builtins/snapshot/index.mjs +1 -1
  35. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  36. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  37. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +1 -1
  38. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +1 -1
  39. package/dist/builtins/storage-orchestrator/index.d.ts +2 -0
  40. package/dist/builtins/storage-orchestrator/index.js +1 -0
  41. package/dist/builtins/storage-orchestrator/index.mjs +2 -2
  42. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +73 -0
  43. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +2 -0
  44. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +468 -8
  45. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +468 -9
  46. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +7 -0
  47. package/dist/builtins/system-config/system-config.addon.js +1 -1
  48. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  49. package/dist/builtins/winston-logging/index.js +1 -1
  50. package/dist/builtins/winston-logging/index.mjs +1 -1
  51. package/dist/{dist-CX8Z8M6S.mjs → dist-CIIFhXqm.mjs} +416 -45
  52. package/dist/{dist-B1W4mT4z.js → dist-cINpngi1.js} +427 -44
  53. package/dist/http/reverse-proxy.d.ts +5 -0
  54. package/dist/index.js +5 -3
  55. package/dist/index.mjs +6 -4
  56. package/package.json +4 -1
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
8
8
  let node_crypto = require("node:crypto");
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, _ as addonPagesCapability, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, gt as BaseAddon, ht as errMsg, v as addonPagesCapability } from "../../dist-CIIFhXqm.mjs";
2
2
  import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
3
3
  import { createHash, randomUUID } from "node:crypto";
4
4
  import * as path$1 from "node:path";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
8
8
  let node_crypto = require("node:crypto");
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, mt as BaseAddon, pt as errMsg, y as addonWidgetsCapability } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, b as addonWidgetsCapability, gt as BaseAddon, ht as errMsg } from "../../dist-CIIFhXqm.mjs";
2
2
  import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
3
3
  import { createHash, randomUUID } from "node:crypto";
4
4
  import * as path$1 from "node:path";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  //#region src/builtins/alerts/prune-policy.ts
8
8
  /**
9
9
  * Ids older than `cutoffMs`, oldest first.
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, Dt as createEvent, b as alertsCapability, mt as BaseAddon, n as AlertSchema, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, gt as BaseAddon, ht as errMsg, kt as createEvent, n as AlertSchema, x as alertsCapability } from "../../dist-CIIFhXqm.mjs";
2
2
  //#region src/builtins/alerts/prune-policy.ts
3
3
  /**
4
4
  * Ids older than `cutoffMs`, oldest first.
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let buffer = require("buffer");
9
9
  let node_fs_promises = require("node:fs/promises");
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, S as backupCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
1
+ import { C as backupCapability, Ht as EventCategory, gt as BaseAddon } from "../../dist-CIIFhXqm.mjs";
2
2
  import { randomBytes, randomUUID } from "node:crypto";
3
3
  import { Buffer as Buffer$1 } from "buffer";
4
4
  import * as fsp from "node:fs/promises";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  //#region src/builtins/console-logging/console-destination.ts
9
9
  var LEVEL_RANK = {
@@ -1,4 +1,4 @@
1
- import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.mjs";
1
+ import { J as logDestinationCapability, gt as BaseAddon } from "../../dist-CIIFhXqm.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  //#region src/builtins/console-logging/console-destination.ts
4
4
  var LEVEL_RANK = {
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-B1W4mT4z.js");
3
+ const require_dist = require("../../dist-cINpngi1.js");
4
4
  let node_crypto = require("node:crypto");
5
5
  let node_fs_promises = require("node:fs/promises");
6
6
  node_fs_promises = require_chunk.__toESM(node_fs_promises);
@@ -1,4 +1,4 @@
1
- import { D as coreBlocksCapability, E as coreBlockIdFromAddonId, T as coreBlockAddonId, c as CoreBlockSchema, l as DeclaredDevices, mt as BaseAddon, o as CORE_BLOCKS_ADDON_ID, s as CORE_BLOCK_ADDON_PREFIX } from "../../dist-CX8Z8M6S.mjs";
1
+ import { D as coreBlockIdFromAddonId, E as coreBlockAddonId, O as coreBlocksCapability, c as CoreBlockSchema, gt as BaseAddon, l as DeclaredDevices, o as CORE_BLOCKS_ADDON_ID, s as CORE_BLOCK_ADDON_PREFIX } from "../../dist-CIIFhXqm.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import * as fs from "node:fs/promises";
4
4
  import * as path$1 from "node:path";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let _camstack_types_node = require("@camstack/types/node");
9
9
  //#region src/builtins/device-manager/adoption-job-engine.ts
@@ -1,4 +1,4 @@
1
- import { $ as parseStreamParamsFormPatch, A as deviceManagerCapability, Bt as EventCategory, Ct as WELL_KNOWN_TAB_MAP, F as enumerateItemArrayFields, I as enumerateSchemaFields, M as deviceStatusCapability, Mt as isDeviceConfigCap, Z as normalizeUnit, a as CAP_NAMES_WITH_STATUS, bt as DeviceType, j as deviceStateCapability, mt as BaseAddon, p as STREAM_PROFILE_META, pt as errMsg, t as ALL_CAPABILITY_DEFINITIONS, u as DeviceStatusSchema, vt as DeviceFeature, w as buildStreamParamsConfigSchema, yt as DeviceRole, zt as sleep } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, I as enumerateItemArrayFields, L as enumerateSchemaFields, M as deviceStateCapability, N as deviceStatusCapability, Pt as isDeviceConfigCap, Q as normalizeUnit, St as DeviceType, T as buildStreamParamsConfigSchema, Tt as WELL_KNOWN_TAB_MAP, Vt as sleep, a as CAP_NAMES_WITH_STATUS, bt as DeviceFeature, et as parseStreamParamsFormPatch, gt as BaseAddon, ht as errMsg, j as deviceManagerCapability, p as STREAM_PROFILE_META, t as ALL_CAPABILITY_DEFINITIONS, u as DeviceStatusSchema, xt as DeviceRole } from "../../dist-CIIFhXqm.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { canonicalDeviceFingerprint } from "@camstack/types/node";
4
4
  //#region src/builtins/device-manager/adoption-job-engine.ts
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  //#region src/builtins/doorbell/trigger-engine.ts
8
8
  /**
9
9
  * Pure trigger logic for the virtual-doorbell builtin — edge detection over
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, C as bareAddonId, Dt as createEvent, H as isSameAddonId, N as doorbellCapability, bt as DeviceType, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, P as doorbellCapability, St as DeviceType, U as isSameAddonId, gt as BaseAddon, ht as errMsg, kt as createEvent, w as bareAddonId } from "../../dist-CIIFhXqm.mjs";
2
2
  //#region src/builtins/doorbell/trigger-engine.ts
3
3
  /**
4
4
  * Pure trigger logic for the virtual-doorbell builtin — edge detection over
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  //#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
9
9
  var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
@@ -1,4 +1,4 @@
1
- import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.mjs";
1
+ import { J as logDestinationCapability, gt as BaseAddon } from "../../dist-CIIFhXqm.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  //#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
4
4
  var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-B1W4mT4z.js");
3
+ const require_dist = require("../../dist-cINpngi1.js");
4
4
  //#region src/builtins/liveness-monitor/liveness-checks.ts
5
5
  var NO_DEVICES = "liveness:no-devices";
6
6
  var ALL_OFFLINE = "liveness:all-devices-offline";
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, Dt as createEvent, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, gt as BaseAddon, ht as errMsg, kt as createEvent } from "../../dist-CIIFhXqm.mjs";
2
2
  //#region src/builtins/liveness-monitor/liveness-checks.ts
3
3
  var NO_DEVICES = "liveness:no-devices";
4
4
  var ALL_OFFLINE = "liveness:all-devices-offline";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  node_crypto = require_chunk.__toESM(node_crypto);
9
9
  let crypto$1 = require("crypto");
@@ -1,5 +1,5 @@
1
1
  import { i as __require, o as __toESM, t as __commonJSMin } from "../../chunk-CNf5ZN-e.mjs";
2
- import { g as UserRecordSchema, m as ScopedTokenSchema, mt as BaseAddon, r as ApiKeyRecordSchema, ut as userManagementCapability, x as authProviderCapability } from "../../dist-CX8Z8M6S.mjs";
2
+ import { S as authProviderCapability, _ as UserRecordSchema, ft as userManagementCapability, gt as BaseAddon, m as ScopedTokenSchema, r as ApiKeyRecordSchema } from "../../dist-CIIFhXqm.mjs";
3
3
  import * as crypto$2 from "node:crypto";
4
4
  import { createHash, randomUUID, timingSafeEqual } from "node:crypto";
5
5
  import nodeCrypto from "crypto";
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_chunk = require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-B1W4mT4z.js");
3
+ const require_dist = require("../../dist-cINpngi1.js");
4
4
  let node_os = require("node:os");
5
5
  node_os = require_chunk.__toESM(node_os);
6
6
  //#region src/builtins/local-network/local-network.addon.ts
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, K as localNetworkCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, gt as BaseAddon, q as localNetworkCapability } from "../../dist-CIIFhXqm.mjs";
2
2
  import * as os from "node:os";
3
3
  //#region src/builtins/local-network/local-network.addon.ts
4
4
  /**
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  //#region src/builtins/loki-logging/loki-payload.ts
8
8
  /**
9
9
  * Loki rejects a label name that is not a valid Prometheus label
@@ -1,4 +1,4 @@
1
- import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.mjs";
1
+ import { J as logDestinationCapability, gt as BaseAddon } from "../../dist-CIIFhXqm.mjs";
2
2
  //#region src/builtins/loki-logging/loki-payload.ts
3
3
  /**
4
4
  * Loki rejects a label name that is not a valid Prometheus label
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_child_process = require("node:child_process");
8
8
  let node_util = require("node:util");
9
9
  let node_os = require("node:os");
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, Dt as createEvent, X as metricsProviderCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, Z as metricsProviderCapability, gt as BaseAddon, kt as createEvent } from "../../dist-CIIFhXqm.mjs";
2
2
  import { execFile, execFileSync } from "node:child_process";
3
3
  import { promisify } from "node:util";
4
4
  import * as os from "node:os";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_child_process = require("node:child_process");
8
8
  let node_util = require("node:util");
9
9
  let node_os = require("node:os");
@@ -1,5 +1,5 @@
1
1
  import { o as __toESM } from "../../chunk-CNf5ZN-e.mjs";
2
- import { Bt as EventCategory, P as enumerateInferenceDevices, et as platformProbeCapability, it as scoreRuntimes, kt as emitReadiness, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
2
+ import { F as enumerateInferenceDevices, Ht as EventCategory, at as scoreRuntimes, gt as BaseAddon, ht as errMsg, jt as emitReadiness, tt as platformProbeCapability } from "../../dist-CIIFhXqm.mjs";
3
3
  import { execFile } from "node:child_process";
4
4
  import { promisify } from "node:util";
5
5
  import * as os from "node:os";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  //#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
8
8
  /**
9
9
  * Reconcile the durable `enabledProviders` set against authoritative
@@ -1,4 +1,4 @@
1
- import { Bt as EventCategory, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ht as EventCategory, gt as BaseAddon } from "../../dist-CIIFhXqm.mjs";
2
2
  //#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
3
3
  /**
4
4
  * Reconcile the durable `enabledProviders` set against authoritative
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let zod = require("zod");
8
8
  let node_crypto = require("node:crypto");
9
9
  let _camstack_types_node = require("@camstack/types/node");
@@ -1,4 +1,4 @@
1
- import { C as bareAddonId, Nt as nodePin, bt as DeviceType, i as BatteryStatusSchema, lt as streamQualityLabel, mt as BaseAddon, ot as snapshotCapability, pt as errMsg, vt as DeviceFeature } from "../../dist-CX8Z8M6S.mjs";
1
+ import { Ft as nodePin, St as DeviceType, bt as DeviceFeature, dt as streamQualityLabel, gt as BaseAddon, ht as errMsg, i as BatteryStatusSchema, st as snapshotCapability, w as bareAddonId } from "../../dist-CIIFhXqm.mjs";
2
2
  import { z } from "zod";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { signExpiringUrl, verifyExpiringUrl } from "@camstack/types/node";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let node_fs_promises = require("node:fs/promises");
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { R as filesystemBrowseCapability, ct as storageProviderCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
1
+ import { gt as BaseAddon, ut as storageProviderCapability, z as filesystemBrowseCapability } from "../../dist-CIIFhXqm.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { mkdir, readdir, realpath, statfs } from "node:fs/promises";
4
4
  import * as path$1 from "node:path";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-B1W4mT4z.js");
6
+ const require_dist = require("../../dist-cINpngi1.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let node_fs = require("node:fs");
9
9
  let node_module = require("node:module");
@@ -1,4 +1,4 @@
1
- import { C as bareAddonId, Ft as parseJsonUnknown, O as dataStoreProviderCapability, dt as vectorDimFromBase64, f as RUNTIME_DEFAULTS, ft as vectorStoreCapability, k as decodeVectorBase64, mt as BaseAddon, pt as errMsg, wt as asJsonObject } from "../../dist-CX8Z8M6S.mjs";
1
+ import { A as decodeVectorBase64, Et as asJsonObject, Lt as parseJsonUnknown, f as RUNTIME_DEFAULTS, gt as BaseAddon, ht as errMsg, k as dataStoreProviderCapability, mt as vectorStoreCapability, pt as vectorDimFromBase64, w as bareAddonId } from "../../dist-CIIFhXqm.mjs";
2
2
  import { createRequire } from "node:module";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { statSync } from "node:fs";
@@ -1,6 +1,8 @@
1
1
  export { StorageOrchestratorAddon } from './storage-orchestrator.addon.js';
2
2
  export { StorageOrchestratorAddon as default } from './storage-orchestrator.addon.js';
3
3
  export { StorageOrchestratorService } from './storage-orchestrator.service.js';
4
+ export { StorageMigrationCoordinator } from './storage-migration-coordinator.js';
5
+ export type { FootageMigrationParticipant, LeaseParticipant, MediaMigrationParticipant, MigrationState, StorageMigrationCoordinatorDeps, StorageMigrationParticipants, } from './storage-migration-coordinator.js';
4
6
  export type { ListLocationsFilter, StorageProviderLookup } from './storage-orchestrator.service.js';
5
7
  export { SqliteLocationStore } from './location-store.js';
6
8
  export type { ILocationStore } from './location-store.js';
@@ -5,6 +5,7 @@ Object.defineProperties(exports, {
5
5
  require("../../chunk-Cek0wNdY.js");
6
6
  const require_builtins_storage_orchestrator_storage_orchestrator_addon = require("./storage-orchestrator.addon.js");
7
7
  exports.SqliteLocationStore = require_builtins_storage_orchestrator_storage_orchestrator_addon.SqliteLocationStore;
8
+ exports.StorageMigrationCoordinator = require_builtins_storage_orchestrator_storage_orchestrator_addon.StorageMigrationCoordinator;
8
9
  exports.StorageOrchestratorAddon = require_builtins_storage_orchestrator_storage_orchestrator_addon.StorageOrchestratorAddon;
9
10
  exports.StorageOrchestratorService = require_builtins_storage_orchestrator_storage_orchestrator_addon.StorageOrchestratorService;
10
11
  exports.default = require_builtins_storage_orchestrator_storage_orchestrator_addon.StorageOrchestratorAddon;
@@ -1,2 +1,2 @@
1
- import { StorageOrchestratorAddon, n as StorageOrchestratorService, t as SqliteLocationStore } from "./storage-orchestrator.addon.mjs";
2
- export { SqliteLocationStore, StorageOrchestratorAddon, StorageOrchestratorAddon as default, StorageOrchestratorService };
1
+ import { StorageOrchestratorAddon, n as SqliteLocationStore, r as StorageOrchestratorService, t as StorageMigrationCoordinator } from "./storage-orchestrator.addon.mjs";
2
+ export { SqliteLocationStore, StorageMigrationCoordinator, StorageOrchestratorAddon, StorageOrchestratorAddon as default, StorageOrchestratorService };
@@ -0,0 +1,73 @@
1
+ import { RelocateJob, StorageMigrationFootageMoveInput, StorageMigrationMediaMoveInput, StorageMigrationInput, StorageMigrationJob, StorageMigrationPlan } from '@camstack/types';
2
+ import { StorageOrchestratorService } from './storage-orchestrator.service.js';
3
+ export interface MigrationState {
4
+ get(): Promise<StorageMigrationJob | null>;
5
+ set(value: StorageMigrationJob | null): Promise<void>;
6
+ }
7
+ export interface LeaseParticipant {
8
+ pause(leaseId: string): Promise<void>;
9
+ resume(leaseId: string): Promise<void>;
10
+ }
11
+ export interface FootageMigrationParticipant extends LeaseParticipant {
12
+ startMove(input: StorageMigrationFootageMoveInput): Promise<{
13
+ jobId: string;
14
+ }>;
15
+ getMove(jobId: string): Promise<RelocateJob | null>;
16
+ cancelMove(jobId: string): Promise<boolean>;
17
+ refresh(leaseId: string): Promise<void>;
18
+ }
19
+ export interface MediaMigrationParticipant extends LeaseParticipant {
20
+ startMove(input: StorageMigrationMediaMoveInput): Promise<{
21
+ jobId: string;
22
+ }>;
23
+ getMove(jobId: string): Promise<RelocateJob | null>;
24
+ cancelMove(jobId: string): Promise<boolean>;
25
+ refresh(leaseId: string): Promise<void>;
26
+ }
27
+ export interface StorageMigrationParticipants {
28
+ readonly pipeline: LeaseParticipant;
29
+ readonly recorder: FootageMigrationParticipant;
30
+ readonly analytics: MediaMigrationParticipant;
31
+ }
32
+ export interface StorageMigrationCoordinatorDeps {
33
+ readonly locations: StorageOrchestratorService;
34
+ readonly state: MigrationState;
35
+ readonly participants: StorageMigrationParticipants;
36
+ readonly now: () => number;
37
+ readonly newId: () => string;
38
+ readonly sleep?: (ms: number) => Promise<void>;
39
+ readonly pollMs?: number;
40
+ }
41
+ /**
42
+ * Durable orchestration layer over the independent recorder and event-media
43
+ * movers. It owns the only public migration state machine; participants expose
44
+ * intentionally narrow lease/move primitives and never alter camera settings.
45
+ */
46
+ export declare class StorageMigrationCoordinator {
47
+ private readonly deps;
48
+ private active;
49
+ private runPromise;
50
+ private startReserved;
51
+ constructor(deps: StorageMigrationCoordinatorDeps);
52
+ plan(input: StorageMigrationInput): Promise<StorageMigrationPlan>;
53
+ start(input: StorageMigrationInput): Promise<string>;
54
+ status(jobId?: string): Promise<StorageMigrationJob | null>;
55
+ cancel(jobId: string): Promise<boolean>;
56
+ /** Boot recovery resumes a durable unfinished state. A missing in-memory
57
+ * child mover is recreated from the same copy-if-absent input. */
58
+ recover(): Promise<void>;
59
+ private run;
60
+ private pauseParticipants;
61
+ private resumeParticipants;
62
+ private releaseAfterTerminal;
63
+ private startOrResumeMoves;
64
+ private waitForMoves;
65
+ private verifyMoves;
66
+ private startMove;
67
+ private moveStatus;
68
+ private cancelMove;
69
+ private participant;
70
+ private setPhase;
71
+ private finishCancelled;
72
+ private persist;
73
+ }
@@ -6,6 +6,7 @@ export declare class StorageOrchestratorAddon extends BaseAddon<StorageOrchestra
6
6
  private pressureManager;
7
7
  private pressureTimer;
8
8
  private pressureSweepInFlight;
9
+ private migration;
9
10
  /**
10
11
  * Cached `providerId → nodeLocal` snapshot (SP1). Backs the orchestrator's
11
12
  * synchronous `NodeLocalResolver` — `getProviderInfo()` is async, so we
@@ -24,6 +25,7 @@ export declare class StorageOrchestratorAddon extends BaseAddon<StorageOrchestra
24
25
  constructor();
25
26
  protected onInitialize(): Promise<ProviderRegistration[]>;
26
27
  protected onShutdown(): Promise<void>;
28
+ onHubReachable(): Promise<void>;
27
29
  /**
28
30
  * Resolve the live engine from the capability registry and wrap it in a
29
31
  * `SqliteLocationStore`. Returns `null` when no engine has registered