@camstack/system 1.2.390 → 1.2.392

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/dist/addon/addon-api-factory.d.ts +30 -30
  2. package/dist/addon-routes/addon-route-registry.d.ts +31 -31
  3. package/dist/addon-runner.js +1 -1
  4. package/dist/addon-runner.mjs +1 -1
  5. package/dist/addon-utils.d.ts +22 -22
  6. package/dist/addon-utils.js +1 -1
  7. package/dist/addon-utils.mjs +1 -1
  8. package/dist/amd-accelerators-CEuPFBBK.js +36 -0
  9. package/dist/amd-accelerators-U_RsoEDd.mjs +35 -0
  10. package/dist/amd-npu-B-QyyMyF.js +53 -0
  11. package/dist/amd-npu-Db_SoSuL.mjs +52 -0
  12. package/dist/auth/admin-token-manager.d.ts +37 -67
  13. package/dist/auth/api-key-manager.d.ts +8 -8
  14. package/dist/auth/auth-audit-log.d.ts +29 -49
  15. package/dist/auth/auth-manager.d.ts +127 -126
  16. package/dist/auth/cidr.d.ts +8 -8
  17. package/dist/auth/external-identity-manager.d.ts +46 -34
  18. package/dist/auth/jwt-signing-key.d.ts +14 -14
  19. package/dist/auth/login-session-manager.d.ts +95 -135
  20. package/dist/auth/parse-record.d.ts +13 -13
  21. package/dist/auth/scope-matcher.d.ts +7 -7
  22. package/dist/auth/scoped-token-manager.d.ts +62 -62
  23. package/dist/auth/token-expiry.d.ts +49 -26
  24. package/dist/auth/totp-manager.d.ts +48 -48
  25. package/dist/auth/user-management-internal.d.ts +67 -52
  26. package/dist/auth/user-manager.d.ts +58 -58
  27. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  28. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  29. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  30. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  31. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  32. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  33. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  34. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  35. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  36. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  37. package/dist/builtins/alerts/alerts.addon.js +1 -1
  38. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  39. package/dist/builtins/alerts/device-label.d.ts +6 -6
  40. package/dist/builtins/alerts/index.d.ts +1 -1
  41. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  42. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  43. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  44. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  45. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  46. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  47. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  48. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  49. package/dist/builtins/autotrack/index.d.ts +2 -2
  50. package/dist/builtins/autotrack/index.js +1 -1
  51. package/dist/builtins/autotrack/index.mjs +1 -1
  52. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  53. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  54. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  55. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  56. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  57. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  58. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  59. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  60. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  61. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  62. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  63. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  64. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  65. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  66. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  67. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  68. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  69. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  70. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  71. package/dist/builtins/calendars/calendars.addon.js +1 -1
  72. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  73. package/dist/builtins/calendars/index.d.ts +1 -1
  74. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  75. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  76. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  77. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  78. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  79. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  80. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  81. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  82. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  83. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  84. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  85. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  86. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  87. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  88. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  89. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  90. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  91. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  92. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  93. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  94. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  95. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  96. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  97. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  98. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  99. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  100. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  101. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  102. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  103. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  104. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  105. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  106. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  107. package/dist/builtins/camera-grid/index.d.ts +44 -44
  108. package/dist/builtins/camera-grid/index.js +1 -1
  109. package/dist/builtins/camera-grid/index.mjs +1 -1
  110. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  111. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  112. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  113. package/dist/builtins/composer/composed-device.d.ts +39 -17
  114. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  115. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  116. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  117. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  118. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  119. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  120. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  121. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  122. package/dist/builtins/composer/composer.addon.js +2 -2
  123. package/dist/builtins/composer/composer.addon.mjs +2 -2
  124. package/dist/builtins/composer/composer.d.ts +145 -100
  125. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  126. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  127. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  128. package/dist/builtins/composer/composition-target.d.ts +38 -34
  129. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  130. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  131. package/dist/builtins/composer/existing-target.d.ts +90 -73
  132. package/dist/builtins/composer/field-record.d.ts +26 -19
  133. package/dist/builtins/composer/graft-host.d.ts +56 -32
  134. package/dist/builtins/composer/held-claims.d.ts +26 -9
  135. package/dist/builtins/composer/index.d.ts +1 -1
  136. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  137. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  138. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  139. package/dist/builtins/composer/source-readings.d.ts +67 -61
  140. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  141. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  142. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  143. package/dist/builtins/console-logging/index.d.ts +3 -3
  144. package/dist/builtins/console-logging/index.js +1 -1
  145. package/dist/builtins/console-logging/index.mjs +1 -1
  146. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  147. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  148. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  149. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  150. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  151. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  152. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  153. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  154. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  155. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  156. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  157. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  158. package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
  159. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  160. package/dist/builtins/core-blocks/index.d.ts +8 -8
  161. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  162. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  163. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  164. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  165. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  166. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  167. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  168. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  169. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  170. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  171. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  172. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  173. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  174. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  175. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  176. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  177. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  178. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  179. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  180. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  181. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  182. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  183. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  184. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  185. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  186. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  187. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  188. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  189. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  190. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  191. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  192. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  193. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  194. package/dist/builtins/device-manager/index.d.ts +2 -2
  195. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  196. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  197. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  198. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  199. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  200. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  201. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  202. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  203. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  204. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  205. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  206. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  207. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  208. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  209. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  210. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  211. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  212. package/dist/builtins/hub-forwarder/index.js +1 -1
  213. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  214. package/dist/builtins/keychain/index.d.ts +1 -1
  215. package/dist/builtins/keychain/index.js +3 -3
  216. package/dist/builtins/keychain/index.mjs +3 -3
  217. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  218. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  219. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  220. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  221. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  222. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  223. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  224. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  225. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  226. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  227. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  228. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  229. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  230. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  231. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  232. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  233. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  234. package/dist/builtins/local-auth/index.d.ts +1 -1
  235. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  236. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  237. package/dist/builtins/local-auth/local-auth.addon.js +2 -2
  238. package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
  239. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  240. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  241. package/dist/builtins/local-network/address-book.d.ts +61 -36
  242. package/dist/builtins/local-network/index.d.ts +2 -2
  243. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  244. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  245. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  246. package/dist/builtins/local-network/local-network.addon.js +1 -1
  247. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  248. package/dist/builtins/loki-logging/index.d.ts +4 -4
  249. package/dist/builtins/loki-logging/index.js +1 -1
  250. package/dist/builtins/loki-logging/index.mjs +1 -1
  251. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  252. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  253. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  254. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  255. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  256. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  257. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  258. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  259. package/dist/builtins/native-metrics/index.d.ts +2 -2
  260. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  261. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  262. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  263. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  264. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  265. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  266. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  267. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  268. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  269. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  270. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  271. package/dist/builtins/platform-probe/amd-accelerators.d.ts +15 -0
  272. package/dist/builtins/platform-probe/amd-npu.d.ts +29 -0
  273. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  274. package/dist/builtins/platform-probe/index.d.ts +38 -30
  275. package/dist/builtins/platform-probe/index.js +59 -22
  276. package/dist/builtins/platform-probe/index.mjs +59 -22
  277. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  278. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  279. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  280. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  281. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  282. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  283. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  284. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  285. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  286. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  287. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  288. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  289. package/dist/builtins/snapshot/index.d.ts +2 -2
  290. package/dist/builtins/snapshot/index.js +1 -1
  291. package/dist/builtins/snapshot/index.mjs +1 -1
  292. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  293. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  294. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  295. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  296. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  297. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  298. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  299. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  300. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  301. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  302. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  303. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  304. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  305. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  306. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  307. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  308. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  309. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  310. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  311. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  312. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  313. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  314. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  315. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  316. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  317. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  318. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  319. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  320. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  321. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  322. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  323. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  324. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  325. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  326. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  327. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  328. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  329. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  330. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  331. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  332. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  333. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  334. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  335. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  336. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  337. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  338. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  339. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  340. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  341. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  342. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  343. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  344. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  345. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  346. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  347. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  348. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  349. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  350. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  351. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  352. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  353. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  354. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  355. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  356. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  357. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  358. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  359. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  360. package/dist/builtins/system-config/index.d.ts +2 -2
  361. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  362. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  363. package/dist/builtins/system-config/system-config.addon.js +39 -35
  364. package/dist/builtins/system-config/system-config.addon.mjs +320 -316
  365. package/dist/builtins/winston-logging/index.d.ts +3 -3
  366. package/dist/builtins/winston-logging/index.js +1 -1
  367. package/dist/builtins/winston-logging/index.mjs +1 -1
  368. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  369. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  370. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Nx-lrlHR.js} +19 -1
  371. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-x-onDDiV.mjs} +2 -2
  372. package/dist/{composition-sources-wdAxs-uY.js → composition-sources-LUJsW0AQ.js} +1 -1
  373. package/dist/{composition-sources-xqhm2Ygr.mjs → composition-sources-R8TskGSV.mjs} +1 -1
  374. package/dist/{constants-Ca-Sgcl8.js → constants-D4lxxip7.js} +1 -1
  375. package/dist/{constants-D5z4EwY8.mjs → constants-DMvAcbbP.mjs} +1 -1
  376. package/dist/{dist-8LQ4lDEB.js → dist-XTkzsnz-.js} +35 -1
  377. package/dist/{dist-Biqn3TEn.mjs → dist-byg8IP4Q.mjs} +35 -1
  378. package/dist/download/hosted-model-revisions.d.ts +8 -8
  379. package/dist/download/model-download-service.d.ts +32 -32
  380. package/dist/download/model-downloader.d.ts +88 -88
  381. package/dist/{event-loop-stall-monitor-CNj73d4D.js → event-loop-stall-monitor-DPFghEFw.js} +1 -1
  382. package/dist/{event-loop-stall-monitor-BtK_0Pjc.mjs → event-loop-stall-monitor-TG8UcdY2.mjs} +1 -1
  383. package/dist/events/event-bus.d.ts +6 -6
  384. package/dist/events/system-event-bus.d.ts +11 -11
  385. package/dist/feature/feature-manager.d.ts +6 -6
  386. package/dist/http/asset-compression.d.ts +35 -73
  387. package/dist/http/authenticated-file-server.d.ts +32 -32
  388. package/dist/http/data-plane-registry.d.ts +49 -39
  389. package/dist/http/file-data-plane.d.ts +14 -14
  390. package/dist/http/lan-http-bind.d.ts +24 -13
  391. package/dist/http/reverse-proxy.d.ts +36 -24
  392. package/dist/index.d.ts +137 -137
  393. package/dist/index.js +9 -8
  394. package/dist/index.mjs +7 -9
  395. package/dist/{jwt-signing-key-DxV2ucvJ.js → jwt-signing-key-CD87HrHH.js} +1 -1
  396. package/dist/{jwt-signing-key-SnDgvVUQ.mjs → jwt-signing-key-DNBxSN5p.mjs} +1 -1
  397. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  398. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  399. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  400. package/dist/kernel/addon-installer.d.ts +609 -609
  401. package/dist/kernel/addon-loader.d.ts +133 -133
  402. package/dist/kernel/addon-manifest.d.ts +118 -118
  403. package/dist/kernel/addon-residue.d.ts +28 -32
  404. package/dist/kernel/array-buffer-census.d.ts +84 -88
  405. package/dist/kernel/bootstrap-config.d.ts +3 -3
  406. package/dist/kernel/cap-router-builder.d.ts +145 -101
  407. package/dist/kernel/capability-handle.d.ts +41 -41
  408. package/dist/kernel/capability-registry.d.ts +588 -576
  409. package/dist/kernel/config-manager.d.ts +199 -199
  410. package/dist/kernel/config-schema.d.ts +132 -128
  411. package/dist/kernel/custom-action-registry.d.ts +25 -25
  412. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  413. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  414. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  415. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  416. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  417. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  418. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  419. package/dist/kernel/deps/npm-command.d.ts +45 -45
  420. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  421. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  422. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  423. package/dist/kernel/device-registry.d.ts +27 -27
  424. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  425. package/dist/kernel/event-plane-report.d.ts +174 -174
  426. package/dist/kernel/fs-utils.d.ts +70 -70
  427. package/dist/kernel/gc-census.d.ts +119 -119
  428. package/dist/kernel/heap-spaces.d.ts +87 -87
  429. package/dist/kernel/heap-watch.d.ts +706 -706
  430. package/dist/kernel/host-externals.d.ts +8 -8
  431. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  432. package/dist/kernel/index.d.ts +115 -113
  433. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  434. package/dist/kernel/infra-capabilities.d.ts +7 -7
  435. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  436. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  437. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  438. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  439. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  440. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  441. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  442. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  443. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  444. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  445. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  446. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  447. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  448. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  449. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  450. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  451. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  452. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  453. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  454. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  455. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  456. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  457. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  458. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  459. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  460. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  461. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  462. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  463. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  464. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  465. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  466. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  467. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  468. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  469. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  470. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  471. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  472. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  473. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  474. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  475. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  476. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  477. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  478. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  479. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  480. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  481. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  482. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  483. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  484. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  485. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  486. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  487. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  488. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  489. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  490. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  491. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  492. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  493. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  494. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  495. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  496. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  497. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  498. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  499. package/dist/kernel/process-cpu-census.d.ts +55 -55
  500. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  501. package/dist/kernel/restart-coordinator.d.ts +71 -71
  502. package/dist/kernel/settings-door-view.d.ts +36 -25
  503. package/dist/kernel/settings-read-error.d.ts +29 -31
  504. package/dist/kernel/settings-view-types.d.ts +100 -95
  505. package/dist/kernel/socket-plane-report.d.ts +214 -153
  506. package/dist/kernel/status-overlay.d.ts +31 -11
  507. package/dist/kernel/storage-location-registry.d.ts +50 -50
  508. package/dist/kernel/store-settings-view.d.ts +13 -13
  509. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  510. package/dist/kernel/system-settings-policy.d.ts +15 -34
  511. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  512. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  513. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  514. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  515. package/dist/kernel/transport/cap-route.d.ts +139 -139
  516. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  517. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  518. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  519. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  520. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  521. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  522. package/dist/kernel/transport/index.d.ts +36 -36
  523. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  524. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  525. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  526. package/dist/kernel/transport/local-transport.d.ts +92 -92
  527. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  528. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  529. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  530. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  531. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  532. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  533. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  534. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  535. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  536. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  537. package/dist/kernel/workspace-detect.d.ts +7 -7
  538. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  539. package/dist/logging/formatter.d.ts +52 -25
  540. package/dist/logging/log-manager.d.ts +133 -133
  541. package/dist/logging/log-redactor.d.ts +22 -1
  542. package/dist/logging/log-ring-buffer.d.ts +57 -57
  543. package/dist/logging/logging-gate.d.ts +69 -25
  544. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  545. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  546. package/dist/logging/scoped-logger.d.ts +14 -14
  547. package/dist/network/network-quality.d.ts +8 -8
  548. package/dist/notification/notification-service.d.ts +37 -37
  549. package/dist/notification/toast-service.d.ts +18 -18
  550. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  551. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  552. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  553. package/dist/process/proc-stat.d.ts +51 -51
  554. package/dist/process/resource-monitor.d.ts +19 -19
  555. package/dist/python/python-env-manager.d.ts +10 -10
  556. package/dist/repl/interfaces.d.ts +21 -21
  557. package/dist/repl/repl-engine.d.ts +6 -6
  558. package/dist/{restore-archive-D4cmLoNe.mjs → restore-archive-Bmmmyp1M.mjs} +81 -81
  559. package/dist/{restore-archive-Do_Yu5rC.js → restore-archive-bvYTsnvp.js} +1 -1
  560. package/dist/{retired-settings-keys-BsgVxh8-.mjs → retired-settings-keys-R9CBo2lY.mjs} +1 -1
  561. package/dist/{retired-settings-keys-Cyn3OD0K.js → retired-settings-keys-V0yq5Bm6.js} +1 -1
  562. package/dist/storage/fs-storage-backend.d.ts +35 -35
  563. package/dist/storage/storage-location-manager.d.ts +21 -21
  564. package/dist/storage/storage-manager.d.ts +68 -68
  565. package/dist/tls/boot-tls.d.ts +24 -24
  566. package/dist/tls/cert-evaluation.d.ts +25 -25
  567. package/dist/tls/cert-identity.d.ts +39 -39
  568. package/dist/tls/cert-issue.d.ts +37 -17
  569. package/dist/tls/cert-manager.d.ts +86 -84
  570. package/dist/tls/https-listener.d.ts +16 -16
  571. package/dist/tls/index.d.ts +8 -8
  572. package/dist/tls/tls-actions.d.ts +18 -18
  573. package/dist/tls/tls-status.d.ts +15 -15
  574. package/dist/tls/uploaded-cert.d.ts +9 -9
  575. package/package.json +9 -3
