@camstack/system 1.2.390 → 1.2.391

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 (503) 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/auth/admin-token-manager.d.ts +37 -67
  7. package/dist/auth/api-key-manager.d.ts +8 -8
  8. package/dist/auth/auth-audit-log.d.ts +29 -49
  9. package/dist/auth/auth-manager.d.ts +127 -126
  10. package/dist/auth/cidr.d.ts +8 -8
  11. package/dist/auth/external-identity-manager.d.ts +46 -34
  12. package/dist/auth/jwt-signing-key.d.ts +14 -14
  13. package/dist/auth/login-session-manager.d.ts +95 -135
  14. package/dist/auth/parse-record.d.ts +13 -13
  15. package/dist/auth/scope-matcher.d.ts +7 -7
  16. package/dist/auth/scoped-token-manager.d.ts +62 -62
  17. package/dist/auth/token-expiry.d.ts +49 -26
  18. package/dist/auth/totp-manager.d.ts +48 -48
  19. package/dist/auth/user-management-internal.d.ts +67 -52
  20. package/dist/auth/user-manager.d.ts +58 -58
  21. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  22. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  23. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  24. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  25. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  26. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  27. package/dist/builtins/alerts/device-label.d.ts +6 -6
  28. package/dist/builtins/alerts/index.d.ts +1 -1
  29. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  30. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  31. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  32. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  33. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  34. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  35. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  36. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  37. package/dist/builtins/autotrack/index.d.ts +2 -2
  38. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  39. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  40. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  41. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  42. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  43. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  44. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  45. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  46. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  47. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  48. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  49. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  50. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  51. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  52. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  53. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  54. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  55. package/dist/builtins/calendars/index.d.ts +1 -1
  56. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  57. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  58. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  59. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  60. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  61. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  62. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  63. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  64. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  65. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  66. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  67. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  68. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  69. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  70. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  71. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  72. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  73. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  74. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  75. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  76. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  77. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  78. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  79. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  80. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  81. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  82. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  83. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  84. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  85. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  86. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  87. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  88. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  89. package/dist/builtins/camera-grid/index.d.ts +44 -44
  90. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  91. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  92. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  93. package/dist/builtins/composer/composed-device.d.ts +39 -17
  94. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  95. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  96. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  97. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  98. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  99. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  100. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  101. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  102. package/dist/builtins/composer/composer.d.ts +145 -100
  103. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  104. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  105. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  106. package/dist/builtins/composer/composition-target.d.ts +38 -34
  107. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  108. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  109. package/dist/builtins/composer/existing-target.d.ts +90 -73
  110. package/dist/builtins/composer/field-record.d.ts +26 -19
  111. package/dist/builtins/composer/graft-host.d.ts +56 -32
  112. package/dist/builtins/composer/held-claims.d.ts +26 -9
  113. package/dist/builtins/composer/index.d.ts +1 -1
  114. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  115. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  116. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  117. package/dist/builtins/composer/source-readings.d.ts +67 -61
  118. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  119. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  120. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  121. package/dist/builtins/console-logging/index.d.ts +3 -3
  122. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  123. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  124. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  125. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  126. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  127. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  128. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  129. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  130. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  131. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  132. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  133. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  134. package/dist/builtins/core-blocks/index.d.ts +8 -8
  135. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  136. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  137. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  138. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  139. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  140. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  141. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  142. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  143. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  144. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  145. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  146. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  147. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  148. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  149. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  150. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  151. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  152. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  153. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  154. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  155. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  156. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  157. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  158. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  159. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  160. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  161. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  162. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  163. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  164. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  165. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  166. package/dist/builtins/device-manager/index.d.ts +2 -2
  167. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  168. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  169. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  170. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  171. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  172. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  173. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  174. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  175. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  176. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  177. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  178. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  179. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  180. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  181. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  182. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  183. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  184. package/dist/builtins/keychain/index.d.ts +1 -1
  185. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  186. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  187. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  188. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  189. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  190. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  191. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  192. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  193. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  194. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  195. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  196. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  197. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  198. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  199. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  200. package/dist/builtins/local-auth/index.d.ts +1 -1
  201. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  202. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  203. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  204. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  205. package/dist/builtins/local-network/address-book.d.ts +61 -36
  206. package/dist/builtins/local-network/index.d.ts +2 -2
  207. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  208. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  209. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  210. package/dist/builtins/loki-logging/index.d.ts +4 -4
  211. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  212. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  213. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  214. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  215. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  216. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  217. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  218. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  219. package/dist/builtins/native-metrics/index.d.ts +2 -2
  220. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  221. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  222. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  223. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  224. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  225. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  226. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  227. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  228. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  229. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  230. package/dist/builtins/platform-probe/index.d.ts +38 -30
  231. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  232. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  233. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  234. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  235. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  236. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  237. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  238. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  239. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  240. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  241. package/dist/builtins/snapshot/index.d.ts +2 -2
  242. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  243. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  244. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  245. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  246. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  247. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  248. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  249. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  250. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  251. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  252. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  253. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  254. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  255. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  256. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  257. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  258. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  259. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  260. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  261. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  262. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  263. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  264. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  265. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  266. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  267. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  268. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  269. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  270. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  271. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  272. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  273. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  274. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  275. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  276. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  277. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  278. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  279. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  280. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  281. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  282. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  283. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  284. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  285. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  286. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  287. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  288. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  289. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  290. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  291. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  292. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  293. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  294. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  295. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  296. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  297. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  298. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  299. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  300. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  301. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  302. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  303. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  304. package/dist/builtins/system-config/index.d.ts +2 -2
  305. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  306. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  307. package/dist/builtins/system-config/system-config.addon.js +37 -33
  308. package/dist/builtins/system-config/system-config.addon.mjs +37 -33
  309. package/dist/builtins/winston-logging/index.d.ts +3 -3
  310. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  311. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  312. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Bnr8brru.js} +18 -0
  313. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-mHO_6r0G.mjs} +1 -1
  314. package/dist/download/hosted-model-revisions.d.ts +8 -8
  315. package/dist/download/model-download-service.d.ts +32 -32
  316. package/dist/download/model-downloader.d.ts +88 -88
  317. package/dist/events/event-bus.d.ts +6 -6
  318. package/dist/events/system-event-bus.d.ts +11 -11
  319. package/dist/feature/feature-manager.d.ts +6 -6
  320. package/dist/http/asset-compression.d.ts +35 -73
  321. package/dist/http/authenticated-file-server.d.ts +32 -32
  322. package/dist/http/data-plane-registry.d.ts +49 -39
  323. package/dist/http/file-data-plane.d.ts +14 -14
  324. package/dist/http/lan-http-bind.d.ts +24 -13
  325. package/dist/http/reverse-proxy.d.ts +36 -24
  326. package/dist/index.d.ts +137 -137
  327. package/dist/index.js +4 -3
  328. package/dist/index.mjs +2 -4
  329. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  330. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  331. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  332. package/dist/kernel/addon-installer.d.ts +609 -609
  333. package/dist/kernel/addon-loader.d.ts +133 -133
  334. package/dist/kernel/addon-manifest.d.ts +118 -118
  335. package/dist/kernel/addon-residue.d.ts +28 -32
  336. package/dist/kernel/array-buffer-census.d.ts +84 -88
  337. package/dist/kernel/bootstrap-config.d.ts +3 -3
  338. package/dist/kernel/cap-router-builder.d.ts +145 -101
  339. package/dist/kernel/capability-handle.d.ts +41 -41
  340. package/dist/kernel/capability-registry.d.ts +588 -576
  341. package/dist/kernel/config-manager.d.ts +199 -199
  342. package/dist/kernel/config-schema.d.ts +132 -128
  343. package/dist/kernel/custom-action-registry.d.ts +25 -25
  344. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  345. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  346. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  347. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  348. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  349. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  350. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  351. package/dist/kernel/deps/npm-command.d.ts +45 -45
  352. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  353. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  354. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  355. package/dist/kernel/device-registry.d.ts +27 -27
  356. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  357. package/dist/kernel/event-plane-report.d.ts +174 -174
  358. package/dist/kernel/fs-utils.d.ts +70 -70
  359. package/dist/kernel/gc-census.d.ts +119 -119
  360. package/dist/kernel/heap-spaces.d.ts +87 -87
  361. package/dist/kernel/heap-watch.d.ts +706 -706
  362. package/dist/kernel/host-externals.d.ts +8 -8
  363. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  364. package/dist/kernel/index.d.ts +115 -113
  365. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  366. package/dist/kernel/infra-capabilities.d.ts +7 -7
  367. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  368. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  369. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  370. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  371. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  372. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  373. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  374. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  375. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  376. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  377. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  378. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  379. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  380. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  381. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  382. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  383. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  384. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  385. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  386. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  387. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  388. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  389. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  390. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  391. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  392. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  393. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  394. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  395. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  396. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  397. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  398. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  399. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  400. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  401. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  402. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  403. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  404. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  405. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  406. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  407. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  408. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  409. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  410. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  411. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  412. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  413. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  414. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  415. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  416. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  417. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  418. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  419. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  420. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  421. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  422. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  423. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  424. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  425. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  426. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  427. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  428. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  429. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  430. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  431. package/dist/kernel/process-cpu-census.d.ts +55 -55
  432. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  433. package/dist/kernel/restart-coordinator.d.ts +71 -71
  434. package/dist/kernel/settings-door-view.d.ts +36 -25
  435. package/dist/kernel/settings-read-error.d.ts +29 -31
  436. package/dist/kernel/settings-view-types.d.ts +100 -95
  437. package/dist/kernel/socket-plane-report.d.ts +214 -153
  438. package/dist/kernel/status-overlay.d.ts +31 -11
  439. package/dist/kernel/storage-location-registry.d.ts +50 -50
  440. package/dist/kernel/store-settings-view.d.ts +13 -13
  441. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  442. package/dist/kernel/system-settings-policy.d.ts +15 -34
  443. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  444. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  445. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  446. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  447. package/dist/kernel/transport/cap-route.d.ts +139 -139
  448. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  449. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  450. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  451. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  452. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  453. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  454. package/dist/kernel/transport/index.d.ts +36 -36
  455. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  456. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  457. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  458. package/dist/kernel/transport/local-transport.d.ts +92 -92
  459. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  460. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  461. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  462. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  463. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  464. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  465. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  466. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  467. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  468. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  469. package/dist/kernel/workspace-detect.d.ts +7 -7
  470. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  471. package/dist/logging/formatter.d.ts +52 -25
  472. package/dist/logging/log-manager.d.ts +133 -133
  473. package/dist/logging/log-redactor.d.ts +22 -1
  474. package/dist/logging/log-ring-buffer.d.ts +57 -57
  475. package/dist/logging/logging-gate.d.ts +69 -25
  476. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  477. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  478. package/dist/logging/scoped-logger.d.ts +14 -14
  479. package/dist/network/network-quality.d.ts +8 -8
  480. package/dist/notification/notification-service.d.ts +37 -37
  481. package/dist/notification/toast-service.d.ts +18 -18
  482. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  483. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  484. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  485. package/dist/process/proc-stat.d.ts +51 -51
  486. package/dist/process/resource-monitor.d.ts +19 -19
  487. package/dist/python/python-env-manager.d.ts +10 -10
  488. package/dist/repl/interfaces.d.ts +21 -21
  489. package/dist/repl/repl-engine.d.ts +6 -6
  490. package/dist/storage/fs-storage-backend.d.ts +35 -35
  491. package/dist/storage/storage-location-manager.d.ts +21 -21
  492. package/dist/storage/storage-manager.d.ts +68 -68
  493. package/dist/tls/boot-tls.d.ts +24 -24
  494. package/dist/tls/cert-evaluation.d.ts +25 -25
  495. package/dist/tls/cert-identity.d.ts +39 -39
  496. package/dist/tls/cert-issue.d.ts +37 -17
  497. package/dist/tls/cert-manager.d.ts +86 -84
  498. package/dist/tls/https-listener.d.ts +16 -16
  499. package/dist/tls/index.d.ts +8 -8
  500. package/dist/tls/tls-actions.d.ts +18 -18
  501. package/dist/tls/tls-status.d.ts +15 -15
  502. package/dist/tls/uploaded-cert.d.ts +9 -9
  503. package/package.json +9 -3
