@camstack/system 1.2.233 → 1.2.234

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 (60) hide show
  1. package/dist/addon-runner.js +1 -1
  2. package/dist/addon-runner.mjs +1 -1
  3. package/dist/addon-utils.js +1 -1
  4. package/dist/addon-utils.mjs +1 -1
  5. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  6. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  7. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  8. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  9. package/dist/builtins/alerts/alerts.addon.js +1 -1
  10. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  11. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
  12. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
  13. package/dist/builtins/console-logging/index.js +1 -1
  14. package/dist/builtins/console-logging/index.mjs +1 -1
  15. package/dist/builtins/core-blocks/core-blocks.addon.js +1 -1
  16. package/dist/builtins/core-blocks/core-blocks.addon.mjs +1 -1
  17. package/dist/builtins/device-manager/contribution-cache.d.ts +68 -0
  18. package/dist/builtins/device-manager/device-config-contribution.d.ts +0 -1
  19. package/dist/builtins/device-manager/device-manager.addon.js +176 -83
  20. package/dist/builtins/device-manager/device-manager.addon.mjs +177 -84
  21. package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
  22. package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
  23. package/dist/builtins/hub-forwarder/index.js +1 -1
  24. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  25. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  26. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  27. package/dist/builtins/local-auth/local-auth.addon.js +1 -1
  28. package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
  29. package/dist/builtins/local-network/local-network.addon.js +1 -1
  30. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  31. package/dist/builtins/loki-logging/index.js +1 -1
  32. package/dist/builtins/loki-logging/index.mjs +1 -1
  33. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  34. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  35. package/dist/builtins/platform-probe/index.js +1 -1
  36. package/dist/builtins/platform-probe/index.mjs +1 -1
  37. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  38. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  39. package/dist/builtins/snapshot/index.js +1 -1
  40. package/dist/builtins/snapshot/index.mjs +1 -1
  41. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  42. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  43. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  44. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  45. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  46. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  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/{custom-action-registry-CFHYDHAu.mjs → custom-action-registry-CVsXD56p.mjs} +1 -1
  52. package/dist/{custom-action-registry-CWFK5UDj.js → custom-action-registry-DG-QIWxd.js} +1 -1
  53. package/dist/{dist-D3lJV9M7.js → dist-DaSCLJVH.js} +61 -22
  54. package/dist/{dist-BIvXRexm.mjs → dist-at9PGh6X.mjs} +61 -22
  55. package/dist/index.js +2 -2
  56. package/dist/index.mjs +2 -2
  57. package/dist/{retired-settings-keys-YPsd2Exa.js → retired-settings-keys-CZISf623.js} +1 -1
  58. package/dist/{retired-settings-keys-CV3ZLGnJ.mjs → retired-settings-keys-X5zRxcV9.mjs} +1 -1
  59. package/package.json +1 -1
  60. package/dist/builtins/device-manager/native-object-detection-config-schema.d.ts +0 -3