@@ -1,64 +1,85 @@
1
- import { RecordingStatus } from '@camstack/types';
1
+ /**
2
+ * The liveness invariants, as pure functions.
3
+ *
4
+ * On 2026-08-03 the hub ran for four hours with zero devices, zero published
5
+ * streams and zero recordings, and nothing said a word. Three separate defects
6
+ * caused it — optional chaining that no-oped, an `if` with no `else`, a JSON
7
+ * parse that returned `{}` — and each was silent at the point of failure. All
8
+ * three were fixed and a log line added at each. This module exists for the
9
+ * CLASS rather than the instances: assert what must be true of a working node,
10
+ * and report when it is not.
11
+ *
12
+ * **Every check here is unambiguous, on purpose.** An alert that fires on a
13
+ * quiet night is one an operator learns to ignore, and an ignored alert is
14
+ * worse than no alert. So "the pipeline emitted no tracks recently" is NOT a
15
+ * check — a camera can legitimately see nothing for hours — while "a camera
16
+ * that has been recording all day stopped producing segments" is: continuous
17
+ * recording produces segments whether or not anything moves.
18
+ *
19
+ * I/O lives in the addon; everything here is a function of facts, so the
20
+ * outage can be replayed in a test.
21
+ */
22
+ import type { RecordingStatus } from "@camstack/types";
2
23
  /** The recording mode a camera is running under, as `recording.getStatus` reports it. */