@@ -1,272 +1,273 @@
1
- import { ProviderRegistration, BaseAddon } from '@camstack/types';
1
+ import type { ProviderRegistration } from "@camstack/types";
2
+ import { BaseAddon } from "@camstack/types";
2
3
  export declare class BackupOrchestratorAddon extends BaseAddon<Record<string, never>> {
3
- private systemBackup;
4
- private policies;
5
- private schedules;
6
- /** Backup encryption keys — PUBLIC keys only (see encryption-key-store.ts). */
7
- private encryptionKeys;
8
- private warnedNoEncryptionStore;
9
- private dataDir;
10
- /**
11
- * Transient build buffer for archive fan-out. The tar is built here
12
- * ONCE, streamed to every destination via the storage cap's chunked
13
- * upload, then removed. Lives at `<nodeDataDir>/backup-staging` —
14
- * OUTSIDE every backed-up location, so a backup can never contain a
15
- * backup (the old `ctx.dataDir/staging` sat inside `addons-data` and
16
- * compounded 175M → 4.5G before Jul 28), and distinct from
17
- * `<nodeDataDir>/backups` where the default `backups` destination
18
- * seeds when `CAMSTACK_BACKUP_ROOT` is unset. See staging-paths.ts.
19
- */
20
- private stagingDir;
21
- private scheduleTimer;
22
- /** Guards the disarmed-scheduler complaint to once per process. */
23
- private warnedSchedulerDisarmed;
24
- /**
25
- * Baseline used as the "after" anchor when a schedule has a cron but
26
- * has never fired yet (no `lastAttemptAt`). Set on orchestrator boot so a
27
- * pattern that fires every minute doesn't immediately replay every
28
- * historical "missed" run from epoch 0.
29
- */
30
- private scheduleBaselineAt;
31
- private readonly manifestLock;
32
- /**
33
- * Global execution queue — at most ONE archive build at a time,
34
- * cluster-node-wide (D342). Replaces the earlier invisible
35
- * single-flight `buildLock`: same serialisation guarantee (two
36
- * schedules due one tick apart built 8.2 GB + 3.7 GB side by side on
37
- * the hub, 2026-09-04), but every run is now observable via
38
- * `listRuns`, joinable when identical, and cancellable mid-stream.
39
- */
40
- private runQueue;
41
- constructor();
42
- protected onInitialize(): Promise<ProviderRegistration[]>;
43
- protected onShutdown(): Promise<void>;
44
- /**
45
- * Aggregate destinations from `api.storage.listLocations({ type: 'backups' })`
46
- * joined with the per-destination policy table. New locations get an
47
- * `ensureDefault` policy seeded transparently (enabled=true,
48
- * retentionCount=defaultRetentionCount). Pre-existing operator-edited
49
- * policies are preserved by the `ensureDefault` idempotency.
50
- */
51
- private listDestinations;
52
- /**
53
- * Join the enabled schedules by the locations they fan out to.
54
- * Comma-joined crons (a location can be targeted by several schedules),
55
- * earliest next firing. Computed from `Date.now()` — an operator asking
56
- * "when next" means from now, never from a stale run cursor.
57
- */
58
- private cadenceByLocation;
59
- private fetchBackupLocations;
60
- /**
61
- * Load every persisted policy and key it by `locationId`, while
62
- * lazily seeding a default for any `locationId` we haven't seen
63
- * before. Idempotent — `ensureDefault` no-ops on already-persisted
64
- * rows. Falls back to the in-memory default policy when the policy
65
- * service isn't wired (no settings-store backend available).
66
- */
67
- private loadPoliciesIndexed;
68
- private fallbackPolicy;
69
- private toDestinationWire;
70
- /**
71
- * Compute next-due ms-epoch for a cron, or `undefined` on parse error.
72
- * Catches so a single malformed cron doesn't blank out the whole
73
- * destinations list at the cap surface.
74
- */
75
- private safeNextDue;
76
- /**
77
- * Aggregate listing — read every `backups` location's `manifests.json`
78
- * and return one wire entry per archive, tagged with `destinationId`.
79
- * Failures on individual locations are logged and skipped so a single
80
- * unreachable destination doesn't blank out the whole UI.
81
- */
82
- /**
83
- * Bytes the archives occupy on each named location (D388).
84
- *
85
- * Summed from each location's own manifest — the record the uploader writes
86
- * — so this never walks a filesystem and never stats a remote destination.
87
- * A manifest that cannot be read contributes NOTHING and is logged: a
88
- * destination that is temporarily unreachable must read back as unknown, not
89
- * as an empty disk. A location holding no archives is omitted for the same
90
- * reason it is omitted everywhere else — only the orchestrator can tell
91
- * "nobody reported" from "reported nothing".
92
- */
93
- private backupOccupancy;
94
- private aggregatedList;
95
- private stagingPath;
96
- /**
97
- * Boot-time staging hygiene. Sweeps the staging dir (sparing an
98
- * archive a pending-restore marker references — the boot hook has
99
- * not consumed it yet), then reports — without touching — the LEGACY
100
- * staging dir inside `addons-data`, where pre-move leaks live. The
101
- * legacy dir held 5.1 GB on the hub; deleting operator-visible
102
- * gigabytes silently is not this addon's call, so it warns with the
103
- * footprint instead.
104
- */
105
- private cleanStagingArea;
106
- /**
107
- * Trigger a backup run through the global execution queue (D342):
108
- * at most one archive build at a time, a trigger that arrives while
109
- * one is in flight WAITS (or joins an identical queued run), and the
110
- * result says which happened. The call still resolves when the run
111
- * terminates; a cancelled run resolves with `cancelled: true` and
112
- * whatever entries landed before the stop — a deliberate operator
113
- * cancel is an outcome, not an error.
114
- */
115
- private triggerBackup;
116
- /** Wire `backup.listRuns` — queued + active + bounded history. */
117
- private listRuns;
118
- /**
119
- * Wire `backup.cancel`. Delegates to the queue: a queued run is
120
- * removed before it starts; the running run's abort signal fires and
121
- * `runBackupBuild` stops the tar/upload streams and deletes its
122
- * staging archive on the way out.
123
- */
124
- private cancelRun;
125
- /**
126
- * Execute ONE backup run — only ever called by the queue, never
127
- * directly (the queue is the single serialisation authority).
128
- * Builds the archive in the private staging dir, then pushes it to
129
- * every selected destination via the storage cap's chunked upload
130
- * protocol. Per-destination errors are logged and recorded on the
131
- * run — one bad sink doesn't kill the run.
132
- *
133
- * Cleanup contract (D342): the staging file is deleted in `finally`,
134
- * which covers success, per-destination failure, build failure AND
135
- * cancellation alike. The only leak this cannot cover — the process
136
- * dying inside the run — is reclaimed by the boot sweep in
137
- * `cleanStagingArea`.
138
- */
139
- private runBackupBuild;
140
- /**
141
- * THIS node's database owner (D693), reached through `database-snapshot`
142
- * pinned to the local node: the paths it answers must be on this host,
143
- * because this process archives them. No local node id means no pin, and an
144
- * unpinned singleton call could be answered by another host — refuse.
145
- */
146
- private databaseOwner;
147
- /**
148
- * Push the staged archive to a single destination via chunked
149
- * upload, then update the per-location manifest. Applies the
150
- * destination's retention policy as part of the same lock-protected
151
- * manifest mutation so the deletes never race with a concurrent
152
- * append.
153
- *
154
- * Throws on upload / manifest failure — caller logs and continues to
155
- * the next destination so a single bad sink doesn't fail the run.
156
- */
157
- private uploadAndIndex;
158
- /**
159
- * List archives at a single destination — newest-first. Reads only
160
- * the per-location `manifests.json` (no per-archive tarball read);
161
- * the orchestrator already snapshots each archive's locations into
162
- * the manifest at upload time.
163
- */
164
- private listArchives;
165
- /**
166
- * Upsert the per-destination policy row. Used by the admin-UI
167
- * destinations table — toggle enabled / change retention / set
168
- * label. No-ops with a logged warning if the
169
- * settings backend lacks structured-table support (no persistence
170
- * available).
171
- *
172
- * There is deliberately NO cadence here. A destination does not run on
173
- * its own timer — a schedule fans out to it — and the `cron` this method
174
- * used to accept had scheduled nothing since 2026-07-28 while still being
175
- * rendered as "daily at 03:00" (D384, and D62's "a switch that writes a
176
- * store nobody reads").
177
- */
178
- private upsertDestinationPolicy;
179
- /**
180
- * Validate a cron expression and peek the next N firing times. The
181
- * admin UI's CronEditor calls this on every keystroke (debounced)
182
- * to render a live "next-run" preview — invalid expressions surface
183
- * the parse error inline instead of waiting for save.
184
- */
185
- private previewSchedule;
186
- private getEntries;
187
- private deleteArchive;
188
- /**
189
- * Schedule a restore for the next boot. Pulls the archive bytes
190
- * down from the destination's storage location via the chunked-
191
- * download protocol into the private staging dir, then writes the
192
- * usual restore marker against the staged path so the boot-time
193
- * apply hook (in server-backend launcher) extracts before any
194
- * addon starts.
195
- *
196
- * `locations` (optional) is propagated into the marker as a
197
- * whitelist — only those top-level locations get extracted.
198
- */
199
- private scheduleRestore;
200
- private requireEncryptionKeys;
201
- /**
202
- * The key a run encrypts to; `null` = encryption off. THROWS when the
203
- * setting cannot be read — a run must fail rather than ship a plain archive
204
- * an operator asked to be encrypted.
205
- */
206
- private activeEncryptionKey;
207
- private getEncryption;
208
- private setupEncryption;
209
- private disableEncryption;
210
- private checkBackupKey;
211
- /**
212
- * Resolve a target destination set — see {@link selectBackupTargets} for the
213
- * rule. Caller-provided list wins over the per-destination policy flag;
214
- * NEITHER wins over `StorageLocation.enabled`, which is the operator's
215
- * switch on the storage screen and the only one that means "this disk takes
216
- * no writes" (D62).
217
- *
218
- * Reads locations + policies directly rather than going through
219
- * `listDestinations()`: that method also reads every destination's
220
- * `manifests.json` to hydrate `lastSuccess`, which target resolution has no
221
- * use for and which cost one round-trip per destination on every trigger.
222
- */
223
- private resolveTargets;
224
- /**
225
- * Persist the outcome of one attempted write to one destination.
226
- *
227
- * Best-effort by design: an unavailable settings backend must not turn a
228
- * successful backup into a failed one. But it is LOGGED when it cannot be
229
- * written — a status field that silently stops being updated is the whole
230
- * defect this method exists to close.
231
- */
232
- private recordDestinationOutcome;
233
- private startScheduleTimer;
234
- private stopScheduleTimer;
235
- /**
236
- * Schedule-driven backup scheduling. Walks every enabled backup
237
- * SCHEDULE (the N:M entry), computes the next due time after
238
- * `lastAttemptAt` (or the orchestrator's first-tick baseline if never
239
- * run), and fires a SINGLE archive fanned out to ALL of the
240
- * schedule's `locationIds` when due — with the schedule's per-entry
241
- * retention applied to each. Each schedule keeps its own cadence.
242
- *
243
- * Errors per schedule are isolated; one misconfigured cron doesn't
244
- * block the others. The schedule's `lastAttemptAt` is updated BEFORE the
245
- * trigger to dedupe (the tick runs every SCHEDULE_TICK_MS — without
246
- * the up-front update a long-running upload could overlap with the
247
- * next tick's same-due check).
248
- */
249
- private onScheduleTick;
250
- /**
251
- * Fire one schedule and RECORD what happened to it, naming every
252
- * destination. Three outcomes, three different persisted states —
253
- * because "fired" and "backed up" were the same field until D384:
254
- *
255
- * - archive landed somewhere → `lastSuccessAt`, `lastError` cleared;
256
- * - the run threw, or landed nowhere → `lastError`, no success stamp;
257
- * - the stamp could not be written → logged, named, not swallowed.
258
- */
259
- private runScheduledBackup;
260
- private listSchedules;
261
- private upsertSchedule;
262
- private deleteSchedule;
263
- private resolveScheduleService;
264
- private resolvePolicyService;
265
- /**
266
- * Narrow `ctx.api.storage` to the subset the manifest helpers need.
267
- * Lets the helpers be unit-tested with a Map-backed fake without
268
- * pulling in the full `AddonApi` shape.
269
- */
270
- private storageApi;
4
+ private systemBackup;
5
+ private policies;
6
+ private schedules;
7
+ /** Backup encryption keys — PUBLIC keys only (see encryption-key-store.ts). */
8
+ private encryptionKeys;
9
+ private warnedNoEncryptionStore;
10
+ private dataDir;
11
+ /**
12
+ * Transient build buffer for archive fan-out. The tar is built here
13
+ * ONCE, streamed to every destination via the storage cap's chunked
14
+ * upload, then removed. Lives at `<nodeDataDir>/backup-staging` —
15
+ * OUTSIDE every backed-up location, so a backup can never contain a
16
+ * backup (the old `ctx.dataDir/staging` sat inside `addons-data` and
17
+ * compounded 175M → 4.5G before Jul 28), and distinct from
18
+ * `<nodeDataDir>/backups` where the default `backups` destination
19
+ * seeds when `CAMSTACK_BACKUP_ROOT` is unset. See staging-paths.ts.
20
+ */
21
+ private stagingDir;
22
+ private scheduleTimer;
23
+ /** Guards the disarmed-scheduler complaint to once per process. */
24
+ private warnedSchedulerDisarmed;
25
+ /**
26
+ * Baseline used as the "after" anchor when a schedule has a cron but
27
+ * has never fired yet (no `lastAttemptAt`). Set on orchestrator boot so a
28
+ * pattern that fires every minute doesn't immediately replay every
29
+ * historical "missed" run from epoch 0.
30
+ */
31
+ private scheduleBaselineAt;
32
+ private readonly manifestLock;
33
+ /**
34
+ * Global execution queue — at most ONE archive build at a time,
35
+ * cluster-node-wide (D342). Replaces the earlier invisible
36
+ * single-flight `buildLock`: same serialisation guarantee (two
37
+ * schedules due one tick apart built 8.2 GB + 3.7 GB side by side on
38
+ * the hub, 2026-09-04), but every run is now observable via
39
+ * `listRuns`, joinable when identical, and cancellable mid-stream.
40
+ */
41
+ private runQueue;
42
+ constructor();
43
+ protected onInitialize(): Promise<ProviderRegistration[]>;
44
+ protected onShutdown(): Promise<void>;
45
+ /**
46
+ * Aggregate destinations from `api.storage.listLocations({ type: 'backups' })`
47
+ * joined with the per-destination policy table. New locations get an
48
+ * `ensureDefault` policy seeded transparently (enabled=true,
49
+ * retentionCount=defaultRetentionCount). Pre-existing operator-edited
50
+ * policies are preserved by the `ensureDefault` idempotency.
51
+ */
52
+ private listDestinations;
53
+ /**
54
+ * Join the enabled schedules by the locations they fan out to.
55
+ * Comma-joined crons (a location can be targeted by several schedules),
56
+ * earliest next firing. Computed from `Date.now()` — an operator asking
57
+ * "when next" means from now, never from a stale run cursor.
58
+ */
59
+ private cadenceByLocation;
60
+ private fetchBackupLocations;
61
+ /**
62
+ * Load every persisted policy and key it by `locationId`, while
63
+ * lazily seeding a default for any `locationId` we haven't seen
64
+ * before. Idempotent — `ensureDefault` no-ops on already-persisted
65
+ * rows. Falls back to the in-memory default policy when the policy
66
+ * service isn't wired (no settings-store backend available).
67
+ */
68
+ private loadPoliciesIndexed;
69
+ private fallbackPolicy;
70
+ private toDestinationWire;
71
+ /**
72
+ * Compute next-due ms-epoch for a cron, or `undefined` on parse error.
73
+ * Catches so a single malformed cron doesn't blank out the whole
74
+ * destinations list at the cap surface.
75
+ */
76
+ private safeNextDue;
77
+ /**
78
+ * Aggregate listing — read every `backups` location's `manifests.json`
79
+ * and return one wire entry per archive, tagged with `destinationId`.
80
+ * Failures on individual locations are logged and skipped so a single
81
+ * unreachable destination doesn't blank out the whole UI.
82
+ */
83
+ /**
84
+ * Bytes the archives occupy on each named location (D388).
85
+ *
86
+ * Summed from each location's own manifest — the record the uploader writes
87
+ * — so this never walks a filesystem and never stats a remote destination.
88
+ * A manifest that cannot be read contributes NOTHING and is logged: a
89
+ * destination that is temporarily unreachable must read back as unknown, not
90
+ * as an empty disk. A location holding no archives is omitted for the same
91
+ * reason it is omitted everywhere else — only the orchestrator can tell
92
+ * "nobody reported" from "reported nothing".
93
+ */
94
+ private backupOccupancy;
95
+ private aggregatedList;
96
+ private stagingPath;
97
+ /**
98
+ * Boot-time staging hygiene. Sweeps the staging dir (sparing an
99
+ * archive a pending-restore marker references — the boot hook has
100
+ * not consumed it yet), then reports — without touching — the LEGACY
101
+ * staging dir inside `addons-data`, where pre-move leaks live. The
102
+ * legacy dir held 5.1 GB on the hub; deleting operator-visible
103
+ * gigabytes silently is not this addon's call, so it warns with the
104
+ * footprint instead.
105
+ */
106
+ private cleanStagingArea;
107
+ /**
108
+ * Trigger a backup run through the global execution queue (D342):
109
+ * at most one archive build at a time, a trigger that arrives while
110
+ * one is in flight WAITS (or joins an identical queued run), and the
111
+ * result says which happened. The call still resolves when the run
112
+ * terminates; a cancelled run resolves with `cancelled: true` and
113
+ * whatever entries landed before the stop — a deliberate operator
114
+ * cancel is an outcome, not an error.
115
+ */
116
+ private triggerBackup;
117
+ /** Wire `backup.listRuns` — queued + active + bounded history. */
118
+ private listRuns;
119
+ /**
120
+ * Wire `backup.cancel`. Delegates to the queue: a queued run is
121
+ * removed before it starts; the running run's abort signal fires and
122
+ * `runBackupBuild` stops the tar/upload streams and deletes its
123
+ * staging archive on the way out.
124
+ */
125
+ private cancelRun;
126
+ /**
127
+ * Execute ONE backup run — only ever called by the queue, never
128
+ * directly (the queue is the single serialisation authority).
129
+ * Builds the archive in the private staging dir, then pushes it to
130
+ * every selected destination via the storage cap's chunked upload
131
+ * protocol. Per-destination errors are logged and recorded on the
132
+ * run — one bad sink doesn't kill the run.
133
+ *
134
+ * Cleanup contract (D342): the staging file is deleted in `finally`,
135
+ * which covers success, per-destination failure, build failure AND
136
+ * cancellation alike. The only leak this cannot cover — the process
137
+ * dying inside the run — is reclaimed by the boot sweep in
138
+ * `cleanStagingArea`.
139
+ */
140
+ private runBackupBuild;
141
+ /**
142
+ * THIS node's database owner (D693), reached through `database-snapshot`
143
+ * pinned to the local node: the paths it answers must be on this host,
144
+ * because this process archives them. No local node id means no pin, and an
145
+ * unpinned singleton call could be answered by another host — refuse.
146
+ */
147
+ private databaseOwner;
148
+ /**
149
+ * Push the staged archive to a single destination via chunked
150
+ * upload, then update the per-location manifest. Applies the
151
+ * destination's retention policy as part of the same lock-protected
152
+ * manifest mutation so the deletes never race with a concurrent
153
+ * append.
154
+ *
155
+ * Throws on upload / manifest failure — caller logs and continues to
156
+ * the next destination so a single bad sink doesn't fail the run.
157
+ */
158
+ private uploadAndIndex;
159
+ /**
160
+ * List archives at a single destination — newest-first. Reads only
161
+ * the per-location `manifests.json` (no per-archive tarball read);
162
+ * the orchestrator already snapshots each archive's locations into
163
+ * the manifest at upload time.
164
+ */
165
+ private listArchives;
166
+ /**
167
+ * Upsert the per-destination policy row. Used by the admin-UI
168
+ * destinations table — toggle enabled / change retention / set
169
+ * label. No-ops with a logged warning if the
170
+ * settings backend lacks structured-table support (no persistence
171
+ * available).
172
+ *
173
+ * There is deliberately NO cadence here. A destination does not run on
174
+ * its own timer — a schedule fans out to it — and the `cron` this method
175
+ * used to accept had scheduled nothing since 2026-07-28 while still being
176
+ * rendered as "daily at 03:00" (D384, and D62's "a switch that writes a
177
+ * store nobody reads").
178
+ */
179
+ private upsertDestinationPolicy;
180
+ /**
181
+ * Validate a cron expression and peek the next N firing times. The
182
+ * admin UI's CronEditor calls this on every keystroke (debounced)
183
+ * to render a live "next-run" preview — invalid expressions surface
184
+ * the parse error inline instead of waiting for save.
185
+ */
186
+ private previewSchedule;
187
+ private getEntries;
188
+ private deleteArchive;
189
+ /**
190
+ * Schedule a restore for the next boot. Pulls the archive bytes
191
+ * down from the destination's storage location via the chunked-
192
+ * download protocol into the private staging dir, then writes the
193
+ * usual restore marker against the staged path so the boot-time
194
+ * apply hook (in server-backend launcher) extracts before any
195
+ * addon starts.
196
+ *
197
+ * `locations` (optional) is propagated into the marker as a
198
+ * whitelist — only those top-level locations get extracted.
199
+ */
200
+ private scheduleRestore;
201
+ private requireEncryptionKeys;
202
+ /**
203
+ * The key a run encrypts to; `null` = encryption off. THROWS when the
204
+ * setting cannot be read — a run must fail rather than ship a plain archive
205
+ * an operator asked to be encrypted.
206
+ */
207
+ private activeEncryptionKey;
208
+ private getEncryption;
209
+ private setupEncryption;
210
+ private disableEncryption;
211
+ private checkBackupKey;
212
+ /**
213
+ * Resolve a target destination set — see {@link selectBackupTargets} for the
214
+ * rule. Caller-provided list wins over the per-destination policy flag;
215
+ * NEITHER wins over `StorageLocation.enabled`, which is the operator's
216
+ * switch on the storage screen and the only one that means "this disk takes
217
+ * no writes" (D62).
218
+ *
219
+ * Reads locations + policies directly rather than going through
220
+ * `listDestinations()`: that method also reads every destination's
221
+ * `manifests.json` to hydrate `lastSuccess`, which target resolution has no
222
+ * use for and which cost one round-trip per destination on every trigger.
223
+ */
224
+ private resolveTargets;
225
+ /**
226
+ * Persist the outcome of one attempted write to one destination.
227
+ *
228
+ * Best-effort by design: an unavailable settings backend must not turn a
229
+ * successful backup into a failed one. But it is LOGGED when it cannot be
230
+ * written — a status field that silently stops being updated is the whole
231
+ * defect this method exists to close.
232
+ */
233
+ private recordDestinationOutcome;
234
+ private startScheduleTimer;
235
+ private stopScheduleTimer;
236
+ /**
237
+ * Schedule-driven backup scheduling. Walks every enabled backup
238
+ * SCHEDULE (the N:M entry), computes the next due time after
239
+ * `lastAttemptAt` (or the orchestrator's first-tick baseline if never
240
+ * run), and fires a SINGLE archive fanned out to ALL of the
241
+ * schedule's `locationIds` when due — with the schedule's per-entry
242
+ * retention applied to each. Each schedule keeps its own cadence.
243
+ *
244
+ * Errors per schedule are isolated; one misconfigured cron doesn't
245
+ * block the others. The schedule's `lastAttemptAt` is updated BEFORE the
246
+ * trigger to dedupe (the tick runs every SCHEDULE_TICK_MS — without
247
+ * the up-front update a long-running upload could overlap with the
248
+ * next tick's same-due check).
249
+ */
250
+ private onScheduleTick;
251
+ /**
252
+ * Fire one schedule and RECORD what happened to it, naming every
253
+ * destination. Three outcomes, three different persisted states —
254
+ * because "fired" and "backed up" were the same field until D384:
255
+ *
256
+ * - archive landed somewhere → `lastSuccessAt`, `lastError` cleared;
257
+ * - the run threw, or landed nowhere → `lastError`, no success stamp;
258
+ * - the stamp could not be written → logged, named, not swallowed.
259
+ */
260
+ private runScheduledBackup;
261
+ private listSchedules;
262
+ private upsertSchedule;
263
+ private deleteSchedule;
264
+ private resolveScheduleService;
265
+ private resolvePolicyService;
266
+ /**
267
+ * Narrow `ctx.api.storage` to the subset the manifest helpers need.
268
+ * Lets the helpers be unit-tested with a Map-backed fake without
269
+ * pulling in the full `AddonApi` shape.
270
+ */
271
+ private storageApi;
271
272
  }
