@camstack/system 1.2.50 → 1.2.52

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 (50) 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 +23 -2
  38. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +23 -2
  39. package/dist/builtins/sqlite-storage/vector-index.d.ts +25 -0
  40. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  41. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  42. package/dist/builtins/system-config/system-config.addon.js +1 -1
  43. package/dist/builtins/system-config/system-config.addon.mjs +1 -1
  44. package/dist/builtins/winston-logging/index.js +1 -1
  45. package/dist/builtins/winston-logging/index.mjs +1 -1
  46. package/dist/{dist-BXqMB8EK.mjs → dist-C-I9UG-Y.mjs} +19 -0
  47. package/dist/{dist-DXLXjrho.js → dist-DHU3Uq9p.js} +19 -0
  48. package/dist/index.js +1 -1
  49. package/dist/index.mjs +1 -1
  50. package/package.json +1 -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
8
8
  let node_fs = require("node:fs");
9
9
  node_fs = require_chunk.__toESM(node_fs);
@@ -1,4 +1,4 @@
1
- import { Rt as EventCategory, dt as errMsg, ft as BaseAddon, m as addonPagesCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, dt as errMsg, ft as BaseAddon, m as addonPagesCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
3
3
  import * as fs from "node:fs";
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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
8
8
  let node_fs = require("node:fs");
9
9
  node_fs = require_chunk.__toESM(node_fs);
@@ -1,4 +1,4 @@
1
- import { Rt as EventCategory, dt as errMsg, ft as BaseAddon, g as addonWidgetsCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, dt as errMsg, ft as BaseAddon, g as addonWidgetsCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
3
3
  import * as fs from "node:fs";
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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { Rt as EventCategory, Tt as createEvent, _ as alertsCapability, dt as errMsg, ft as BaseAddon, n as AlertSchema } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, Tt as createEvent, _ as alertsCapability, dt as errMsg, ft as BaseAddon, n as AlertSchema } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_fs = require("node:fs");
8
8
  let node_fs$1 = require_chunk.__toESM(node_fs, 1);
9
9
  node_fs = require_chunk.__toESM(node_fs);
@@ -1,4 +1,4 @@
1
- import { Rt as EventCategory, b as backupCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, b as backupCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.mjs";
2
2
  import * as fs from "node:fs";
3
3
  import Kt from "node:fs";
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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { W as logDestinationCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { W as logDestinationCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
3
+ const require_dist = require("../../dist-DHU3Uq9p.js");
4
4
  let node_path = require("node:path");
5
5
  node_path = require_chunk.__toESM(node_path);
6
6
  let node_crypto = require("node:crypto");
@@ -1,5 +1,5 @@
1
1
  import { o as __toESM } from "../../chunk-CNf5ZN-e.mjs";
2
- import { S as coreBlocksCapability, ft as BaseAddon, o as CoreBlockSchema } from "../../dist-BXqMB8EK.mjs";
2
+ import { S as coreBlocksCapability, ft as BaseAddon, o as CoreBlockSchema } from "../../dist-C-I9UG-Y.mjs";
3
3
  import * as path$1 from "node:path";
4
4
  import { randomUUID } from "node:crypto";
5
5
  import * as fs 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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let _camstack_types_node = require("@camstack/types/node");
8
8
  let zod = require("zod");
9
9
  let node_crypto = require("node:crypto");
@@ -1,4 +1,4 @@
1
- import { At as isDeviceConfigCap, D as deviceStateCapability, E as deviceManagerCapability, I as getByPath, J as normalizeUnit, Lt as sleep, M as enumerateSchemaFields, N as evaluateLinkExpression, O as deviceStatusCapability, Rt as EventCategory, X as parseStreamParamsFormPatch, _t as DeviceRole, a as CAP_NAMES_WITH_STATUS, ct as validateExpressionSource, dt as errMsg, et as setByPath, ft as BaseAddon, gt as DeviceFeature, j as enumerateItemArrayFields, ot as toExpressionValue, s as DeviceStatusSchema, t as ALL_CAPABILITY_DEFINITIONS, u as STREAM_PROFILE_META, v as applyTransform, vt as DeviceType, x as buildStreamParamsConfigSchema, xt as WELL_KNOWN_TAB_MAP } from "../../dist-BXqMB8EK.mjs";
1
+ import { At as isDeviceConfigCap, D as deviceStateCapability, E as deviceManagerCapability, I as getByPath, J as normalizeUnit, Lt as sleep, M as enumerateSchemaFields, N as evaluateLinkExpression, O as deviceStatusCapability, Rt as EventCategory, X as parseStreamParamsFormPatch, _t as DeviceRole, a as CAP_NAMES_WITH_STATUS, ct as validateExpressionSource, dt as errMsg, et as setByPath, ft as BaseAddon, gt as DeviceFeature, j as enumerateItemArrayFields, ot as toExpressionValue, s as DeviceStatusSchema, t as ALL_CAPABILITY_DEFINITIONS, u as STREAM_PROFILE_META, v as applyTransform, vt as DeviceType, x as buildStreamParamsConfigSchema, xt as WELL_KNOWN_TAB_MAP } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { canonicalDeviceFingerprint } from "@camstack/types/node";
3
3
  import { z } from "zod";
4
4
  import { randomUUID } from "node:crypto";
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { Rt as EventCategory, Tt as createEvent, dt as errMsg, ft as BaseAddon, k as doorbellCapability, vt as DeviceType } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, Tt as createEvent, dt as errMsg, ft as BaseAddon, k as doorbellCapability, vt as DeviceType } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { W as logDestinationCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { W as logDestinationCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
3
+ const require_dist = require("../../dist-DHU3Uq9p.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 { Rt as EventCategory, Tt as createEvent, dt as errMsg, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, Tt as createEvent, dt as errMsg, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { d as ScopedTokenSchema, ft as BaseAddon, p as UserRecordSchema, r as ApiKeyRecordSchema, st as userManagementCapability, y as authProviderCapability } from "../../dist-BXqMB8EK.mjs";
2
+ import { d as ScopedTokenSchema, ft as BaseAddon, p as UserRecordSchema, r as ApiKeyRecordSchema, st as userManagementCapability, y as authProviderCapability } from "../../dist-C-I9UG-Y.mjs";
3
3
  import * as crypto$1 from "node:crypto";
4
4
  import { randomUUID } 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-DXLXjrho.js");
3
+ const require_dist = require("../../dist-DHU3Uq9p.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 { Rt as EventCategory, U as localNetworkCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, U as localNetworkCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { W as logDestinationCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { W as logDestinationCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_fs = require("node:fs");
8
8
  node_fs = require_chunk.__toESM(node_fs);
9
9
  let node_child_process = require("node:child_process");
@@ -1,4 +1,4 @@
1
- import { Rt as EventCategory, Tt as createEvent, ft as BaseAddon, q as metricsProviderCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, Tt as createEvent, ft as BaseAddon, q as metricsProviderCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import * as fs from "node:fs";
3
3
  import { execFile, execFileSync } from "node:child_process";
4
4
  import { promisify } from "node:util";
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_fs = require("node:fs");
8
8
  node_fs = require_chunk.__toESM(node_fs);
9
9
  let node_child_process = require("node:child_process");
@@ -1,5 +1,5 @@
1
1
  import { o as __toESM } from "../../chunk-CNf5ZN-e.mjs";
2
- import { $ as scoreRuntimes, A as enumerateInferenceDevices, Dt as emitReadiness, Rt as EventCategory, Z as platformProbeCapability, dt as errMsg, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
2
+ import { $ as scoreRuntimes, A as enumerateInferenceDevices, Dt as emitReadiness, Rt as EventCategory, Z as platformProbeCapability, dt as errMsg, ft as BaseAddon } from "../../dist-C-I9UG-Y.mjs";
3
3
  import * as fs from "node:fs";
4
4
  import { execFile } from "node:child_process";
5
5
  import { promisify } from "node:util";
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.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 { Rt as EventCategory, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { Rt as EventCategory, ft as BaseAddon } from "../../dist-C-I9UG-Y.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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_child_process = require("node:child_process");
8
8
  //#region src/builtins/snapshot/snapshot-coalescing.ts
9
9
  /**
@@ -1,4 +1,4 @@
1
- import { at as streamQualityLabel, dt as errMsg, ft as BaseAddon, gt as DeviceFeature, i as BatteryStatusSchema, jt as nodePin, nt as snapshotCapability, vt as DeviceType } from "../../dist-BXqMB8EK.mjs";
1
+ import { at as streamQualityLabel, dt as errMsg, ft as BaseAddon, gt as DeviceFeature, i as BatteryStatusSchema, jt as nodePin, nt as snapshotCapability, vt as DeviceType } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { execFile, spawn } from "node:child_process";
3
3
  //#region src/builtins/snapshot/snapshot-coalescing.ts
4
4
  /**
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_fs = require("node:fs");
8
8
  node_fs = require_chunk.__toESM(node_fs);
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { F as filesystemBrowseCapability, ft as BaseAddon, it as storageProviderCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { F as filesystemBrowseCapability, ft as BaseAddon, it as storageProviderCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import * as fs from "node:fs";
3
3
  import * as path$1 from "node:path";
4
4
  import { basename, dirname, join, resolve, sep } 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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let better_sqlite3 = require("better-sqlite3");
9
9
  better_sqlite3 = require_chunk.__toESM(better_sqlite3);
@@ -995,11 +995,26 @@ var SqliteVectorIndex = class {
995
995
  }
996
996
  return deleted;
997
997
  }
998
+ /**
999
+ * Delete every row the filter admits.
1000
+ *
1001
+ * When every clause is pushable, this is ONE bulk statement. When the filter
1002
+ * touches a non-promoted key it falls back to select-then-delete, because
1003
+ * those clauses live in the JSON remainder and only JS can evaluate them —
1004
+ * and an unapplied clause would delete rows the caller wanted kept, which is
1005
+ * the one failure mode a delete must not have.
1006
+ */
998
1007
  async deleteByFilter(index, filter) {
1008
+ await this.resolveSpec(index);
1009
+ const sqlFilter = buildSqlFilter(filter);
1010
+ if (isFullyPushable(filter)) return (await this.store.deleteWhere({
1011
+ collection: collectionFor(index),
1012
+ filter: sqlFilter
1013
+ })).deleted;
999
1014
  const ids = (await this.store.query({
1000
1015
  collection: collectionFor(index),
1001
1016
  filter: {
1002
- ...buildSqlFilter(filter),
1017
+ ...sqlFilter,
1003
1018
  limit: MAX_SCAN_ROWS
1004
1019
  }
1005
1020
  })).filter((r) => {
@@ -1101,6 +1116,12 @@ function readRow(data) {
1101
1116
  function isMetadata(value) {
1102
1117
  return typeof value === "object" && value !== null && !Array.isArray(value);
1103
1118
  }
1119
+ /** True when every clause of the filter maps to a promoted column. */
1120
+ function isFullyPushable(filter) {
1121
+ for (const key of Object.keys(filter.equals ?? {})) if (!isPromoted(key)) return false;
1122
+ for (const key of Object.keys(filter.between ?? {})) if (!isPromoted(key)) return false;
1123
+ return true;
1124
+ }
1104
1125
  /** Narrow a stored metric string back to the enum. */
1105
1126
  function isMetric(value) {
1106
1127
  return value === "cosine" || value === "dot" || value === "euclidean";
@@ -1,4 +1,4 @@
1
- import { C as cosineSimilarity, Nt as parseJsonUnknown, St as asJsonObject, T as decodeVectorBase64, dt as errMsg, ft as BaseAddon, l as RUNTIME_DEFAULTS, lt as vectorDimFromBase64, ut as vectorStoreCapability, w as dataStoreProviderCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { C as cosineSimilarity, Nt as parseJsonUnknown, St as asJsonObject, T as decodeVectorBase64, dt as errMsg, ft as BaseAddon, l as RUNTIME_DEFAULTS, lt as vectorDimFromBase64, ut as vectorStoreCapability, w as dataStoreProviderCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import Database from "better-sqlite3";
4
4
  //#region src/builtins/sqlite-storage/filter-compiler.ts
@@ -989,11 +989,26 @@ var SqliteVectorIndex = class {
989
989
  }
990
990
  return deleted;
991
991
  }
992
+ /**
993
+ * Delete every row the filter admits.
994
+ *
995
+ * When every clause is pushable, this is ONE bulk statement. When the filter
996
+ * touches a non-promoted key it falls back to select-then-delete, because
997
+ * those clauses live in the JSON remainder and only JS can evaluate them —
998
+ * and an unapplied clause would delete rows the caller wanted kept, which is
999
+ * the one failure mode a delete must not have.
1000
+ */
992
1001
  async deleteByFilter(index, filter) {
1002
+ await this.resolveSpec(index);
1003
+ const sqlFilter = buildSqlFilter(filter);
1004
+ if (isFullyPushable(filter)) return (await this.store.deleteWhere({
1005
+ collection: collectionFor(index),
1006
+ filter: sqlFilter
1007
+ })).deleted;
993
1008
  const ids = (await this.store.query({
994
1009
  collection: collectionFor(index),
995
1010
  filter: {
996
- ...buildSqlFilter(filter),
1011
+ ...sqlFilter,
997
1012
  limit: MAX_SCAN_ROWS
998
1013
  }
999
1014
  })).filter((r) => {
@@ -1095,6 +1110,12 @@ function readRow(data) {
1095
1110
  function isMetadata(value) {
1096
1111
  return typeof value === "object" && value !== null && !Array.isArray(value);
1097
1112
  }
1113
+ /** True when every clause of the filter maps to a promoted column. */
1114
+ function isFullyPushable(filter) {
1115
+ for (const key of Object.keys(filter.equals ?? {})) if (!isPromoted(key)) return false;
1116
+ for (const key of Object.keys(filter.between ?? {})) if (!isPromoted(key)) return false;
1117
+ return true;
1118
+ }
1098
1119
  /** Narrow a stored metric string back to the enum. */
1099
1120
  function isMetric(value) {
1100
1121
  return value === "cosine" || value === "dot" || value === "euclidean";
@@ -35,6 +35,20 @@ export interface VectorBackend {
35
35
  collection: string;
36
36
  filter?: StoreQueryFilter;
37
37
  }): Promise<readonly StoreRecord[]>;
38
+ /**
39
+ * Bulk delete in ONE statement.
40
+ *
41
+ * `deleteByFilter` used to collect ids and delete them one at a time, which
42
+ * on a live index of 8,686 rows blew through a 60s UDS timeout mid-way and
43
+ * left the index half-emptied. The engine has always had this; using it is
44
+ * the difference between one statement and eight thousand.
45
+ */
46
+ deleteWhere(input: {
47
+ collection: string;
48
+ filter: StoreQueryFilter;
49
+ }): Promise<{
50
+ deleted: number;
51
+ }>;
38
52
  }
39
53
  /** Column spec accepted by `declareCollection`. */
40
54
  export interface TableColumn {
@@ -135,6 +149,15 @@ export declare class SqliteVectorIndex {
135
149
  metadata: VectorMetadata;
136
150
  }>>;
137
151
  deleteByIds(index: string, ids: readonly string[]): Promise<number>;
152
+ /**
153
+ * Delete every row the filter admits.
154
+ *
155
+ * When every clause is pushable, this is ONE bulk statement. When the filter
156
+ * touches a non-promoted key it falls back to select-then-delete, because
157
+ * those clauses live in the JSON remainder and only JS can evaluate them —
158
+ * and an unapplied clause would delete rows the caller wanted kept, which is
159
+ * the one failure mode a delete must not have.
160
+ */
138
161
  deleteByFilter(index: string, filter: VectorFilter): Promise<number>;
139
162
  stats(index: string): Promise<{
140
163
  backend: string;
@@ -167,6 +190,8 @@ export declare function buildSqlFilter(filter: VectorFilter | undefined): {
167
190
  * unapplied filter returns rows the caller will treat as matches.
168
191
  */
169
192
  export declare function passesUnpushedFilter(row: StoredRow, filter: VectorFilter | undefined): boolean;
193
+ /** True when every clause of the filter maps to a promoted column. */
194
+ export declare function isFullyPushable(filter: VectorFilter): boolean;
170
195
  /** Score two vectors under the index's metric. Higher is nearer in every case. */
171
196
  export declare function scoreFor(metric: VectorMetric, a: Float32Array, b: Float32Array): number;
172
197
  export {};
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  let node_path = require("node:path");
8
8
  node_path = require_chunk.__toESM(node_path);
9
9
  let node_fs_promises = require("node:fs/promises");
@@ -1,4 +1,4 @@
1
- import { Mt as parseJsonObject, f as StorageLocationTypeSchema, ft as BaseAddon, rt as storageCapability, tt as settingsStoreCapability } from "../../dist-BXqMB8EK.mjs";
1
+ import { Mt as parseJsonObject, f as StorageLocationTypeSchema, ft as BaseAddon, rt as storageCapability, tt as settingsStoreCapability } from "../../dist-C-I9UG-Y.mjs";
2
2
  import * as path$1 from "node:path";
3
3
  import * as fs from "node:fs/promises";
4
4
  import { buildStorageLocationRegistry } from "@camstack/system";
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  //#region src/builtins/system-config/system-config.addon.ts
8
8
  /**
9
9
  * Built-in `system-config` addon — Phase 4 of the settings redesign.
@@ -1,4 +1,4 @@
1
- import { dt as errMsg, ft as BaseAddon, kt as hydrateSchema } from "../../dist-BXqMB8EK.mjs";
1
+ import { dt as errMsg, ft as BaseAddon, kt as hydrateSchema } from "../../dist-C-I9UG-Y.mjs";
2
2
  //#region src/builtins/system-config/system-config.addon.ts
3
3
  /**
4
4
  * Built-in `system-config` addon — Phase 4 of the settings redesign.
@@ -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-DXLXjrho.js");
6
+ const require_dist = require("../../dist-DHU3Uq9p.js");
7
7
  const require_formatter = require("../../formatter-DqAKDlvN.js");
8
8
  let node_path = require("node:path");
9
9
  node_path = require_chunk.__toESM(node_path);
@@ -1,4 +1,4 @@
1
- import { W as logDestinationCapability, ft as BaseAddon } from "../../dist-BXqMB8EK.mjs";
1
+ import { W as logDestinationCapability, ft as BaseAddon } from "../../dist-C-I9UG-Y.mjs";
2
2
  import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
3
3
  import * as path$1 from "node:path";
4
4
  import path from "node:path";
@@ -12836,6 +12836,15 @@ var RebuildObjectEmbeddingsInput = z.object({
12836
12836
  /** Stop after this many tracks; the result reports whether more remain. */
12837
12837
  maxTracks: z.number().int().positive().optional()
12838
12838
  });
12839
+ /**
12840
+ * Result of emptying the CLIP index.
12841
+ *
12842
+ * The clean slate before a policy change: a new crop margin or encoder model
12843
+ * leaves two feature spaces in one index whose cosine scores are not
12844
+ * comparable, so wiping and rebuilding is the only way to be sure every vector
12845
+ * means the same thing.
12846
+ */
12847
+ var WipeObjectEmbeddingsResultSchema = z.object({ deleted: z.number() });
12839
12848
  var RebuildObjectEmbeddingsResultSchema = z.object({
12840
12849
  scanned: z.number(),
12841
12850
  rebuilt: z.number(),
@@ -13120,6 +13129,10 @@ var pipelineAnalyticsCapability = {
13120
13129
  * `minScore`, sorted descending by score.
13121
13130
  */
13122
13131
  searchObjectEvents: method(SearchObjectEventsInput, z.array(ScoredObjectEventSchema).readonly()),
13132
+ wipeObjectEmbeddings: method(z.void(), WipeObjectEmbeddingsResultSchema, {
13133
+ kind: "mutation",
13134
+ auth: "admin"
13135
+ }),
13123
13136
  rebuildObjectEmbeddings: method(RebuildObjectEmbeddingsInput, RebuildObjectEmbeddingsResultSchema, {
13124
13137
  kind: "mutation",
13125
13138
  auth: "admin",
@@ -28045,6 +28058,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
28045
28058
  addonId: null,
28046
28059
  access: "delete"
28047
28060
  },
28061
+ "pipelineAnalytics.wipeObjectEmbeddings": {
28062
+ capName: "pipeline-analytics",
28063
+ capScope: "device",
28064
+ addonId: null,
28065
+ access: "delete"
28066
+ },
28048
28067
  "pipelineExecutor.cacheFrameInPool": {
28049
28068
  capName: "pipeline-executor",
28050
28069
  capScope: "system",
@@ -12836,6 +12836,15 @@ var RebuildObjectEmbeddingsInput = zod.z.object({
12836
12836
  /** Stop after this many tracks; the result reports whether more remain. */
12837
12837
  maxTracks: zod.z.number().int().positive().optional()
12838
12838
  });
12839
+ /**
12840
+ * Result of emptying the CLIP index.
12841
+ *
12842
+ * The clean slate before a policy change: a new crop margin or encoder model
12843
+ * leaves two feature spaces in one index whose cosine scores are not
12844
+ * comparable, so wiping and rebuilding is the only way to be sure every vector
12845
+ * means the same thing.
12846
+ */
12847
+ var WipeObjectEmbeddingsResultSchema = zod.z.object({ deleted: zod.z.number() });
12839
12848
  var RebuildObjectEmbeddingsResultSchema = zod.z.object({
12840
12849
  scanned: zod.z.number(),
12841
12850
  rebuilt: zod.z.number(),
@@ -13120,6 +13129,10 @@ var pipelineAnalyticsCapability = {
13120
13129
  * `minScore`, sorted descending by score.
13121
13130
  */
13122
13131
  searchObjectEvents: method(SearchObjectEventsInput, zod.z.array(ScoredObjectEventSchema).readonly()),
13132
+ wipeObjectEmbeddings: method(zod.z.void(), WipeObjectEmbeddingsResultSchema, {
13133
+ kind: "mutation",
13134
+ auth: "admin"
13135
+ }),
13123
13136
  rebuildObjectEmbeddings: method(RebuildObjectEmbeddingsInput, RebuildObjectEmbeddingsResultSchema, {
13124
13137
  kind: "mutation",
13125
13138
  auth: "admin",
@@ -28045,6 +28058,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
28045
28058
  addonId: null,
28046
28059
  access: "delete"
28047
28060
  },
28061
+ "pipelineAnalytics.wipeObjectEmbeddings": {
28062
+ capName: "pipeline-analytics",
28063
+ capScope: "device",
28064
+ addonId: null,
28065
+ access: "delete"
28066
+ },
28048
28067
  "pipelineExecutor.cacheFrameInPool": {
28049
28068
  capName: "pipeline-executor",
28050
28069
  capScope: "system",
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-DXLXjrho.js");
3
+ const require_dist = require("./dist-DHU3Uq9p.js");
4
4
  const require_model_download_service = require("./model-download-service-hf0ookyy.js");
5
5
  const require_manifest_python_deps = require("./manifest-python-deps-BqE5j0-O.js");
6
6
  const require_resource_monitor = require("./resource-monitor-DNNomR-i.js");
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 { B as isVoidInput, Ct as asNumber, Et as emitDownForOwnedCaps, Ft as resolveCapMount, G as logLevelAtMost, H as lifecycleJobSchema, It as scopeKey, K as looseSchema, L as isArrayOutputSchema, Mt as parseJsonObject, Nt as parseJsonUnknown$1, Ot as expandCapMethods, P as extractNestedAddonId, Pt as readinessKey, Q as procedureAuthKey, R as isCollectionArrayMethod, Rt as EventCategory$1, St as asJsonObject$1, Tt as createEvent, V as kebabToCamel, Y as objectInputDeclaresAddonId, bt as ReadinessTimeoutError, c as METHOD_ACCESS_MAP, dt as errMsg$1, h as addonSettingsCapability, ht as DEVICE_STATUS_METHOD, l as RUNTIME_DEFAULTS, mt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, pt as DATAPLANE_SECRET_HEADER$1, t as ALL_CAPABILITY_DEFINITIONS, wt as asString$1, yt as ReadinessRegistry, z as isObjectInput } from "./dist-BXqMB8EK.mjs";
2
+ import { B as isVoidInput, Ct as asNumber, Et as emitDownForOwnedCaps, Ft as resolveCapMount, G as logLevelAtMost, H as lifecycleJobSchema, It as scopeKey, K as looseSchema, L as isArrayOutputSchema, Mt as parseJsonObject, Nt as parseJsonUnknown$1, Ot as expandCapMethods, P as extractNestedAddonId, Pt as readinessKey, Q as procedureAuthKey, R as isCollectionArrayMethod, Rt as EventCategory$1, St as asJsonObject$1, Tt as createEvent, V as kebabToCamel, Y as objectInputDeclaresAddonId, bt as ReadinessTimeoutError, c as METHOD_ACCESS_MAP, dt as errMsg$1, h as addonSettingsCapability, ht as DEVICE_STATUS_METHOD, l as RUNTIME_DEFAULTS, mt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, pt as DATAPLANE_SECRET_HEADER$1, t as ALL_CAPABILITY_DEFINITIONS, wt as asString$1, yt as ReadinessRegistry, z as isObjectInput } from "./dist-C-I9UG-Y.mjs";
3
3
  import { a as downloadModel, c as getModelFilePath, d as contentTypeFor, f as createAuthenticatedFileServer, h as resolveFilePath, i as downloadFile, l as isModelDownloaded, m as parseTokenizedUrl, n as collectModelFiles, o as ensureModel, p as parseRangeHeader, r as deleteModelFromDisk, s as fetchJson, t as ModelDownloadService, u as createFileDataPlaneHandler } from "./model-download-service-Cp9f4dk6.mjs";
4
4
  import { $ as buildNativeCapProxy, A as createHubCapForwardService, B as AGENT_CAP_FWD_ACTION, C as brokerTransportLink, Ct as resolveAddonClass, D as localProviderLink, E as ipcParentLink, F as createUdsLogger, G as callWithServiceDiscovery, H as CapRouteResolver, I as createUdsLoggerWithControl, J as UdsLocalTransportServer, K as createLocalTransport, L as LocalChildClient, M as createUdsEventBridge, N as createUdsEventBus, O as HUB_CAP_FWD_ACTION, P as udsChildLogToWorkerEntry, Q as encodeFrame, R as LocalChildRegistry, S as brokerCallForCap, St as runNpm, T as ipcChildLink, U as CapRouteError, V as AGENT_CAP_FWD_SERVICE, W as classifyCapRoute, X as localEndpointPath, Y as SocketChannel, Z as FrameDecoder, _ as createKernelHwAccel, _t as CapabilityHandle, a as getWorkerDeviceRegistry, b as __resetCapUsageRegistryForTests, bt as installManifestNativeDeps, c as setHubConnected, ct as NATIVE_PROVIDER_SERVICE_INFIX, d as getBrokerEventBus, dt as capBareAction, et as buildUdsNativeCapProxy, f as getMoleculerEventStats, ft as capServiceName, g as AddonDepsManager, gt as DeviceRegistry, h as subscribePassthrough, ht as serializeTypedArrays, i as createUdsAddonContext, it as mountNativeCapService, j as createParentUnownedCallHandler, k as HUB_CAP_FWD_SERVICE, l as EVENT_TOPIC_PREFIX, lt as capActionName, m as setNodeEventInterest, mt as deserializeTypedArrays, n as adaptBrokerToCluster, o as getOrInitReadinessRegistry, ot as createAddonService, p as registerEventBusService, pt as parseCapAction, q as UdsLocalTransportClient, r as createAddonContext, s as getOrInitReadinessRegistryForClient, st as validateProviderRegistrations, t as installManifestPythonDeps, tt as createBrokerDeviceManagerApi, u as clusterEventTopic, ut as capActionSuffix, v as resolveHwAccel, vt as CapabilityUnavailableError, w as buildLinkChain, wt as createAddonDataPlaneFacility, x as getCapUsageRegistry, xt as resolveNpmInvocation, y as CapUsageRegistry, yt as copyBundledNativeModules, z as UDS_NO_ROUTE_PREFIX } from "./manifest-python-deps-Ck4-9K9m.mjs";
5
5
  import { n as getSinglePidStats, t as getPidStats } from "./resource-monitor-BkP504Vq.mjs";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/system",
3
- "version": "1.2.50",
3
+ "version": "1.2.52",
4
4
  "description": "Core addon for CamStack — builtins, pipeline, process management, auth, logging, events",
5
5
  "keywords": [
6
6
  "camstack",