3
- export type RecordingActiveMode = RecordingStatus['activeMode'];
24
+ export type RecordingActiveMode = RecordingStatus["activeMode"];
4
25
  /** What the monitor learned about one camera this tick. */
5
26
  export interface CameraFootage {
6
- readonly deviceId: number;
7
- /**
8
- * Operator-facing name. Prefer this in the finding message; the numeric id
9
- * stays on `deviceId` for tags / stable finding ids.
10
- */
11
- readonly name?: string;
12
- readonly online: boolean;
13
- /**
14
- * ms-epoch of the newest recorded segment within the lookback window, or
15
- * `null` when the camera has produced NO footage in it.
16
- *
17
- * `null` means "this camera does not record" and is deliberately not a
18
- * finding — it is what makes the check self-calibrating. Nothing has to be
19
- * told which cameras are supposed to record: a camera that was recording and
20
- * stopped is a fault, a camera that never records is a configuration.
21
- */
22
- readonly lastSegmentMs: number | null;
23
- /**
24
- * The recording mode the camera runs under, asked only when it looks silent
25
- * (`null` = not asked, the footage was recent). Silence is a fault ONLY for a
26
- * `continuous` recorder: an `events` recorder that has seen nothing move is
27
- * doing its job, and `off` is the operator's own switch. Seven events-mode
28
- * cameras alerted for a whole quiet night on 2026-09-06.
29
- */
30
- readonly activeMode: RecordingActiveMode | null;
27
+ readonly deviceId: number;
28
+ /**
29
+ * Operator-facing name. Prefer this in the finding message; the numeric id
30
+ * stays on `deviceId` for tags / stable finding ids.
31
+ */
32
+ readonly name?: string;
33
+ readonly online: boolean;
34
+ /**
35
+ * ms-epoch of the newest recorded segment within the lookback window, or
36
+ * `null` when the camera has produced NO footage in it.
37
+ *
38
+ * `null` means "this camera does not record" and is deliberately not a
39
+ * finding — it is what makes the check self-calibrating. Nothing has to be
40
+ * told which cameras are supposed to record: a camera that was recording and
41
+ * stopped is a fault, a camera that never records is a configuration.
42
+ */
43
+ readonly lastSegmentMs: number | null;
44
+ /**
45
+ * The recording mode the camera runs under, asked only when it looks silent
46
+ * (`null` = not asked, the footage was recent). Silence is a fault ONLY for a
47
+ * `continuous` recorder: an `events` recorder that has seen nothing move is
48
+ * doing its job, and `off` is the operator's own switch. Seven events-mode
49
+ * cameras alerted for a whole quiet night on 2026-09-06.
50
+ */
51
+ readonly activeMode: RecordingActiveMode | null;
31
52
  }
