@camstack/system 1.2.389 → 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 -93
  307. package/dist/builtins/system-config/system-config.addon.js +46 -33
  308. package/dist/builtins/system-config/system-config.addon.mjs +46 -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,88 +1,105 @@
1
- import { CollectionColumn, ISettingsStoreProvider } from '@camstack/types';
2
1
  /**
3
- * Per-`backups`-location policy. `locationId` is the foreign-key into
4
- * the storage orchestrator's `storage_locations` table.
5
- *
6
- * `enabled` gates whether scheduled / unspecified-target backups fan out
7
- * to this destination; operators can disable a destination temporarily
8
- * without deleting the underlying `StorageLocation`.
9
- *
10
- * `retentionCount` is independent per destination — destination A may
11
- * keep 3 archives while B keeps 30.
12
- *
13
- * `label` is an optional operator-defined display string. When omitted
14
- * the orchestrator falls back to the `StorageLocation.displayName`.
15
- */
2
+ * Per-destination policy storage for the backup orchestrator
3
+ * (Task 9 of the storage-unification refactor — backup arch carry-over).
4
+ *
5
+ * Each row is keyed by `locationId` (the `<type>:<slug>` id of a
6
+ * `backups`-typed `StorageLocation`). The orchestrator now reads the
7
+ * authoritative list of destinations from the storage cap
8
+ * (`api.storage.listLocations({ type: 'backups' })`) and joins it with
9
+ * this table to produce the wire-shape `BackupDestinationInfo` consumed
10
+ * by the admin UI. There is no longer a `backup-destination` cap call
11
+ * in the path.
12
+ *
13
+ * Contract mirror of `SqliteLocationStore` (storage-orchestrator): lazy
14
+ * `declareCollection` so the constructor stays sync, and every read/write on
15
+ * the `settings-store` collection surface. Callers obtain the provider via
16
+ * `kernel.capabilityRegistry.getSingleton<ISettingsStoreProvider>('settings-store')`.
17
+ */
18
+ import type { CollectionColumn, ISettingsStoreProvider } from "@camstack/types";
19
+ /**
20
+ * Per-`backups`-location policy. `locationId` is the foreign-key into
21
+ * the storage orchestrator's `storage_locations` table.
22
+ *
23
+ * `enabled` gates whether scheduled / unspecified-target backups fan out
24
+ * to this destination; operators can disable a destination temporarily
25
+ * without deleting the underlying `StorageLocation`.
26
+ *
27
+ * `retentionCount` is independent per destination — destination A may
28
+ * keep 3 archives while B keeps 30.
29
+ *
30
+ * `label` is an optional operator-defined display string. When omitted
31
+ * the orchestrator falls back to the `StorageLocation.displayName`.
32
+ */
16
33
  export interface BackupDestinationPolicy {
17
- readonly locationId: string;
18
- readonly enabled: boolean;
19
- readonly retentionCount: number;
20
- readonly label?: string;
21
- /**
22
- * ms-epoch of the last time a run ATTEMPTED to write an archive here,
23
- * whatever the outcome. Never a success stamp — `lastError` says whether
24
- * the attempt landed, and the newest manifest entry says when one last
25
- * did. Rows written before 2026-07-28 carry the old per-location
26
- * scheduler's stamp, which had exactly this meaning.
27
- */
28
- readonly lastAttemptAt?: number;
29
- /**
30
- * Why the last attempt failed, verbatim from the provider. Cleared on the
31
- * next attempt that lands. A destination that has never been written to
32
- * has neither field, and that is REPORTED as never — D384.
33
- */
34
- readonly lastError?: string;
34
+ readonly locationId: string;
35
+ readonly enabled: boolean;
36
+ readonly retentionCount: number;
37
+ readonly label?: string;
38
+ /**
39
+ * ms-epoch of the last time a run ATTEMPTED to write an archive here,
40
+ * whatever the outcome. Never a success stamp — `lastError` says whether
41
+ * the attempt landed, and the newest manifest entry says when one last
42
+ * did. Rows written before 2026-07-28 carry the old per-location
43
+ * scheduler's stamp, which had exactly this meaning.
44
+ */
45
+ readonly lastAttemptAt?: number;
46
+ /**
47
+ * Why the last attempt failed, verbatim from the provider. Cleared on the
48
+ * next attempt that lands. A destination that has never been written to
49
+ * has neither field, and that is REPORTED as never — D384.
50
+ */
51
+ readonly lastError?: string;
35
52
  }