272
273
  export default BackupOrchestratorAddon;
@@ -1,23 +1,23 @@
1
1
  /**
2
- * Validate a cron expression and return its next firing time strictly
3
- * after `after`, expressed as ms-epoch. Returns `null` when the
4
- * expression has no future runs (croner returns null e.g. for
5
- * fully-bounded patterns that have already elapsed). Throws when the
6
- * expression is syntactically invalid — callers are expected to
7
- * surface that to the operator.
8
- */
2
+ * Validate a cron expression and return its next firing time strictly
3
+ * after `after`, expressed as ms-epoch. Returns `null` when the
4
+ * expression has no future runs (croner returns null e.g. for
5
+ * fully-bounded patterns that have already elapsed). Throws when the
6
+ * expression is syntactically invalid — callers are expected to
7
+ * surface that to the operator.
8
+ */
9
9
  export declare function computeNextDue(cron: string, after: number): number | null;
10
10
  /**
11
- * Validate without computing — returns true when `cron` parses, false
12
- * otherwise. Used by the cap-router input zod schema's `.refine`
13
- * callback to reject malformed expressions at the boundary instead
14
- * of at scheduler-tick time.
15
- */
11
+ * Validate without computing — returns true when `cron` parses, false
12
+ * otherwise. Used by the cap-router input zod schema's `.refine`
13
+ * callback to reject malformed expressions at the boundary instead
14
+ * of at scheduler-tick time.
15
+ */
16
16
  export declare function isValidCron(cron: string): boolean;
17
17
  /**
18
- * Peek the next N firing times after `after` (default: now). Used by
19
- * the admin UI's CronEditor preview pane — operators see the next
20
- * 3–5 runs as they edit the expression so a wrong pattern is
21
- * obvious before save.
22
- */
18
+ * Peek the next N firing times after `after` (default: now). Used by
19
+ * the admin UI's CronEditor preview pane — operators see the next
20
+ * 3–5 runs as they edit the expression so a wrong pattern is
21
+ * obvious before save.
22
+ */
23
23
  export declare function previewNextRuns(cron: string, count: number, after?: number): readonly number[];