32
53
  export interface LivenessFacts {
33
- readonly nowMs: number;
34
- /** Every device the node knows about, cameras and accessories alike. */
35
- readonly deviceCount: number;
36
- readonly cameras: readonly CameraFootage[];
37
- /** How long a recording camera may stay silent before it is a fault. */
38
- readonly staleAfterMs: number;
54
+ readonly nowMs: number;
55
+ /** Every device the node knows about, cameras and accessories alike. */
56
+ readonly deviceCount: number;
57
+ readonly cameras: readonly CameraFootage[];
58
+ /** How long a recording camera may stay silent before it is a fault. */
59
+ readonly staleAfterMs: number;
39
60
  }
40
61
  export interface LivenessFinding {
41
- /**
42
- * Stable across ticks, so an ongoing fault UPDATES one alert instead of
43
- * producing a new one every minute. Same contract as the kernel's
44
- * `addon-load-failed:<packageName>` ids.
45
- */
46
- readonly id: string;
47
- readonly severity: 'error' | 'warning';
48
- readonly title: string;
49
- readonly message: string;
50
- /** Present on per-camera findings. Always the numeric id. */
51
- readonly deviceId?: number;
52
- /** Operator name when known — alert surfaces prefer this over the id. */
53
- readonly deviceName?: string;
62
+ /**
63
+ * Stable across ticks, so an ongoing fault UPDATES one alert instead of
64
+ * producing a new one every minute. Same contract as the kernel's
65
+ * `addon-load-failed:<packageName>` ids.
66
+ */
67
+ readonly id: string;
68
+ readonly severity: "error" | "warning";
69
+ readonly title: string;
70
+ readonly message: string;
71
+ /** Present on per-camera findings. Always the numeric id. */
72
+ readonly deviceId?: number;
73
+ /** Operator name when known — alert surfaces prefer this over the id. */
74
+ readonly deviceName?: string;
54
75
  }
55
76
  /**
56
- * Evaluate every invariant against one tick's facts.
57
- *
58
- * Ordered most-fundamental first, and it STOPS at "no devices": when the node
59
- * has nothing, every camera is also silent, and reporting twelve consequences
60
- * of one cause is how an operator ends up reading none of them.
61
- */
77
+ * Evaluate every invariant against one tick's facts.
78
+ *
79
+ * Ordered most-fundamental first, and it STOPS at "no devices": when the node
80
+ * has nothing, every camera is also silent, and reporting twelve consequences
81
+ * of one cause is how an operator ends up reading none of them.
82
+ */
62
83
  export declare function evaluateLiveness(facts: LivenessFacts): readonly LivenessFinding[];
63
84
  /** Every finding id this module can produce, for the recovery sweep. */
64
85
  export declare function isLivenessFindingId(id: string): boolean;
