@camstack/system 1.2.441 → 1.2.442

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 (85) hide show
  1. package/dist/addon-runner.js +72 -2
  2. package/dist/addon-runner.mjs +72 -2
  3. package/dist/auth/totp-manager.d.ts +46 -1
  4. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  5. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  6. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  7. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  8. package/dist/builtins/alerts/alerts.addon.d.ts +41 -1
  9. package/dist/builtins/alerts/alerts.addon.js +638 -26
  10. package/dist/builtins/alerts/alerts.addon.mjs +638 -26
  11. package/dist/builtins/alerts/critical-push.d.ts +86 -0
  12. package/dist/builtins/alerts/runner-alert.d.ts +71 -0
  13. package/dist/builtins/autotrack/index.js +1 -1
  14. package/dist/builtins/autotrack/index.mjs +1 -1
  15. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  16. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  17. package/dist/builtins/calendars/calendars.addon.js +1 -1
  18. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  19. package/dist/builtins/camera-grid/index.js +1 -1
  20. package/dist/builtins/camera-grid/index.mjs +1 -1
  21. package/dist/builtins/composer/composer.addon.js +2 -2
  22. package/dist/builtins/composer/composer.addon.mjs +2 -2
  23. package/dist/builtins/console-logging/index.js +1 -1
  24. package/dist/builtins/console-logging/index.mjs +1 -1
  25. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  26. package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
  27. package/dist/builtins/device-manager/device-manager.addon.js +1 -1
  28. package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
  29. package/dist/builtins/hub-forwarder/index.js +1 -1
  30. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  31. package/dist/builtins/keychain/index.js +3 -3
  32. package/dist/builtins/keychain/index.mjs +3 -3
  33. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  34. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  35. package/dist/builtins/local-auth/auth-schema.d.ts +1 -1
  36. package/dist/builtins/local-auth/local-auth.addon.js +226 -17
  37. package/dist/builtins/local-auth/local-auth.addon.mjs +226 -17
  38. package/dist/builtins/local-network/local-network.addon.js +2 -2
  39. package/dist/builtins/local-network/local-network.addon.mjs +2 -2
  40. package/dist/builtins/loki-logging/index.js +1 -1
  41. package/dist/builtins/loki-logging/index.mjs +1 -1
  42. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  43. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  44. package/dist/builtins/platform-probe/index.js +1 -1
  45. package/dist/builtins/platform-probe/index.mjs +1 -1
  46. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  47. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  48. package/dist/builtins/snapshot/index.js +1 -1
  49. package/dist/builtins/snapshot/index.mjs +1 -1
  50. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  51. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  52. package/dist/builtins/sqlite-storage/index.js +1 -1
  53. package/dist/builtins/sqlite-storage/index.mjs +1 -1
  54. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +2 -2
  55. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +2 -2
  56. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  57. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  58. package/dist/builtins/system-config/system-config.addon.js +2 -2
  59. package/dist/builtins/system-config/system-config.addon.mjs +2 -2
  60. package/dist/builtins/winston-logging/index.js +1 -1
  61. package/dist/builtins/winston-logging/index.mjs +1 -1
  62. package/dist/{composition-sources-ByNISOnW.mjs → composition-sources-CftPpY4O.mjs} +1 -1
  63. package/dist/{composition-sources-BG-W2U0d.js → composition-sources-DmSEMtUD.js} +1 -1
  64. package/dist/{constants-DJILnUSb.mjs → constants-2iWQ-Nx-.mjs} +1 -1
  65. package/dist/{constants-UojhAJcm.js → constants-b7kpjuO4.js} +1 -1
  66. package/dist/{device-ca-D8Ri9TVz.mjs → device-ca-BJpYTAPg.mjs} +1 -1
  67. package/dist/{device-ca-196DAEZT.js → device-ca-tKY_ZS9H.js} +1 -1
  68. package/dist/{dist-BiTCcaf-.js → dist-CyIHDLCg.js} +158 -8
  69. package/dist/{dist-BWvkuc31.mjs → dist-DsrQYcLm.mjs} +153 -9
  70. package/dist/file-host-worker.js +1 -1
  71. package/dist/file-host-worker.mjs +1 -1
  72. package/dist/{hub-mdns-ciao-Cnd0bTB9.mjs → hub-mdns-ciao-BS2akjWx.mjs} +1 -1
  73. package/dist/{hub-mdns-ciao-DOBTq8qr.js → hub-mdns-ciao-Da-0NEyr.js} +1 -1
  74. package/dist/index.js +142 -13
  75. package/dist/index.mjs +137 -14
  76. package/dist/kernel/addon-refused-error.d.ts +30 -0
  77. package/dist/kernel/index.d.ts +3 -0
  78. package/dist/kernel/legacy-blob-guard.d.ts +6 -1
  79. package/dist/kernel/moleculer/process-service.d.ts +16 -1
  80. package/dist/kernel/moleculer/runner-refusal.d.ts +27 -0
  81. package/dist/{restore-archive-CfSSjKnA.js → restore-archive-Cdf09dHm.js} +1 -1
  82. package/dist/{restore-archive-4ziluTU3.mjs → restore-archive-RaA3uZ7H.mjs} +1 -1
  83. package/dist/{wal-maintenance-CgZTNWAz.js → wal-maintenance-C-bmkDhm.js} +0 -0
  84. package/dist/{wal-maintenance-B57SAp4a.mjs → wal-maintenance-DE8QrreK.mjs} +0 -0
  85. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import { An as pickAppLinkHub, F as HUB_MDNS_SERVICE_TYPE, I as HUB_MDNS_TXT_KEYS, Ln as resolveAppConnections, Si as EventCategory, U as NetworkTunnelStartedDataSchema, Vn as resolveHubAddressRoles, Wn as resolveNotificationTapAddress, in as isDefaultAppConnectionEndpoint, jr as BaseAddon, l as CAMSTACK_APP_LINK_ORIGIN, mn as localNetworkCapability, tn as isAppLinkBase, ur as validateCustomAddress, yt as checkRoleAddress } from "../../dist-BWvkuc31.mjs";
