@camstack/system 1.2.390 → 1.2.392

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 (575) hide show
  1. package/dist/addon/addon-api-factory.d.ts +30 -30
  2. package/dist/addon-routes/addon-route-registry.d.ts +31 -31
  3. package/dist/addon-runner.js +1 -1
  4. package/dist/addon-runner.mjs +1 -1
  5. package/dist/addon-utils.d.ts +22 -22
  6. package/dist/addon-utils.js +1 -1
  7. package/dist/addon-utils.mjs +1 -1
  8. package/dist/amd-accelerators-CEuPFBBK.js +36 -0
  9. package/dist/amd-accelerators-U_RsoEDd.mjs +35 -0
  10. package/dist/amd-npu-B-QyyMyF.js +53 -0
  11. package/dist/amd-npu-Db_SoSuL.mjs +52 -0
  12. package/dist/auth/admin-token-manager.d.ts +37 -67
  13. package/dist/auth/api-key-manager.d.ts +8 -8
  14. package/dist/auth/auth-audit-log.d.ts +29 -49
  15. package/dist/auth/auth-manager.d.ts +127 -126
  16. package/dist/auth/cidr.d.ts +8 -8
  17. package/dist/auth/external-identity-manager.d.ts +46 -34
  18. package/dist/auth/jwt-signing-key.d.ts +14 -14
  19. package/dist/auth/login-session-manager.d.ts +95 -135
  20. package/dist/auth/parse-record.d.ts +13 -13
  21. package/dist/auth/scope-matcher.d.ts +7 -7
  22. package/dist/auth/scoped-token-manager.d.ts +62 -62
  23. package/dist/auth/token-expiry.d.ts +49 -26
  24. package/dist/auth/totp-manager.d.ts +48 -48
  25. package/dist/auth/user-management-internal.d.ts +67 -52
  26. package/dist/auth/user-manager.d.ts +58 -58
  27. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  28. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  29. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  30. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  31. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  32. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  33. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  34. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  35. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  36. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  37. package/dist/builtins/alerts/alerts.addon.js +1 -1
  38. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  39. package/dist/builtins/alerts/device-label.d.ts +6 -6
  40. package/dist/builtins/alerts/index.d.ts +1 -1
  41. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  42. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  43. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  44. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  45. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  46. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  47. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  48. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  49. package/dist/builtins/autotrack/index.d.ts +2 -2
  50. package/dist/builtins/autotrack/index.js +1 -1
  51. package/dist/builtins/autotrack/index.mjs +1 -1
  52. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  53. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  54. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  55. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  56. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  57. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  58. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  59. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  60. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  61. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  62. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  63. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  64. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  65. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  66. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  67. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  68. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  69. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  70. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  71. package/dist/builtins/calendars/calendars.addon.js +1 -1
  72. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  73. package/dist/builtins/calendars/index.d.ts +1 -1
  74. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  75. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  76. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  77. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  78. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  79. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  80. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  81. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  82. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  83. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  84. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  85. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  86. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  87. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  88. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  89. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  90. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  91. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  92. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  93. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  94. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  95. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  96. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  97. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  98. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  99. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  100. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  101. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  102. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  103. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  104. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  105. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  106. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  107. package/dist/builtins/camera-grid/index.d.ts +44 -44
  108. package/dist/builtins/camera-grid/index.js +1 -1
  109. package/dist/builtins/camera-grid/index.mjs +1 -1
  110. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  111. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  112. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  113. package/dist/builtins/composer/composed-device.d.ts +39 -17
  114. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  115. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  116. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  117. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  118. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  119. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  120. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  121. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  122. package/dist/builtins/composer/composer.addon.js +2 -2
  123. package/dist/builtins/composer/composer.addon.mjs +2 -2
  124. package/dist/builtins/composer/composer.d.ts +145 -100
  125. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  126. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  127. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  128. package/dist/builtins/composer/composition-target.d.ts +38 -34
  129. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  130. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  131. package/dist/builtins/composer/existing-target.d.ts +90 -73
  132. package/dist/builtins/composer/field-record.d.ts +26 -19
  133. package/dist/builtins/composer/graft-host.d.ts +56 -32
  134. package/dist/builtins/composer/held-claims.d.ts +26 -9
  135. package/dist/builtins/composer/index.d.ts +1 -1
  136. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  137. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  138. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  139. package/dist/builtins/composer/source-readings.d.ts +67 -61
  140. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  141. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  142. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  143. package/dist/builtins/console-logging/index.d.ts +3 -3
  144. package/dist/builtins/console-logging/index.js +1 -1
  145. package/dist/builtins/console-logging/index.mjs +1 -1
  146. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  147. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  148. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  149. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  150. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  151. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  152. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  153. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  154. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  155. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  156. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  157. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  158. package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
  159. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  160. package/dist/builtins/core-blocks/index.d.ts +8 -8
  161. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  162. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  163. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  164. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  165. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  166. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  167. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  168. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  169. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  170. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  171. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  172. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  173. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  174. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  175. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  176. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  177. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  178. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  179. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  180. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  181. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  182. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  183. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  184. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  185. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  186. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  187. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  188. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  189. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  190. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  191. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  192. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  193. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  194. package/dist/builtins/device-manager/index.d.ts +2 -2
  195. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  196. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  197. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  198. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  199. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  200. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  201. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  202. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  203. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  204. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  205. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  206. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  207. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  208. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  209. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  210. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  211. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  212. package/dist/builtins/hub-forwarder/index.js +1 -1
  213. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  214. package/dist/builtins/keychain/index.d.ts +1 -1
  215. package/dist/builtins/keychain/index.js +3 -3
  216. package/dist/builtins/keychain/index.mjs +3 -3
  217. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  218. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  219. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  220. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  221. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  222. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  223. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  224. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  225. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  226. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  227. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  228. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  229. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  230. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  231. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  232. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  233. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  234. package/dist/builtins/local-auth/index.d.ts +1 -1
  235. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  236. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  237. package/dist/builtins/local-auth/local-auth.addon.js +2 -2
  238. package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
  239. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  240. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  241. package/dist/builtins/local-network/address-book.d.ts +61 -36
  242. package/dist/builtins/local-network/index.d.ts +2 -2
  243. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  244. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  245. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  246. package/dist/builtins/local-network/local-network.addon.js +1 -1
  247. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  248. package/dist/builtins/loki-logging/index.d.ts +4 -4
  249. package/dist/builtins/loki-logging/index.js +1 -1
  250. package/dist/builtins/loki-logging/index.mjs +1 -1
  251. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  252. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  253. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  254. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  255. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  256. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  257. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  258. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  259. package/dist/builtins/native-metrics/index.d.ts +2 -2
  260. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  261. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  262. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  263. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  264. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  265. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  266. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  267. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  268. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  269. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  270. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  271. package/dist/builtins/platform-probe/amd-accelerators.d.ts +15 -0
  272. package/dist/builtins/platform-probe/amd-npu.d.ts +29 -0
  273. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  274. package/dist/builtins/platform-probe/index.d.ts +38 -30
  275. package/dist/builtins/platform-probe/index.js +59 -22
  276. package/dist/builtins/platform-probe/index.mjs +59 -22
  277. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  278. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  279. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  280. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  281. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  282. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  283. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  284. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  285. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  286. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  287. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  288. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  289. package/dist/builtins/snapshot/index.d.ts +2 -2
  290. package/dist/builtins/snapshot/index.js +1 -1
  291. package/dist/builtins/snapshot/index.mjs +1 -1
  292. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  293. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  294. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  295. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  296. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  297. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  298. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  299. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  300. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  301. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  302. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  303. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  304. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  305. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  306. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  307. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  308. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  309. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  310. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  311. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  312. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  313. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  314. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  315. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  316. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  317. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  318. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  319. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  320. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  321. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  322. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  323. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  324. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  325. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  326. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  327. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  328. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  329. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  330. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  331. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  332. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  333. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  334. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  335. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  336. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  337. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  338. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  339. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  340. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  341. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  342. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  343. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  344. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  345. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  346. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  347. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  348. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  349. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  350. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  351. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  352. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  353. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  354. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  355. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  356. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  357. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  358. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  359. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  360. package/dist/builtins/system-config/index.d.ts +2 -2
  361. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  362. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  363. package/dist/builtins/system-config/system-config.addon.js +39 -35
  364. package/dist/builtins/system-config/system-config.addon.mjs +320 -316
  365. package/dist/builtins/winston-logging/index.d.ts +3 -3
  366. package/dist/builtins/winston-logging/index.js +1 -1
  367. package/dist/builtins/winston-logging/index.mjs +1 -1
  368. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  369. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  370. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Nx-lrlHR.js} +19 -1
  371. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-x-onDDiV.mjs} +2 -2
  372. package/dist/{composition-sources-wdAxs-uY.js → composition-sources-LUJsW0AQ.js} +1 -1
  373. package/dist/{composition-sources-xqhm2Ygr.mjs → composition-sources-R8TskGSV.mjs} +1 -1
  374. package/dist/{constants-Ca-Sgcl8.js → constants-D4lxxip7.js} +1 -1
  375. package/dist/{constants-D5z4EwY8.mjs → constants-DMvAcbbP.mjs} +1 -1
  376. package/dist/{dist-8LQ4lDEB.js → dist-XTkzsnz-.js} +35 -1
  377. package/dist/{dist-Biqn3TEn.mjs → dist-byg8IP4Q.mjs} +35 -1
  378. package/dist/download/hosted-model-revisions.d.ts +8 -8
  379. package/dist/download/model-download-service.d.ts +32 -32
  380. package/dist/download/model-downloader.d.ts +88 -88
  381. package/dist/{event-loop-stall-monitor-CNj73d4D.js → event-loop-stall-monitor-DPFghEFw.js} +1 -1
  382. package/dist/{event-loop-stall-monitor-BtK_0Pjc.mjs → event-loop-stall-monitor-TG8UcdY2.mjs} +1 -1
  383. package/dist/events/event-bus.d.ts +6 -6
  384. package/dist/events/system-event-bus.d.ts +11 -11
  385. package/dist/feature/feature-manager.d.ts +6 -6
  386. package/dist/http/asset-compression.d.ts +35 -73
  387. package/dist/http/authenticated-file-server.d.ts +32 -32
  388. package/dist/http/data-plane-registry.d.ts +49 -39
  389. package/dist/http/file-data-plane.d.ts +14 -14
  390. package/dist/http/lan-http-bind.d.ts +24 -13
  391. package/dist/http/reverse-proxy.d.ts +36 -24
  392. package/dist/index.d.ts +137 -137
  393. package/dist/index.js +9 -8
  394. package/dist/index.mjs +7 -9
  395. package/dist/{jwt-signing-key-DxV2ucvJ.js → jwt-signing-key-CD87HrHH.js} +1 -1
  396. package/dist/{jwt-signing-key-SnDgvVUQ.mjs → jwt-signing-key-DNBxSN5p.mjs} +1 -1
  397. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  398. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  399. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  400. package/dist/kernel/addon-installer.d.ts +609 -609
  401. package/dist/kernel/addon-loader.d.ts +133 -133
  402. package/dist/kernel/addon-manifest.d.ts +118 -118
  403. package/dist/kernel/addon-residue.d.ts +28 -32
  404. package/dist/kernel/array-buffer-census.d.ts +84 -88
  405. package/dist/kernel/bootstrap-config.d.ts +3 -3
  406. package/dist/kernel/cap-router-builder.d.ts +145 -101
  407. package/dist/kernel/capability-handle.d.ts +41 -41
  408. package/dist/kernel/capability-registry.d.ts +588 -576
  409. package/dist/kernel/config-manager.d.ts +199 -199
  410. package/dist/kernel/config-schema.d.ts +132 -128
  411. package/dist/kernel/custom-action-registry.d.ts +25 -25
  412. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  413. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  414. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  415. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  416. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  417. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  418. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  419. package/dist/kernel/deps/npm-command.d.ts +45 -45
  420. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  421. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  422. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  423. package/dist/kernel/device-registry.d.ts +27 -27
  424. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  425. package/dist/kernel/event-plane-report.d.ts +174 -174
  426. package/dist/kernel/fs-utils.d.ts +70 -70
  427. package/dist/kernel/gc-census.d.ts +119 -119
  428. package/dist/kernel/heap-spaces.d.ts +87 -87
  429. package/dist/kernel/heap-watch.d.ts +706 -706
  430. package/dist/kernel/host-externals.d.ts +8 -8
  431. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  432. package/dist/kernel/index.d.ts +115 -113
  433. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  434. package/dist/kernel/infra-capabilities.d.ts +7 -7
  435. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  436. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  437. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  438. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  439. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  440. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  441. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  442. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  443. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  444. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  445. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  446. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  447. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  448. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  449. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  450. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  451. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  452. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  453. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  454. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  455. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  456. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  457. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  458. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  459. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  460. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  461. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  462. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  463. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  464. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  465. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  466. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  467. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  468. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  469. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  470. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  471. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  472. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  473. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  474. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  475. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  476. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  477. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  478. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  479. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  480. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  481. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  482. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  483. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  484. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  485. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  486. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  487. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  488. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  489. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  490. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  491. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  492. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  493. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  494. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  495. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  496. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  497. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  498. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  499. package/dist/kernel/process-cpu-census.d.ts +55 -55
  500. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  501. package/dist/kernel/restart-coordinator.d.ts +71 -71
  502. package/dist/kernel/settings-door-view.d.ts +36 -25
  503. package/dist/kernel/settings-read-error.d.ts +29 -31
  504. package/dist/kernel/settings-view-types.d.ts +100 -95
  505. package/dist/kernel/socket-plane-report.d.ts +214 -153
  506. package/dist/kernel/status-overlay.d.ts +31 -11
  507. package/dist/kernel/storage-location-registry.d.ts +50 -50
  508. package/dist/kernel/store-settings-view.d.ts +13 -13
  509. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  510. package/dist/kernel/system-settings-policy.d.ts +15 -34
  511. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  512. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  513. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  514. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  515. package/dist/kernel/transport/cap-route.d.ts +139 -139
  516. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  517. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  518. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  519. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  520. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  521. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  522. package/dist/kernel/transport/index.d.ts +36 -36
  523. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  524. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  525. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  526. package/dist/kernel/transport/local-transport.d.ts +92 -92
  527. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  528. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  529. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  530. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  531. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  532. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  533. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  534. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  535. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  536. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  537. package/dist/kernel/workspace-detect.d.ts +7 -7
  538. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  539. package/dist/logging/formatter.d.ts +52 -25
  540. package/dist/logging/log-manager.d.ts +133 -133
  541. package/dist/logging/log-redactor.d.ts +22 -1
  542. package/dist/logging/log-ring-buffer.d.ts +57 -57
  543. package/dist/logging/logging-gate.d.ts +69 -25
  544. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  545. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  546. package/dist/logging/scoped-logger.d.ts +14 -14
  547. package/dist/network/network-quality.d.ts +8 -8
  548. package/dist/notification/notification-service.d.ts +37 -37
  549. package/dist/notification/toast-service.d.ts +18 -18
  550. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  551. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  552. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  553. package/dist/process/proc-stat.d.ts +51 -51
  554. package/dist/process/resource-monitor.d.ts +19 -19
  555. package/dist/python/python-env-manager.d.ts +10 -10
  556. package/dist/repl/interfaces.d.ts +21 -21
  557. package/dist/repl/repl-engine.d.ts +6 -6
  558. package/dist/{restore-archive-D4cmLoNe.mjs → restore-archive-Bmmmyp1M.mjs} +81 -81
  559. package/dist/{restore-archive-Do_Yu5rC.js → restore-archive-bvYTsnvp.js} +1 -1
  560. package/dist/{retired-settings-keys-BsgVxh8-.mjs → retired-settings-keys-R9CBo2lY.mjs} +1 -1
  561. package/dist/{retired-settings-keys-Cyn3OD0K.js → retired-settings-keys-V0yq5Bm6.js} +1 -1
  562. package/dist/storage/fs-storage-backend.d.ts +35 -35
  563. package/dist/storage/storage-location-manager.d.ts +21 -21
  564. package/dist/storage/storage-manager.d.ts +68 -68
  565. package/dist/tls/boot-tls.d.ts +24 -24
  566. package/dist/tls/cert-evaluation.d.ts +25 -25
  567. package/dist/tls/cert-identity.d.ts +39 -39
  568. package/dist/tls/cert-issue.d.ts +37 -17
  569. package/dist/tls/cert-manager.d.ts +86 -84
  570. package/dist/tls/https-listener.d.ts +16 -16
  571. package/dist/tls/index.d.ts +8 -8
  572. package/dist/tls/tls-actions.d.ts +18 -18
  573. package/dist/tls/tls-status.d.ts +15 -15
  574. package/dist/tls/uploaded-cert.d.ts +9 -9
  575. package/package.json +9 -3
