@camstack/system 1.1.33 → 1.1.35

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 (46) hide show
  1. package/dist/addon-runner.js +1 -1
  2. package/dist/addon-runner.mjs +1 -1
  3. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +6 -6
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  5. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +6 -6
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  7. package/dist/builtins/alerts/alerts.addon.js +12 -12
  8. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  9. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +5 -5
  10. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
  11. package/dist/builtins/console-logging/index.js +3 -3
  12. package/dist/builtins/console-logging/index.mjs +1 -1
  13. package/dist/builtins/device-manager/device-manager.addon.js +69 -69
  14. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  15. package/dist/builtins/hub-forwarder/index.js +3 -3
  16. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  17. package/dist/builtins/local-auth/local-auth.addon.js +7 -7
  18. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  19. package/dist/builtins/local-network/local-network.addon.js +7 -7
  20. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  21. package/dist/builtins/native-metrics/native-metrics.addon.js +5 -5
  22. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  23. package/dist/builtins/platform-probe/index.js +13 -13
  24. package/dist/builtins/platform-probe/index.mjs +1 -1
  25. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +4 -4
  26. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  27. package/dist/builtins/snapshot/index.js +13 -13
  28. package/dist/builtins/snapshot/index.mjs +1 -1
  29. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +4 -4
  30. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  31. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +9 -9
  32. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +1 -1
  33. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +5 -5
  34. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  35. package/dist/builtins/system-config/system-config.addon.js +5 -5
  36. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  37. package/dist/builtins/winston-logging/index.js +3 -3
  38. package/dist/builtins/winston-logging/index.mjs +1 -1
  39. package/dist/dist-DlGZpWo8.mjs +24597 -0
  40. package/dist/dist-DriXJoVg.js +25070 -0
  41. package/dist/index.d.ts +1 -0
  42. package/dist/index.js +113 -126
  43. package/dist/index.mjs +73 -63
  44. package/dist/{manifest-python-deps-u-AQBQY6.mjs → manifest-python-deps-MUu1e33G.mjs} +27 -27
  45. package/dist/{manifest-python-deps-CAnO1wPx.js → manifest-python-deps-jZA_Qorz.js} +3 -3
  46. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1,5 +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-DriXJoVg.js");
3
4
  const require_model_download_service = require("./model-download-service-D-Umz4-L.js");
4
5
  const require_resource_monitor = require("./resource-monitor-DNNomR-i.js");
5
6
  const require_builtins_sqlite_storage_filesystem_storage_addon = require("./builtins/sqlite-storage/filesystem-storage.addon.js");