@@ -21208,6 +21208,14 @@ var MotionSourceEnum = zod.z.enum([
21208
21208
  */
21209
21209
  var MotionSourcesSchema = zod.z.array(MotionSourceEnum);
21210
21210
  /**
21211
+ * Which root detectors a camera runs. Deliberately the SAME vocabulary
21212
+ * post-analysis already tags every detection with (`DetectionSource`) rather
21213
+ * than a second spelling of the same two ideas — the value an operator picks
21214
+ * here is the value that comes back on the track, the overlay and the debug
21215
+ * row.
21216
+ */
21217
+ var DetectionSourcesSchema = zod.z.array(DetectionSourceSchema);
21218
+ /**
21211
21219
  * Input shape for `pipeline-runner.reportMotion` cap method. Exported
21212
21220
  * so cap-side consumers (the orchestrator forward, the runner addon's
21213
21221
  * cap implementation, tests) can reuse the type instead of redeclaring
@@ -21358,6 +21366,35 @@ var RunnerCameraConfigSchema = zod.z.object({
21358
21366
  * events; the orchestrator forwards to `reportMotion`.
21359
21367
  */
21360
21368
  motionSources: MotionSourcesSchema.default(["analyzer"]),
21369
+ /**
21370
+ * WHICH root detector runs for this camera. The detection counterpart of
21371
+ * {@link motionSources}, same shape and same discipline: a per-camera list
21372
+ * of sources the system understands, vendor-agnostic, owned here.
21373
+ *
21374
+ * - `pipeline` — this runner's own root step on decoded pixels (`steps`).
21375
+ * - `onboard` — the CAMERA's own detector, admitted only when it is named
21376
+ * here. Its boxes reach post-analysis on the same
21377
+ * `PipelineInferenceResult` payload as the pipeline's, so an onboard-born
21378
+ * track gets the same tracker, the same overlay and the same detail
21379
+ * subtree (face / plate / embedding).
21380
+ *
21381
+ * `['onboard']` alone is the REPLACEMENT: this runner's root step does not
21382
+ * run, and that is where a camera with a usable onboard detector buys back
21383
+ * its share of the accelerator. It saves the root inference, not the decode
21384
+ * — the detail subtree still needs pixels to cut crops from.
21385
+ *
21386
+ * A camera whose onboard detections carry no geometry cannot serve as a root
21387
+ * step at all (there is nothing to track), and the cap that knows this says
21388
+ * so on `native-object-detection.getOptions().geometry`. On Reolink that is
21389
+ * every battery camera: the boxes ride a sub-stream a battery camera never
21390
+ * attaches, so such a camera stays on `['pipeline']` and its onboard AI is
21391
+ * worth exactly what it already is — a wake signal with a class.
21392
+ *
21393
+ * Defaults to `['pipeline']`, which is byte-for-byte today's behaviour: a
21394
+ * vendor never turns a detector on for the operator, and neither does a
21395
+ * default.
21396
+ */
21397
+ detectionSources: DetectionSourcesSchema.default(["pipeline"]),
21361
21398
  pipelineEnabled: zod.z.boolean().default(true),
21362
21399
  /** Ordered tree of video steps. Absent → runner skips video detection. */
21363
21400
  steps: zod.z.array(PipelineStepInputSchema).readonly().optional(),
@@ -30182,31 +30219,38 @@ var NativeObjectDetectionStatusSchema = zod.z.object({
30182
30219
  /**
30183
30220
  * Whether forwarding of onboard AI detections is enabled for this device.
30184
30221
  *
30185
- * The COLD-START default is the provider's, and it is not one value for
30186
- * every camera: a mains camera carries the boxed side-channel and its
30187
- * detections are usable subjects, so it defaults ON; a battery camera never
30188
- * attaches that channel, so the same toggle would buy it nothing but a write
30189
- * — it defaults OFF and an operator who wants it turns it on knowing what it
30190
- * costs. {@link NativeObjectDetectionOptionsSchema.geometry} is how the UI
30191
- * says which of the two a camera is.
30222
+ * Cold-start OFF on every camera. A vendor does not decide which detector a
30223
+ * camera runs — that is the operator's choice, and it is made where every
30224
+ * other detection choice is made. `geometry` on
30225
+ * {@link NativeObjectDetectionOptionsSchema} is how the form says what the
30226
+ * choice would buy this particular camera.
30192
30227
  */
30193
30228
  enabled: zod.z.boolean()
30194
30229
  });
30195
30230
  /**
30196
- * What a camera's onboard detections actually CARRY.
30231
+ * WHEN a camera's onboard detections carry geometry.
30197
30232
  *
30198
- * `boxed` — the firmware ships a bounding box with the class, so a detection is
30199
- * a subject the pipeline can track, crop and score.
30200
- * `flag-only` — the firmware ships the class and nothing else. The pipeline
30201
- * needs geometry to make a subject out of it, so such a push reaches the
30202
- * tracker as motion and no further. On Reolink this is every battery camera:
30203
- * the boxes ride the BcMedia sub-stream, which a battery camera never attaches.
30233
+ * - `boxed` — always. The provider holds a standing channel for the boxes, so
30234
+ * a detection is a trackable subject whenever the camera sees one.
30235
+ * - `while-streaming` — only while some stream of this camera is already open.
30236
+ * The boxes ride the video's own side-channel rather than a feed of their
30237
+ * own, so they cost nothing and they exist only when something is pulling.
30238
+ * On Reolink this is every BATTERY camera: a persistent second feed is real
30239
+ * radio drain, but a camera that is awake is awake precisely because
30240
+ * something is in front of it, and its stream is already being pulled.
30241
+ * - `flag-only` — never. The firmware ships the class and nothing else; the
30242
+ * pipeline needs geometry to make a subject, so such a push reaches the
30243
+ * tracker as motion and no further.
30204
30244
  *
30205
30245
  * Reported and not inferred, because the operator's question in front of the
30206
- * toggle is "what do I get", and "a class with no box" and "a subject" are
30207
- * different answers (D14: the derived form is only as honest as `getOptions`).
30246
+ * picker is "what do I get", and these are three different answers (D14: the
30247
+ * derived form is only as honest as `getOptions`).
30208
30248
  */
30209
- var NativeObjectGeometryEnum = zod.z.enum(["boxed", "flag-only"]);
30249
+ var NativeObjectGeometryEnum = zod.z.enum([
30250
+ "boxed",
30251
+ "while-streaming",
30252
+ "flag-only"
30253
+ ]);
30210
30254
  var NativeObjectDetectionOptionsSchema = zod.z.object({
30211
30255
  /** Classes this firmware can detect — the same list the status reports. */
30212
30256
  supportedClasses: zod.z.array(NativeObjectClassEnum).readonly(),
@@ -30223,11 +30267,6 @@ var nativeObjectDetectionCapability = {
30223
30267
  deviceNative: true,
30224
30268
  mode: "singleton",
30225
30269
  deviceTypes: [DeviceType.Camera],
30226
- deviceConfig: { ui: {
30227
- kind: "derived-form",
30228
- builderId: "native-object-detection",
30229
- tab: "motion"
30230
- } },
30231
30270
  methods: {
30232
30271
  getOptions: method(zod.z.object({ deviceId: zod.z.number() }), NativeObjectDetectionOptionsSchema),
30233
30272
  setSettings: method(zod.z.object({
@@ -21208,6 +21208,14 @@ var MotionSourceEnum = z.enum([
21208
21208
  */
21209
21209
  var MotionSourcesSchema = z.array(MotionSourceEnum);
21210
21210
  /**
21211
+ * Which root detectors a camera runs. Deliberately the SAME vocabulary
21212
+ * post-analysis already tags every detection with (`DetectionSource`) rather
21213
+ * than a second spelling of the same two ideas — the value an operator picks
21214
+ * here is the value that comes back on the track, the overlay and the debug
21215
+ * row.
21216
+ */
21217
+ var DetectionSourcesSchema = z.array(DetectionSourceSchema);
21218
+ /**
21211
21219
  * Input shape for `pipeline-runner.reportMotion` cap method. Exported
21212
21220
  * so cap-side consumers (the orchestrator forward, the runner addon's
21213
21221
  * cap implementation, tests) can reuse the type instead of redeclaring
@@ -21358,6 +21366,35 @@ var RunnerCameraConfigSchema = z.object({
21358
21366
  * events; the orchestrator forwards to `reportMotion`.
21359
21367
  */
21360
21368
  motionSources: MotionSourcesSchema.default(["analyzer"]),
21369
+ /**
21370
+ * WHICH root detector runs for this camera. The detection counterpart of
21371
+ * {@link motionSources}, same shape and same discipline: a per-camera list
21372
+ * of sources the system understands, vendor-agnostic, owned here.
21373
+ *
21374
+ * - `pipeline` — this runner's own root step on decoded pixels (`steps`).
21375
+ * - `onboard` — the CAMERA's own detector, admitted only when it is named
21376
+ * here. Its boxes reach post-analysis on the same
21377
+ * `PipelineInferenceResult` payload as the pipeline's, so an onboard-born
21378
+ * track gets the same tracker, the same overlay and the same detail
21379
+ * subtree (face / plate / embedding).
21380
+ *
21381
+ * `['onboard']` alone is the REPLACEMENT: this runner's root step does not
21382
+ * run, and that is where a camera with a usable onboard detector buys back
21383
+ * its share of the accelerator. It saves the root inference, not the decode
21384
+ * — the detail subtree still needs pixels to cut crops from.
21385
+ *
21386
+ * A camera whose onboard detections carry no geometry cannot serve as a root
21387
+ * step at all (there is nothing to track), and the cap that knows this says
21388
+ * so on `native-object-detection.getOptions().geometry`. On Reolink that is
21389
+ * every battery camera: the boxes ride a sub-stream a battery camera never
21390
+ * attaches, so such a camera stays on `['pipeline']` and its onboard AI is
21391
+ * worth exactly what it already is — a wake signal with a class.
21392
+ *
21393
+ * Defaults to `['pipeline']`, which is byte-for-byte today's behaviour: a
21394
+ * vendor never turns a detector on for the operator, and neither does a
21395
+ * default.
21396
+ */
21397
+ detectionSources: DetectionSourcesSchema.default(["pipeline"]),
21361
21398
  pipelineEnabled: z.boolean().default(true),
21362
21399
  /** Ordered tree of video steps. Absent → runner skips video detection. */
21363
21400
  steps: z.array(PipelineStepInputSchema).readonly().optional(),
@@ -30182,31 +30219,38 @@ var NativeObjectDetectionStatusSchema = z.object({
30182
30219
  /**
30183
30220
  * Whether forwarding of onboard AI detections is enabled for this device.
30184
30221
  *
30185
- * The COLD-START default is the provider's, and it is not one value for
30186
- * every camera: a mains camera carries the boxed side-channel and its
30187
- * detections are usable subjects, so it defaults ON; a battery camera never
30188
- * attaches that channel, so the same toggle would buy it nothing but a write
30189
- * — it defaults OFF and an operator who wants it turns it on knowing what it
30190
- * costs. {@link NativeObjectDetectionOptionsSchema.geometry} is how the UI
30191
- * says which of the two a camera is.
30222
+ * Cold-start OFF on every camera. A vendor does not decide which detector a
30223
+ * camera runs — that is the operator's choice, and it is made where every
30224
+ * other detection choice is made. `geometry` on
30225
+ * {@link NativeObjectDetectionOptionsSchema} is how the form says what the
30226
+ * choice would buy this particular camera.
30192
30227
  */
30193
30228
  enabled: z.boolean()
30194
30229
  });
30195
30230
  /**
30196
- * What a camera's onboard detections actually CARRY.
30231
+ * WHEN a camera's onboard detections carry geometry.
30197
30232
  *
30198
- * `boxed` — the firmware ships a bounding box with the class, so a detection is
30199
- * a subject the pipeline can track, crop and score.
30200
- * `flag-only` — the firmware ships the class and nothing else. The pipeline
30201
- * needs geometry to make a subject out of it, so such a push reaches the
30202
- * tracker as motion and no further. On Reolink this is every battery camera:
30203
- * the boxes ride the BcMedia sub-stream, which a battery camera never attaches.
30233
+ * - `boxed` — always. The provider holds a standing channel for the boxes, so
30234
+ * a detection is a trackable subject whenever the camera sees one.
30235
+ * - `while-streaming` — only while some stream of this camera is already open.
30236
+ * The boxes ride the video's own side-channel rather than a feed of their
30237
+ * own, so they cost nothing and they exist only when something is pulling.
30238
+ * On Reolink this is every BATTERY camera: a persistent second feed is real
30239
+ * radio drain, but a camera that is awake is awake precisely because
30240
+ * something is in front of it, and its stream is already being pulled.
30241
+ * - `flag-only` — never. The firmware ships the class and nothing else; the
30242
+ * pipeline needs geometry to make a subject, so such a push reaches the
30243
+ * tracker as motion and no further.
30204
30244
  *
30205
30245
  * Reported and not inferred, because the operator's question in front of the
30206
- * toggle is "what do I get", and "a class with no box" and "a subject" are
30207
- * different answers (D14: the derived form is only as honest as `getOptions`).
30246
+ * picker is "what do I get", and these are three different answers (D14: the
30247
+ * derived form is only as honest as `getOptions`).
30208
30248
  */
30209
- var NativeObjectGeometryEnum = z.enum(["boxed", "flag-only"]);
30249
+ var NativeObjectGeometryEnum = z.enum([
30250
+ "boxed",
30251
+ "while-streaming",
30252
+ "flag-only"
30253
+ ]);
30210
30254
  var NativeObjectDetectionOptionsSchema = z.object({
30211
30255
  /** Classes this firmware can detect — the same list the status reports. */
30212
30256
  supportedClasses: z.array(NativeObjectClassEnum).readonly(),
@@ -30223,11 +30267,6 @@ var nativeObjectDetectionCapability = {
30223
30267
  deviceNative: true,
30224
30268
  mode: "singleton",
30225
30269
  deviceTypes: [DeviceType.Camera],
30226
- deviceConfig: { ui: {
30227
- kind: "derived-form",
30228
- builderId: "native-object-detection",
30229
- tab: "motion"
30230
- } },
30231
30270
  methods: {
30232
30271
  getOptions: method(z.object({ deviceId: z.number() }), NativeObjectDetectionOptionsSchema),
30233
30272
  setSettings: method(z.object({
package/dist/index.js CHANGED
@@ -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-D3lJV9M7.js");
3
+ const require_dist = require("./dist-DaSCLJVH.js");
4
4
  const require_builtins_alerts_alerts_addon = require("./builtins/alerts/alerts.addon.js");
5
5
  require("./builtins/alerts/index.js");
6
6
  const require_formatter = require("./formatter-DqAKDlvN.js");
@@ -29,7 +29,7 @@ const require_event_loop_stall_monitor = require("./event-loop-stall-monitor-CAs
29
29
  const require_tls$1 = require("./tls-BFs4PzoW.js");
30
30
  const require_manifest_system_deps = require("./manifest-system-deps-CrSP0Kkp.js");
31
31
  const require_resource_monitor = require("./resource-monitor-LVE1BoLs.js");
32
- const require_custom_action_registry = require("./custom-action-registry-CWFK5UDj.js");
32
+ const require_custom_action_registry = require("./custom-action-registry-DG-QIWxd.js");
33
33
  let zod = require("zod");
34
34
  let node_crypto = require("node:crypto");
35
35
  let _camstack_types_node = require("@camstack/types/node");
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM$1, r as __exportAll, t as __commonJSMin$1 } from "./chunk-CNf5ZN-e.mjs";
2
- import { A as addonSettingsCapability, Dt as procedureAuthKey, Ft as scopesAllowDeviceCap, Jt as errMsg$1, Mt as resolveMethodAuth, Pt as scopesAllowAddon, Qt as DEVICE_STATUS_METHOD, Xt as DATAPLANE_SECRET_HEADER$1, Zt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, _ as RUNTIME_DEFAULTS, _n as readinessKey, _t as logLevelAtMost, an as asJsonObject$1, at as isArrayOutputSchema, cn as createEvent, ct as isObjectInput, dn as expandCapMethods, dt as isVoidInput, ft as kebabToCamel, gn as parseJsonUnknown, h as METHOD_ACCESS_MAP, hn as parseJsonObject, ln as emitDownForOwnedCaps, mt as lifecycleJobSchema, nn as ReadinessRegistry, on as asNumber, ot as isCollectionArrayMethod, p as LOG_LEVEL_RANK, rn as ReadinessTimeoutError, sn as asString$1, t as ALL_CAPABILITY_DEFINITIONS, tt as extractNestedAddonId, vn as resolveCapMount, vt as looseSchema, wt as objectInputDeclaresAddonId, xn as EventCategory$1, yn as scopeKey } from "./dist-BIvXRexm.mjs";
2
+ import { A as addonSettingsCapability, Dt as procedureAuthKey, Ft as scopesAllowDeviceCap, Jt as errMsg$1, Mt as resolveMethodAuth, Pt as scopesAllowAddon, Qt as DEVICE_STATUS_METHOD, Xt as DATAPLANE_SECRET_HEADER$1, Zt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, _ as RUNTIME_DEFAULTS, _n as readinessKey, _t as logLevelAtMost, an as asJsonObject$1, at as isArrayOutputSchema, cn as createEvent, ct as isObjectInput, dn as expandCapMethods, dt as isVoidInput, ft as kebabToCamel, gn as parseJsonUnknown, h as METHOD_ACCESS_MAP, hn as parseJsonObject, ln as emitDownForOwnedCaps, mt as lifecycleJobSchema, nn as ReadinessRegistry, on as asNumber, ot as isCollectionArrayMethod, p as LOG_LEVEL_RANK, rn as ReadinessTimeoutError, sn as asString$1, t as ALL_CAPABILITY_DEFINITIONS, tt as extractNestedAddonId, vn as resolveCapMount, vt as looseSchema, wt as objectInputDeclaresAddonId, xn as EventCategory$1, yn as scopeKey } from "./dist-at9PGh6X.mjs";
3
3
  import { AlertCenterAddon } from "./builtins/alerts/alerts.addon.mjs";
4
4
  import "./builtins/alerts/index.mjs";
5
5
  import { t as formatLogLine } from "./formatter-B7qW8bPJ.mjs";
@@ -28,7 +28,7 @@ import { _ as fetchJson, a as createFileDataPlaneHandler, c as parseRangeHeader,
28
28
  import { C as registerLanHttpHandler, S as readLanHttpState, _ as DEFAULT_LAN_HTTP_PORT, a as writeTlsMode, b as bindPendingLanHttp, c as loadTlsCert, d as collectCertIdentity, f as CA_VALIDITY_DAYS, g as evaluateExistingCert, h as SERVER_AUTH_OID, i as writeExtraSans, l as reissueTlsLeaf, m as MAX_LEAF_VALIDITY_DAYS, n as readTlsAccessStatus, o as validateUploadedTls, p as LEAF_RENEWAL_WINDOW_DAYS, r as readTlsMode, s as ensureTlsCert, t as readExtraSans, u as CA_COMMON_NAME, v as allFamiliesListenHost, x as closeLanHttp, y as applyLanHttp } from "./tls-2xbgg78V.mjs";
29
29
  import { $ as buildUdsNativeCapProxy, $t as ARRAY_BUFFER_CENSUS_THRESHOLD_MB, A as createUdsLoggerWithControl, An as recordSocketFrame, At as HUB_MAIN_HEAP_WATCH_LABEL, B as readMoleculerFanoutMode, Bn as diffCapActionCensus, Bt as createLoopDelayMeter, C as ipcParentLink, Cn as createSocketPlaneMeter, Ct as runNpm, D as createUdsEventBus, Dn as readSocketQueues, Dt as HEAP_RECLAIM_TRIGGER_MB, E as createUdsEventBridge, En as formatSocketPlane, Et as HEAP_RECLAIM_STEADY_STATE_INTERVAL_MS, F as CapRouteError, Fn as CAP_ACTION_UNLABELLED, Ft as RUNNER_HEAP_WATCH_INTERVAL_MS, G as createLocalTransport, Gn as formatEventPlane, Gt as parseRssBudgetMb, H as PARENT_ROUTED_PROVIDER_ADDON_ID, Hn as createEventPlaneMeter, Ht as describeRss, I as classifyCapRoute, In as EMPTY_CAP_ACTION_READING, It as RUNNER_RSS_BUDGET_ENV, J as SocketChannel, Jt as startHeapWatch, K as UdsLocalTransportClient, Kt as reclaimIntervalMs, L as LocalChildClient, Ln as MAX_CAP_ACTIONS_PER_PEER, Lt as ZERO_LOOP_DELAY, M as AGENT_CAP_FWD_SERVICE, Mn as socketDirectionBytes, Mt as HUB_RSS_BUDGET_ENV, N as CapRouteResolver, Nn as socketDirectionMessages, Nt as RSS_BUDGET_REANNOUNCE_MIN_MS, O as udsChildLogToWorkerEntry, On as EMPTY_SOCKET_DIRECTION, Ot as HEAP_WATCH_INTERVAL_MS, P as callWithServiceDiscovery, Pn as CAP_ACTION_OVERFLOW_LABEL, Pt as RSS_BUDGET_RELEASE_RATIO, Q as buildNativeCapProxy, Qt as ARRAY_BUFFER_CENSUS_SUSTAIN_MS, R as LocalChildRegistry, Rn as capActionLabel, Rt as buildHeapSample, S as buildLinkChain, Sn as SOCKET_QUEUE_TOP_N, St as resolveNpmInvocation, T as createParentUnownedCallHandler, Tn as diffSocketPlane, Tt as HEAP_RECLAIM_MIN_INTERVAL_MS, U as __resetCapUsageRegistryForTests, Un as createEventPlaneReader, Ut as hubMainRssBudget, V as CapUsageRegistry, Vn as EVENT_PLANE_TOP_N, Vt as createV8Reclaimer, W as getCapUsageRegistry, Wn as diffEventPlane, Wt as nextRssBudgetState, X as FrameDecoder, Xt as strandedMb, Y as localEndpointPath, Yt as startRunnerHeapWatch, Z as encodeFrame, Zt as ARRAY_BUFFER_CENSUS_COOLDOWN_MS, _ as AddonDepsManager, _n as MESH_QUEUE_TOP_N, _t as CapabilityUnavailableError, a as createUdsAddonContext, an as DECISIVE_HEAP_SPACES, at as createAddonService, b as brokerCallForCap, bn as EMPTY_SOCKET_PLANE_BASELINE, bt as resolveAddonClass, c as getOrInitReadinessRegistryForClient, cn as formatHeapSpaces, ct as capActionName, d as clusterEventTopic, dn as selectReportedSpaces, dt as capServiceName, en as ARRAY_BUFFER_RELEASE_MIN_DROP_RATIO, et as createBrokerDeviceManagerApi, f as getBrokerEventBus, fn as OUTBOUND_QUEUE_COOLDOWN_MS, ft as parseCapAction, g as subscribePassthrough, gn as formatOutboundQueueVerdict, gt as CapabilityHandle, h as setNodeEventInterest, hn as createOutboundQueueGate, ht as DeviceRegistry, i as createAddonContext, in as isArrayBufferCensusReport, j as AGENT_CAP_FWD_ACTION, jn as sampleSocketDirection, jt as HUB_MAIN_RSS_BUDGET_MB, k as createUdsLogger, kn as createSocketDirectionCounters, kt as HEAP_WATCH_WARN_RATIO, l as setHubConnected, ln as heapSpaceField, lt as capActionSuffix, m as registerEventBusService, mn as OUTBOUND_QUEUE_THRESHOLD_BYTES, mt as serializeTypedArrays, n as installManifestPythonDeps, nn as createInspectorArrayBufferCensus, o as getWorkerDeviceRegistry, on as HEAP_SPACE_REPORT_MIN_MB, ot as validateProviderRegistrations, p as getMoleculerEventStats, pn as OUTBOUND_QUEUE_SUSTAIN_MS, pt as deserializeTypedArrays, q as UdsLocalTransportServer, qt as shouldReclaim, r as adaptBrokerToCluster, rn as formatArrayBufferCensus, rt as mountNativeCapService, s as getOrInitReadinessRegistry, sn as emitHeapDiagnosticReport, st as NATIVE_PROVIDER_SERVICE_INFIX, t as installManifestSystemDeps, tn as createArrayBufferCensusGate, u as EVENT_TOPIC_PREFIX, un as readHeapSpaces, ut as capBareAction, v as createKernelHwAccel, vn as createMeshQueueReader, vt as copyBundledNativeModules, w as localProviderLink, wn as createSocketPlaneReader, wt as createAddonDataPlaneFacility, x as brokerTransportLink, xn as SOCKET_PLANE_TOP_N, xt as buildNpmChildEnv, y as resolveHwAccel, yn as formatMeshQueue, yt as installManifestNativeDeps, z as UDS_NO_ROUTE_PREFIX, zn as createCapActionCensus, zt as createDeferredHeapWatchSink } from "./manifest-system-deps-BEj9Dpu1.mjs";
30
30
  import { n as getSinglePidStats, t as getPidStats } from "./resource-monitor-Vp0bPV3U.mjs";
31
- import { t as CustomActionRegistry } from "./custom-action-registry-CFHYDHAu.mjs";
31
+ import { t as CustomActionRegistry } from "./custom-action-registry-CVsXD56p.mjs";
32
32
  import { z } from "zod";
33
33
  import { createHash, randomUUID, timingSafeEqual } from "node:crypto";
34
34
  import { PYTHON_VERSION, buildBinaryPath, downloadBinary, ensureBinary, ensureFfmpeg, ensurePython, findInPath, getFfmpegDownloadUrl, getPlatformInfo, getPythonDownloadUrl, installPythonPackages, installPythonRequirements } from "@camstack/types/node";
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-D3lJV9M7.js");
1
+ const require_dist = require("./dist-DaSCLJVH.js");
2
2
  //#region src/builtins/sqlite-storage/retired-settings-keys.ts
3
3
  /**
4
4
  * Is THIS node the one whose settings store is the cluster's authority?
@@ -1,4 +1,4 @@
1
- import { an as asJsonObject } from "./dist-BIvXRexm.mjs";
1
+ import { an as asJsonObject } from "./dist-at9PGh6X.mjs";
2
2
  //#region src/builtins/sqlite-storage/retired-settings-keys.ts
3
3
  /**
4
4
  * Is THIS node the one whose settings store is the cluster's authority?
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/system",
3
- "version": "1.2.233",
3
+ "version": "1.2.234",
4
4
  "description": "Core addon for CamStack — builtins, pipeline, process management, auth, logging, events",
5
5
  "keywords": [
6
6
  "camstack",
@@ -1,3 +0,0 @@
1
- import { ConfigUISchema, NativeObjectDetectionOptions, NativeObjectDetectionSettingsPatch, NativeObjectDetectionStatus } from '@camstack/types';
2
- export declare function buildNativeObjectDetectionConfigSchema(options: NativeObjectDetectionOptions, status: NativeObjectDetectionStatus | null): ConfigUISchema | null;
3
- export declare function parseNativeObjectDetectionFormPatch(patch: Record<string, unknown>): NativeObjectDetectionSettingsPatch;