@@ -1,41 +1,62 @@
1
- import { BaseAddon, ProviderRegistration } from '@camstack/types';
2
- import { LivenessFinding } from './liveness-checks.js';
1
+ /**
2
+ * liveness-monitor — the node states, out loud, when it has stopped working.
3
+ *
4
+ * On 2026-08-03 the hub ran for four hours with zero devices, zero published
5
+ * streams and zero recordings. Three separate defects caused it, each silent at
6
+ * the point of failure, and the operator found out by opening the viewer. Every
7
+ * one of those defects has since been fixed and given a log line — but a log
8
+ * line per known bug does not cover the next one. This addon covers the class:
9
+ * it asserts what must be true of a working node and reports when it is not.
10
+ *
11
+ * It emits `SystemLivenessFailed` / `SystemLivenessRecovered` on the event bus
12
+ * with a STABLE finding id, exactly like the kernel's addon-health monitor, so
13
+ * AlertCenter raises one persistent alert per fault and dismisses it on
14
+ * recovery instead of producing a stream of them. The same lines go to the log
15
+ * at ERROR, which is what makes them alertable in Loki.
16
+ *
17
+ * Deliberately hub-only and deliberately read-only: it observes through
18
+ * `ctx.api` and changes nothing. A monitor that can act is a monitor that can
19
+ * cause the outage it was meant to report — this repo has already stopped a
20
+ * hub that way once (the remedial-action watcher, 2026-07-30).
21
+ */
22
+ import { BaseAddon, type ProviderRegistration } from "@camstack/types";
23
+ import { type LivenessFinding } from "./liveness-checks.js";
3
24
  interface LivenessMonitorConfig extends Record<string, unknown> {
4
- readonly staleAfterMs?: number;
25
+ readonly staleAfterMs?: number;
5
26
  }
6
27
  export declare class LivenessMonitorAddon extends BaseAddon<LivenessMonitorConfig> {
7
- private tickTimer;
8
- private startedAtMs;
9
- /** Finding ids currently reported, so recovery can be detected and announced. */
10
- private active;
11
- constructor();
12
- protected onInitialize(): Promise<ProviderRegistration[]>;
13
- protected onShutdown(): Promise<void>;
14
- /**
15
- * One evaluation. Public so a test or an operator-facing action can force it
16
- * without waiting out the interval.
17
- */
18
- tick(): Promise<readonly LivenessFinding[]>;
19
- /** Read the facts through the cap surface. Changes nothing. */
20
- private gather;
21
- /**
22
- * Newest segment for a camera, or null when it has produced none in a day.
23
- *
24
- * Two steps on purpose: the healthy case asks only for the recent window,
25
- * which is a handful of ranges, and only a camera that looks silent pays for
26
- * the 24-hour lookback that decides whether it records at all.
27
- */
28
- private lastSegmentMs;
29
- /**
30
- * A camera nobody could read is NOT a camera with no footage.
31
- *
32
- * `null` here means "no claim", and `liveness-checks.ts` skips a camera with
33
- * no claim — which is the safe direction. But a skip that says nothing is
34
- * indistinguishable from a healthy tick, so the branch that drops the camera
35
- * names it, per camera (D393, and CLAUDE.md's logging rule).
36
- */
37
- private unreadable;
38
- /** Announce new faults and recoveries; say nothing about an unchanged fault. */
39
- private report;
28
+ private tickTimer;
29
+ private startedAtMs;
30
+ /** Finding ids currently reported, so recovery can be detected and announced. */
31
+ private active;
32
+ constructor();
33
+ protected onInitialize(): Promise<ProviderRegistration[]>;
34
+ protected onShutdown(): Promise<void>;
35
+ /**
36
+ * One evaluation. Public so a test or an operator-facing action can force it
37
+ * without waiting out the interval.
38
+ */
39
+ tick(): Promise<readonly LivenessFinding[]>;
40
+ /** Read the facts through the cap surface. Changes nothing. */
41
+ private gather;
42
+ /**
43
+ * Newest segment for a camera, or null when it has produced none in a day.
44
+ *
45
+ * Two steps on purpose: the healthy case asks only for the recent window,
46
+ * which is a handful of ranges, and only a camera that looks silent pays for
47
+ * the 24-hour lookback that decides whether it records at all.
48
+ */
49
+ private lastSegmentMs;
50
+ /**
51
+ * A camera nobody could read is NOT a camera with no footage.
52
+ *
53
+ * `null` here means "no claim", and `liveness-checks.ts` skips a camera with
54
+ * no claim — which is the safe direction. But a skip that says nothing is
55
+ * indistinguishable from a healthy tick, so the branch that drops the camera
56
+ * names it, per camera (D393, and CLAUDE.md's logging rule).
57
+ */
58
+ private unreadable;
59
+ /** Announce new faults and recoveries; say nothing about an unchanged fault. */
60
+ private report;
40
61
  }
41
62
  export {};
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  require("../../chunk-Cek0wNdY.js");
3
- const require_dist = require("../../dist-8LQ4lDEB.js");
3
+ const require_dist = require("../../dist-XTkzsnz-.js");
4
4
  //#region src/builtins/liveness-monitor/liveness-checks.ts
5
5
  var NO_DEVICES = "liveness:no-devices";
6
6
  var ALL_OFFLINE = "liveness:all-devices-offline";
@@ -1,4 +1,4 @@
1
- import { I as RecordingStatusSchema, P as RECORDING_SOURCE_CAMSTACK_ADDON, Tr as createEvent, lr as errMsg, ni as EventCategory, ur as BaseAddon } from "../../dist-Biqn3TEn.mjs";
1
+ import { I as RecordingStatusSchema, P as RECORDING_SOURCE_CAMSTACK_ADDON, Tr as createEvent, lr as errMsg, ni as EventCategory, ur as BaseAddon } from "../../dist-byg8IP4Q.mjs";
2
2
  //#region src/builtins/liveness-monitor/liveness-checks.ts
3
3
  var NO_DEVICES = "liveness:no-devices";
4
4
  var ALL_OFFLINE = "liveness:all-devices-offline";
@@ -1,27 +1,27 @@
1
- import { IScopedLogger } from '@camstack/types';
2
- import { AdminSeedOutcome, EnsureAdminOptions } from '../../auth/user-manager.js';
1
+ import type { IScopedLogger } from "@camstack/types";
2
+ import { type AdminSeedOutcome, type EnsureAdminOptions } from "../../auth/user-manager.js";
3
3
  /** The trigger's name, at the root of the node's data directory. */