@@ -1,295 +1,295 @@
1
- import { ProviderRegistration, BaseAddon } from '@camstack/types';
2
- interface StorageOrchestratorConfig extends Record<string, unknown> {
3
- }
1
+ import type { ProviderRegistration } from "@camstack/types";
2
+ import { BaseAddon } from "@camstack/types";
3
+ interface StorageOrchestratorConfig extends Record<string, unknown> {}
4
4
  export declare class StorageOrchestratorAddon extends BaseAddon<StorageOrchestratorConfig> {
5
- private service;
6
- private pressureManager;
7
- /**
8
- * How much of each location CamStack itself holds (D388).
9
- *
10
- * Built on first use rather than in a field initializer: `this.ctx` does not
11
- * exist until `initialize()` runs, and a field initializer touching it throws
12
- * in the constructor.
13
- */
14
- private occupancySlice;
15
- private get occupancy();
16
- private pressureTimer;
17
- private pressureSweepInFlight;
18
- private migration;
19
- /**
20
- * Cached `providerId → nodeLocal` snapshot (SP1). Backs the orchestrator's
21
- * synchronous `NodeLocalResolver` — `getProviderInfo()` is async, so we
22
- * keep a sync cache and refresh it whenever the provider collection
23
- * changes (alongside the seed pass). Absent providerId → resolver returns
24
- * `undefined` (treated as node-agnostic).
25
- */
26
- private readonly nodeLocalByProvider;
27
- /**
28
- * Cached `providerId → secret config keys`, derived from each provider's own
29
- * `configSchema` in the SAME refresh as `nodeLocalByProvider` — one
30
- * `getProviderInfo()` round trip answers both questions.
31
- *
32
- * An absent providerId yields an EMPTY set, which redacts nothing. That is
33
- * the one direction this cache can be wrong in, so it is worth saying why it
34
- * is acceptable: the entry is populated at the same moment the provider
35
- * becomes resolvable at all, so a location whose provider is unknown here
36
- * cannot be dispatched to either — there is no window in which a credential
37
- * is readable through a provider the orchestrator can otherwise use.
38
- */
39
- private readonly secretKeysByProvider;
40
- /**
41
- * Disposers run on `onShutdown` — currently the eventBus subscription
42
- * for `capability:provider-registered` events used by the lazy seed
43
- * fallback. Stored separately from the `BaseAddon` disposer chain so
44
- * it can be inspected in tests.
45
- */
46
- private readonly seedSubscriptionDisposers;
47
- constructor();
48
- protected onInitialize(): Promise<ProviderRegistration[]>;
49
- /**
50
- * The remote behind the data door on a node that owns no engine.
51
- *
52
- * `null` on a hub — the hub IS the store, and a hub that forwarded would
53
- * route its own door back into itself through `$hub-cap-fwd`. `null` too
54
- * when this process has no cluster broker (a forked worker, or a test
55
- * harness); the door then behaves exactly as it always did and refuses.
56
- *
57
- * Built once and memoised. It is only consulted when `getEngines()` is
58
- * empty, so on a hub — and on an agent rolled back to a local engine via
59
- * `CAMSTACK_AGENT_LOCAL_DATA_STORE` — the resolve never runs a second time.
60
- */
61
- private hubForward;
62
- private hubSettingsForward;
63
- protected onShutdown(): Promise<void>;
64
- onHubReachable(): Promise<void>;
65
- /**
66
- * Resolve the live engine from the capability registry and wrap it in a
67
- * `SqliteLocationStore`. Returns `null` when no engine has registered
68
- * yet — the service falls back to in-memory only. On a HUB that is a
69
- * boot-order window: `data-store-provider` precedes `storage` in
70
- * `INFRA_CAPABILITIES`, so it is the rare path.
71
- *
72
- * On an AGENT it is permanent and intended, and the line says so. An agent
73
- * boots no engine (`resolveAgentInfraCapabilities`), and this store must NOT
74
- * be pointed at the hub-forwarding data door: `storage_locations` is keyed by
75
- * a bare location id (`recordings:default`, `eventMedia:default`, …) which
76
- * every node in the cluster shares, so an agent writing through the door
77
- * would land on the HUB's rows. The locations an agent needs are re-seeded
78
- * from its addon declarations at every boot; the operator's real, node-pinned
79
- * locations live in the hub's own table (`__nodeId` in the config blob) and
80
- * are dispatched to the agent's `storage-provider` from there.
81
- *
82
- * Reads the ENGINE, not the `settings-store` singleton: since D44 this
83
- * addon *is* that singleton, so asking the registry for it would hand
84
- * the orchestrator its own dispatcher and route its location table back
85
- * through itself.
86
- */
87
- private resolveLocationStore;
88
- /**
89
- * Late-wire the persistence store once a `data-store-provider` engine
90
- * registers. Production boot order means the store is usually absent at
91
- * `onInitialize`; this runs on every `capability:provider-registered`
92
- * event until it succeeds. Single-flighted + idempotent (the service
93
- * ignores a second attach). Without this, operator edits (e.g. a
94
- * location's `minFreePercent`) live only in memory and are wiped on every
95
- * restart — the service never hydrates from / persists to SQLite.
96
- */
97
- private storeWireInFlight;
98
- private ensureStoreWired;
99
- private storageProviders;
100
- /** Single-flighted pressure sweep — never overlaps a slow eviction round. */
101
- private runPressureSweep;
102
- /**
103
- * locationId → resolved `minFreePercent`. The policy is intrinsic to the
104
- * location's provider (`shouldSaveDiskSpace` gates the guard, `minFreePercent`
105
- * is the default), overridable per-location via `config.minFreePercent`.
106
- * Locations with the guard off (or threshold 0) are omitted. Moved here from
107
- * the recorder so disk-pressure is a single core concern.
108
- */
109
- private resolveLocationThresholds;
110
- /** Location ids that have already logged the `minFreeGb` / `minFreePercent`
111
- * redundancy. The pressure sweep runs on a timer; the notice is worth
112
- * exactly one line per location per process, not one per minute. */
113
- private readonly minFreeRedundancyLogged;
114
- private logMinFreeRedundancyOnce;
115
- /**
116
- * The draining locations and the ACTIVE peers of their class whose growth
117
- * paces them (D386). Rebuilt every sweep from the live mode of every
118
- * location, so this is also what STOPS a drain: a location the operator
119
- * switched back simply stops appearing.
120
- */
121
- private drainStore;
122
- /** The drain ratchet's durable home, once a data-store engine exists. Same
123
- * late-wiring window as the location table — on an agent it is never. */
124
- private resolveDrainStore;
125
- private drainPlanRefusalLogged;
126
- private resolveDrainPlan;
127
- /** Drain progress for every draining location, as of the last sweep. */
128
- private drainProgress;
129
- /**
130
- * What the provider's own schema declared secret, or `undefined` when this
131
- * node has never heard from that provider. The distinction is the whole
132
- * point — see `secretKeysForConfig`, which fails CLOSED on `undefined`.
133
- */
134
- private declaredSecretKeys;
135
- /** Which keys of a given stored config must never leave this process. */
136
- /**
137
- * Move a singleton location's bytes when its root changes.
138
- *
139
- * Runs BEFORE the row is saved: a copy that fails throws out of the mutation,
140
- * so the location keeps pointing at the intact original and the operator is
141
- * told why rather than discovering it in a blank panel weeks later.
142
- * `moveLocationTree` deletes nothing until every file has been read back from
143
- * the destination.
144
- *
145
- * A no-op for everything else — a rename, a mode change, a `multi` kind, or a
146
- * location being created for the first time.
147
- */
148
- private carryDataOnRepoint;
149
- private secretKeysFor;
150
- /**
151
- * Ring the doorbell: the SET of storage locations changed (D387).
152
- *
153
- * A consumer that resolves locations at boot had no way to learn that the
154
- * operator added, edited or removed one — the recorder kept writing to the
155
- * disk set it resolved hours ago, and an operator who added a second
156
- * recordings disk in the admin UI got nothing until something unrelated
157
- * happened to re-resolve.
158
- *
159
- * Telemetry, and deliberately so (D8/D11): it carries no row, it is allowed
160
- * to be dropped, and every consumer re-reads `listLocations` for itself and
161
- * converges on its own periodic path anyway. A bulk edit rings it once per
162
- * row — coalescing is the consumer's job, not this one's.
163
- *
164
- * Never throws into the mutation that produced it: the location IS saved,
165
- * and a bus that will not take a telemetry event must not turn that into a
166
- * failed upsert.
167
- */
168
- private announceLocationsChanged;
169
- /** A location with its provider's declared secrets replaced by the sentinel. */
170
- /**
171
- * The location as a PROVIDER must see it: every keychain marker in its
172
- * config resolved (D787). The same object when it holds none — a filesystem
173
- * location costs nothing. An unresolvable secret is left out and logged by
174
- * ref; the provider then fails its own connection, by name.
175
- */
176
- private withResolvedSecrets;
177
- /**
178
- * Strip the provider's DECLARED secrets (its form schema, by type) out of a
179
- * location config into the keychain, under `row/storage_locations/<id>`.
180
- * A provider that has not registered declares nothing: only keys that
181
- * already hold a marker are handled then — a new plaintext is never guessed
182
- * at, it stays as sent until the provider is back and the location is saved.
183
- */
184
- private keepSecretsInKeychain;
185
- private redacted;
186
- /**
187
- * Is this location backed by a provider that serves a genuine local
188
- * filesystem? `true` / `false` / `undefined` — see
189
- * `StorageOrchestratorService.refuseIncompatibleProvider` for why the
190
- * unknown case is kept distinct rather than folded into either answer.
191
- */
192
- private providerIsNodeLocal;
193
- /** See the call site in the `resolve` dispatch, and `access-guards.ts`. */
194
- private refuseRemoteResolve;
195
- /**
196
- * The volume figures for one location, or `null` when this node cannot take
197
- * a measurement that is genuinely about it.
198
- *
199
- * The decision lives in `location-volume-capacity.ts` — including why a
200
- * remote-provider location (the SMB share that was reporting the hub's own
201
- * disk) gets nothing rather than a number. Here we only supply the node id,
202
- * the provider's declared locality and the real filesystem, and log the
203
- * reason once per distinct fault: `listLocations` is on the admin UI's poll,
204
- * so a line per call would be a line per second.
205
- */
206
- private localCapacityOf;
207
- /** locationId → the last unmeasurable reason logged for it. */
208
- private readonly capacityUnknownLogged;
209
- private logCapacityUnknownOnce;
210
- private clearCapacityUnknown;
211
- /** Per-location cap on EVICTABLE bytes (`config.maxUsedGb`): the operator's
212
- * "recordings may use at most N GB in total" — enforced by the pressure
213
- * manager alongside the free-percent guard. */
214
- private resolveLocationMaxUsedBytes;
215
- private locationBasePath;
216
- /**
217
- * A stable key for the PHYSICAL storage device behind a location — the
218
- * `realpath` of its `basePath`, so symlinked / bind-mounted aliases and
219
- * same-root managed locations (`recordings:default` + `recordingsLow:default`,
220
- * both at `/recordings`) collapse to one key. Feeds the pressure manager's
221
- * in-sweep dedup so a shared disk is relieved at most once per tick (closing
222
- * the bounded over-eviction window; see `getLocationDeviceKey`). Falls back to
223
- * the lexically-resolved path when realpath throws (root missing at boot),
224
- * `null` when the location has no basePath — either way dedup degrades to
225
- * per-location, never merging two distinct disks.
226
- */
227
- private locationDeviceKey;
228
- /**
229
- * Does this location still hold anything of ITS class?
230
- *
231
- * Shared roots (`/recordings` hosting high + low + events) are scored by
232
- * class subtree (`<camera>/high|mid`, `/low`, `/events`), not by a raw
233
- * `readdir` of the root — camera dirs and `.camstack-location` would
234
- * otherwise make every class look occupied. The walk stays shallow: one
235
- * dirent per camera, then first-entry of the named subtree. A `find` of
236
- * segments is precisely what must not happen here.
237
- *
238
- * **What it cannot see, stated rather than papered over:**
239
- *
240
- * - A location on ANOTHER node, or behind a remote provider (S3 / SFTP /
241
- * WebDAV): its bytes are not on this filesystem and this probe answers
242
- * `unknown`, never `empty`.
243
- * - A location with no `basePath` — same answer.
244
- * - The difference between "holds live footage" and "holds one stray
245
- * lock-file". It measures ON-DISK entries of this class, not durable
246
- * rows, so it refuses a location holding orphan files that no index
247
- * names. That direction is the safe one, and `force` is the escape
248
- * hatch for it.
249
- *
250
- * A missing root (`ENOENT`) is `empty`, not `unknown`: an unmounted disk and
251
- * a deleted directory are indistinguishable here, and if the record's own
252
- * path does not exist there is nothing this delete can strand. Every OTHER
253
- * errno — `EACCES`, `EIO`, a stale NFS handle — is `unknown` and refuses.
254
- */
255
- private locationOccupancy;
256
- /**
257
- * The pressure guard's two readings come from the SAME probe the UI's
258
- * capacity does — one capacity truth per location, not two.
259
- *
260
- * They used to `statfs` the raw `basePath` themselves, which on this node
261
- * answers for whatever local path happens to carry that name: a location
262
- * owned by another node, or served by a remote provider, could decide
263
- * eviction from the hub's own disk. Both now degrade exactly as they did
264
- * when the path was unstattable — `100` (guard inert) and `0` (no byte
265
- * target) — but they do so for every reading that is not ABOUT the location,
266
- * not only for the ones that threw.
267
- */
268
- private volumeCapacityOf;
269
- /** Free capacity (%) on a location's volume; 100 (guard inert) when unmeasurable. */
270
- private locationFreePercent;
271
- /** Total bytes on a location's volume; 0 when unmeasurable. */
272
- private locationVolumeTotalBytes;
273
- /**
274
- * Seed default storage locations from the addon-declared
275
- * `storageLocations`, aggregated by the kernel into a
276
- * `StorageLocationRegistry`. Idempotent — re-running on a populated
277
- * map is a no-op (each declared id's `<id>:default` is already in the
278
- * service's map).
279
- *
280
- * `basePath` is this node's data root (`ctx.nodeDataDir` = `CAMSTACK_DATA`
281
- * ?? the kernel boot dir). Every declared default is attributed to the
282
- * `filesystem-storage`
283
- * provider; operators repoint individual locations (or add remote
284
- * SFTP/S3/WebDAV instances) through the admin UI afterwards.
285
- */
286
- private seedFromDeclarations;
287
- /**
288
- * Rebuild the `providerId → nodeLocal` cache from every registered
289
- * `storage-provider`'s `getProviderInfo()`. Cheap registry scan; runs on
290
- * boot and on every provider-registered reconcile. Failed probes are
291
- * skipped (the provider stays absent → treated as node-agnostic).
292
- */
293
- private refreshNodeLocalCache;
5
+ private service;
6
+ private pressureManager;
7
+ /**
8
+ * How much of each location CamStack itself holds (D388).
9
+ *
10
+ * Built on first use rather than in a field initializer: `this.ctx` does not
11
+ * exist until `initialize()` runs, and a field initializer touching it throws
12
+ * in the constructor.
13
+ */
14
+ private occupancySlice;
15
+ private get occupancy();
16
+ private pressureTimer;
17
+ private pressureSweepInFlight;
18
+ private migration;
19
+ /**
20
+ * Cached `providerId → nodeLocal` snapshot (SP1). Backs the orchestrator's
21
+ * synchronous `NodeLocalResolver` — `getProviderInfo()` is async, so we
22
+ * keep a sync cache and refresh it whenever the provider collection
23
+ * changes (alongside the seed pass). Absent providerId → resolver returns
24
+ * `undefined` (treated as node-agnostic).
25
+ */
26
+ private readonly nodeLocalByProvider;
27
+ /**
28
+ * Cached `providerId → secret config keys`, derived from each provider's own
29
+ * `configSchema` in the SAME refresh as `nodeLocalByProvider` — one
30
+ * `getProviderInfo()` round trip answers both questions.
31
+ *
32
+ * An absent providerId yields an EMPTY set, which redacts nothing. That is
33
+ * the one direction this cache can be wrong in, so it is worth saying why it
34
+ * is acceptable: the entry is populated at the same moment the provider
35
+ * becomes resolvable at all, so a location whose provider is unknown here
36
+ * cannot be dispatched to either — there is no window in which a credential
37
+ * is readable through a provider the orchestrator can otherwise use.
38
+ */
39
+ private readonly secretKeysByProvider;
40
+ /**
41
+ * Disposers run on `onShutdown` — currently the eventBus subscription
42
+ * for `capability:provider-registered` events used by the lazy seed
43
+ * fallback. Stored separately from the `BaseAddon` disposer chain so
44
+ * it can be inspected in tests.
45
+ */
46
+ private readonly seedSubscriptionDisposers;
47
+ constructor();
48
+ protected onInitialize(): Promise<ProviderRegistration[]>;
49
+ /**
50
+ * The remote behind the data door on a node that owns no engine.
51
+ *
52
+ * `null` on a hub — the hub IS the store, and a hub that forwarded would
53
+ * route its own door back into itself through `$hub-cap-fwd`. `null` too
54
+ * when this process has no cluster broker (a forked worker, or a test
55
+ * harness); the door then behaves exactly as it always did and refuses.
56
+ *
57
+ * Built once and memoised. It is only consulted when `getEngines()` is
58
+ * empty, so on a hub — and on an agent rolled back to a local engine via
59
+ * `CAMSTACK_AGENT_LOCAL_DATA_STORE` — the resolve never runs a second time.
60
+ */
61
+ private hubForward;
62
+ private hubSettingsForward;
63
+ protected onShutdown(): Promise<void>;
64
+ override onHubReachable(): Promise<void>;
65
+ /**
66
+ * Resolve the live engine from the capability registry and wrap it in a
67
+ * `SqliteLocationStore`. Returns `null` when no engine has registered
68
+ * yet — the service falls back to in-memory only. On a HUB that is a
69
+ * boot-order window: `data-store-provider` precedes `storage` in
70
+ * `INFRA_CAPABILITIES`, so it is the rare path.
71
+ *
72
+ * On an AGENT it is permanent and intended, and the line says so. An agent
73
+ * boots no engine (`resolveAgentInfraCapabilities`), and this store must NOT
74
+ * be pointed at the hub-forwarding data door: `storage_locations` is keyed by
75
+ * a bare location id (`recordings:default`, `eventMedia:default`, …) which
76
+ * every node in the cluster shares, so an agent writing through the door
77
+ * would land on the HUB's rows. The locations an agent needs are re-seeded
78
+ * from its addon declarations at every boot; the operator's real, node-pinned
79
+ * locations live in the hub's own table (`__nodeId` in the config blob) and
80
+ * are dispatched to the agent's `storage-provider` from there.
81
+ *
82
+ * Reads the ENGINE, not the `settings-store` singleton: since D44 this
83
+ * addon *is* that singleton, so asking the registry for it would hand
84
+ * the orchestrator its own dispatcher and route its location table back
85
+ * through itself.
86
+ */
87
+ private resolveLocationStore;
88
+ /**
89
+ * Late-wire the persistence store once a `data-store-provider` engine
90
+ * registers. Production boot order means the store is usually absent at
91
+ * `onInitialize`; this runs on every `capability:provider-registered`
92
+ * event until it succeeds. Single-flighted + idempotent (the service
93
+ * ignores a second attach). Without this, operator edits (e.g. a
94
+ * location's `minFreePercent`) live only in memory and are wiped on every
95
+ * restart — the service never hydrates from / persists to SQLite.
96
+ */
97
+ private storeWireInFlight;
98
+ private ensureStoreWired;
99
+ private storageProviders;
100
+ /** Single-flighted pressure sweep — never overlaps a slow eviction round. */
101
+ private runPressureSweep;
102
+ /**
103
+ * locationId → resolved `minFreePercent`. The policy is intrinsic to the
104
+ * location's provider (`shouldSaveDiskSpace` gates the guard, `minFreePercent`
105
+ * is the default), overridable per-location via `config.minFreePercent`.
106
+ * Locations with the guard off (or threshold 0) are omitted. Moved here from
107
+ * the recorder so disk-pressure is a single core concern.
108
+ */
109
+ private resolveLocationThresholds;
110
+ /** Location ids that have already logged the `minFreeGb` / `minFreePercent`
111
+ * redundancy. The pressure sweep runs on a timer; the notice is worth
112
+ * exactly one line per location per process, not one per minute. */
113
+ private readonly minFreeRedundancyLogged;
114
+ private logMinFreeRedundancyOnce;
115
+ /**
116
+ * The draining locations and the ACTIVE peers of their class whose growth
117
+ * paces them (D386). Rebuilt every sweep from the live mode of every
118
+ * location, so this is also what STOPS a drain: a location the operator
119
+ * switched back simply stops appearing.
120
+ */
121
+ private drainStore;
122
+ /** The drain ratchet's durable home, once a data-store engine exists. Same
123
+ * late-wiring window as the location table — on an agent it is never. */
124
+ private resolveDrainStore;
125
+ private drainPlanRefusalLogged;
126
+ private resolveDrainPlan;
127
+ /** Drain progress for every draining location, as of the last sweep. */
128
+ private drainProgress;
129
+ /**
130
+ * What the provider's own schema declared secret, or `undefined` when this
131
+ * node has never heard from that provider. The distinction is the whole
132
+ * point — see `secretKeysForConfig`, which fails CLOSED on `undefined`.
133
+ */
134
+ private declaredSecretKeys;
135
+ /** Which keys of a given stored config must never leave this process. */
136
+ /**
137
+ * Move a singleton location's bytes when its root changes.
138
+ *
139
+ * Runs BEFORE the row is saved: a copy that fails throws out of the mutation,
140
+ * so the location keeps pointing at the intact original and the operator is
141
+ * told why rather than discovering it in a blank panel weeks later.
142
+ * `moveLocationTree` deletes nothing until every file has been read back from
143
+ * the destination.
144
+ *
145
+ * A no-op for everything else — a rename, a mode change, a `multi` kind, or a
146
+ * location being created for the first time.
147
+ */
148
+ private carryDataOnRepoint;
149
+ private secretKeysFor;
150
+ /**
151
+ * Ring the doorbell: the SET of storage locations changed (D387).
152
+ *
153
+ * A consumer that resolves locations at boot had no way to learn that the
154
+ * operator added, edited or removed one — the recorder kept writing to the
155
+ * disk set it resolved hours ago, and an operator who added a second
156
+ * recordings disk in the admin UI got nothing until something unrelated
157
+ * happened to re-resolve.
158
+ *
159
+ * Telemetry, and deliberately so (D8/D11): it carries no row, it is allowed
160
+ * to be dropped, and every consumer re-reads `listLocations` for itself and
161
+ * converges on its own periodic path anyway. A bulk edit rings it once per
162
+ * row — coalescing is the consumer's job, not this one's.
163
+ *
164
+ * Never throws into the mutation that produced it: the location IS saved,
165
+ * and a bus that will not take a telemetry event must not turn that into a
166
+ * failed upsert.
167
+ */
168
+ private announceLocationsChanged;
169
+ /** A location with its provider's declared secrets replaced by the sentinel. */
170
+ /**
171
+ * The location as a PROVIDER must see it: every keychain marker in its
172
+ * config resolved (D787). The same object when it holds none — a filesystem
173
+ * location costs nothing. An unresolvable secret is left out and logged by
174
+ * ref; the provider then fails its own connection, by name.
175
+ */
176
+ private withResolvedSecrets;
177
+ /**
178
+ * Strip the provider's DECLARED secrets (its form schema, by type) out of a
179
+ * location config into the keychain, under `row/storage_locations/<id>`.
180
+ * A provider that has not registered declares nothing: only keys that
181
+ * already hold a marker are handled then — a new plaintext is never guessed
182
+ * at, it stays as sent until the provider is back and the location is saved.
183
+ */
184
+ private keepSecretsInKeychain;
185
+ private redacted;
186
+ /**
187
+ * Is this location backed by a provider that serves a genuine local
188
+ * filesystem? `true` / `false` / `undefined` — see
189
+ * `StorageOrchestratorService.refuseIncompatibleProvider` for why the
190
+ * unknown case is kept distinct rather than folded into either answer.
191
+ */
192
+ private providerIsNodeLocal;
193
+ /** See the call site in the `resolve` dispatch, and `access-guards.ts`. */
194
+ private refuseRemoteResolve;
195
+ /**
196
+ * The volume figures for one location, or `null` when this node cannot take
197
+ * a measurement that is genuinely about it.
198
+ *
199
+ * The decision lives in `location-volume-capacity.ts` — including why a
200
+ * remote-provider location (the SMB share that was reporting the hub's own
201
+ * disk) gets nothing rather than a number. Here we only supply the node id,
202
+ * the provider's declared locality and the real filesystem, and log the
203
+ * reason once per distinct fault: `listLocations` is on the admin UI's poll,
204
+ * so a line per call would be a line per second.
205
+ */
206
+ private localCapacityOf;
207
+ /** locationId → the last unmeasurable reason logged for it. */
208
+ private readonly capacityUnknownLogged;
209
+ private logCapacityUnknownOnce;
210
+ private clearCapacityUnknown;
211
+ /** Per-location cap on EVICTABLE bytes (`config.maxUsedGb`): the operator's
212
+ * "recordings may use at most N GB in total" — enforced by the pressure
213
+ * manager alongside the free-percent guard. */
214
+ private resolveLocationMaxUsedBytes;
215
+ private locationBasePath;
216
+ /**
217
+ * A stable key for the PHYSICAL storage device behind a location — the
218
+ * `realpath` of its `basePath`, so symlinked / bind-mounted aliases and
219
+ * same-root managed locations (`recordings:default` + `recordingsLow:default`,
220
+ * both at `/recordings`) collapse to one key. Feeds the pressure manager's
221
+ * in-sweep dedup so a shared disk is relieved at most once per tick (closing
222
+ * the bounded over-eviction window; see `getLocationDeviceKey`). Falls back to
223
+ * the lexically-resolved path when realpath throws (root missing at boot),
224
+ * `null` when the location has no basePath — either way dedup degrades to
225
+ * per-location, never merging two distinct disks.
226
+ */
227
+ private locationDeviceKey;
228
+ /**
229
+ * Does this location still hold anything of ITS class?
230
+ *
231
+ * Shared roots (`/recordings` hosting high + low + events) are scored by
232
+ * class subtree (`<camera>/high|mid`, `/low`, `/events`), not by a raw
233
+ * `readdir` of the root — camera dirs and `.camstack-location` would
234
+ * otherwise make every class look occupied. The walk stays shallow: one
235
+ * dirent per camera, then first-entry of the named subtree. A `find` of
236
+ * segments is precisely what must not happen here.
237
+ *
238
+ * **What it cannot see, stated rather than papered over:**
239
+ *
240
+ * - A location on ANOTHER node, or behind a remote provider (S3 / SFTP /
241
+ * WebDAV): its bytes are not on this filesystem and this probe answers
242
+ * `unknown`, never `empty`.
243
+ * - A location with no `basePath` — same answer.
244
+ * - The difference between "holds live footage" and "holds one stray
245
+ * lock-file". It measures ON-DISK entries of this class, not durable
246
+ * rows, so it refuses a location holding orphan files that no index
247
+ * names. That direction is the safe one, and `force` is the escape
248
+ * hatch for it.
249
+ *
250
+ * A missing root (`ENOENT`) is `empty`, not `unknown`: an unmounted disk and
251
+ * a deleted directory are indistinguishable here, and if the record's own
252
+ * path does not exist there is nothing this delete can strand. Every OTHER
253
+ * errno — `EACCES`, `EIO`, a stale NFS handle — is `unknown` and refuses.
254
+ */
255
+ private locationOccupancy;
256
+ /**
257
+ * The pressure guard's two readings come from the SAME probe the UI's
258
+ * capacity does — one capacity truth per location, not two.
259
+ *
260
+ * They used to `statfs` the raw `basePath` themselves, which on this node
261
+ * answers for whatever local path happens to carry that name: a location
262
+ * owned by another node, or served by a remote provider, could decide
263
+ * eviction from the hub's own disk. Both now degrade exactly as they did
264
+ * when the path was unstattable — `100` (guard inert) and `0` (no byte
265
+ * target) — but they do so for every reading that is not ABOUT the location,
266
+ * not only for the ones that threw.
267
+ */
268
+ private volumeCapacityOf;
269
+ /** Free capacity (%) on a location's volume; 100 (guard inert) when unmeasurable. */
270
+ private locationFreePercent;
271
+ /** Total bytes on a location's volume; 0 when unmeasurable. */
272
+ private locationVolumeTotalBytes;
273
+ /**
274
+ * Seed default storage locations from the addon-declared
275
+ * `storageLocations`, aggregated by the kernel into a
276
+ * `StorageLocationRegistry`. Idempotent — re-running on a populated
277
+ * map is a no-op (each declared id's `<id>:default` is already in the
278
+ * service's map).
279
+ *
280
+ * `basePath` is this node's data root (`ctx.nodeDataDir` = `CAMSTACK_DATA`
281
+ * ?? the kernel boot dir). Every declared default is attributed to the
282
+ * `filesystem-storage`
283
+ * provider; operators repoint individual locations (or add remote
284
+ * SFTP/S3/WebDAV instances) through the admin UI afterwards.
285
+ */
286
+ private seedFromDeclarations;
287
+ /**
288
+ * Rebuild the `providerId → nodeLocal` cache from every registered
289
+ * `storage-provider`'s `getProviderInfo()`. Cheap registry scan; runs on
290
+ * boot and on every provider-registered reconcile. Failed probes are
291
+ * skipped (the provider stays absent → treated as node-agnostic).
292
+ */
293
+ private refreshNodeLocalCache;
294
294
  }