2
- import { P as readLanHttpState, a as storeUploadedCertificate, d as servedHttpsLeafFingerprint, g as readTlsMode, h as readTlsAccessStatus, i as revertToGeneratedCertificate, j as applyLanHttp, k as DEFAULT_LAN_HTTP_PORT, m as readExtraSans, n as applyCertificateToListener, o as useStoredUploadedCertificate, r as regenerateCertificate, t as createCiaoPublisher, v as writeExtraSans, w as ensureTlsCert } from "../../hub-mdns-ciao-Cnd0bTB9.mjs";
1
+ import { An as pickAppLinkHub, Ci as EventCategory, F as HUB_MDNS_SERVICE_TYPE, I as HUB_MDNS_TXT_KEYS, Ln as resolveAppConnections, U as NetworkTunnelStartedDataSchema, Vn as resolveHubAddressRoles, Wn as resolveNotificationTapAddress, in as isDefaultAppConnectionEndpoint, jr as BaseAddon, l as CAMSTACK_APP_LINK_ORIGIN, mn as localNetworkCapability, tn as isAppLinkBase, ur as validateCustomAddress, yt as checkRoleAddress } from "../../dist-DsrQYcLm.mjs";
2
+ import { P as readLanHttpState, a as storeUploadedCertificate, d as servedHttpsLeafFingerprint, g as readTlsMode, h as readTlsAccessStatus, i as revertToGeneratedCertificate, j as applyLanHttp, k as DEFAULT_LAN_HTTP_PORT, m as readExtraSans, n as applyCertificateToListener, o as useStoredUploadedCertificate, r as regenerateCertificate, t as createCiaoPublisher, v as writeExtraSans, w as ensureTlsCert } from "../../hub-mdns-ciao-BS2akjWx.mjs";
3
3
  import { z } from "zod";
4
4
  import { isIP } from "node:net";