4
4
  export declare const ADMIN_PASSWORD_RESET_TRIGGER = "RESET_ADMIN_PASSWORD";
5
5
  /** The file operations the boot step needs — injectable for tests. */
6
6
  export interface TriggerFs {
7
- exists(filePath: string): boolean;
8
- remove(filePath: string): void;
7
+ exists(filePath: string): boolean;
8
+ remove(filePath: string): void;
9
9
  }
10
10
  /** The slice of `UserManager` the boot step drives. */
11
11
  export interface AdminAccountManager {
12
- ensureAdminExists(options?: EnsureAdminOptions): Promise<AdminSeedOutcome>;
13
- hasPassword(username: string, password: string): Promise<boolean>;
12
+ ensureAdminExists(options?: EnsureAdminOptions): Promise<AdminSeedOutcome>;
13
+ hasPassword(username: string, password: string): Promise<boolean>;
14
14
  }
15
15
  export interface AdminAccountBootInput {
16
- readonly users: AdminAccountManager;
17
- /** `ctx.nodeDataDir` — where the operator drops the trigger. */
18
- readonly dataDir: string;
19
- readonly fs: TriggerFs;
20
- readonly logger: IScopedLogger;
16
+ readonly users: AdminAccountManager;
17
+ /** `ctx.nodeDataDir` — where the operator drops the trigger. */
18
+ readonly dataDir: string;
19
+ readonly fs: TriggerFs;
20
+ readonly logger: IScopedLogger;
21
21
  }
22
22
  export interface AdminAccountBootResult {
23
- readonly outcome: AdminSeedOutcome;
24
- /** The admin still signs in with {@link FIRST_BOOT_ADMIN_PASSWORD}. */
25
- readonly usesDefaultPassword: boolean;
23
+ readonly outcome: AdminSeedOutcome;
24
+ /** The admin still signs in with {@link FIRST_BOOT_ADMIN_PASSWORD}. */
25
+ readonly usesDefaultPassword: boolean;
26
26
  }
27
27
  export declare function reconcileAdminAccountAtBoot(input: AdminAccountBootInput): Promise<AdminAccountBootResult>;
@@ -1,22 +1,39 @@
1
- import { AuthConfigReader } from '../../auth/auth-manager.js';
2
1
  /**
3
- * The values `local-auth` pre-resolves before constructing its AuthManager.
4
- *
5
- * No credential is among them (D797): the session signing key lives in the
6
- * keychain (`jwt-signing-key.ts`) and the first-boot admin is fixed
7
- * (`admin` / `changeme`), so `auth.jwtSecret`, `auth.adminUsername` and
8
- * `auth.adminPassword` are answered by nothing.
9
- */
2
+ * The `AuthConfigReader` shim `local-auth` hands to its own `AuthManager`.
3
+ *
4
+ * WHY IT IS AN ALLOW-LIST AND STAYS ONE. `AuthConfigReader.get` is
5
+ * SYNCHRONOUS; `ctx.settings.getSection` is a promise over the hub's settings
6
+ * store. The addon therefore resolves the handful of paths its AuthManager
7
+ * actually consults ONCE, in `onInitialize`, and answers only those. The
8
+ * whitelist is not decoration: it is the list of values that were awaited, and
9
+ * a path outside it has no resolved value to return. Widening it means
10
+ * pre-resolving one more value here — never "let the addon read arbitrary host
11
+ * config", which it structurally cannot do anyway.
12
+ *
13
+ * `auth.tokenExpiry` was the path that fell off the end. It was declared,
14
+ * editable and mapped to the `auth` yml section, and this reader answered
15
+ * `undefined` for it, so this AuthManager always signed with the hardcoded
16
+ * fallback no matter what the operator set.
17
+ */
18
+ import type { AuthConfigReader } from "../../auth/auth-manager.js";
19
+ /**
20
+ * The values `local-auth` pre-resolves before constructing its AuthManager.
21
+ *
22
+ * No credential is among them (D797): the session signing key lives in the
23
+ * keychain (`jwt-signing-key.ts`) and the first-boot admin is fixed
24
+ * (`admin` / `changeme`), so `auth.jwtSecret`, `auth.adminUsername` and
25
+ * `auth.adminPassword` are answered by nothing.
26
+ */
10
27
  export interface ResolvedAuthConfig {
11
- /**
12
- * Operator-configured session lifetime. `undefined` when the `auth` section
13
- * carries no value — the signer then applies `DEFAULT_TOKEN_EXPIRY`, which
14
- * is where the default belongs (one default, one place).
15
- */
16
- readonly tokenExpiry: string | undefined;
28
+ /**
29
+ * Operator-configured session lifetime. `undefined` when the `auth` section
30
+ * carries no value — the signer then applies `DEFAULT_TOKEN_EXPIRY`, which
31
+ * is where the default belongs (one default, one place).
32
+ */
33
+ readonly tokenExpiry: string | undefined;
17
34
  }
18
35
  /**
19
- * Every config path this reader can answer. Anything else resolves to
20
- * `undefined` by construction — see the module docblock.
21
- */
36
+ * Every config path this reader can answer. Anything else resolves to
37
+ * `undefined` by construction — see the module docblock.
38
+ */
22
39
  export declare function createAuthConfigReader(resolved: ResolvedAuthConfig): AuthConfigReader;