295
295
  export default StorageOrchestratorAddon;
@@ -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-8LQ4lDEB.js");
6
+ const require_dist = require("../../dist-XTkzsnz-.js");
7
7
  const require_hub_cap_forward = require("../../hub-cap-forward-W8oEm4ME.js");
8
8
  let zod = require("zod");
9
9
  let node_crypto = require("node:crypto");
@@ -1,4 +1,4 @@
1
- import { B as StorageCleanupJobSchema, Cr as collectSecretConfigKeys, Fn as storageCapability, Ft as gbToBytes, H as StorageLocationTypeSchema, Hr as parseJsonObject, In as storageMigrationCapability, Jt as legacyModeOf, Lr as isSecretMarker, Mn as settingsStoreCapability, O as LegacyStorageLocationDefaultSchema, Ot as evictionPolicyOfLocation, Tn as resolveLocationMode, U as StorageMigrationJobSchema, V as StorageLocationModeSchema, Vt as isLocationEnabled, Xr as secretTreeFromPaths, mr as REDACTED_SECRET, ni as EventCategory, nn as mayReadLocation, on as modeMayWrite, qn as withLocationMode, qr as resolveSecretMarkers, rn as mayWriteToLocation, ti as transformSecretWrite, ur as BaseAddon } from "../../dist-Biqn3TEn.mjs";
1
+ import { B as StorageCleanupJobSchema, Cr as collectSecretConfigKeys, Fn as storageCapability, Ft as gbToBytes, H as StorageLocationTypeSchema, Hr as parseJsonObject, In as storageMigrationCapability, Jt as legacyModeOf, Lr as isSecretMarker, Mn as settingsStoreCapability, O as LegacyStorageLocationDefaultSchema, Ot as evictionPolicyOfLocation, Tn as resolveLocationMode, U as StorageMigrationJobSchema, V as StorageLocationModeSchema, Vt as isLocationEnabled, Xr as secretTreeFromPaths, mr as REDACTED_SECRET, ni as EventCategory, nn as mayReadLocation, on as modeMayWrite, qn as withLocationMode, qr as resolveSecretMarkers, rn as mayWriteToLocation, ti as transformSecretWrite, ur as BaseAddon } from "../../dist-byg8IP4Q.mjs";
2
2
  import { t as HUB_CAP_FWD_ACTION } from "../../hub-cap-forward-CDiN1p98.mjs";
3
3
  import { z } from "zod";
4
4
  import { randomUUID } from "node:crypto";