36
53
  export declare const BACKUP_DESTINATION_POLICIES_COLUMNS: readonly CollectionColumn[];
37
54
  export declare class BackupDestinationPolicyService {
38
- private readonly store;
39
- private declared;
40
- constructor(store: ISettingsStoreProvider);
41
- /**
42
- * Lazy `declareCollection` — called from every read/write path.
43
- * `declareCollection` is idempotent, so repeated calls collapse to a no-op
44
- * after the first. This keeps the constructor synchronous and avoids a
45
- * separate `initialize()` step that callers could forget.
46
- */
47
- initialize(): Promise<void>;
48
- private ensureDeclared;
49
- list(): Promise<readonly BackupDestinationPolicy[]>;
50
- get(locationId: string): Promise<BackupDestinationPolicy | null>;
51
- /**
52
- * Replace-or-insert. Implemented as delete + insert, mirroring the
53
- * `SqliteLocationStore` contract.
54
- */
55
- upsert(p: BackupDestinationPolicy): Promise<void>;
56
- delete(locationId: string): Promise<void>;
57
- /**
58
- * Auto-create a default policy for a `backups` location seen for the
59
- * first time (returns the existing policy unchanged when present).
60
- * The orchestrator calls this lazily on the first `listDestinations`
61
- * pass so newly-added storage locations are surfaced as enabled
62
- * destinations without an explicit configuration step.
63
- *
64
- * Defaults are passed by the orchestrator (currently `retentionCount=7`).
65
- * A fresh destination is enabled and keeps 7 archives; it gets NO cadence
66
- * of its own — a destination runs when a schedule fans out to it, and
67
- * seeding a cron here would advertise a nightly run nothing performs
68
- * (D384).
69
- */
70
- ensureDefault(locationId: string, defaults: {
71
- retentionCount: number;
72
- }): Promise<BackupDestinationPolicy>;
73
- /**
74
- * Stamp the outcome of ONE attempted write to this destination.
75
- *
76
- * Read-modify-write on the policy row so the operator's `enabled`,
77
- * `retentionCount` and `label` survive. A destination with no row yet
78
- * gets one — an attempt on an unseen location must still be recorded, or
79
- * the failure disappears with the process (which is exactly how a 03:00
80
- * SMB refusal stayed invisible until the operator went looking).
81
- */
82
- recordAttempt(locationId: string, outcome: {
83
- attemptAt: number;
84
- error?: string;
85
- }, defaults: {
86
- retentionCount: number;
87
- }): Promise<void>;
55
+ private readonly store;
56
+ private declared;
57
+ constructor(store: ISettingsStoreProvider);
58
+ /**
59
+ * Lazy `declareCollection` — called from every read/write path.
60
+ * `declareCollection` is idempotent, so repeated calls collapse to a no-op
61
+ * after the first. This keeps the constructor synchronous and avoids a
62
+ * separate `initialize()` step that callers could forget.
63
+ */
64
+ initialize(): Promise<void>;
65
+ private ensureDeclared;
66
+ list(): Promise<readonly BackupDestinationPolicy[]>;
67
+ get(locationId: string): Promise<BackupDestinationPolicy | null>;
68
+ /**
69
+ * Replace-or-insert. Implemented as delete + insert, mirroring the
70
+ * `SqliteLocationStore` contract.
71
+ */
72
+ upsert(p: BackupDestinationPolicy): Promise<void>;
73
+ delete(locationId: string): Promise<void>;
74
+ /**
75
+ * Auto-create a default policy for a `backups` location seen for the
76
+ * first time (returns the existing policy unchanged when present).
77
+ * The orchestrator calls this lazily on the first `listDestinations`
78
+ * pass so newly-added storage locations are surfaced as enabled
79
+ * destinations without an explicit configuration step.
80
+ *
81
+ * Defaults are passed by the orchestrator (currently `retentionCount=7`).
82
+ * A fresh destination is enabled and keeps 7 archives; it gets NO cadence
83
+ * of its own — a destination runs when a schedule fans out to it, and
84
+ * seeding a cron here would advertise a nightly run nothing performs
85
+ * (D384).
86
+ */
87
+ ensureDefault(locationId: string, defaults: {
88
+ retentionCount: number;
89
+ }): Promise<BackupDestinationPolicy>;
90
+ /**
91
+ * Stamp the outcome of ONE attempted write to this destination.
92
+ *
93
+ * Read-modify-write on the policy row so the operator's `enabled`,
94
+ * `retentionCount` and `label` survive. A destination with no row yet
95
+ * gets one — an attempt on an unseen location must still be recorded, or
96
+ * the failure disappears with the process (which is exactly how a 03:00
97
+ * SMB refusal stayed invisible until the operator went looking).
98
+ */
99
+ recordAttempt(locationId: string, outcome: {
100
+ attemptAt: number;
101
+ error?: string;
102
+ }, defaults: {
103
+ retentionCount: number;
104
+ }): Promise<void>;
88
105
  }