@@ -1,83 +1,106 @@
1
- import { SettingsStoreClient } from '@camstack/types';
2
1
  /**
3
- * @durable class=config owner=local-auth
4
- * write="an operator creates a user, or `ensureAdminExists` seeds the configured
5
- * admin on first boot (or resets its password on the operator's one-shot
6
- * RESET_ADMIN_PASSWORD trigger); updated on scope, isAdmin and password edits"
7
- * retention="none — a row goes only when an operator deletes the user. A
8
- * `declareCollection` that adds a PK/UNIQUE/NOT-NULL-without-default column
9
- * REBUILDS the table: every account is wiped and only the configured admin
10
- * comes back on the next boot."
11
- */
2
+ * Auth-schema — typed SQL schemas for local-auth's collections.
3
+ *
4
+ * Mirrors the pattern used by pipeline-analytics (`event-store.ts`,
5
+ * `track-store.ts`): each addon owns its own schema, declared once
6
+ * in `onInitialize` via `store.declareCollection.mutate(...)`.
7
+ *
8
+ * Collection names (no namespace — these are global, single-tenant
9
+ * tables backing the auth layer):
10
+ * - users
11
+ * - api_keys
12
+ * - scoped_tokens
13
+ * - oauth_sessions
14
+ * - login_sessions, login_session_cutoffs (`login-session-manager.ts`)
15
+ * - admin_tokens (`admin-token-manager.ts`), auth_audit (`auth-audit-log.ts`)
16
+ *
17
+ * Schema migration: when the backend receives `declareCollection` for
18
+ * a name that already exists with a legacy `(id, data)` KV shape, the
19
+ * `ensureTable` helper drops the old table and recreates it. Existing
20
+ * data is wiped — `ensureAdminExists` re-seeds the admin from
21
+ * CAMSTACK_ADMIN_USER / CAMSTACK_ADMIN_PASS on the next boot (an empty
22
+ * table is a first boot).
23
+ */
24
+ import type { SettingsStoreClient } from "@camstack/types";
25
+ /**
26
+ * @durable class=config owner=local-auth
27
+ * write="an operator creates a user, or `ensureAdminExists` seeds the configured
28
+ * admin on first boot (or resets its password on the operator's one-shot
29
+ * RESET_ADMIN_PASSWORD trigger); updated on scope, isAdmin and password edits"
30
+ * retention="none — a row goes only when an operator deletes the user. A
31
+ * `declareCollection` that adds a PK/UNIQUE/NOT-NULL-without-default column
32
+ * REBUILDS the table: every account is wiped and only the configured admin
33
+ * comes back on the next boot."
34
+ */
12
35
  export declare const USERS_COLLECTION = "users";
13
36
  /**
14
- * @durable class=config owner=local-auth
15
- * write="an operator mints an API key; `validateToken` rewrites `lastUsedAt` on
16
- * every request the key authorises"
17
- * retention="none — an explicit `revoke` is the only delete. API keys have no
18
- * expiry column and no sweep, so a key lives until someone removes it (or the
19
- * destructive `declareCollection` rebuild takes the table)."
20
- */
37
+ * @durable class=config owner=local-auth
38
+ * write="an operator mints an API key; `validateToken` rewrites `lastUsedAt` on
39
+ * every request the key authorises"
40
+ * retention="none — an explicit `revoke` is the only delete. API keys have no
41
+ * expiry column and no sweep, so a key lives until someone removes it (or the
42
+ * destructive `declareCollection` rebuild takes the table)."
43
+ */
21
44
  export declare const API_KEYS_COLLECTION = "api_keys";
22
45
  /**
23
- * @durable class=config owner=local-auth
24
- * write="an operator or the CLI mints a scoped token; `validate` fires
25
- * `updateLastUsed` on every accepted call"
26
- * retention="`revoke` deletes one. The daily sweep `reapExpired` drops rows past
27
- * `expiresAt` — a NULL expiry is a deliberate never-expires token and BETWEEN
28
- * never matches it. `cleanupOrphans` drops tokens owned by the legacy 'system'
29
- * id or by a user that no longer exists."
30
- */
46
+ * @durable class=config owner=local-auth
47
+ * write="an operator or the CLI mints a scoped token; `validate` fires
48
+ * `updateLastUsed` on every accepted call"
49
+ * retention="`revoke` deletes one. The daily sweep `reapExpired` drops rows past
50
+ * `expiresAt` — a NULL expiry is a deliberate never-expires token and BETWEEN
51
+ * never matches it. `cleanupOrphans` drops tokens owned by the legacy 'system'
52
+ * id or by a user that no longer exists."
53
+ */
31
54
  export declare const SCOPED_TOKENS_COLLECTION = "scoped_tokens";
32
55
  /**
33
- * @durable class=ledger owner=local-auth
34
- * write="one row per redeemed OAuth code — every completed account link through
35
- * `oauthExchangeCode`; `touch` rewrites `lastUsedAt` on each refresh"
36
- * retention="ONLY revoked rows are pruned: the daily sweep deletes sessions
37
- * revoked more than OAUTH_REVOKED_RETENTION_MS (30 d) ago. An ACTIVE session
38
- * has `revokedAt` NULL, never expires and is never swept — the table grows one
39
- * row per login until an operator revokes the link."
40
- */
56
+ * @durable class=ledger owner=local-auth
57
+ * write="one row per redeemed OAuth code — every completed account link through
58
+ * `oauthExchangeCode`; `touch` rewrites `lastUsedAt` on each refresh"
59
+ * retention="ONLY revoked rows are pruned: the daily sweep deletes sessions
60
+ * revoked more than OAUTH_REVOKED_RETENTION_MS (30 d) ago. An ACTIVE session
61
+ * has `revokedAt` NULL, never expires and is never swept — the table grows one
62
+ * row per login until an operator revokes the link."
63
+ */
41
64
  export declare const OAUTH_SESSIONS_COLLECTION = "oauth_sessions";
