camstack 1.2.156 → 1.2.157

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.
@@ -27299,6 +27299,7 @@ var MediaFileKindEnum = external_exports.enum([
27299
27299
  "keyFrame",
27300
27300
  "keyFrameSmall",
27301
27301
  "thumbnailSmall",
27302
+ "confirmationCrop",
27302
27303
  "sceneFrame"
27303
27304
  ]);
27304
27305
  var MediaFileRefSchema = external_exports.object({
package/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runDiscover
4
- } from "./chunk-VR72SEQZ.js";
4
+ } from "./chunk-LFAXPGXW.js";
5
5
  import "./chunk-LMMQX4CK.js";
6
6
 
7
7
  // src/cli.ts
@@ -38,7 +38,7 @@ async function runServe(args) {
38
38
  ...typeof values.data === "string" ? { data: values.data } : {}
39
39
  };
40
40
  Object.assign(process.env, buildServeEnv(opts));
41
- await import("./launcher-OPKFHSZH.js");
41
+ await import("./launcher-MZZ42ZMY.js");
42
42
  }
43
43
 
44
44
  // src/commands/agent.ts
@@ -83,7 +83,7 @@ async function runAgent(args) {
83
83
  ...typeof values.port === "string" ? { port: values.port } : {}
84
84
  };
85
85
  Object.assign(process.env, buildAgentEnv(opts));
86
- await import("./launcher-OPKFHSZH.js");
86
+ await import("./launcher-MZZ42ZMY.js");
87
87
  }
88
88
 
89
89
  // src/commands/setup.ts
@@ -1140,7 +1140,7 @@ function isUnknown(_value) {
1140
1140
  return true;
1141
1141
  }