5
5
  import * as os$1 from "node:os";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.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 { gn as logDestinationCapability, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
1
+ import { gn as logDestinationCapability, jr as BaseAddon } from "../../dist-DsrQYcLm.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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  let node_fs_promises = require("node:fs/promises");
8
8
  let node_os = require("node:os");
9
9
  node_os = require_chunk.__toESM(node_os);
@@ -1,4 +1,4 @@
1
- import { Ar as errMsg, Fn as reducePoints, Rn as resolveBucketMs, Si as EventCategory, Sn as metricsProviderCapability, Xt as foldSnapshotByFunction, jr as BaseAddon, qr as createEvent } from "../../dist-BWvkuc31.mjs";
1
+ import { Ar as errMsg, Ci as EventCategory, Fn as reducePoints, Rn as resolveBucketMs, Sn as metricsProviderCapability, Xt as foldSnapshotByFunction, jr as BaseAddon, qr as createEvent } from "../../dist-DsrQYcLm.mjs";
2
2
  import { access, readFile, readdir } from "node:fs/promises";
3
3
  import * as os$1 from "node:os";
4
4
  import { platform } from "node:os";
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  let node_os = require("node:os");
8
8
  node_os = require_chunk.__toESM(node_os);
9
9
  let node_fs = require("node:fs");
@@ -1,5 +1,5 @@
1
1
  import { o as __toESM, r as __exportAll } from "../../chunk-CNf5ZN-e.mjs";
2
- import { Ar as errMsg, Jn as scoreRuntimes, Mn as platformProbeCapability, Si as EventCategory, Vt as enumerateInferenceDevices, Zr as emitReadiness, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
2
+ import { Ar as errMsg, Ci as EventCategory, Jn as scoreRuntimes, Mn as platformProbeCapability, Vt as enumerateInferenceDevices, Zr as emitReadiness, jr as BaseAddon } from "../../dist-DsrQYcLm.mjs";
3
3
  import * as os$1 from "node:os";
4
4
  import * as fs from "node:fs";
5
5
  import { execFile } from "node:child_process";
@@ -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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.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 { Si as EventCategory, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
1
+ import { Ci as EventCategory, jr as BaseAddon } from "../../dist-DsrQYcLm.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
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  const require_snapshot_courtesy = require("../../snapshot-courtesy-D_C5-nC0.js");
8
8
  let zod = require("zod");
9
9
  let node_crypto = require("node:crypto");
@@ -1,4 +1,4 @@
1
- import { Ar as errMsg, Dr as DeviceFeature, Pt as deriveBatteryPresence, Qn as snapshotCapability, Si as EventCategory, dt as batteryCapability, jr as BaseAddon, kr as DeviceType, or as streamQualityLabel, s as BatteryStatusSchema, si as nodePin, ut as bareAddonId, xn as memoizePinnedFfmpeg } from "../../dist-BWvkuc31.mjs";
1
+ import { Ar as errMsg, Ci as EventCategory, Dr as DeviceFeature, Pt as deriveBatteryPresence, Qn as snapshotCapability, ci as nodePin, dt as batteryCapability, jr as BaseAddon, kr as DeviceType, or as streamQualityLabel, s as BatteryStatusSchema, ut as bareAddonId, xn as memoizePinnedFfmpeg } from "../../dist-DsrQYcLm.mjs";
2
2
  import { i as renderCourtesyOverlayJpeg, n as courtesyCacheKey, r as renderCourtesyJpeg } from "../../snapshot-courtesy-CyFs1M3I.mjs";
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
  const require_chunk = require("../../chunk-Cek0wNdY.js");
6
- const require_dist = require("../../dist-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  let node_crypto = require("node:crypto");
8
8
  let node_fs_promises = require("node:fs/promises");
9
9
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { Yt as filesystemBrowseCapability, ir as storageProviderCapability, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
1
+ import { Yt as filesystemBrowseCapability, ir as storageProviderCapability, jr as BaseAddon } from "../../dist-DsrQYcLm.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { mkdir, readdir, realpath, statfs } from "node:fs/promises";
4
4
  import * as path$1 from "node:path";
@@ -4,7 +4,7 @@ Object.defineProperties(exports, {
4
4
  });
5
5
  require("../../chunk-Cek0wNdY.js");
6
6
  const require_builtins_sqlite_storage_filesystem_storage_addon = require("./filesystem-storage.addon.js");
7
- const require_wal_maintenance = require("../../wal-maintenance-CgZTNWAz.js");
7
+ const require_wal_maintenance = require("../../wal-maintenance-C-bmkDhm.js");
8
8
  const require_builtins_sqlite_storage_sqlite_settings_addon = require("./sqlite-settings.addon.js");
9
9
  //#region src/builtins/sqlite-storage/config-store.ts
10
10
  var ConfigStore = class {
@@ -1,5 +1,5 @@
1
1
  import { FilesystemStorageAddon, t as FilesystemStorageProvider } from "./filesystem-storage.addon.mjs";
2
- import { A as SQLITE_PAGE_CACHE_FLOOR_KIB, D as SQLITE_MMAP_CEILING_BYTES, E as SQLITE_JOURNAL_SIZE_LIMIT_BYTES, F as SQLITE_PROFILE_REPORT_INTERVAL_MS, I as SQLITE_PROFILE_TOP_N, L as SQLITE_SLOW_CALL_MS, M as sqlitePageCacheKibFor, N as SQLITE_ENGINE_STORM_WALL_SHARE, O as SQLITE_MMAP_FLOOR_BYTES, P as SQLITE_PROFILE_REPORT_FLOOR_MS, R as SqliteOpProfiler, a as WalMaintenance, c as SqliteSettingsBackend, i as WAL_MAINTENANCE_INTERVAL_MS, j as sqliteMmapSizeFor, k as SQLITE_PAGE_CACHE_CEILING_KIB, n as WAL_HIGH_WATER_BYTES, r as WAL_IDLE_QUIET_MS, t as WAL_CHECKPOINT_BUSY_TIMEOUT_MS, z as sqliteEngineStorm } from "../../wal-maintenance-B57SAp4a.mjs";
2
+ import { A as SQLITE_PAGE_CACHE_FLOOR_KIB, D as SQLITE_MMAP_CEILING_BYTES, E as SQLITE_JOURNAL_SIZE_LIMIT_BYTES, F as SQLITE_PROFILE_REPORT_INTERVAL_MS, I as SQLITE_PROFILE_TOP_N, L as SQLITE_SLOW_CALL_MS, M as sqlitePageCacheKibFor, N as SQLITE_ENGINE_STORM_WALL_SHARE, O as SQLITE_MMAP_FLOOR_BYTES, P as SQLITE_PROFILE_REPORT_FLOOR_MS, R as SqliteOpProfiler, a as WalMaintenance, c as SqliteSettingsBackend, i as WAL_MAINTENANCE_INTERVAL_MS, j as sqliteMmapSizeFor, k as SQLITE_PAGE_CACHE_CEILING_KIB, n as WAL_HIGH_WATER_BYTES, r as WAL_IDLE_QUIET_MS, t as WAL_CHECKPOINT_BUSY_TIMEOUT_MS, z as sqliteEngineStorm } from "../../wal-maintenance-DE8QrreK.mjs";
3
3
  import { SqliteSettingsAddon } from "./sqlite-settings.addon.mjs";
4
4
  //#region src/builtins/sqlite-storage/config-store.ts
5
5
  var ConfigStore = class {
@@ -3,9 +3,9 @@ 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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  const require_retired_settings_keys = require("../../retired-settings-keys-D_VwZiDt.js");
8
- const require_wal_maintenance = require("../../wal-maintenance-CgZTNWAz.js");
8
+ const require_wal_maintenance = require("../../wal-maintenance-C-bmkDhm.js");
9
9
  const require_sqlite_snapshot_protocol = require("../../sqlite-snapshot-protocol-B9OndqZv.js");
10
10
  const require_wal_checkpoint_policy = require("../../wal-checkpoint-policy-d2z2qPqx.js");
11
11
  let node_fs_promises = require("node:fs/promises");
@@ -1,6 +1,6 @@
1
- import { Ar as errMsg, At as databaseSnapshotCapability, Ir as RUNTIME_DEFAULTS, J as STORAGE_ADMIN_SCOPED_BASES, S as DATA_STORE_DATABASES, b as DATABASE_SNAPSHOT_SUFFIX, er as storageAdminCapability, jr as BaseAddon, kt as dataStoreProviderCapability, pr as vectorStoreCapability, q as STORAGE_ADMIN_MOVED_COLLECTIONS, ut as bareAddonId, x as DATABASE_SNAPSHOT_TIMEOUT_MS, y as DATABASE_SNAPSHOT_PARTIAL_SUFFIX } from "../../dist-BWvkuc31.mjs";
1
+ import { Ar as errMsg, At as databaseSnapshotCapability, Ir as RUNTIME_DEFAULTS, J as STORAGE_ADMIN_SCOPED_BASES, S as DATA_STORE_DATABASES, b as DATABASE_SNAPSHOT_SUFFIX, er as storageAdminCapability, jr as BaseAddon, kt as dataStoreProviderCapability, pr as vectorStoreCapability, q as STORAGE_ADMIN_MOVED_COLLECTIONS, ut as bareAddonId, x as DATABASE_SNAPSHOT_TIMEOUT_MS, y as DATABASE_SNAPSHOT_PARTIAL_SUFFIX } from "../../dist-DsrQYcLm.mjs";
2
2
  import { i as retiredKeyStoreOf, n as purgeRetiredSettingsKeys } from "../../retired-settings-keys-Bhwe4ymb.mjs";
3
- import { C as callData, S as callControl, T as controlTargetOf, _ as isFileHostMessage, a as WalMaintenance, c as SqliteSettingsBackend, d as DatabaseBusyError, f as DuplicatePlacementError, g as collectTransferables, l as CollectionPlacementError, o as createVectorIndex, p as rehydrateError, s as vectorProviderOf, u as CrossDatabaseTransactError, w as callVector, x as trustResult } from "../../wal-maintenance-B57SAp4a.mjs";
3
+ import { C as callData, S as callControl, T as controlTargetOf, _ as isFileHostMessage, a as WalMaintenance, c as SqliteSettingsBackend, d as DatabaseBusyError, f as DuplicatePlacementError, g as collectTransferables, l as CollectionPlacementError, o as createVectorIndex, p as rehydrateError, s as vectorProviderOf, u as CrossDatabaseTransactError, w as callVector, x as trustResult } from "../../wal-maintenance-DE8QrreK.mjs";
4
4
  import { r as isSnapshotWorkerMessage } from "../../sqlite-snapshot-protocol-2QaTouWV.mjs";
5
5
  import { a as isWorkerMessage, t as WAL_CHECKPOINT_LARGE_PASS_FRAMES } from "../../wal-checkpoint-policy-BahrTtyD.mjs";
6
6
  import { createRequire } from "node:module";
@@ -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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  let zod = require("zod");
8
8
  let node_crypto = require("node:crypto");
9
9
  let _camstack_types_node = require("@camstack/types/node");
@@ -1,4 +1,4 @@
1
- import { $ as StorageCleanupJobSchema, $t as gbToBytes, Cn as modeMayWrite, Fr as REDACTED_SECRET, Gr as collectSecretConfigKeys, Gt as evictionPolicyOfLocation, Hn as resolveLocationMode, Si as EventCategory, Yn as settingsStoreCapability, ai as isSecretMarker, an as isLocationEnabled, bi as transformSecretWrite, bn as mayWriteToLocation, et as StorageLocationModeSchema, fn as legacyModeOf, gi as secretTreeFromPaths, jr as BaseAddon, li as parseJsonObject, mi as resolveSecretMarkers, mr as withLocationMode, nr as storageMigrationCapability, nt as StorageMigrationJobSchema, tr as storageCapability, tt as StorageLocationTypeSchema, yn as mayReadLocation, z as LegacyStorageLocationDefaultSchema } from "../../dist-BWvkuc31.mjs";
1
+ import { $ as StorageCleanupJobSchema, $t as gbToBytes, Ci as EventCategory, Cn as modeMayWrite, Fr as REDACTED_SECRET, Gr as collectSecretConfigKeys, Gt as evictionPolicyOfLocation, Hn as resolveLocationMode, Yn as settingsStoreCapability, _i as secretTreeFromPaths, ai as isSecretMarker, an as isLocationEnabled, bn as mayWriteToLocation, et as StorageLocationModeSchema, fn as legacyModeOf, hi as resolveSecretMarkers, jr as BaseAddon, mr as withLocationMode, nr as storageMigrationCapability, nt as StorageMigrationJobSchema, tr as storageCapability, tt as StorageLocationTypeSchema, ui as parseJsonObject, xi as transformSecretWrite, yn as mayReadLocation, z as LegacyStorageLocationDefaultSchema } from "../../dist-DsrQYcLm.mjs";
2
2
  import { z } from "zod";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { containsOrEquals, physicalRootOf } from "@camstack/types/node";
@@ -3,11 +3,11 @@ 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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.js");
7
7
  const require_safe_buffer$1 = require("../../safe-buffer-D3aoa-7X.js");
8
8
  const require_x509_es = require("../../x509.es-C4cOo48M.js");
9
9
  const require_agent_https = require("../../agent-https-DlpTMDqA.js");
10
- const require_constants$8 = require("../../constants-UojhAJcm.js");
10
+ const require_constants$8 = require("../../constants-b7kpjuO4.js");
11
11
  const require_src$1 = require("../../src-CnAqG6EF.js");
12
12
  let zod = require("zod");
13
13
  let node_crypto = require("node:crypto");
@@ -1,9 +1,9 @@
1
1
  import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM, r as __exportAll, t as __commonJSMin } from "../../chunk-CNf5ZN-e.mjs";
2
- import { Ar as errMsg, Jr as customAction, Xn as shortHostname, Yr as defineCustomActions, Z as ServerNameSchema, ei as hydrateSchema, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
2
+ import { Ar as errMsg, Jr as customAction, Xn as shortHostname, Yr as defineCustomActions, Z as ServerNameSchema, ei as hydrateSchema, jr as BaseAddon } from "../../dist-DsrQYcLm.mjs";
3
3
  import { t as require_safe_buffer } from "../../safe-buffer-B1OjL1I9.mjs";
4
4
  import { S as backdatedNotBefore, a as KeyUsageFlags, c as Pkcs10CertificateRequest, d as SubjectKeyIdentifierExtension, f as X509Certificate$1, l as Pkcs10CertificateRequestGenerator, m as cryptoProvider, n as BasicConstraintsExtension, o as KeyUsagesExtension, p as X509CertificateGenerator, r as ExtendedKeyUsageExtension, s as PemConverter, t as AuthorityKeyIdentifierExtension } from "../../x509.es-DK__ETIe.mjs";
5
5
  import { F as AGENT_HTTPS_NAMES_COLLECTION, I as AGENT_HTTPS_NAMES_COLUMNS, L as AgentHttpsNames, R as getProcessAgentHttpsNames, j as isLocalOnlyHostname, u as isPrivateAddress, z as setProcessAgentHttpsNames } from "../../agent-https-U0d4uvn2.mjs";
6
- import { a as MESH_CA_KEY_REF, c as SERVER_AUTH_OID, i as MESH_CA_FIELD, n as DEFAULT_HUB_TLS_TCP_PORT, o as MESH_CA_SETTINGS_KEY, r as MESH_CA_COMMON_NAME, s as MESH_CA_VALIDITY_DAYS, t as CLIENT_AUTH_OID } from "../../constants-DJILnUSb.mjs";
6
+ import { a as MESH_CA_KEY_REF, c as SERVER_AUTH_OID, i as MESH_CA_FIELD, n as DEFAULT_HUB_TLS_TCP_PORT, o as MESH_CA_SETTINGS_KEY, r as MESH_CA_COMMON_NAME, s as MESH_CA_VALIDITY_DAYS, t as CLIENT_AUTH_OID } from "../../constants-2iWQ-Nx-.mjs";
7
7
  import { t as require_src } from "../../src-hG4grMU4.mjs";
8
8
  import { z } from "zod";
9
9
  import { X509Certificate, createHash, createPrivateKey, randomBytes, randomInt, sign, timingSafeEqual, verify, webcrypto } from "node:crypto";
@@ -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-BiTCcaf-.js");
6
+ const require_dist = require("../../dist-CyIHDLCg.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 { gn as logDestinationCapability, jr as BaseAddon } from "../../dist-BWvkuc31.mjs";
1
+ import { gn as logDestinationCapability, jr as BaseAddon } from "../../dist-DsrQYcLm.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";
@@ -1,4 +1,4 @@
1
- import { Ar as errMsg, Cr as compositionSourceKey } from "./dist-BWvkuc31.mjs";
1
+ import { Ar as errMsg, Cr as compositionSourceKey } from "./dist-DsrQYcLm.mjs";
2
2
  //#region src/builtins/core-blocks/composition-sources.ts
3
3
  /**
4
4
  * Describe what a composition reads and writes for SAVE-time validation
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-BiTCcaf-.js");
1
+ const require_dist = require("./dist-CyIHDLCg.js");
2
2
  //#region src/builtins/core-blocks/composition-sources.ts
3
3
  /**
4
4
  * Describe what a composition reads and writes for SAVE-time validation
@@ -1,4 +1,4 @@
1
- import { Wr as buildSecretRef } from "./dist-BWvkuc31.mjs";
1
+ import { Wr as buildSecretRef } from "./dist-DsrQYcLm.mjs";
2
2
  /** `secret://system/global/meshCaKey` — EC P-256 PKCS#8 PEM of the hub mesh CA. */
3
3
  var MESH_CA_KEY_REF = buildSecretRef({
4
4
  owner: "system",
@@ -1,5 +1,5 @@
1
1
  /** `secret://system/global/meshCaKey` — EC P-256 PKCS#8 PEM of the hub mesh CA. */
2
- var MESH_CA_KEY_REF = require("./dist-BiTCcaf-.js").buildSecretRef({
2
+ var MESH_CA_KEY_REF = require("./dist-CyIHDLCg.js").buildSecretRef({
3
3
  owner: "system",
4
4
  scope: { kind: "global" },
5
5
  fieldPath: "meshCaKey"
@@ -1,4 +1,4 @@
1
- import { D as DEVICE_SAN_CREDENTIAL_PREFIX, O as DEVICE_SAN_USER_PREFIX, Wr as buildSecretRef } from "./dist-BWvkuc31.mjs";
1
+ import { D as DEVICE_SAN_CREDENTIAL_PREFIX, O as DEVICE_SAN_USER_PREFIX, Wr as buildSecretRef } from "./dist-DsrQYcLm.mjs";
2
2
  import { S as backdatedNotBefore, a as KeyUsageFlags, d as SubjectKeyIdentifierExtension, f as X509Certificate$1, m as cryptoProvider, n as BasicConstraintsExtension, o as KeyUsagesExtension, p as X509CertificateGenerator, r as ExtendedKeyUsageExtension, s as PemConverter, t as AuthorityKeyIdentifierExtension, u as SubjectAlternativeNameExtension } from "./x509.es-DK__ETIe.mjs";
3
3
  import { X509Certificate, createPublicKey, randomBytes, verify, webcrypto } from "node:crypto";
4
4
  //#region src/auth/jwt-signing-key.ts
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-BiTCcaf-.js");
1
+ const require_dist = require("./dist-CyIHDLCg.js");
2
2
  const require_x509_es = require("./x509.es-C4cOo48M.js");
3
3
  let node_crypto = require("node:crypto");
4
4
  //#region src/auth/jwt-signing-key.ts
@@ -1,6 +1,6 @@
1
1
  let zod = require("zod");
2
2
  require("node:crypto");
3
- //#region ../types/dist/event-category-C4hVnRo8.mjs
3
+ //#region ../types/dist/event-category-BvOFi6PY.mjs
4
4
  var EventCategory = /* @__PURE__ */ function(EventCategory) {
5
5
  EventCategory["SystemBoot"] = "system.boot";
6
6
  EventCategory["SystemAddonsReady"] = "system.addons-ready";
@@ -64,6 +64,24 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
64
64
  * consumes this category and maps it to the `addon-crash-loop` kind.
65
65
  */
66
66
  EventCategory["AddonRunnerFailed"] = "addon.runner-failed";
67
+ /**
68
+ * A runner whose addon refused to start with a typed reason (D877) - parked
69
+ * in `refused`, never counted by the crash breaker, retried on operator
70
+ * action. One event per refusal.
71
+ */
72
+ EventCategory["AddonRunnerRefused"] = "addon.runner-refused";
73
+ /**
74
+ * A runner settled on a state (D877): `running` (READY), `crashed`, `failed` or
75
+ * `refused`. In-process telemetry for the boot check (re-evaluate while any
76
+ * runner is still pending) and the alert centre (close a recovered runner).
77
+ */
78
+ EventCategory["ProcessStateChanged"] = "process.state-changed";
79
+ /**
80
+ * The node's one-shot runner boot check (D877): planned runners against the
81
+ * process service, `degraded` when any is failed, refused or missing. The
82
+ * alert centre turns it into one alert and a direct critical push.
83
+ */
84
+ EventCategory["SystemRunnerCheck"] = "system.runner-check";
67
85
  EventCategory["AddonError"] = "addon.error";
68
86
  EventCategory["AddonPageReady"] = "addon.page-ready";
69
87
  EventCategory["AddonWidgetReady"] = "addon.widget-ready";
@@ -718,7 +736,7 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
718
736
  return EventCategory;
719
737
  }({});
720
738
  //#endregion
721
- //#region ../types/dist/sleep-bwsTj221.mjs
739
+ //#region ../types/dist/sleep-bgZLodYc.mjs
722
740
  /**
723
741
  * The audio chunk plane's byte format, and the ONE expansion from a coded
724
742
  * window to float samples (D455).
@@ -41046,6 +41064,36 @@ var llmRuntimeCapability = {
41046
41064
  }
41047
41065
  };
41048
41066
  /**
41067
+ * The report of a one-shot "move this owner's plaintext secrets into the
41068
+ * keychain" run (D878). COUNTS only - never a value, never a ref.
41069
+ *
41070
+ * The owner runs it on its own rows, through its own write path; an operator
41071
+ * script (`scripts/hub/migrate-raw-secrets.ts`) calls the owner's cap method.
41072
+ * Dry run (`apply: false`) reports what WOULD move and changes nothing.
41073
+ */
41074
+ var RawSecretMigrationInputSchema = zod.z.object({
41075
+ /** `false` (the default of the script) = report only. */
41076
+ apply: zod.z.boolean() });
41077
+ var RawSecretMigrationReportSchema = zod.z.object({
41078
+ apply: zod.z.boolean(),
41079
+ /** Rows that can carry a secret (a profile, an enrolment). */
41080
+ rows: zod.z.number().int(),
41081
+ /** Rows whose secret was plaintext when the run started. */
41082
+ raw: zod.z.number().int(),
41083
+ /** Rows that already held a keychain marker when the run started. */
41084
+ markers: zod.z.number().int(),
41085
+ /** Plaintext rows moved by THIS run (always 0 on a dry run). */
41086
+ migrated: zod.z.number().int(),
41087
+ /** Plaintext rows left in place because the move or its read-back failed. */
41088
+ failed: zod.z.number().int(),
41089
+ /** After the run: rows still holding plaintext. */
41090
+ remainingRaw: zod.z.number().int(),
41091
+ /** After the run: markers the keychain could not resolve right now. */
41092
+ unresolvedMarkers: zod.z.number().int(),
41093
+ /** True when nothing is raw and every marker resolves. */
41094
+ verified: zod.z.boolean()
41095
+ });
41096
+ /**
41049
41097
  * `llm` — consumer-facing LLM surface (spec §1-§3). Collection-mode: array
41050
41098
  * methods concat-fan across providers; single-row methods route to ONE
41051
41099
  * provider by the `addonId` in the call input (the notification-output
@@ -41252,6 +41300,16 @@ var llmCapability = {
41252
41300
  kind: "mutation",
41253
41301
  auth: "admin"
41254
41302
  }),
41303
+ /**
41304
+ * D878: move every profile's plaintext `apiKey` into the keychain (owner
41305
+ * `ai`), leaving a marker in the row. Dry run unless `apply`; idempotent;
41306
+ * counts only. The plaintext is cleared only after the keychain read-back
41307
+ * matched.
41308
+ */
41309
+ migrateRawSecrets: method(RawSecretMigrationInputSchema, RawSecretMigrationReportSchema, {
41310
+ kind: "mutation",
41311
+ auth: "admin"
41312
+ }),
41255
41313
  deleteProfile: method(ProfileRefInputSchema, zod.z.void(), {
41256
41314
  kind: "mutation",
41257
41315
  auth: "admin"
@@ -54032,6 +54090,41 @@ var ServerRollbackInfoSchema = zod.z.object({
54032
54090
  atMs: zod.z.number(),
54033
54091
  reason: zod.z.string()
54034
54092
  });
54093
+ /**
54094
+ * The runner boot check (D877): the runners this node PLANNED (hub: one per
54095
+ * `resolveRunnerId` over its forked addons; agent: the runners its process
54096
+ * service holds, because only the hub plans) against the states the process
54097
+ * service reports. Kept in memory, recomputed by the same one-shot check after
54098
+ * every boot, served on `getServerPackageStatus`.
54099
+ *
54100
+ * `failed` is the D6 breaker's terminal state, `refused` a deterministic Init
54101
+ * refusal (an addon that said "I will not start, and here is why"), `missing` a
54102
+ * planned runner the process service has no entry for.
54103
+ */
54104
+ var RunnerRefusalSchema = zod.z.object({
54105
+ runnerId: zod.z.string(),
54106
+ addonIds: zod.z.array(zod.z.string()),
54107
+ reason: zod.z.string()
54108
+ });
54109
+ var RunnerBootCheckSchema = zod.z.object({
54110
+ checkedAtMs: zod.z.number(),
54111
+ /** Runners planned for this node. */
54112
+ expected: zod.z.number(),
54113
+ /** Planned runners whose process is `running`. */
54114
+ running: zod.z.number(),
54115
+ failed: zod.z.array(zod.z.string()),
54116
+ refused: zod.z.array(RunnerRefusalSchema),
54117
+ missing: zod.z.array(zod.z.string()),
54118
+ /**
54119
+ * Runners still on their way: `starting`, or `crashed` waiting on a backoff
54120
+ * respawn. The check is FINAL only when this is empty; until then nothing is
54121
+ * pushed and the verdict is re-evaluated on the next runner state change.
54122
+ * Optional for version skew (absent = settled).
54123
+ */
54124
+ pending: zod.z.array(zod.z.string()).optional(),
54125
+ /** True when the plan is the hub's (`missing` is then meaningful); false on an agent. */
54126
+ planKnown: zod.z.boolean()
54127
+ });
54035
54128
  var ServerPackageStatusSchema = zod.z.object({
54036
54129
  /** Root package name (`@camstack/server` on the hub). */
54037
54130
  packageName: zod.z.string(),
@@ -54094,7 +54187,14 @@ var ServerPackageStatusSchema = zod.z.object({
54094
54187
  * for version skew: an older provider's payload simply omits it, and an
54095
54188
  * absent wrapper is unknown — never `native`.
54096
54189
  */
54097
- wrapper: WrapperIdentitySchema.optional()
54190
+ wrapper: WrapperIdentitySchema.optional(),
54191
+ /**
54192
+ * What this node PLANNED to run against what its process service reports
54193
+ * (D877). Absent until the one-shot boot check has run (~60 s after boot) and
54194
+ * on a provider that predates it. Absent is "not checked yet", never "all
54195
+ * well": a consumer that needs the answer treats it as pending.
54196
+ */
54197
+ runners: RunnerBootCheckSchema.optional()
54098
54198
  });
54099
54199
  var ServerUpdateCheckResultSchema = zod.z.object({
54100
54200
  packageName: zod.z.string(),
@@ -54145,6 +54245,13 @@ var ServerUpdateOutcomeSchema = zod.z.enum([
54145
54245
  "refused",
54146
54246
  "failed"
54147
54247
  ]);
54248
+ /** One addon the pre-flight found the target version would refuse (D877). */
54249
+ var UpdateBlockerSchema = zod.z.object({
54250
+ addonId: zod.z.string(),
54251
+ reason: zod.z.string(),
54252
+ /** What the operator does about it. */
54253
+ remedy: zod.z.string()
54254
+ });
54148
54255
  var ServerUpdateActionResultSchema = zod.z.object({
54149
54256
  accepted: zod.z.boolean(),
54150
54257
  targetVersion: zod.z.string().nullable(),
@@ -54162,7 +54269,13 @@ var ServerUpdateActionResultSchema = zod.z.object({
54162
54269
  * The failure itself, verbatim enough to act on (the npm output for a
54163
54270
  * staging install). Non-null only for `failed`.
54164
54271
  */
54165
- error: zod.z.string().nullable().optional()
54272
+ error: zod.z.string().nullable().optional(),
54273
+ /**
54274
+ * The addons the target version would refuse to start on this node's live
54275
+ * store (D877), present when the pre-flight refused the update
54276
+ * (`reason: 'addon-would-refuse'`). Optional for version skew.
54277
+ */
54278
+ blockers: zod.z.array(UpdateBlockerSchema).optional()
54166
54279
  });
54167
54280
  var serverManagementCapability = {
54168
54281
  name: "server-management",
@@ -54174,9 +54287,16 @@ var serverManagementCapability = {
54174
54287
  kind: "mutation",
54175
54288
  auth: "admin"
54176
54289
  }),
54177
- applyServerUpdate: method(zod.z.object({
54178
- /** Explicit target version; omitted = latest from the registry. */
54179
- version: zod.z.string().optional() }), ServerUpdateActionResultSchema, {
54290
+ applyServerUpdate: method(zod.z.object({
54291
+ /** Explicit target version; omitted = latest from the registry. */
54292
+ version: zod.z.string().optional(),
54293
+ /**
54294
+ * Apply even though the pre-flight (D877) found addons the target would
54295
+ * refuse to start. Off by default: those addons stay down until the
54296
+ * remedy is run, which is the incident this gate exists to prevent.
54297
+ */
54298
+ acknowledgeRefusals: zod.z.boolean().optional()
54299
+ }), ServerUpdateActionResultSchema, {
54180
54300
  kind: "mutation",
54181
54301
  auth: "admin",
54182
54302
  timeoutMs: 16 * 6e4
@@ -57498,7 +57618,9 @@ var ManifestShapeSchema = zod.z.object({
57498
57618
  var AddonProcessSchema = zod.z.object({
57499
57619
  pid: zod.z.number().optional(),
57500
57620
  mode: zod.z.string(),
57501
- state: zod.z.string()
57621
+ state: zod.z.string(),
57622
+ /** Why the runner is `refused` (an addon's own words), when it is (D877). */
57623
+ reason: zod.z.string().optional()
57502
57624
  });
57503
57625
  /**
57504
57626
  * Per-addon health snapshot from the kernel's AddonHealthMonitor.
@@ -70104,6 +70226,16 @@ var userManagementCapability = {
70104
70226
  access: "delete"
70105
70227
  }),
70106
70228
  getTotpStatus: method(zod.z.object({ userId: zod.z.string() }), TotpStatusSchema, { auth: "admin" }),
70229
+ /**
70230
+ * D878: move every TOTP seed stored in plaintext into the keychain (owner
70231
+ * `system`), leaving a marker in the row. Dry run unless `apply`;
70232
+ * idempotent; counts only.
70233
+ */
70234
+ migrateRawSecrets: method(RawSecretMigrationInputSchema, RawSecretMigrationReportSchema, {
70235
+ kind: "mutation",
70236
+ auth: "admin",
70237
+ access: "create"
70238
+ }),
70107
70239
  verifyTotp: method(zod.z.object({
70108
70240
  userId: zod.z.string(),
70109
70241
  code: zod.z.string()
@@ -76483,6 +76615,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
76483
76615
  addonId: null,
76484
76616
  access: "view"
76485
76617
  },
76618
+ "llm.migrateRawSecrets": {
76619
+ capName: "llm",
76620
+ capScope: "system",
76621
+ addonId: null,
76622
+ access: "create"
76623
+ },
76486
76624
  "llm.resolveModelRef": {
76487
76625
  capName: "llm",
76488
76626
  capScope: "system",
@@ -81025,6 +81163,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
81025
81163
  addonId: null,
81026
81164
  access: "view"
81027
81165
  },
81166
+ "userManagement.migrateRawSecrets": {
81167
+ capName: "user-management",
81168
+ capScope: "system",
81169
+ addonId: null,
81170
+ access: "create"
81171
+ },
81028
81172
  "userManagement.oauthExchangeCode": {
81029
81173
  capName: "user-management",
81030
81174
  capScope: "system",
@@ -87158,6 +87302,12 @@ Object.defineProperty(exports, "looseSchema", {
87158
87302
  return looseSchema;
87159
87303
  }
87160
87304
  });
87305
+ Object.defineProperty(exports, "makeSecretMarker", {
87306
+ enumerable: true,
87307
+ get: function() {
87308
+ return makeSecretMarker;
87309
+ }
87310
+ });
87161
87311
  Object.defineProperty(exports, "mayReadLocation", {
87162
87312
  enumerable: true,
87163
87313
  get: function() {