@@ -1,12 +1,12 @@
1
- import { IScopedLogger } from '@camstack/types';
2
- import { ChunkedDownloadApi } from './manifest-store.js';
1
+ import type { IScopedLogger } from "@camstack/types";
2
+ import type { ChunkedDownloadApi } from "./manifest-store.js";
3
3
  export interface DownloadArchiveInput {
4
- readonly api: ChunkedDownloadApi;
5
- readonly locationId: string;
6
- readonly filename: string;
7
- readonly cachePath: string;
8
- /** Per-chunk byte budget. Matches the upload helper's 8 MiB. */
9
- readonly chunkBytes: number;
10
- readonly logger: IScopedLogger;
4
+ readonly api: ChunkedDownloadApi;
5
+ readonly locationId: string;
6
+ readonly filename: string;
7
+ readonly cachePath: string;
8
+ /** Per-chunk byte budget. Matches the upload helper's 8 MiB. */
9
+ readonly chunkBytes: number;
10
+ readonly logger: IScopedLogger;
11
11
  }
12
12
  export declare function downloadArchiveToCache(input: DownloadArchiveInput): Promise<void>;
@@ -1,36 +1,47 @@
1
- import { ISettingsStoreProvider } from '@camstack/types';
2
1
  /**
3
- * @durable class=config owner=backup-orchestrator
4
- * write="`setupEncryption` inserts one row per generated key and retires the
5
- * previous active row; `disableEncryption` retires the active row"
6
- * retention="none — one small row per key ever generated; a retired row
7
- * names the key older archives need"
8
- */
2
+ * The backup encryption setting (operator decision 2026-10-09): which backup
3
+ * PUBLIC key new archives are encrypted to, and the keys used before.
4
+ *
5
+ * The secret key is never here — it is shown once at setup and kept by the
6
+ * operator (see `system-backup/backup-encryption.ts` for why). A retired key
7
+ * stays listed so the Backup page can say which key an older archive needs.
8
+ *
9
+ * A read that fails THROWS: a backup run must never take "could not read the
10
+ * setting" for "encryption is off" and ship a plain archive.
11
+ */
12
+ import type { ISettingsStoreProvider } from "@camstack/types";
13
+ /**
14
+ * @durable class=config owner=backup-orchestrator
15
+ * write="`setupEncryption` inserts one row per generated key and retires the
16
+ * previous active row; `disableEncryption` retires the active row"
17
+ * retention="none — one small row per key ever generated; a retired row
18
+ * names the key older archives need"
19
+ */
9
20
  export declare const BACKUP_ENCRYPTION_KEYS_COLLECTION = "backup_encryption_keys";
10
21
  export interface BackupEncryptionKeyRecord {
11
- readonly keyId: string;
12
- readonly publicKey: string;
13
- readonly createdAt: number;
14
- readonly retiredAt: number | null;
22
+ readonly keyId: string;
23
+ readonly publicKey: string;
24
+ readonly createdAt: number;
25
+ readonly retiredAt: number | null;
15
26
  }