1142
1142
  async function resolveServerInteractive(presetNamespace) {
1143
- const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-63TJXVH3.js");
1143
+ const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-AGYCTXAP.js");
1144
1144
  if (presetNamespace) {
1145
1145
  const spinner4 = clack.spinner();
1146
1146
  spinner4.start(`Discovering hub on LAN (namespace "${presetNamespace}")`);
@@ -5,7 +5,7 @@ import {
5
5
  filterHubNodes,
6
6
  resolveHubFromDiscovered,
7
7
  runDiscover
8
- } from "./chunk-VR72SEQZ.js";
8
+ } from "./chunk-LFAXPGXW.js";
9
9
  import "./chunk-LMMQX4CK.js";
10
10
  export {
11
11
  DEFAULT_HUB_HTTPS_PORT,
@@ -23633,9 +23633,9 @@ var require_zod = __commonJS({
23633
23633
  }
23634
23634
  });
23635
23635
 
23636
- // ../system/dist/dist-C6JIhqS6.js
23637
- var require_dist_C6JIhqS6 = __commonJS({
23638
- "../system/dist/dist-C6JIhqS6.js"(exports) {
23636
+ // ../system/dist/dist-BETx_5mH.js
23637
+ var require_dist_BETx_5mH = __commonJS({
23638
+ "../system/dist/dist-BETx_5mH.js"(exports) {
23639
23639
  "use strict";
23640
23640
  var zod = require_zod();
23641
23641
  var EventCategory = /* @__PURE__ */ (function(EventCategory2) {
@@ -38051,6 +38051,7 @@ var require_dist_C6JIhqS6 = __commonJS({
38051
38051
  "keyFrame",
38052
38052
  "keyFrameSmall",
38053
38053
  "thumbnailSmall",
38054
+ "confirmationCrop",
38054
38055
  "sceneFrame"
38055
38056
  ]);
38056
38057
  var MediaFileSchema = zod.z.object({
@@ -62556,7 +62557,7 @@ var require_alerts_addon = __commonJS({
62556
62557
  [Symbol.toStringTag]: { value: "Module" }
62557
62558
  });
62558
62559
  require_chunk_Cek0wNdY();
62559
- var require_dist10 = require_dist_C6JIhqS6();
62560
+ var require_dist10 = require_dist_BETx_5mH();
62560
62561
  function selectExpired(alerts, cutoffMs) {
62561
62562
  return alerts.filter((a) => a.createdAt < cutoffMs).sort((a, b) => a.createdAt - b.createdAt).map((a) => a.id);
62562
62563
  }
@@ -63375,7 +63376,7 @@ var require_console_logging = __commonJS({
63375
63376
  [Symbol.toStringTag]: { value: "Module" }
63376
63377
  });
63377
63378
  require_chunk_Cek0wNdY();
63378
- var require_dist10 = require_dist_C6JIhqS6();
63379
+ var require_dist10 = require_dist_BETx_5mH();
63379
63380
  var require_formatter = require_formatter_DqAKDlvN();
63380
63381
  var LEVEL_RANK = {
63381
63382
  debug: 0,
@@ -63469,7 +63470,7 @@ var require_core_blocks_addon = __commonJS({
63469
63470
  "use strict";
63470
63471
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
63471
63472
  var require_chunk = require_chunk_Cek0wNdY();
63472
- var require_dist10 = require_dist_C6JIhqS6();
63473
+ var require_dist10 = require_dist_BETx_5mH();
63473
63474
  var node_crypto = __require("crypto");
63474
63475
  var node_fs_promises = __require("fs/promises");
63475
63476
  node_fs_promises = require_chunk.__toESM(node_fs_promises);
@@ -64366,11 +64367,11 @@ var require_core_blocks = __commonJS({
64366
64367
  }
64367
64368
  });
64368
64369
 
64369
- // ../system/dist/retired-settings-keys-C53Y2Q1C.js
64370
- var require_retired_settings_keys_C53Y2Q1C = __commonJS({
64371
- "../system/dist/retired-settings-keys-C53Y2Q1C.js"(exports) {
64370
+ // ../system/dist/retired-settings-keys-BnTBoLTv.js
64371
+ var require_retired_settings_keys_BnTBoLTv = __commonJS({
64372
+ "../system/dist/retired-settings-keys-BnTBoLTv.js"(exports) {
64372
64373
  "use strict";
64373
- var require_dist10 = require_dist_C6JIhqS6();
64374
+ var require_dist10 = require_dist_BETx_5mH();
64374
64375
  function settingsStoreIsAuthoritativeHere(env) {
64375
64376
  const raw = (env["CAMSTACK_ROLE"] ?? "").trim().toLowerCase();
64376
64377
  return raw === "" || raw === "hub";
@@ -66607,8 +66608,8 @@ var require_device_manager_addon = __commonJS({
66607
66608
  [Symbol.toStringTag]: { value: "Module" }
66608
66609
  });
66609
66610
  require_chunk_Cek0wNdY();
66610
- var require_dist10 = require_dist_C6JIhqS6();
66611
- var require_retired_settings_keys = require_retired_settings_keys_C53Y2Q1C();
66611
+ var require_dist10 = require_dist_BETx_5mH();
66612
+ var require_retired_settings_keys = require_retired_settings_keys_BnTBoLTv();
66612
66613
  var node_crypto = __require("crypto");
66613
66614
  var _camstack_types_node = require_node();
66614
66615
  var JOB_HISTORY = 20;
@@ -66830,13 +66831,15 @@ var require_device_manager_addon = __commonJS({
66830
66831
  const startedAt = this.now();
66831
66832
  try {
66832
66833
  const per = input.perCandidate?.[childNativeId];
66833
- const entry = (await provider.adopt({
66834
+ const adoptCandidate = async () => await provider.adopt({
66834
66835
  integrationId: input.integrationId,
66835
66836
  childNativeIds: [childNativeId],
66836
66837
  ...input.filter !== void 0 ? { filter: input.filter } : {},
66837
66838
  ...input.importLocations !== void 0 ? { importLocations: input.importLocations } : {},
66838
66839
  ...per !== void 0 ? { perCandidate: { [childNativeId]: per } } : {}
66839
- })).adopted[0];
66840
+ });
66841
+ const fence = this.deps.removalFence;
66842
+ const entry = (fence === void 0 ? await adoptCandidate() : await fence.runUnfenced(adoptCandidate)).adopted[0];
66840
66843
  if (!entry) {
66841
66844
  job.results.push({
66842
66845
  childNativeId,
@@ -71878,6 +71881,17 @@ var require_device_manager_addon = __commonJS({
71878
71881
  remoteNativeCaps = /* @__PURE__ */ new Map();
71879
71882
  /** Background adoption jobs — lazily constructed (needs `ctx.logger`). */
71880
71883
  adoptionJobEngine = null;
71884
+ /**
71885
+ * ONE removal fence for this process, shared by the provider context and the
71886
+ * adoption-job engine.
71887
+ *
71888
+ * It used to be constructed inline into the context, so the job engine had
71889
+ * no way to reach it and an operator re-adopting hardware they had just
71890
+ * deleted was refused for the whole 5-minute TTL — their own action, denied.
71891
+ * Two fences would be worse than one: the engine would suspend a fence that
71892
+ * `allocateDeviceId` never consults.
71893
+ */
71894
+ removalFence = createRemovalFence();
71881
71895
  /** The runtime-state mirror, asserted present (constructed in onInitialize). */
71882
71896
  get stateMirror() {
71883
71897
  if (!this.stateMirrorImpl) throw new Error("DeviceManagerAddon: state mirror accessed before onInitialize");
@@ -71915,7 +71929,8 @@ var require_device_manager_addon = __commonJS({
71915
71929
  get adoptionJobsImpl() {
71916
71930
  if (!this.adoptionJobEngine) this.adoptionJobEngine = new AdoptionJobEngine({
71917
71931
  resolveProvider: async (addonId) => this.requireDeviceAdoptionProvider(addonId),
71918
- logger: this.ctx.logger
71932
+ logger: this.ctx.logger,
71933
+ removalFence: this.removalFence
71919
71934
  });
71920
71935
  return this.adoptionJobEngine;
71921
71936
  }
@@ -72066,7 +72081,7 @@ var require_device_manager_addon = __commonJS({
72066
72081
  registry,
72067
72082
  bindingsDeps: this.bindingsDeps,
72068
72083
  migrationGuard: createMigrationGuard(),
72069
- removalFence: createRemovalFence(),
72084
+ removalFence: this.removalFence,
72070
72085
  requireDeviceOps,
72071
72086
  stampIntegrationId: stampIntegrationId$1,
72072
72087
  get provider() {
@@ -72318,7 +72333,7 @@ var require_hub_forwarder = __commonJS({
72318
72333
  [Symbol.toStringTag]: { value: "Module" }
72319
72334
  });
72320
72335
  require_chunk_Cek0wNdY();
72321
- var require_dist10 = require_dist_C6JIhqS6();
72336
+ var require_dist10 = require_dist_BETx_5mH();
72322
72337
  var require_formatter = require_formatter_DqAKDlvN();
72323
72338
  var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
72324
72339
  var HubForwarderDestination = class {
@@ -72455,7 +72470,7 @@ var require_liveness_monitor_addon = __commonJS({
72455
72470
  "use strict";
72456
72471
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
72457
72472
  require_chunk_Cek0wNdY();
72458
- var require_dist10 = require_dist_C6JIhqS6();
72473
+ var require_dist10 = require_dist_BETx_5mH();
72459
72474
  var NO_DEVICES = "liveness:no-devices";
72460
72475
  var ALL_OFFLINE = "liveness:all-devices-offline";
72461
72476
  var NO_FOOTAGE_PREFIX = "liveness:no-footage:";
@@ -72651,7 +72666,7 @@ var require_local_auth_addon = __commonJS({
72651
72666
  [Symbol.toStringTag]: { value: "Module" }
72652
72667
  });
72653
72668
  var require_chunk = require_chunk_Cek0wNdY();
72654
- var require_dist10 = require_dist_C6JIhqS6();
72669
+ var require_dist10 = require_dist_BETx_5mH();
72655
72670
  var node_crypto = __require("crypto");
72656
72671
  node_crypto = require_chunk.__toESM(node_crypto);
72657
72672
  var crypto$1 = __require("crypto");
@@ -80464,7 +80479,7 @@ var require_loki_logging = __commonJS({
80464
80479
  [Symbol.toStringTag]: { value: "Module" }
80465
80480
  });
80466
80481
  require_chunk_Cek0wNdY();
80467
- var require_dist10 = require_dist_C6JIhqS6();
80482
+ var require_dist10 = require_dist_BETx_5mH();
80468
80483
  function sanitizeLabelName(raw) {
80469
80484
  const replaced = raw.replaceAll(/[^a-zA-Z0-9_]/g, "_");
80470
80485
  return /^[a-zA-Z_]/.test(replaced) ? replaced : `_${replaced}`;
@@ -81051,7 +81066,7 @@ var require_native_metrics_addon = __commonJS({
81051
81066
  [Symbol.toStringTag]: { value: "Module" }
81052
81067
  });
81053
81068
  var require_chunk = require_chunk_Cek0wNdY();
81054
- var require_dist10 = require_dist_C6JIhqS6();
81069
+ var require_dist10 = require_dist_BETx_5mH();
81055
81070
  var node_fs_promises = __require("fs/promises");
81056
81071
  var node_fs = __require("fs");
81057
81072
  node_fs = require_chunk.__toESM(node_fs);
@@ -83804,7 +83819,7 @@ var require_filesystem_storage_addon = __commonJS({
83804
83819
  [Symbol.toStringTag]: { value: "Module" }
83805
83820
  });
83806
83821
  var require_chunk = require_chunk_Cek0wNdY();
83807
- var require_dist10 = require_dist_C6JIhqS6();
83822
+ var require_dist10 = require_dist_BETx_5mH();
83808
83823
  var node_crypto = __require("crypto");
83809
83824
  var node_fs_promises = __require("fs/promises");
83810
83825
  var node_path = __require("path");
@@ -85031,8 +85046,8 @@ var require_sqlite_settings_addon = __commonJS({
85031
85046
  [Symbol.toStringTag]: { value: "Module" }
85032
85047
  });
85033
85048
  var require_chunk = require_chunk_Cek0wNdY();
85034
- var require_dist10 = require_dist_C6JIhqS6();
85035
- var require_retired_settings_keys = require_retired_settings_keys_C53Y2Q1C();
85049
+ var require_dist10 = require_dist_BETx_5mH();
85050
+ var require_retired_settings_keys = require_retired_settings_keys_BnTBoLTv();
85036
85051
  var require_wal_checkpoint_policy = require_wal_checkpoint_policy_CCJZngds();
85037
85052
  var node_crypto = __require("crypto");
85038
85053
  var node_path = __require("path");
@@ -87819,7 +87834,7 @@ var require_storage_orchestrator_addon = __commonJS({
87819
87834
  [Symbol.toStringTag]: { value: "Module" }
87820
87835
  });
87821
87836
  var require_chunk = require_chunk_Cek0wNdY();
87822
- var require_dist10 = require_dist_C6JIhqS6();
87837
+ var require_dist10 = require_dist_BETx_5mH();
87823
87838
  var require_hub_cap_forward = require_hub_cap_forward_DmHNjbB0();
87824
87839
  var zod = require_zod();
87825
87840
  var node_crypto = __require("crypto");
@@ -91546,7 +91561,7 @@ var require_system_config_addon = __commonJS({
91546
91561
  [Symbol.toStringTag]: { value: "Module" }
91547
91562
  });
91548
91563
  require_chunk_Cek0wNdY();
91549
- var require_dist10 = require_dist_C6JIhqS6();
91564
+ var require_dist10 = require_dist_BETx_5mH();
91550
91565
  var SECTION_TITLES = {
91551
91566
  server: "Server",
91552
91567
  auth: "Authentication"
@@ -109607,7 +109622,7 @@ var require_winston_logging = __commonJS({
109607
109622
  [Symbol.toStringTag]: { value: "Module" }
109608
109623
  });
109609
109624
  var require_chunk = require_chunk_Cek0wNdY();
109610
- var require_dist10 = require_dist_C6JIhqS6();
109625
+ var require_dist10 = require_dist_BETx_5mH();
109611
109626
  var require_formatter = require_formatter_DqAKDlvN();
109612
109627
  var node_path = __require("path");
109613
109628
  node_path = require_chunk.__toESM(node_path);
@@ -135874,7 +135889,7 @@ var require_dist3 = __commonJS({
135874
135889
  "use strict";
135875
135890
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
135876
135891
  var require_chunk = require_chunk_Cek0wNdY();
135877
- var require_dist10 = require_dist_C6JIhqS6();
135892
+ var require_dist10 = require_dist_BETx_5mH();
135878
135893
  var require_builtins_alerts_alerts_addon = require_alerts_addon();
135879
135894
  require_alerts();
135880
135895
  var require_formatter = require_formatter_DqAKDlvN();
@@ -232243,6 +232258,7 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
232243
232258
  "keyFrame",
232244
232259
  "keyFrameSmall",
232245
232260
  "thumbnailSmall",
232261
+ "confirmationCrop",
232246
232262
  "sceneFrame"
232247
232263
  ]);
232248
232264
  var MediaFileRefSchema = zod.z.object({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "camstack",
3
- "version": "1.2.156",
3
+ "version": "1.2.157",
4
4
  "description": "CLI tool for managing and running CamStack server",
5
5
  "keywords": [
6
6
  "camstack",