42
65
  /**
43
- * TOTP enrollment table — split off from `users` to avoid the
44
- * destructive drop-+-recreate migration `ensureTable` performs when a
45
- * new column is added to a typed schema (see `sqlite-settings-backend.ts`).
46
- *
47
- * Lifecycle:
48
- * - Setup: row inserted with `confirmedAt = null` and a fresh secret.
49
- * - Confirm: a valid code from the secret flips `confirmedAt` to now().
50
- * - Disable: the row is deleted (next setup starts fresh).
51
- *
52
- * "Enabled" means `confirmedAt != null`. A half-enrolled row (`confirmedAt
53
- * = null`) is INACTIVE — `verifyTotp` returns false until confirmation.
54
- *
55
- * @durable class=config owner=local-auth
56
- * write="`setup` inserts a fresh secret for the user (deleting any pending row
57
- * first); `confirm` flips `confirmedAt` once a valid code proves possession"
58
- * retention="`disable` deletes the row, and `setup` deletes before re-inserting.
59
- * Nothing else prunes — deleting a USER does not cascade here, so their
60
- * enrollment row outlives the account."
61
- */
66
+ * TOTP enrollment table — split off from `users` to avoid the
67
+ * destructive drop-+-recreate migration `ensureTable` performs when a
68
+ * new column is added to a typed schema (see `sqlite-settings-backend.ts`).
69
+ *
70
+ * Lifecycle:
71
+ * - Setup: row inserted with `confirmedAt = null` and a fresh secret.
72
+ * - Confirm: a valid code from the secret flips `confirmedAt` to now().
73
+ * - Disable: the row is deleted (next setup starts fresh).
74
+ *
75
+ * "Enabled" means `confirmedAt != null`. A half-enrolled row (`confirmedAt
76
+ * = null`) is INACTIVE — `verifyTotp` returns false until confirmation.
77
+ *
78
+ * @durable class=config owner=local-auth
79
+ * write="`setup` inserts a fresh secret for the user (deleting any pending row
80
+ * first); `confirm` flips `confirmedAt` once a valid code proves possession"
81
+ * retention="`disable` deletes the row, and `setup` deletes before re-inserting.
82
+ * Nothing else prunes — deleting a USER does not cascade here, so their
83
+ * enrollment row outlives the account."
84
+ */
62
85
  export declare const USER_TOTP_COLLECTION = "user_totp";
63
86
  /**
64
- * External sign-in identities linked to local users (D782): one row per
65
- * `(provider, subject)` — the row id IS the identity, so one identity maps to
66
- * one user by primary key. Written only by the identity's owner completing a
67
- * "Link" flow from their profile (bound to their session).
68
- *
69
- * @durable class=config owner=local-auth
70
- * write="`ExternalIdentityManager.link` when a signed-in user completes a
71
- * link flow; `unlink` from the profile or the Users page"
72
- * retention="`unlink` deletes one row; deleting the user deletes all of its
73
- * rows (`deleteUser` → `removeAllForUser`). A row whose provider instance
74
- * was renamed or removed stays, inert, until someone unlinks it."
75
- */
87
+ * External sign-in identities linked to local users (D782): one row per
88
+ * `(provider, subject)` — the row id IS the identity, so one identity maps to
89
+ * one user by primary key. Written only by the identity's owner completing a
90
+ * "Link" flow from their profile (bound to their session).
91
+ *
92
+ * @durable class=config owner=local-auth
93
+ * write="`ExternalIdentityManager.link` when a signed-in user completes a
94
+ * link flow; `unlink` from the profile or the Users page"
95
+ * retention="`unlink` deletes one row; deleting the user deletes all of its
96
+ * rows (`deleteUser` → `removeAllForUser`). A row whose provider instance
97
+ * was renamed or removed stays, inert, until someone unlinks it."
98
+ */
76
99
  export declare const USER_EXTERNAL_IDENTITIES_COLLECTION = "user_external_identities";
77
100
  /**
78
- * Declare every auth collection with the typed schema. Called by
79
- * `LocalAuthAddon.onInitialize` before constructing the per-collection
80
- * managers. Idempotent — `declareCollection` is a no-op when the
81
- * collection has already been declared (same shape).
82
- */
101
+ * Declare every auth collection with the typed schema. Called by
102
+ * `LocalAuthAddon.onInitialize` before constructing the per-collection
103
+ * managers. Idempotent — `declareCollection` is a no-op when the
104
+ * collection has already been declared (same shape).
105
+ */
83
106
  export declare function declareAuthSchema(store: SettingsStoreClient): Promise<void>;
@@ -1 +1 @@
1
- export { LocalAuthAddon } from './local-auth.addon.js';
1
+ export { LocalAuthAddon } from "./local-auth.addon.js";
@@ -1,30 +1,30 @@
1
- import { SecretsAccess } from '@camstack/types';
1
+ import type { SecretsAccess } from "@camstack/types";
2
2
  /** How often a locked keychain is asked again. */
3
- export declare const SIGNING_KEY_RETRY_MS = 30000;
3
+ export declare const SIGNING_KEY_RETRY_MS = 3e4;
4
4
  interface KeeperLogger {
5
- info(message: string, meta?: {
6
- meta?: Record<string, unknown>;
7
- }): void;
8
- error(message: string, meta?: {
9
- meta?: Record<string, unknown>;
10
- }): void;
5
+ info(message: string, meta?: {
6
+ meta?: Record<string, unknown>;
7
+ }): void;
8
+ error(message: string, meta?: {
9
+ meta?: Record<string, unknown>;
10
+ }): void;
11
11
  }
12
12
  export interface JwtSigningKeyKeeperDeps {
13
- /** A keychain handle for owner `system`; `null` when this process has no keychain door. */
14
- readonly secrets: SecretsAccess | null;
15
- readonly logger: KeeperLogger;
16
- readonly retryMs?: number;
13
+ /** A keychain handle for owner `system`; `null` when this process has no keychain door. */
14
+ readonly secrets: SecretsAccess | null;
15
+ readonly logger: KeeperLogger;
16
+ readonly retryMs?: number;
17
17
  }
18
18
  export declare class JwtSigningKeyKeeper {
19
- private readonly deps;
20
- private retryTimer;
21
- private unsubscribe;
22
- private stopped;
23
- constructor(deps: JwtSigningKeyKeeperDeps);
24
- start(): Promise<void>;
25
- stop(): void;
26
- private load;
27
- private apply;
28
- private scheduleRetry;
19
+ private readonly deps;
20
+ private retryTimer;
21
+ private unsubscribe;
22
+ private stopped;
23
+ constructor(deps: JwtSigningKeyKeeperDeps);
24
+ start(): Promise<void>;
25
+ stop(): void;
26
+ private load;
27
+ private apply;
28
+ private scheduleRetry;
29
29
  }
30
30
  export {};