16
- type Store = Pick<ISettingsStoreProvider, 'declareCollection' | 'query' | 'insert' | 'deleteWhere'>;
27
+ type Store = Pick<ISettingsStoreProvider, "declareCollection" | "query" | "insert" | "deleteWhere">;
17
28
  export declare class BackupEncryptionKeyStore {
18
- private readonly store;
19
- private readonly now;
20
- private declared;
21
- constructor(store: Store, now?: () => number);
22
- private ensureDeclared;
23
- /** Every key, newest first. */
24
- list(): Promise<readonly BackupEncryptionKeyRecord[]>;
25
- /** The key new archives are encrypted to; `null` = encryption off. */
26
- active(): Promise<BackupEncryptionKeyRecord | null>;
27
- /** Make `publicKey` the active key; the previous one is retired, kept listed. */
28
- activate(input: {
29
- readonly publicKey: string;
30
- }): Promise<BackupEncryptionKeyRecord>;
31
- /** Encryption off: the active key is retired. Archives already made keep needing it. */
32
- disable(): Promise<void>;
33
- private retireActive;
34
- private write;
29
+ private readonly store;
30
+ private readonly now;
31
+ private declared;
32
+ constructor(store: Store, now?: () => number);
33
+ private ensureDeclared;
34
+ /** Every key, newest first. */
35
+ list(): Promise<readonly BackupEncryptionKeyRecord[]>;
36
+ /** The key new archives are encrypted to; `null` = encryption off. */
37
+ active(): Promise<BackupEncryptionKeyRecord | null>;
38
+ /** Make `publicKey` the active key; the previous one is retired, kept listed. */
39
+ activate(input: {
40
+ readonly publicKey: string;
41
+ }): Promise<BackupEncryptionKeyRecord>;
42
+ /** Encryption off: the active key is retired. Archives already made keep needing it. */
43
+ disable(): Promise<void>;
44
+ private retireActive;
45
+ private write;
35
46
  }
36
47
  export {};
@@ -1,2 +1,2 @@
1
- export { BackupOrchestratorAddon } from './backup-orchestrator.addon.js';
2
- export { BackupOrchestratorAddon as default } from './backup-orchestrator.addon.js';
1
+ export { BackupOrchestratorAddon } from "./backup-orchestrator.addon.js";
2
+ export { BackupOrchestratorAddon as default } from "./backup-orchestrator.addon.js";
@@ -1,95 +1,114 @@
1
- import { AddonApi } from '@camstack/types';
2
- import { ArchiveManifest } from '../system-backup/system-backup.service.js';
1
+ /**
2
+ * Per-location backup manifest persistence (Task 10 of the storage-
3
+ * unification refactor).
4
+ *
5
+ * Each `backups`-typed `StorageLocation` carries a single
6
+ * `manifests.json` file at its root. The orchestrator reads/appends/
7
+ * writes this file via the consumer-facing `storage` cap — there is
8
+ * no on-disk path coupling, the storage provider (filesystem, SFTP,
9
+ * S3, …) handles dispatch.
10
+ *
11
+ * Concurrency: the orchestrator serializes per-location reads/writes
12
+ * through `withLocationLock` so a fan-out of N parallel destination
13
+ * uploads can't interleave manifest mutations within the same
14
+ * location. Across locations, mutations run in parallel.
15
+ *
16
+ * Wire shape mirrors the spec: each archive entry carries an inline
17
+ * snapshot of the embedded `ArchiveManifest` so `getEntries` can
18
+ * serve the contents preview without re-reading the tarball.
19
+ */
20
+ import type { AddonApi } from "@camstack/types";
21
+ import type { ArchiveManifest } from "../system-backup/system-backup.service.js";
3
22
  /** File path (relative to the location root) where the index lives. */
4
23
  export declare const MANIFESTS_FILENAME = "manifests.json";
5
24
  export interface ManifestArchiveEntry {
6
- readonly id: string;
7
- /** Filename inside the location (e.g. `<id>.tar.gz`). */
8
- readonly filename: string;
9
- readonly createdAt: number;
10
- readonly sizeBytes: number;
11
- readonly label?: string;
12
- /**
13
- * Snapshot of the embedded `.camstack-backup-manifest.json`. For an
14
- * ENCRYPTED archive only its outline (locations, totals, no file list): the
15
- * destination holds this index in clear, and the file list stays inside the
16
- * ciphertext.
17
- */
18
- readonly manifest: ArchiveManifest;
19
- /** Present when the archive is encrypted to a backup key. */
20
- readonly encryption?: ManifestArchiveEncryption;
25
+ readonly id: string;
26
+ /** Filename inside the location (e.g. `<id>.tar.gz`). */
27
+ readonly filename: string;
28
+ readonly createdAt: number;
29
+ readonly sizeBytes: number;
30
+ readonly label?: string;
31
+ /**
32
+ * Snapshot of the embedded `.camstack-backup-manifest.json`. For an
33
+ * ENCRYPTED archive only its outline (locations, totals, no file list): the
34
+ * destination holds this index in clear, and the file list stays inside the
35
+ * ciphertext.
36
+ */
37
+ readonly manifest: ArchiveManifest;
38
+ /** Present when the archive is encrypted to a backup key. */
39
+ readonly encryption?: ManifestArchiveEncryption;
21
40
  }