@@ -20,16 +21,16 @@ const require_builtins_local_auth_local_auth_addon = require("./builtins/local-a
20
21
  require("./builtins/local-auth/index.js");
21
22
  const require_builtins_device_manager_device_manager_addon = require("./builtins/device-manager/device-manager.addon.js");
22
23
  require("./builtins/device-manager/index.js");
23
- const require_manifest_python_deps = require("./manifest-python-deps-CAnO1wPx.js");
24
+ const require_manifest_python_deps = require("./manifest-python-deps-jZA_Qorz.js");
24
25
  const require_custom_action_registry = require("./custom-action-registry-vLYEFTtv.js");
25
26
  let _camstack_types_node = require("@camstack/types/node");
27
+ let zod = require("zod");
26
28
  let node_http = require("node:http");
27
29
  let node_fs = require("node:fs");
28
30
  let node_fs$1 = require_chunk.__toESM(node_fs, 1);
29
31
  node_fs = require_chunk.__toESM(node_fs);
30
32
  let node_path = require("node:path");
31
33
  node_path = require_chunk.__toESM(node_path, 1);
32
- let _camstack_types = require("@camstack/types");
33
34
  let node_crypto = require("node:crypto");
34
35
  let node_child_process = require("node:child_process");
35
36
  let node_util = require("node:util");
@@ -39,7 +40,6 @@ node_vm = require_chunk.__toESM(node_vm);
39
40
  let node_os = require("node:os");
40
41
  node_os = require_chunk.__toESM(node_os);
41
42
  let node_fs_promises = require("node:fs/promises");
42
- let zod = require("zod");
43
43
  let _camstack_types_addon = require("@camstack/types/addon");
44
44
  let node_events = require("node:events");
45
45
  let node_stream = require("node:stream");
@@ -158,7 +158,7 @@ function proxyToUpstream(opts) {
158
158
  delete headers.host;
159
159
  delete headers.connection;
160
160
  delete headers["content-length"];
161
- headers[_camstack_types.DATAPLANE_SECRET_HEADER] = secret;
161
+ headers[require_dist.DATAPLANE_SECRET_HEADER] = secret;
162
162
  const upstream = (0, node_http.request)({
163
163
  protocol: base.protocol,
164
164
  hostname: base.hostname,
@@ -328,7 +328,7 @@ var PipelineRunner = class {
328
328
  }
329
329
  } catch (error) {
330
330
  const stepMs = performance.now() - stepStart;
331
- const message = (0, _camstack_types.errMsg)(error);
331
+ const message = require_dist.errMsg(error);
332
332
  results.push({
333
333
  addon: node.addon,
334
334
  slot: "detector",
@@ -1570,7 +1570,7 @@ var NotificationService = class {
1570
1570
  this.logger.error("Notification target failed", { meta: {
1571
1571
  addonId: ref.addonId,
1572
1572
  targetId: ref.targetId,
1573
- error: (0, _camstack_types.errMsg)(err)
1573
+ error: require_dist.errMsg(err)
1574
1574
  } });
1575
1575
  }
1576
1576
  }));
@@ -2216,7 +2216,7 @@ var IntegrationRegistry = class {
2216
2216
  addonId: String(row["addon_id"]),
2217
2217
  name: String(row["name"]),
2218
2218
  enabled: row["enabled"] === 1,
2219
- info: typeof row["info"] === "string" ? (0, _camstack_types.parseJsonObject)(row["info"]) ?? {} : {},
2219
+ info: typeof row["info"] === "string" ? require_dist.parseJsonObject(row["info"]) ?? {} : {},
2220
2220
  createdAt: Number(row["created_at"]),
2221
2221
  updatedAt: Number(row["updated_at"])
2222
2222
  };
@@ -2229,7 +2229,7 @@ var IntegrationRegistry = class {
2229
2229
  type: String(row["type"]),
2230
2230
  name: String(row["name"]),
2231
2231
  enabled: row["enabled"] === 1,
2232
- info: typeof row["info"] === "string" ? (0, _camstack_types.parseJsonObject)(row["info"]) ?? {} : {},
2232
+ info: typeof row["info"] === "string" ? require_dist.parseJsonObject(row["info"]) ?? {} : {},
2233
2233
  createdAt: Number(row["created_at"]),
2234
2234
  updatedAt: Number(row["updated_at"])
2235
2235
  };
@@ -2346,7 +2346,7 @@ var AddonLoader = class {
2346
2346
  /** Load addon from a specific directory (package.json + dist/) */
2347
2347
  async loadFromAddonDir(addonDir) {
2348
2348
  const pkgJsonPath = node_path.join(addonDir, "package.json");
2349
- const pkgJson = (0, _camstack_types.asJsonObject)((0, _camstack_types.parseJsonUnknown)(node_fs.readFileSync(pkgJsonPath, "utf-8"))) ?? {};
2349
+ const pkgJson = require_dist.asJsonObject(require_dist.parseJsonUnknown(node_fs.readFileSync(pkgJsonPath, "utf-8"))) ?? {};
2350
2350
  const packageNameRaw = pkgJson["name"];
2351
2351
  const packageName = typeof packageNameRaw === "string" ? packageNameRaw : "";
2352
2352
  const packageVersionRaw = pkgJson["version"];
@@ -2712,7 +2712,7 @@ async function installPackageFromNpm(packageName, targetDir) {
2712
2712
  const distSrc = node_path.join(srcPkgJsonDir, "dist");
2713
2713
  if (node_fs.existsSync(distSrc)) await copyDirRecursive(distSrc, node_path.join(targetDir, "dist"));
2714
2714
  try {
2715
- const npmPkg = (0, _camstack_types.asJsonObject)((0, _camstack_types.parseJsonUnknown)(await node_fs.promises.readFile(node_path.join(srcPkgJsonDir, "package.json"), "utf-8")));
2715
+ const npmPkg = require_dist.asJsonObject(require_dist.parseJsonUnknown(await node_fs.promises.readFile(node_path.join(srcPkgJsonDir, "package.json"), "utf-8")));
2716
2716
  if (npmPkg) await copyExtraFileDirs(npmPkg, srcPkgJsonDir, targetDir);
2717
2717
  } catch {}
2718
2718
  } finally {
@@ -2944,15 +2944,15 @@ function parseInstallSource(value) {
2944
2944
  function readPackageJson(pkgJsonPath) {
2945
2945
  let raw;
2946
2946
  try {
2947
- raw = (0, _camstack_types.asJsonObject)((0, _camstack_types.parseJsonUnknown)(node_fs.readFileSync(pkgJsonPath, "utf-8")));
2947
+ raw = require_dist.asJsonObject(require_dist.parseJsonUnknown(node_fs.readFileSync(pkgJsonPath, "utf-8")));
2948
2948
  } catch {
2949
2949
  return null;
2950
2950
  }
2951
2951
  if (!raw) return null;
2952
- const name = (0, _camstack_types.asString)(raw["name"]);
2953
- const version = (0, _camstack_types.asString)(raw["version"]);
2952
+ const name = require_dist.asString(raw["name"]);
2953
+ const version = require_dist.asString(raw["version"]);
2954
2954
  if (!name || !version) return null;
2955
- const camstack = (0, _camstack_types.asJsonObject)(raw["camstack"]);
2955
+ const camstack = require_dist.asJsonObject(raw["camstack"]);
2956
2956
  const addonsField = camstack ? camstack["addons"] : void 0;
2957
2957
  return {
2958
2958
  name,
@@ -3072,7 +3072,7 @@ var AddonInstaller = class AddonInstaller {
3072
3072
  }
3073
3073
  await this.installFromNpm(packageName);
3074
3074
  } catch (err) {
3075
- const msg = (0, _camstack_types.errMsg)(err);
3075
+ const msg = require_dist.errMsg(err);
3076
3076
  if (packageName === "@camstack/system") throw new Error(`Required package ${packageName} failed to install: ${msg}`, { cause: err });
3077
3077
  this.logger.error(`Failed to install ${packageName}`, { meta: { error: msg } });
3078
3078
  }
@@ -3125,7 +3125,7 @@ var AddonInstaller = class AddonInstaller {
3125
3125
  if (this.installSource === "symlink") try {
3126
3126
  return await this.installSymlink(packageName, sourceDir, pkgView.raw, targetDir);
3127
3127
  } catch (err) {
3128
- this.logger.warn(`${packageName} — symlink failed, falling back to copy: ${(0, _camstack_types.errMsg)(err)}`);
3128
+ this.logger.warn(`${packageName} — symlink failed, falling back to copy: ${require_dist.errMsg(err)}`);
3129
3129
  }
3130
3130
  return this.installCopy(packageName, sourceDir, pkgView.raw, targetDir);
3131
3131
  }
@@ -3153,13 +3153,13 @@ var AddonInstaller = class AddonInstaller {
3153
3153
  ensureDir(node_path.dirname(targetDir));
3154
3154
  node_fs.symlinkSync(sourceDir, targetDir, "dir");
3155
3155
  this.manifest.upsert(packageName, {
3156
- version: (0, _camstack_types.asString)(pkgData.version, "0.0.0"),
3156
+ version: require_dist.asString(pkgData.version, "0.0.0"),
3157
3157
  source: "local"
3158
3158
  });
3159
3159
  this.logger.info(`${packageName} — symlinked → ${sourceDir}`);
3160
3160
  return {
3161
- name: (0, _camstack_types.asString)(pkgData.name, packageName),
3162
- version: (0, _camstack_types.asString)(pkgData.version, "0.0.0")
3161
+ name: require_dist.asString(pkgData.name, packageName),
3162
+ version: require_dist.asString(pkgData.version, "0.0.0")
3163
3163
  };
3164
3164
  }
3165
3165
  async installCopy(packageName, sourceDir, pkgData, targetDir) {
@@ -3175,7 +3175,7 @@ var AddonInstaller = class AddonInstaller {
3175
3175
  await copyDirRecursive(distDir, node_path.join(targetDir, "dist"));
3176
3176
  await copyExtraFileDirs(pkgData, sourceDir, targetDir);
3177
3177
  await node_fs.promises.writeFile(node_path.join(targetDir, ".install-source"), "local");
3178
- const localPkgVersion = (0, _camstack_types.asString)(pkgData.version, "0.0.0");
3178
+ const localPkgVersion = require_dist.asString(pkgData.version, "0.0.0");
3179
3179
  this.manifest.upsert(packageName, {
3180
3180
  version: localPkgVersion,
3181
3181
  source: "local"
@@ -3194,7 +3194,7 @@ var AddonInstaller = class AddonInstaller {
3194
3194
  try {
3195
3195
  await require_manifest_python_deps.installManifestNativeDeps(targetDir, pkgData, this.logger, this.registry);
3196
3196
  } catch (err) {
3197
- this.logger.warn(`${packageName} — native deps install failed (continuing)`, { meta: { error: (0, _camstack_types.errMsg)(err) } });
3197
+ this.logger.warn(`${packageName} — native deps install failed (continuing)`, { meta: { error: require_dist.errMsg(err) } });
3198
3198
  }
3199
3199
  this.logger.info(`${packageName} — copied from ${sourceDir}`);
3200
3200
  return {
@@ -3320,7 +3320,7 @@ var AddonInstaller = class AddonInstaller {
3320
3320
  }).catch((cleanupErr) => {
3321
3321
  this.logger.debug("evictInstallDir: aside cleanup deferred (likely held open)", { meta: {
3322
3322
  asideDir,
3323
- error: (0, _camstack_types.errMsg)(cleanupErr)
3323
+ error: require_dist.errMsg(cleanupErr)
3324
3324
  } });
3325
3325
  });
3326
3326
  }
@@ -3383,7 +3383,7 @@ var AddonInstaller = class AddonInstaller {
3383
3383
  try {
3384
3384
  await require_manifest_python_deps.installManifestNativeDeps(pkgDir, pkgView.raw, this.logger, this.registry);
3385
3385
  } catch (nativeErr) {
3386
- throw new Error(`${pkgView.name} — native deps install failed: ${(0, _camstack_types.errMsg)(nativeErr)}`, { cause: nativeErr });
3386
+ throw new Error(`${pkgView.name} — native deps install failed: ${require_dist.errMsg(nativeErr)}`, { cause: nativeErr });
3387
3387
  }
3388
3388
  await this.evictInstallDir(targetDir);
3389
3389
  ensureDir(node_path.dirname(targetDir));
@@ -3442,7 +3442,7 @@ var AddonInstaller = class AddonInstaller {
3442
3442
  };
3443
3443
  } else result = await this.installFromNpm(packageName, version);
3444
3444
  } catch (installErr) {
3445
- this.logger.error(`${packageName} — install failed, restoring backup`, { meta: { error: (0, _camstack_types.errMsg)(installErr) } });
3445
+ this.logger.error(`${packageName} — install failed, restoring backup`, { meta: { error: require_dist.errMsg(installErr) } });
3446
3446
  try {
3447
3447
  if (node_fs.existsSync(addonDir)) node_fs.rmSync(addonDir, {
3448
3448
  recursive: true,
@@ -3457,7 +3457,7 @@ var AddonInstaller = class AddonInstaller {
3457
3457
  } catch (restoreErr) {
3458
3458
  this.logger.error(`${packageName} — backup restore ALSO failed; manual recovery needed`, { meta: {
3459
3459
  backupDir,
3460
- error: (0, _camstack_types.errMsg)(restoreErr)
3460
+ error: require_dist.errMsg(restoreErr)
3461
3461
  } });
3462
3462
  }
3463
3463
  throw installErr;
@@ -3512,7 +3512,7 @@ var AddonInstaller = class AddonInstaller {
3512
3512
  } else throw renameErr;
3513
3513
  }
3514
3514
  } catch (swapErr) {
3515
- this.logger.error(`${packageName} — staged swap failed, restoring backup`, { meta: { error: (0, _camstack_types.errMsg)(swapErr) } });
3515
+ this.logger.error(`${packageName} — staged swap failed, restoring backup`, { meta: { error: require_dist.errMsg(swapErr) } });
3516
3516
  try {
3517
3517
  if (node_fs.existsSync(addonDir)) node_fs.rmSync(addonDir, {
3518
3518
  recursive: true,
@@ -3527,7 +3527,7 @@ var AddonInstaller = class AddonInstaller {
3527
3527
  } catch (restoreErr) {
3528
3528
  this.logger.error(`${packageName} — backup restore ALSO failed; manual recovery needed`, { meta: {
3529
3529
  backupDir,
3530
- error: (0, _camstack_types.errMsg)(restoreErr)
3530
+ error: require_dist.errMsg(restoreErr)
3531
3531
  } });
3532
3532
  }
3533
3533
  throw swapErr;
@@ -3671,8 +3671,8 @@ var AddonInstaller = class AddonInstaller {
3671
3671
  ]) {
3672
3672
  const candidate = node_path.join(this.workspaceDir, dirName);
3673
3673
  try {
3674
- const pkg = (0, _camstack_types.asJsonObject)((0, _camstack_types.parseJsonUnknown)(node_fs.readFileSync(node_path.join(candidate, "package.json"), "utf-8")));
3675
- if (pkg && (0, _camstack_types.asString)(pkg["name"]) === packageName) return candidate;
3674
+ const pkg = require_dist.asJsonObject(require_dist.parseJsonUnknown(node_fs.readFileSync(node_path.join(candidate, "package.json"), "utf-8")));
3675
+ if (pkg && require_dist.asString(pkg["name"]) === packageName) return candidate;
3676
3676
  } catch {}
3677
3677
  }
3678
3678
  return null;
@@ -3688,7 +3688,7 @@ var AddonInstaller = class AddonInstaller {
3688
3688
  timeout: 18e4
3689
3689
  });
3690
3690
  } catch (err) {
3691
- const msg = (0, _camstack_types.errMsg)(err);
3691
+ const msg = require_dist.errMsg(err);
3692
3692
  this.logger.warn(`${packageName} auto-build failed`, { meta: { error: msg } });
3693
3693
  }
3694
3694
  }
@@ -3808,7 +3808,7 @@ function readPendingRestart(dataDir) {
3808
3808
  }
3809
3809
  let parsed;
3810
3810
  try {
3811
- parsed = (0, _camstack_types.asJsonObject)((0, _camstack_types.parseJsonUnknown)(raw));
3811
+ parsed = require_dist.asJsonObject(require_dist.parseJsonUnknown(raw));
3812
3812
  } catch (err) {
3813
3813
  console.error("[restart-coordinator] Marker JSON invalid — clearing:", err);
3814
3814
  clearPendingRestart(dataDir);
@@ -3819,8 +3819,8 @@ function readPendingRestart(dataDir) {
3819
3819
  clearPendingRestart(dataDir);
3820
3820
  return null;
3821
3821
  }
3822
- const kindRaw = (0, _camstack_types.asString)(parsed["kind"]);
3823
- const requestedAt = (0, _camstack_types.asNumber)(parsed["requestedAt"]);
3822
+ const kindRaw = require_dist.asString(parsed["kind"]);
3823
+ const requestedAt = require_dist.asNumber(parsed["requestedAt"]);
3824
3824
  if (!isRestartKind(kindRaw) || requestedAt <= 0) {
3825
3825
  console.error("[restart-coordinator] Marker missing kind/requestedAt — clearing");
3826
3826
  clearPendingRestart(dataDir);
@@ -4917,13 +4917,24 @@ var CapabilityRegistry = class CapabilityRegistry {
4917
4917
  * this builder's output to that static type at the single documented
4918
4918
  * boundary, so the SDK keeps full procedure inference.
4919
4919
  *
4920
- * Behaviour MUST stay byte-identical to the codegen output
4921
- * (`scripts/generate-cap-routers.ts`). The per-method procedure shape is
4922
- * mechanically derived from each `cap.methods.*` (input/output zod schema
4923
- * + kind) + the auto-injected `getStatus` / 3 settings-contribution
4924
- * methods (via `expandCapMethods`). Provider resolution is derived from
4925
- * the declarative `mount` hint (`resolveCapMount`) — the same decision the
4926
- * codegen `generate-cap-mounts.ts` baked in.
4920
+ * The per-method procedure shape is mechanically derived from each
4921
+ * `cap.methods.*` (input zod schema + kind) + the auto-injected
4922
+ * `getStatus` / 3 settings-contribution methods (via `expandCapMethods`).
4923
+ * Provider resolution is derived from the declarative `mount` hint
4924
+ * (`resolveCapMount`) the same decision the codegen
4925
+ * `generate-cap-mounts.ts` baked in.
4926
+ *
4927
+ * OUTPUT PASS-THROUGH (2026-07-11): unlike the historical codegen, the
4928
+ * builder deliberately does NOT apply `.output(schema)`. Re-validating an
4929
+ * output the hub does not own against the hub's OWN (framework-versioned,
4930
+ * therefore potentially stale) copy of the cap def silently STRIPS fields
4931
+ * a fresher addon added (a self-contained addon bundles its own newer
4932
+ * `@camstack/types`; the hub-closure copy lags). That is exactly how
4933
+ * `models[].group.resolution` vanished from `pipelineExecutor.getSchema`.
4934
+ * Cap dispatch is structural (CLAUDE.md invariant): the owning provider is
4935
+ * typed to return a complete `z.infer<output>` and is the SOLE authority
4936
+ * for the payload shape, so the hub forwards it verbatim. Input validation
4937
+ * is retained (`.input(...)`) — the hub still guards the client boundary.
4927
4938
  *
4928
4939
  * This module owns NO tRPC primitives of its own: `@camstack/system`
4929
4940
  * cannot import the server's `TrpcContext`-bound procedures. The server
@@ -4932,7 +4943,7 @@ var CapabilityRegistry = class CapabilityRegistry {
4932
4943
  * backend coupling (self-sufficiency invariant).
4933
4944
  */
4934
4945
  function methodsFor(def) {
4935
- const effective = (0, _camstack_types.expandCapMethods)(def);
4946
+ const effective = require_dist.expandCapMethods(def);
4936
4947
  return Object.entries(effective).map(([name, schema]) => {
4937
4948
  const m = schema;
4938
4949
  return {
@@ -4940,8 +4951,8 @@ function methodsFor(def) {
4940
4951
  kind: m.kind ?? "query",
4941
4952
  auth: m.auth ?? "protected",
4942
4953
  schema: m,
4943
- isVoid: (0, _camstack_types.isVoidInput)(m.input),
4944
- isObject: (0, _camstack_types.isObjectInput)(m.input)
4954
+ isVoid: require_dist.isVoidInput(m.input),
4955
+ isObject: require_dist.isObjectInput(m.input)
4945
4956
  };
4946
4957
  });
4947
4958
  }
@@ -4988,15 +4999,14 @@ function requireLocal(capName, getLocal, services) {
4988
4999
  */
4989
5000
  function buildOneCapRouter(def, primitives, services) {
4990
5001
  const capName = def.name;
4991
- const mount = (0, _camstack_types.resolveCapMount)(def);
5002
+ const mount = require_dist.resolveCapMount(def);
4992
5003
  const isCollection = mount.kind === "collection";
4993
5004
  const nodeIdData = def.nodeIdMode === "data";
4994
5005
  const procedures = {};
4995
5006
  const getLocal = (ctx, addonId) => services.getLocalProvider(capName, mount.kind, ctx, addonId);
4996
5007
  for (const method of methodsFor(def)) {
4997
- const base = primitives.procedures[(0, _camstack_types.procedureAuthKey)(method.auth)];
5008
+ const base = primitives.procedures[require_dist.procedureAuthKey(method.auth)];
4998
5009
  const inputSchema = method.schema.input;
4999
- const outputSchema = method.schema.output;
5000
5010
  if (method.kind === "subscription") {
5001
5011
  procedures[method.name] = base.input(inputSchema).subscription(({ input, ctx }) => {
5002
5012
  const provider = requireLocal(capName, () => getLocal(ctx), services);
@@ -5014,15 +5024,15 @@ function buildOneCapRouter(def, primitives, services) {
5014
5024
  nodeId: zod.z.string().optional(),
5015
5025
  addonId: zod.z.string().optional()
5016
5026
  }).optional() : zod.z.object({ nodeId: zod.z.string().optional() }).optional();
5017
- procedures[method.name] = base.input(voidSelector).output(outputSchema)[procKind](({ input, ctx }) => {
5027
+ procedures[method.name] = base.input(voidSelector)[procKind](({ input, ctx }) => {
5018
5028
  const sel = input ?? {};
5019
5029
  return (nodeIdData ? requireLocal(capName, () => getLocal(ctx, isCollection ? sel.addonId : void 0), services) : resolveProviderForCall(capName, sel.nodeId, () => getLocal(ctx, isCollection ? sel.addonId : void 0), services))[method.name]?.();
5020
5030
  });
5021
5031
  continue;
5022
5032
  }
5023
5033
  if (method.isObject) {
5024
- const schema = nodeIdData ? inputSchema : (0, _camstack_types.looseSchema)(inputSchema);
5025
- procedures[method.name] = base.input(schema).output(outputSchema)[procKind](({ input, ctx }) => {
5034
+ const schema = nodeIdData ? inputSchema : require_dist.looseSchema(inputSchema);
5035
+ procedures[method.name] = base.input(schema)[procKind](({ input, ctx }) => {
5026
5036
  if (nodeIdData) return requireLocal(capName, () => getLocal(ctx), services)[method.name]?.(input);
5027
5037
  if (isCollection) {
5028
5038
  const { rest, picked } = stripKeys(input, ["nodeId", "addonId"]);
@@ -5035,7 +5045,7 @@ function buildOneCapRouter(def, primitives, services) {
5035
5045
  });
5036
5046
  continue;
5037
5047
  }
5038
- procedures[method.name] = base.input(inputSchema).output(outputSchema)[procKind](({ input, ctx }) => {
5048
+ procedures[method.name] = base.input(inputSchema)[procKind](({ input, ctx }) => {
5039
5049
  return requireLocal(capName, () => getLocal(ctx), services)[method.name]?.(input);
5040
5050
  });
5041
5051
  }
@@ -5060,21 +5070,21 @@ function isBuilderMounted(kind) {
5060
5070
  */
5061
5071
  function buildCapRouters(primitives, services) {
5062
5072
  const out = {};
5063
- for (const def of _camstack_types.ALL_CAPABILITY_DEFINITIONS) {
5064
- if (!isBuilderMounted((0, _camstack_types.resolveCapMount)(def).kind)) continue;
5065
- const effective = (0, _camstack_types.expandCapMethods)(def);
5073
+ for (const def of require_dist.ALL_CAPABILITY_DEFINITIONS) {
5074
+ if (!isBuilderMounted(require_dist.resolveCapMount(def).kind)) continue;
5075
+ const effective = require_dist.expandCapMethods(def);
5066
5076
  if (Object.keys(effective).length === 0) continue;
5067
- out[(0, _camstack_types.kebabToCamel)(def.name)] = buildOneCapRouter(def, primitives, services);
5077
+ out[require_dist.kebabToCamel(def.name)] = buildOneCapRouter(def, primitives, services);
5068
5078
  }
5069
5079
  return out;
5070
5080
  }
5071
5081
  /** The set of cap camelNames the builder owns (for drift checks / tests). */
5072
5082
  function builderMountedCapNames() {
5073
5083
  const names = [];
5074
- for (const def of _camstack_types.ALL_CAPABILITY_DEFINITIONS) {
5075
- if (!isBuilderMounted((0, _camstack_types.resolveCapMount)(def).kind)) continue;
5076
- if (Object.keys((0, _camstack_types.expandCapMethods)(def)).length === 0) continue;
5077
- names.push((0, _camstack_types.kebabToCamel)(def.name));
5084
+ for (const def of require_dist.ALL_CAPABILITY_DEFINITIONS) {
5085
+ if (!isBuilderMounted(require_dist.resolveCapMount(def).kind)) continue;
5086
+ if (Object.keys(require_dist.expandCapMethods(def)).length === 0) continue;
5087
+ names.push(require_dist.kebabToCamel(def.name));
5078
5088
  }
5079
5089
  return names;
5080
5090
  }
@@ -7633,7 +7643,7 @@ var ConfigManager = class ConfigManager {
7633
7643
  const nested = this.getNestedFromSystemSettings(configPath);
7634
7644
  if (nested !== null) return nested;
7635
7645
  }
7636
- if (configPath in _camstack_types.RUNTIME_DEFAULTS) return _camstack_types.RUNTIME_DEFAULTS[configPath];
7646
+ if (configPath in require_dist.RUNTIME_DEFAULTS) return require_dist.RUNTIME_DEFAULTS[configPath];
7637
7647
  return this.getFromRuntimeDefaults(configPath) ?? void 0;
7638
7648
  }
7639
7649
  /**
@@ -7858,7 +7868,7 @@ var ConfigManager = class ConfigManager {
7858
7868
  const g = (key) => {
7859
7869
  const storeValue = this.get(`features.${key}`);
7860
7870
  if (typeof storeValue === "boolean") return storeValue;
7861
- return _camstack_types.RUNTIME_DEFAULTS[`features.${key}`];
7871
+ return require_dist.RUNTIME_DEFAULTS[`features.${key}`];
7862
7872
  };
7863
7873
  return {
7864
7874
  streaming: g("streaming"),
@@ -7877,33 +7887,33 @@ var ConfigManager = class ConfigManager {
7877
7887
  */
7878
7888
  get raw() {
7879
7889
  const features = {
7880
- streaming: _camstack_types.RUNTIME_DEFAULTS["features.streaming"],
7881
- notifications: _camstack_types.RUNTIME_DEFAULTS["features.notifications"],
7882
- objectDetection: _camstack_types.RUNTIME_DEFAULTS["features.objectDetection"],
7883
- remoteAccess: _camstack_types.RUNTIME_DEFAULTS["features.remoteAccess"],
7884
- agentCluster: _camstack_types.RUNTIME_DEFAULTS["features.agentCluster"],
7885
- smartHome: _camstack_types.RUNTIME_DEFAULTS["features.smartHome"],
7886
- recordings: _camstack_types.RUNTIME_DEFAULTS["features.recordings"],
7887
- backup: _camstack_types.RUNTIME_DEFAULTS["features.backup"],
7888
- repl: _camstack_types.RUNTIME_DEFAULTS["features.repl"]
7890
+ streaming: require_dist.RUNTIME_DEFAULTS["features.streaming"],
7891
+ notifications: require_dist.RUNTIME_DEFAULTS["features.notifications"],
7892
+ objectDetection: require_dist.RUNTIME_DEFAULTS["features.objectDetection"],
7893
+ remoteAccess: require_dist.RUNTIME_DEFAULTS["features.remoteAccess"],
7894
+ agentCluster: require_dist.RUNTIME_DEFAULTS["features.agentCluster"],
7895
+ smartHome: require_dist.RUNTIME_DEFAULTS["features.smartHome"],
7896
+ recordings: require_dist.RUNTIME_DEFAULTS["features.recordings"],
7897
+ backup: require_dist.RUNTIME_DEFAULTS["features.backup"],
7898
+ repl: require_dist.RUNTIME_DEFAULTS["features.repl"]
7889
7899
  };
7890
7900
  return {
7891
7901
  ...this.bootstrapConfig,
7892
7902
  features,
7893
7903
  storage: {
7894
- provider: _camstack_types.RUNTIME_DEFAULTS["storage.provider"],
7895
- locations: { ..._camstack_types.RUNTIME_DEFAULTS["storage.locations"] }
7904
+ provider: require_dist.RUNTIME_DEFAULTS["storage.provider"],
7905
+ locations: { ...require_dist.RUNTIME_DEFAULTS["storage.locations"] }
7896
7906
  },
7897
7907
  logging: {
7898
- level: _camstack_types.RUNTIME_DEFAULTS["logging.level"],
7899
- retentionDays: _camstack_types.RUNTIME_DEFAULTS["logging.retentionDays"]
7908
+ level: require_dist.RUNTIME_DEFAULTS["logging.level"],
7909
+ retentionDays: require_dist.RUNTIME_DEFAULTS["logging.retentionDays"]
7900
7910
  },
7901
- eventBus: { ringBufferSize: _camstack_types.RUNTIME_DEFAULTS["eventBus.ringBufferSize"] },
7911
+ eventBus: { ringBufferSize: require_dist.RUNTIME_DEFAULTS["eventBus.ringBufferSize"] },
7902
7912
  retention: {
7903
- detectionEventsDays: _camstack_types.RUNTIME_DEFAULTS["retention.detectionEventsDays"],
7904
- audioLevelsDays: _camstack_types.RUNTIME_DEFAULTS["retention.audioLevelsDays"]
7913
+ detectionEventsDays: require_dist.RUNTIME_DEFAULTS["retention.detectionEventsDays"],
7914
+ audioLevelsDays: require_dist.RUNTIME_DEFAULTS["retention.audioLevelsDays"]
7905
7915
  },
7906
- providers: [..._camstack_types.RUNTIME_DEFAULTS["providers"]]
7916
+ providers: [...require_dist.RUNTIME_DEFAULTS["providers"]]
7907
7917
  };
7908
7918
  }
7909
7919
  /** Sections that live in config.yaml. Everything else goes to the settings-store. */
@@ -7995,7 +8005,7 @@ var ConfigManager = class ConfigManager {
7995
8005
  const prefix = configPath + ".";
7996
8006
  const result = {};
7997
8007
  let found = false;
7998
- for (const [key, value] of Object.entries(_camstack_types.RUNTIME_DEFAULTS)) if (key.startsWith(prefix)) {
8008
+ for (const [key, value] of Object.entries(require_dist.RUNTIME_DEFAULTS)) if (key.startsWith(prefix)) {
7999
8009
  const subKey = key.slice(prefix.length);
8000
8010
  result[subKey] = value;
8001
8011
  found = true;
@@ -91660,7 +91670,7 @@ var HubLogForwarder = class {
91660
91670
  tags: mergedTags,
91661
91671
  ...entry.meta !== void 0 ? { meta: entry.meta } : {}
91662
91672
  }).catch((err) => {
91663
- console.error(`[HubLogForwarder] $hub.log call failed: ${(0, _camstack_types.errMsg)(err)}`);
91673
+ console.error(`[HubLogForwarder] $hub.log call failed: ${require_dist.errMsg(err)}`);
91664
91674
  });
91665
91675
  }
91666
91676
  async shutdown() {
@@ -92037,7 +92047,7 @@ var AddonHealthMonitor = class {
92037
92047
  alertEmitted: false,
92038
92048
  retrying: false
92039
92049
  });
92040
- if (wasAlerting) this.emit(_camstack_types.EventCategory.AddonLoadRecovered, {
92050
+ if (wasAlerting) this.emit(require_dist.EventCategory.AddonLoadRecovered, {
92041
92051
  packageName,
92042
92052
  addonId: addonId ?? existing?.addonId,
92043
92053
  retryCount: existing.retryCount
@@ -92055,7 +92065,7 @@ var AddonHealthMonitor = class {
92055
92065
  const intervalIdx = Math.min(retryCount - 1, this.retryIntervalsMs.length - 1);
92056
92066
  const nextRetryAt = t + this.retryIntervalsMs[intervalIdx];
92057
92067
  const errPayload = {
92058
- message: (0, _camstack_types.errMsg)(err),
92068
+ message: require_dist.errMsg(err),
92059
92069
  ...err instanceof Error && err.stack ? { stack: err.stack } : {}
92060
92070
  };
92061
92071
  const next = {
@@ -92079,7 +92089,7 @@ var AddonHealthMonitor = class {
92079
92089
  inGrace: this.inGracePeriod(),
92080
92090
  error: errPayload.message
92081
92091
  } });
92082
- this.emit(_camstack_types.EventCategory.AddonRetryScheduled, {
92092
+ this.emit(require_dist.EventCategory.AddonRetryScheduled, {
92083
92093
  packageName,
92084
92094
  addonId: next.addonId,
92085
92095
  retryCount,
@@ -92087,7 +92097,7 @@ var AddonHealthMonitor = class {
92087
92097
  });
92088
92098
  if (!this.inGracePeriod() && !next.alertEmitted) {
92089
92099
  next.alertEmitted = true;
92090
- this.emit(_camstack_types.EventCategory.AddonLoadFailed, {
92100
+ this.emit(require_dist.EventCategory.AddonLoadFailed, {
92091
92101
  packageName,
92092
92102
  addonId: next.addonId,
92093
92103
  error: errPayload,
@@ -92175,7 +92185,7 @@ var AddonHealthMonitor = class {
92175
92185
  this.graceEmittedFor = true;
92176
92186
  for (const s of this.state.values()) if (s.phase === "failed" && !s.alertEmitted && s.lastError) {
92177
92187
  s.alertEmitted = true;
92178
- this.emit(_camstack_types.EventCategory.AddonLoadFailed, {
92188
+ this.emit(require_dist.EventCategory.AddonLoadFailed, {
92179
92189
  packageName: s.packageName,
92180
92190
  addonId: s.addonId,
92181
92191
  error: s.lastError,
@@ -92192,7 +92202,7 @@ var AddonHealthMonitor = class {
92192
92202
  const existing = this.state.get(packageName);
92193
92203
  if (!existing) return;
92194
92204
  existing.retrying = true;
92195
- this.emit(_camstack_types.EventCategory.AddonRetryAttempting, {
92205
+ this.emit(require_dist.EventCategory.AddonRetryAttempting, {
92196
92206
  packageName,
92197
92207
  addonId: existing.addonId,
92198
92208
  retryCount: existing.retryCount
@@ -92431,7 +92441,7 @@ function createProcessService(parentNodeId, dataDir, deps, parentTcpPort, parent
92431
92441
  */
92432
92442
  function emitRunnerEvent(category, sourceId, data) {
92433
92443
  if (!capturedBroker) return;
92434
- require_manifest_python_deps.getBrokerEventBus(capturedBroker).emit((0, _camstack_types.createEvent)(category, {
92444
+ require_manifest_python_deps.getBrokerEventBus(capturedBroker).emit(require_dist.createEvent(category, {
92435
92445
  type: "core",
92436
92446
  id: sourceId,
92437
92447
  nodeId: parentNodeId
@@ -92506,7 +92516,7 @@ function createProcessService(parentNodeId, dataDir, deps, parentTcpPort, parent
92506
92516
  entry.state = "crashed";
92507
92517
  capturedBroker?.logger.error(`[${runnerId}] Process exited (code=${code}, signal=${signal})`);
92508
92518
  const decision = crashSupervisor.recordCrash(runnerId);
92509
- emitRunnerEvent(_camstack_types.EventCategory.ProcessCrashed, runnerId, {
92519
+ emitRunnerEvent(require_dist.EventCategory.ProcessCrashed, runnerId, {
92510
92520
  processId: runnerId,
92511
92521
  exitCode: code ?? void 0,
92512
92522
  signal: signal ?? void 0
@@ -92516,14 +92526,14 @@ function createProcessService(parentNodeId, dataDir, deps, parentTcpPort, parent
92516
92526
  capturedBroker?.logger.error(`[${runnerId}] Crash circuit-breaker tripped — ${decision.crashesInWindow} crashes in ${CRASH_WINDOW_MS}ms. Not respawning.`);
92517
92527
  processes.set(runnerId, entry);
92518
92528
  if (capturedBroker) forceMoleculerDisconnect(capturedBroker, entry.nodeId);
92519
- for (const addon of entry.runnerAddons) emitRunnerEvent(_camstack_types.EventCategory.AddonCrashed, addon.addonId, {
92529
+ for (const addon of entry.runnerAddons) emitRunnerEvent(require_dist.EventCategory.AddonCrashed, addon.addonId, {
92520
92530
  addonId: addon.addonId,
92521
92531
  error: `Crash circuit-breaker tripped after ${decision.crashesInWindow} crashes in ${CRASH_WINDOW_MS}ms`
92522
92532
  });
92523
92533
  return;
92524
92534
  }
92525
92535
  capturedBroker?.logger.warn(`[${runnerId}] Restart scheduled (attempt #${decision.crashesInWindow}, backoff ${decision.backoffMs}ms)...`);
92526
- emitRunnerEvent(_camstack_types.EventCategory.ProcessRestartScheduled, runnerId, {
92536
+ emitRunnerEvent(require_dist.EventCategory.ProcessRestartScheduled, runnerId, {
92527
92537
  processId: runnerId,
92528
92538
  delayMs: decision.backoffMs
92529
92539
  });
@@ -92881,7 +92891,7 @@ var JobJournal = class {
92881
92891
  }
92882
92892
  getJob(id) {
92883
92893
  try {
92884
- const parsed = _camstack_types.lifecycleJobSchema.safeParse(JSON.parse(node_fs.readFileSync(this.jobPath(id), "utf-8")));
92894
+ const parsed = require_dist.lifecycleJobSchema.safeParse(JSON.parse(node_fs.readFileSync(this.jobPath(id), "utf-8")));
92885
92895
  return parsed.success ? parsed.data : null;
92886
92896
  } catch {
92887
92897
  return null;
@@ -93241,6 +93251,7 @@ async function stageFrameworkLockstep(input) {
93241
93251
  //#endregion
93242
93252
  exports.AGENT_CAP_FWD_ACTION = require_manifest_python_deps.AGENT_CAP_FWD_ACTION;
93243
93253
  exports.AGENT_CAP_FWD_SERVICE = require_manifest_python_deps.AGENT_CAP_FWD_SERVICE;
93254
+ exports.ALL_CAPABILITY_DEFINITIONS = require_dist.ALL_CAPABILITY_DEFINITIONS;
93244
93255
  exports.AddonApiFactory = AddonApiFactory;
93245
93256
  exports.AddonDepsManager = require_manifest_python_deps.AddonDepsManager;
93246
93257
  exports.AddonEngineManager = AddonEngineManager;
@@ -93267,6 +93278,8 @@ exports.ConsoleDestination = require_builtins_console_logging_index.ConsoleDesti
93267
93278
  exports.ConsoleLoggingAddon = require_builtins_console_logging_index.ConsoleLoggingAddon$1;
93268
93279
  exports.CustomActionRegistry = require_custom_action_registry.CustomActionRegistry;
93269
93280
  exports.DEFAULT_DATA_PATH = DEFAULT_DATA_PATH;
93281
+ exports.DEVICE_SETTINGS_CONTRIBUTION_METHODS = require_dist.DEVICE_SETTINGS_CONTRIBUTION_METHODS;
93282
+ exports.DEVICE_STATUS_METHOD = require_dist.DEVICE_STATUS_METHOD;
93270
93283
  exports.DataPlaneRegistry = DataPlaneRegistry;
93271
93284
  exports.DeviceManagerAddon = require_builtins_device_manager_device_manager_addon.DeviceManagerAddon;
93272
93285
  exports.DeviceRegistry = require_manifest_python_deps.DeviceRegistry;
@@ -93299,6 +93312,7 @@ exports.LocalChildClient = require_manifest_python_deps.LocalChildClient;
93299
93312
  exports.LocalChildRegistry = require_manifest_python_deps.LocalChildRegistry;
93300
93313
  exports.LogManager = LogManager;
93301
93314
  exports.LogRingBuffer = LogRingBuffer;
93315
+ exports.METHOD_ACCESS_MAP = require_dist.METHOD_ACCESS_MAP;
93302
93316
  exports.ModelDownloadService = require_model_download_service.ModelDownloadService;
93303
93317
  exports.NATIVE_PROVIDER_SERVICE_INFIX = require_manifest_python_deps.NATIVE_PROVIDER_SERVICE_INFIX;
93304
93318
  exports.NativeMetricsAddon = require_builtins_native_metrics_native_metrics_addon.default;
@@ -93315,24 +93329,9 @@ exports.PipelineRunner = PipelineRunner;
93315
93329
  exports.PipelineValidator = PipelineValidator;
93316
93330
  exports.PythonEnvManager = PythonEnvManager;
93317
93331
  exports.RESTART_MARKER_FILE = RESTART_MARKER_FILE;
93318
- Object.defineProperty(exports, "RUNTIME_DEFAULTS", {
93319
- enumerable: true,
93320
- get: function() {
93321
- return _camstack_types.RUNTIME_DEFAULTS;
93322
- }
93323
- });
93324
- Object.defineProperty(exports, "ReadinessRegistry", {
93325
- enumerable: true,
93326
- get: function() {
93327
- return _camstack_types.ReadinessRegistry;
93328
- }
93329
- });
93330
- Object.defineProperty(exports, "ReadinessTimeoutError", {
93331
- enumerable: true,
93332
- get: function() {
93333
- return _camstack_types.ReadinessTimeoutError;
93334
- }
93335
- });
93332
+ exports.RUNTIME_DEFAULTS = require_dist.RUNTIME_DEFAULTS;
93333
+ exports.ReadinessRegistry = require_dist.ReadinessRegistry;
93334
+ exports.ReadinessTimeoutError = require_dist.ReadinessTimeoutError;
93336
93335
  exports.ReplEngine = ReplEngine;
93337
93336
  exports.RingBuffer = RingBuffer;
93338
93337
  exports.ScopedLogger = ScopedLogger;
@@ -93356,6 +93355,7 @@ exports.WinstonDestination = require_builtins_winston_logging_index.WinstonDesti
93356
93355
  exports.WinstonLoggingAddon = require_builtins_winston_logging_index.WinstonLoggingAddon$1;
93357
93356
  exports.__resetCapUsageRegistryForTests = require_manifest_python_deps.__resetCapUsageRegistryForTests;
93358
93357
  exports.adaptBrokerToCluster = require_manifest_python_deps.adaptBrokerToCluster;
93358
+ exports.addonSettingsCapability = require_dist.addonSettingsCapability;
93359
93359
  exports.bootstrapSchema = bootstrapSchema;
93360
93360
  exports.brokerCallForCap = require_manifest_python_deps.brokerCallForCap;
93361
93361
  exports.brokerTransportLink = require_manifest_python_deps.brokerTransportLink;
@@ -93419,12 +93419,7 @@ Object.defineProperty(exports, "downloadBinary", {
93419
93419
  });
93420
93420
  exports.downloadFile = require_model_download_service.downloadFile;
93421
93421
  exports.downloadModel = require_model_download_service.downloadModel;
93422
- Object.defineProperty(exports, "emitDownForOwnedCaps", {
93423
- enumerable: true,
93424
- get: function() {
93425
- return _camstack_types.emitDownForOwnedCaps;
93426
- }
93427
- });
93422
+ exports.emitDownForOwnedCaps = require_dist.emitDownForOwnedCaps;
93428
93423
  exports.encodeFrame = require_manifest_python_deps.encodeFrame;
93429
93424
  Object.defineProperty(exports, "ensureBinary", {
93430
93425
  enumerable: true,
@@ -93448,6 +93443,7 @@ Object.defineProperty(exports, "ensurePython", {
93448
93443
  }
93449
93444
  });
93450
93445
  exports.ensureTlsCert = ensureTlsCert;
93446
+ exports.expandCapMethods = require_dist.expandCapMethods;
93451
93447
  exports.fetchJson = require_model_download_service.fetchJson;
93452
93448
  Object.defineProperty(exports, "findInPath", {
93453
93449
  enumerable: true,
@@ -93503,6 +93499,7 @@ Object.defineProperty(exports, "installPythonRequirements", {
93503
93499
  exports.ipcChildLink = require_manifest_python_deps.ipcChildLink;
93504
93500
  exports.ipcParentLink = require_manifest_python_deps.ipcParentLink;
93505
93501
  exports.isAddonDeploySource = isAddonDeploySource;
93502
+ exports.isArrayOutputSchema = require_dist.isArrayOutputSchema;
93506
93503
  exports.isClusterSecretMismatchError = isClusterSecretMismatchError;
93507
93504
  exports.isInfraCapability = isInfraCapability;
93508
93505
  exports.isModelDownloaded = require_model_download_service.isModelDownloaded;
@@ -93516,22 +93513,12 @@ exports.parseRangeHeader = require_model_download_service.parseRangeHeader;
93516
93513
  exports.parseTokenizedUrl = require_model_download_service.parseTokenizedUrl;
93517
93514
  exports.proxyToUpstream = proxyToUpstream;
93518
93515
  exports.readPendingRestart = readPendingRestart;
93519
- Object.defineProperty(exports, "readinessKey", {
93520
- enumerable: true,
93521
- get: function() {
93522
- return _camstack_types.readinessKey;
93523
- }
93524
- });
93516
+ exports.readinessKey = require_dist.readinessKey;
93525
93517
  exports.registerEventBusService = require_manifest_python_deps.registerEventBusService;
93526
93518
  exports.resolveFilePath = require_model_download_service.resolveFilePath;
93527
93519
  exports.resolveHwAccel = require_manifest_python_deps.resolveHwAccel;
93528
93520
  exports.scheduleSelfRestart = scheduleSelfRestart;
93529
- Object.defineProperty(exports, "scopeKey", {
93530
- enumerable: true,
93531
- get: function() {
93532
- return _camstack_types.scopeKey;
93533
- }
93534
- });
93521
+ exports.scopeKey = require_dist.scopeKey;
93535
93522
  exports.scopesAllowDeviceCap = scopesAllowDeviceCap;
93536
93523
  exports.serializeTypedArrays = require_manifest_python_deps.serializeTypedArrays;
93537
93524
  exports.setHubConnected = require_manifest_python_deps.setHubConnected;