22
41
  export interface ManifestArchiveEncryption {
23
- readonly scheme: string;
24
- readonly keyId: string;
42
+ readonly scheme: string;
43
+ readonly keyId: string;
25
44
  }
26
45
  export interface LocationBackupManifest {
27
- readonly version: 1;
28
- readonly archives: readonly ManifestArchiveEntry[];
46
+ readonly version: 1;
47
+ readonly archives: readonly ManifestArchiveEntry[];
29
48
  }
30
49
  /** Subset of `AddonApi['storage']` the manifest store consumes. */
31
- export type ManifestStorageApi = Pick<AddonApi['storage'], 'read' | 'write' | 'exists'>;
50
+ export type ManifestStorageApi = Pick<AddonApi["storage"], "read" | "write" | "exists">;
32
51
  /**
33
- * Subset of `AddonApi['storage']` consumed by the chunked-download
34
- * helper. Sourced from the same generated type so the contract stays
35
- * in lockstep with the live cap surface.
36
- */
37
- export type ChunkedDownloadApi = Pick<AddonApi['storage'], 'beginDownload' | 'readChunk' | 'endDownload'>;
52
+ * Subset of `AddonApi['storage']` consumed by the chunked-download
53
+ * helper. Sourced from the same generated type so the contract stays
54
+ * in lockstep with the live cap surface.
55
+ */
56
+ export type ChunkedDownloadApi = Pick<AddonApi["storage"], "beginDownload" | "readChunk" | "endDownload">;
38
57
  /**
39
- * Read the per-location manifest. Returns an empty manifest on first
40
- * use (when `manifests.json` doesn't exist) or when the file is
41
- * unreadable / corrupt — operators see destination state degrade
42
- * gracefully rather than the orchestrator crashing.
43
- */
58
+ * Read the per-location manifest. Returns an empty manifest on first
59
+ * use (when `manifests.json` doesn't exist) or when the file is
60
+ * unreadable / corrupt — operators see destination state degrade
61
+ * gracefully rather than the orchestrator crashing.
62
+ */
44
63
  export declare function readLocationManifest(api: ManifestStorageApi, locationId: string): Promise<LocationBackupManifest>;
45
64
  export declare function writeLocationManifest(api: ManifestStorageApi, locationId: string, manifest: LocationBackupManifest): Promise<void>;
46
65
  /**
47
- * Decode the raw bytes of `manifests.json`. Falls back to an empty
48
- * manifest on JSON-parse / shape-validation failure — same defensive
49
- * stance as the legacy `LocalBackupService.ensureManifestsLoaded`.
50
- */
66
+ * Decode the raw bytes of `manifests.json`. Falls back to an empty
67
+ * manifest on JSON-parse / shape-validation failure — same defensive
68
+ * stance as the legacy `LocalBackupService.ensureManifestsLoaded`.
69
+ */
51
70
  export declare function parseManifestBytes(bytes: Uint8Array): LocationBackupManifest;
52
71
  /**
53
- * What the destination's clear-text index may say about an encrypted archive:
54
- * the outline a restore needs (locations, sizes, the snapshot promise) — not
55
- * the list of files, which stays inside the ciphertext.
56
- */
72
+ * What the destination's clear-text index may say about an encrypted archive:
73
+ * the outline a restore needs (locations, sizes, the snapshot promise) — not
74
+ * the list of files, which stays inside the ciphertext.
75
+ */
57
76
  export declare function outlineOfManifest(manifest: ArchiveManifest): ArchiveManifest;
58
77
  /**
59
- * Build a `ManifestArchiveEntry` from the raw inputs collected during
60
- * a successful upload. Pure transform — no I/O — kept here so the
61
- * triggerBackup path stays terse.
62
- */
78
+ * Build a `ManifestArchiveEntry` from the raw inputs collected during
79
+ * a successful upload. Pure transform — no I/O — kept here so the
80
+ * triggerBackup path stays terse.
81
+ */
63
82
  export declare function buildArchiveEntry(input: {
64
- id: string;
65
- filename: string;
66
- createdAt: number;
67
- sizeBytes: number;
68
- label?: string;
69
- manifest: ArchiveManifest;
70
- encryption?: ManifestArchiveEncryption;
83
+ id: string;
84
+ filename: string;
85
+ createdAt: number;
86
+ sizeBytes: number;
87
+ label?: string;
88
+ manifest: ArchiveManifest;
89
+ encryption?: ManifestArchiveEncryption;
71
90
  }): ManifestArchiveEntry;
72
91
  /**
73
- * Pure retention split: given an archive list and the operator's
74
- * `retentionCount`, return `{ keep, drop }` where `keep` is the most-
75
- * recent N archives (newest first) and `drop` is the older overflow.
76
- *
77
- * `retentionCount <= 0` is treated as "no pruning" — defensive against
78
- * a config value that would otherwise wipe every archive on the next
79
- * write.
80
- */
92
+ * Pure retention split: given an archive list and the operator's
93
+ * `retentionCount`, return `{ keep, drop }` where `keep` is the most-
94
+ * recent N archives (newest first) and `drop` is the older overflow.
95
+ *
96
+ * `retentionCount <= 0` is treated as "no pruning" — defensive against
97
+ * a config value that would otherwise wipe every archive on the next
98
+ * write.
99
+ */
81
100
  export declare function applyRetention(archives: readonly ManifestArchiveEntry[], retentionCount: number): {
82
- readonly keep: readonly ManifestArchiveEntry[];
83
- readonly drop: readonly ManifestArchiveEntry[];
101
+ readonly keep: readonly ManifestArchiveEntry[];
102
+ readonly drop: readonly ManifestArchiveEntry[];
84
103
  };
85
104
  /**
86
- * Per-location async mutex. The orchestrator owns one instance and
87
- * funnels every read-modify-write of `manifests.json` through it so
88
- * parallel destination uploads (within the same location) commit in
89
- * arrival order. Across locations the operations run in parallel —
90
- * each location keys its own promise chain.
91
- */
105
+ * Per-location async mutex. The orchestrator owns one instance and
106
+ * funnels every read-modify-write of `manifests.json` through it so
107
+ * parallel destination uploads (within the same location) commit in
108
+ * arrival order. Across locations the operations run in parallel —
109
+ * each location keys its own promise chain.
110
+ */
92
111
  export declare class LocationManifestLock {
93
- private readonly chains;
94
- run<T>(locationId: string, fn: () => Promise<T>): Promise<T>;
112
+ private readonly chains;
113
+ run<T>(locationId: string, fn: () => Promise<T>): Promise<T>;
95
114
  }
@@ -1,24 +1,24 @@
1
1
  /** An encrypted backup was asked to restore without its key. */
2
2
  export declare class BackupKeyRequiredError extends Error {
3
- readonly keyId: string;
4
- constructor(keyId: string);
3
+ readonly keyId: string;
4
+ constructor(keyId: string);
5
5
  }
6
6
  /**
7
- * Before downloading gigabytes: does the operator's key fit what the
8
- * destination's manifest says the archive needs? `archiveKeyId` undefined =
9
- * the manifest records no encryption (the header check after the download
10
- * remains the authority).
11
- */
7
+ * Before downloading gigabytes: does the operator's key fit what the
8
+ * destination's manifest says the archive needs? `archiveKeyId` undefined =
9
+ * the manifest records no encryption (the header check after the download
10
+ * remains the authority).
11
+ */
12
12
  export declare function precheckRestoreKey(archiveKeyId: string | undefined, secretKey: string | undefined): void;
13
13
  export interface PrepareRestoreInput {
14
- /** The archive as downloaded from the destination. Consumed (deleted or renamed). */
15
- readonly downloaded: string;
16
- /** Where the restore marker will point: a plain `.tar.gz`. */
17
- readonly target: string;
18
- readonly secretKey?: string;
14
+ /** The archive as downloaded from the destination. Consumed (deleted or renamed). */
15
+ readonly downloaded: string;
16
+ /** Where the restore marker will point: a plain `.tar.gz`. */
17
+ readonly target: string;
18
+ readonly secretKey?: string;
19
19
  }
20
20
  export interface PreparedRestore {
21
- readonly encrypted: boolean;
22
- readonly keyId?: string;
21
+ readonly encrypted: boolean;
22
+ readonly keyId?: string;
23
23
  }
24
24
  export declare function prepareRestoreArchive(input: PrepareRestoreInput): Promise<PreparedRestore>;