@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,226 +1,260 @@
1
- import { ContainerMemoryPoint, ContainerMemorySnapshot, IScopedLogger, SettingsStoreClient } from '@camstack/types';
2
- import { LoadSeriesRetention } from './load-series-store.js';
3
1
  /**
4
- * @durable class=audit owner=metrics-native
5
- * write="one row per NODE per sample, appended by the HUB's `native-metrics`
6
- * off its subscription to `metrics.node-processes-snapshot` — the same
7
- * subscription, the same accepted-sample gate and the same timestamps as
8
- * `metrics:node-load-samples`, so a memory row and the process rows of the
9
- * same instant share an `atMs`. A node with no cgroup writes NOTHING; it
10
- * never writes a zeroed row."
11
- * retention="The operator's `loadSeriesRetentionHours` by age and
12
- * CONTAINER_MEMORY_MAX_ROWS by count, swept in the same pass as the process
13
- * table and through the same bounded page. Losing the table loses the cold
14
- * window only: the ring keeps serving the last hour."
15
- */
2
+ * Retention for the container-memory reading — the same two tiers, the same
3
+ * bounds and the same reader as the per-process load series, because it is the
4
+ * same question asked at the other end.
5
+ *
6
+ * ## Why it is retained at all
7
+ *
8
+ * A single hand reading of `memory.stat` says what the container holds RIGHT
9
+ * NOW and nothing about direction. That is exactly the failure this exists to
10
+ * fix: on 2026-08-29 six of the hub's twenty-three gigabytes had no owner among
11
+ * the processes, and there was no way to say whether page cache was steady or
12
+ * climbing — so the difference was read as a leak. A number you cannot trend is
13
+ * a number you will misread.
14
+ *
15
+ * ## Why it is not the same TABLE
16
+ *
17
+ * `metrics:node-load-samples` is one row PER PROCESS per sample. A
18
+ * container-memory reading is one row per NODE per sample — 76x fewer rows on
19
+ * the live fleet. Folding it into that table would mean either repeating the
20
+ * same ten numbers on every process row of a sample, or inventing a synthetic
21
+ * process that is not a process. Both are lies with a storage cost. It is its
22
+ * own collection, keyed the same way, pruned by the same knobs and read in the
23
+ * same call.
24
+ *
25
+ * ## Why it is not its own RING
26
+ *
27
+ * {@link NodeLoadRing} is already a fixed-capacity partitioned ring with
28
+ * per-node capacity, a fleet-wide row budget, an idle-partition sweep and a
29
+ * monotonic idempotence gate — all of it measured and tested. It is generic
30
+ * over its payload and reads only the node id and the timestamp off an
31
+ * envelope. A second ring implementation would be a second set of bounds to
32
+ * get wrong. {@link ContainerMemoryRing} is a naming adapter over it, nothing
33
+ * more: one reading per sample, so one "row" per sample.
34
+ */
35
+ import type { ContainerMemoryPoint, ContainerMemorySnapshot, IScopedLogger, SettingsStoreClient } from "@camstack/types";
36
+ import type { LoadSeriesRetention } from "./load-series-store.js";
37
+ /**
38
+ * @durable class=audit owner=metrics-native
39
+ * write="one row per NODE per sample, appended by the HUB's `native-metrics`
40
+ * off its subscription to `metrics.node-processes-snapshot` — the same
41
+ * subscription, the same accepted-sample gate and the same timestamps as
42
+ * `metrics:node-load-samples`, so a memory row and the process rows of the
43
+ * same instant share an `atMs`. A node with no cgroup writes NOTHING; it
44
+ * never writes a zeroed row."
45
+ * retention="The operator's `loadSeriesRetentionHours` by age and
46
+ * CONTAINER_MEMORY_MAX_ROWS by count, swept in the same pass as the process
47
+ * table and through the same bounded page. Losing the table loses the cold
48
+ * window only: the ring keeps serving the last hour."
49
+ */
16
50
  export declare const CONTAINER_MEMORY_COLLECTION = "metrics:node-memory-samples";
17
51
  /**
18
- * Per-node ceiling on the HOT ring, in samples.
19
- *
20
- * Deliberately the same 180 as the process ring — one hour at the 20 s cadence,
21
- * six at the 10 s default's own reckoning — because the two series are read
22
- * together and a memory window shorter than the process window would silently
23
- * truncate the comparison the pair exists to support.
24
- */
52
+ * Per-node ceiling on the HOT ring, in samples.
53
+ *
54
+ * Deliberately the same 180 as the process ring — one hour at the 20 s cadence,
55
+ * six at the 10 s default's own reckoning — because the two series are read
56
+ * together and a memory window shorter than the process window would silently
57
+ * truncate the comparison the pair exists to support.
58
+ */
25
59
  export declare const CONTAINER_MEMORY_SAMPLES_PER_NODE = 180;
26
60
  /**
27
- * Fleet ceiling on the hot ring, in READINGS.
28
- *
29
- * One reading per node per sample, so this is simply the per-node ceiling times
30
- * the partition ceiling the process ring already declares (16). 2 880 readings
31
- * of ten numbers each is well under a megabyte — the bound exists so a runaway
32
- * node id space costs a fixed amount, not because the number is large.
33
- */
61
+ * Fleet ceiling on the hot ring, in READINGS.
62
+ *
63
+ * One reading per node per sample, so this is simply the per-node ceiling times
64
+ * the partition ceiling the process ring already declares (16). 2 880 readings
65
+ * of ten numbers each is well under a megabyte — the bound exists so a runaway
66
+ * node id space costs a fixed amount, not because the number is large.
67
+ */
34
68
  export declare const CONTAINER_MEMORY_MAX_TOTAL_ROWS: number;
35
69
  /**
36
- * Hard ceiling on the durable table, in ROWS. The guarantee behind the
37
- * retention intention, exactly as `DEFAULT_MAX_ROWS` is for the process table.
38
- *
39
- * | cadence | retention | rows (3 nodes) |
40
- * | --- | --- | --- |
41
- * | 10 s | 6 h (default) | 6 480 |
42
- * | 5 s | 6 h | 12 960 |
43
- * | 5 s | 72 h, 16 nodes | 829 440 — capped here |
44
- *
45
- * 50 000 rows is 7.7x the shipped default. This row is strictly narrower than
46
- * a `metrics:node-load-samples` row — fewer columns, one index, every value an
47
- * integer varint — and that one was MEASURED at 87 B/row, so 50 000 rows is
48
- * **under 4.2 MiB** with the real figure lower still. It is not a knob: a
49
- * guarantee that moves with the hand that raised the intention is not one.
50
- */
51
- export declare const CONTAINER_MEMORY_MAX_ROWS = 50000;
70
+ * Hard ceiling on the durable table, in ROWS. The guarantee behind the
71
+ * retention intention, exactly as `DEFAULT_MAX_ROWS` is for the process table.
72
+ *
73
+ * | cadence | retention | rows (3 nodes) |
74
+ * | --- | --- | --- |
75
+ * | 10 s | 6 h (default) | 6 480 |
76
+ * | 5 s | 6 h | 12 960 |
77
+ * | 5 s | 72 h, 16 nodes | 829 440 — capped here |
78
+ *
79
+ * 50 000 rows is 7.7x the shipped default. This row is strictly narrower than
80
+ * a `metrics:node-load-samples` row — fewer columns, one index, every value an
81
+ * integer varint — and that one was MEASURED at 87 B/row, so 50 000 rows is
82
+ * **under 4.2 MiB** with the real figure lower still. It is not a knob: a
83
+ * guarantee that moves with the hand that raised the intention is not one.
84
+ */
85
+ export declare const CONTAINER_MEMORY_MAX_ROWS = 5e4;
52
86
  /** Rows one prune pass may remove. Bounded, never a full scan. */
53
- export declare const CONTAINER_MEMORY_PRUNE_PAGE_ROWS = 20000;
87
+ export declare const CONTAINER_MEMORY_PRUNE_PAGE_ROWS = 2e4;
54
88
  export declare const CONTAINER_MEMORY_COLUMNS: readonly [{
55
- readonly name: "id";
56
- readonly type: "INTEGER";
57
- readonly primaryKey: true;
58
- readonly notNull: true;
89
+ readonly name: "id";
90
+ readonly type: "INTEGER";
91
+ readonly primaryKey: true;
92
+ readonly notNull: true;
59
93
  }, {
60
- readonly name: "nodeId";
61
- readonly type: "TEXT";
62
- readonly notNull: true;
94
+ readonly name: "nodeId";
95
+ readonly type: "TEXT";
96
+ readonly notNull: true;
63
97
  }, {
64
- readonly name: "atMs";
65
- readonly type: "INTEGER";
66
- readonly notNull: true;
98
+ readonly name: "atMs";
99
+ readonly type: "INTEGER";
100
+ readonly notNull: true;
67
101
  }, {
68
- readonly name: "source";
69
- readonly type: "TEXT";
70
- readonly notNull: true;
102
+ readonly name: "source";
103
+ readonly type: "TEXT";
104
+ readonly notNull: true;
71
105
  }, {
72
- readonly name: "currentMib";
73
- readonly type: "INTEGER";
74
- readonly notNull: true;
106
+ readonly name: "currentMib";
107
+ readonly type: "INTEGER";
108
+ readonly notNull: true;
75
109
  }, {
76
- readonly name: "limitMib";
77
- readonly type: "INTEGER";
110
+ readonly name: "limitMib";
111
+ readonly type: "INTEGER";
78
112
  }, {
79
- readonly name: "anonMib";
80
- readonly type: "INTEGER";
113
+ readonly name: "anonMib";
114
+ readonly type: "INTEGER";
81
115
  }, {
82
- readonly name: "fileMib";
83
- readonly type: "INTEGER";
116
+ readonly name: "fileMib";
117
+ readonly type: "INTEGER";
84
118
  }, {
85
- readonly name: "shmemMib";
86
- readonly type: "INTEGER";
119
+ readonly name: "shmemMib";
120
+ readonly type: "INTEGER";
87
121
  }, {
88
- readonly name: "slabMib";
89
- readonly type: "INTEGER";
122
+ readonly name: "slabMib";
123
+ readonly type: "INTEGER";
90
124
  }, {
91
- readonly name: "gpuShmemMib";
92
- readonly type: "INTEGER";
125
+ readonly name: "gpuShmemMib";
126
+ readonly type: "INTEGER";
93
127
  }];
94
128
  export declare const CONTAINER_MEMORY_INDEXES: readonly [{
95
- readonly name: "idx_node_memory_node_at";
96
- readonly columns: readonly ["nodeId", "atMs"];
129
+ readonly name: "idx_node_memory_node_at";
130
+ readonly columns: readonly ["nodeId", "atMs"];
97
131
  }];
98
132
  /** One stored row, in the units the table stores them in. */
99
133
  export interface ContainerMemoryRow {
100
- readonly nodeId: string;
101
- readonly atMs: number;
102
- readonly source: string;
103
- readonly currentMib: number;
104
- readonly limitMib: number | null;
105
- readonly anonMib: number | null;
106
- readonly fileMib: number | null;
107
- readonly shmemMib: number | null;
108
- readonly slabMib: number | null;
109
- readonly gpuShmemMib: number | null;
134
+ readonly nodeId: string;
135
+ readonly atMs: number;
136
+ readonly source: string;
137
+ readonly currentMib: number;
138
+ readonly limitMib: number | null;
139
+ readonly anonMib: number | null;
140
+ readonly fileMib: number | null;
141
+ readonly shmemMib: number | null;
142
+ readonly slabMib: number | null;
143
+ readonly gpuShmemMib: number | null;
110
144
  }
111
145
  /** The ONE encode. */
112
146
  export declare function snapshotToRow(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): ContainerMemoryRow;
113
147
  /**
114
- * The ONE decode. A row whose `source` is not a hierarchy this build knows is
115
- * skipped rather than coerced — a stored string that no longer means anything
116
- * must not be charted as though it did.
117
- */
148
+ * The ONE decode. A row whose `source` is not a hierarchy this build knows is
149
+ * skipped rather than coerced — a stored string that no longer means anything
150
+ * must not be charted as though it did.
151
+ */
118
152
  export declare function rowToPoint(row: ContainerMemoryRow): ContainerMemoryPoint | null;
119
153
  /** Structural validation on read. A malformed row is skipped, never charted. */
120
154
  export declare function recordToMemoryRow(data: Record<string, unknown>): ContainerMemoryRow | null;
121
155
  export interface ContainerMemoryRingOptions {
122
- readonly samplesPerNode?: number;
123
- /**
124
- * Injectable clock, forwarded to the ring's idle-partition sweep. Tests
125
- * drive eviction without sleeping for an hour; production uses `Date.now`.
126
- */
127
- readonly now?: () => number;
156
+ readonly samplesPerNode?: number;
157
+ /**
158
+ * Injectable clock, forwarded to the ring's idle-partition sweep. Tests
159
+ * drive eviction without sleeping for an hour; production uses `Date.now`.
160
+ */
161
+ readonly now?: () => number;
128
162
  }
129
163
  /**
130
- * The HOT tier — a naming adapter over {@link NodeLoadRing}, not a second ring.
131
- *
132
- * One reading per sample, so the ring's "rows" and its samples are the same
133
- * count and its fleet budget is a sample budget. Every bound, the idle sweep
134
- * and the monotonic replay gate come from there unchanged.
135
- */
164
+ * The HOT tier — a naming adapter over {@link NodeLoadRing}, not a second ring.
165
+ *
166
+ * One reading per sample, so the ring's "rows" and its samples are the same
167
+ * count and its fleet budget is a sample budget. Every bound, the idle sweep
168
+ * and the monotonic replay gate come from there unchanged.
169
+ */
136
170
  export declare class ContainerMemoryRing {
137
- private readonly ring;
138
- constructor(options?: ContainerMemoryRingOptions);
139
- /** Retain one reading. `false` = a timestamp this node already delivered. */
140
- record(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): boolean;
141
- /**
142
- * Read one node's retained readings, oldest-first. `sinceMs` is EXCLUSIVE,
143
- * matching every other reader in this subsystem.
144
- *
145
- * A node nobody has recorded answers EMPTY — which is what "this node has no
146
- * cgroup" looks like, and it must stay distinguishable from a zero.
147
- */
148
- read(nodeId: string, sinceMs?: number): readonly ContainerMemoryPoint[];
171
+ private readonly ring;
172
+ constructor(options?: ContainerMemoryRingOptions);
173
+ /** Retain one reading. `false` = a timestamp this node already delivered. */
174
+ record(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): boolean;
175
+ /**
176
+ * Read one node's retained readings, oldest-first. `sinceMs` is EXCLUSIVE,
177
+ * matching every other reader in this subsystem.
178
+ *
179
+ * A node nobody has recorded answers EMPTY — which is what "this node has no
180
+ * cgroup" looks like, and it must stay distinguishable from a zero.
181
+ */
182
+ read(nodeId: string, sinceMs?: number): readonly ContainerMemoryPoint[];
149
183
  }
150
184
  /**
151
- * Merge the two tiers and reduce, oldest-first.
152
- *
153
- * Dedupe is on `atMs` with the HOT copy winning, exactly as the process reader
154
- * does: the ring holds the reading as it arrived, the table holds it after the
155
- * MiB encode.
156
- *
157
- * Reduction keeps, for each bucket, the reading with the largest
158
- * `currentBytes` — WHOLE, every field from that one sample. A per-field
159
- * maximum would synthesise a row whose parts never coexisted (an `anon` peak
160
- * and a `file` peak minutes apart, summed into a total that never happened),
161
- * and a mean would smear away the spike this series exists to find. `atMs`
162
- * becomes the bucket START so the points lie on the same x-axis as the folded
163
- * process series, which is the only reason both travel in one answer.
164
- *
165
- * An empty bucket stays ABSENT — never zero, never carried forward.
166
- */
185
+ * Merge the two tiers and reduce, oldest-first.
186
+ *
187
+ * Dedupe is on `atMs` with the HOT copy winning, exactly as the process reader
188
+ * does: the ring holds the reading as it arrived, the table holds it after the
189
+ * MiB encode.
190
+ *
191
+ * Reduction keeps, for each bucket, the reading with the largest
192
+ * `currentBytes` — WHOLE, every field from that one sample. A per-field
193
+ * maximum would synthesise a row whose parts never coexisted (an `anon` peak
194
+ * and a `file` peak minutes apart, summed into a total that never happened),
195
+ * and a mean would smear away the spike this series exists to find. `atMs`
196
+ * becomes the bucket START so the points lie on the same x-axis as the folded
197
+ * process series, which is the only reason both travel in one answer.
198
+ *
199
+ * An empty bucket stays ABSENT — never zero, never carried forward.
200
+ */
167
201
  export declare function reduceContainerMemory(points: readonly ContainerMemoryPoint[], bucketMs: number, origin: number): readonly ContainerMemoryPoint[];
168
202
  /** Merge cold + hot on `atMs`, hot wins. Exported because dedup is the
169
- * property worth testing on its own. */
203
+ * property worth testing on its own. */
170
204
  export declare function mergeContainerMemory(cold: readonly ContainerMemoryPoint[], hot: readonly ContainerMemoryPoint[]): readonly ContainerMemoryPoint[];
171
205
  export interface ContainerMemoryStoreDeps {
172
- readonly store: SettingsStoreClient;
173
- readonly logger: IScopedLogger;
174
- readonly now?: () => number;
175
- readonly prunePageRows?: number;
206
+ readonly store: SettingsStoreClient;
207
+ readonly logger: IScopedLogger;
208
+ readonly now?: () => number;
209
+ readonly prunePageRows?: number;
176
210
  }
177
211
  /** What one prune pass did. Returned so a test can assert the bound held. */
178
212
  export interface ContainerMemoryPruneOutcome {
179
- readonly deletedByAge: number;
180
- readonly deletedByCap: number;
181
- readonly rowsExamined: number;
182
- readonly capBit: boolean;
213
+ readonly deletedByAge: number;
214
+ readonly deletedByCap: number;
215
+ readonly rowsExamined: number;
216
+ readonly capBit: boolean;
183
217
  }
184
218
  /**
185
- * The COLD tier. Append-only, bounded, and never the authority on anything the
186
- * hot ring can answer.
187
- *
188
- * Every method is best-effort and says so in the log rather than throwing at
189
- * the emitter: a storage hiccup must cost a gap in a chart, never a dropped
190
- * snapshot on the bus.
191
- */
219
+ * The COLD tier. Append-only, bounded, and never the authority on anything the
220
+ * hot ring can answer.
221
+ *
222
+ * Every method is best-effort and says so in the log rather than throwing at
223
+ * the emitter: a storage hiccup must cost a gap in a chart, never a dropped
224
+ * snapshot on the bus.
225
+ */
192
226
  export declare class ContainerMemoryStore {
193
- private declared;
194
- private readonly store;
195
- private readonly logger;
196
- private readonly nowFn;
197
- private readonly prunePageRows;
198
- constructor(deps: ContainerMemoryStoreDeps);
199
- /** Idempotently declare the collection. `false` when the store refused. */
200
- declare(): Promise<boolean>;
201
- /** Append ONE reading. */
202
- append(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): Promise<number>;
203
- /** Read one node's cold readings, oldest-first. `sinceMs` is EXCLUSIVE. */
204
- read(nodeId: string, sinceMs: number, limitRows: number): Promise<readonly ContainerMemoryPoint[]>;
205
- /**
206
- * Enforce BOTH bounds, oldest-first, through a bounded page each.
207
- *
208
- * Not rate-limited here: it is driven by the process store's own prune
209
- * cadence, so it runs at most once a minute by construction and a second
210
- * timer would be a second thing to get wrong.
211
- */
212
- prune(nodeIds: readonly string[], retention: LoadSeriesRetention): Promise<ContainerMemoryPruneOutcome | null>;
213
- /** Total rows, or `null` when the store could not answer. */
214
- count(): Promise<number | null>;
215
- /**
216
- * Delete this node's oldest rows, at most one page's worth.
217
- *
218
- * `cutoff === null` means "the oldest rows, whatever their age" — the
219
- * row-cap path, which is bounded by `limitRows` instead. Either way the page
220
- * is READ FIRST, ordered by the one index, and its last `atMs` becomes the
221
- * effective cutoff for a single bounded delete. An unbounded `deleteWhere`
222
- * would be one statement and one stalling transaction the first time a
223
- * retention is lowered.
224
- */
225
- private deleteOldestPage;
227
+ private declared;
228
+ private readonly store;
229
+ private readonly logger;
230
+ private readonly nowFn;
231
+ private readonly prunePageRows;
232
+ constructor(deps: ContainerMemoryStoreDeps);
233
+ /** Idempotently declare the collection. `false` when the store refused. */
234
+ declare(): Promise<boolean>;
235
+ /** Append ONE reading. */
236
+ append(nodeId: string, atMs: number, snapshot: ContainerMemorySnapshot): Promise<number>;
237
+ /** Read one node's cold readings, oldest-first. `sinceMs` is EXCLUSIVE. */
238
+ read(nodeId: string, sinceMs: number, limitRows: number): Promise<readonly ContainerMemoryPoint[]>;
239
+ /**
240
+ * Enforce BOTH bounds, oldest-first, through a bounded page each.
241
+ *
242
+ * Not rate-limited here: it is driven by the process store's own prune
243
+ * cadence, so it runs at most once a minute by construction and a second
244
+ * timer would be a second thing to get wrong.
245
+ */
246
+ prune(nodeIds: readonly string[], retention: LoadSeriesRetention): Promise<ContainerMemoryPruneOutcome | null>;
247
+ /** Total rows, or `null` when the store could not answer. */
248
+ count(): Promise<number | null>;
249
+ /**
250
+ * Delete this node's oldest rows, at most one page's worth.
251
+ *
252
+ * `cutoff === null` means "the oldest rows, whatever their age" — the
253
+ * row-cap path, which is bounded by `limitRows` instead. Either way the page
254
+ * is READ FIRST, ordered by the one index, and its last `atMs` becomes the
255
+ * effective cutoff for a single bounded delete. An unbounded `deleteWhere`
256
+ * would be one statement and one stalling transaction the first time a
257
+ * retention is lowered.
258
+ */
259
+ private deleteOldestPage;
226
260
  }
@@ -1,18 +1,18 @@
1
- import { MetricsGpuInfo } from '@camstack/types';
1
+ import type { MetricsGpuInfo } from "@camstack/types";
2
2
  /** `access(path, X_OK)` — resolves when executable, rejects otherwise. */
3
3
  export type AccessCheck = (path: string) => Promise<void>;
4
4
  /**
5
- * The first `PATH` entry under which `binary` is executable, or `null`.
6
- * An empty or missing `PATH` asks nothing.
7
- */
5
+ * The first `PATH` entry under which `binary` is executable, or `null`.
6
+ * An empty or missing `PATH` asks nothing.
7
+ */
8
8
  export declare function findOnPath(binary: string, pathEnv: string | undefined, check?: AccessCheck): Promise<string | null>;
9
9
  /** The two impure steps, injectable. */
10
10
  export interface NvidiaProbeDeps {
11
- readonly findOnPath: (binary: string) => Promise<string | null>;
12
- readonly exec: (command: string, args: readonly string[]) => Promise<string>;
11
+ readonly findOnPath: (binary: string) => Promise<string | null>;
12
+ readonly exec: (command: string, args: readonly string[]) => Promise<string>;
13
13
  }
14
14
  /**
15
- * `nvidia-smi`'s one-line CSV as a `MetricsGpuInfo`, or `null` when the
16
- * binary is absent, fails, or prints something else. Never throws.
17
- */
15
+ * `nvidia-smi`'s one-line CSV as a `MetricsGpuInfo`, or `null` when the
16
+ * binary is absent, fails, or prints something else. Never throws.
17
+ */
18
18
  export declare function readNvidiaGpu(deps: NvidiaProbeDeps): Promise<MetricsGpuInfo | null>;
@@ -1,2 +1,2 @@
1
- export { default as NativeMetricsAddon } from './native-metrics.addon.js';
2
- export { NativeMetricsProvider } from './native-metrics-provider.js';
1
+ export { default as NativeMetricsAddon } from "./native-metrics.addon.js";
2
+ export { NativeMetricsProvider } from "./native-metrics-provider.js";
@@ -1,74 +1,46 @@
1
- /**
2
- * The two knobs of the durable load series, and the arithmetic that makes them
3
- * honest.
4
- *
5
- * ## Where they live, and why there
6
- *
7
- * In `native-metrics`'s OWN global settings document — the one that already
8
- * exists and already carries `samplingIntervalMs`. Fields on a document, never
9
- * a method per knob: `system.getLoggingSettings` / `setLoggingSettings` set
10
- * that precedent and it holds here.
11
- *
12
- * They are NOT in the logging document, and that is a decision rather than an
13
- * omission. That document is about levels and diagnostic windows; a metrics
14
- * cadence and a table's retention are neither. Two documents that both claim a
15
- * knob is how this repo has already shipped a switch nobody read.
16
- *
17
- * They are cluster-wide, not per-node. Every node emits on the same cadence or
18
- * the fleet's series cannot be laid over each other, and the table is single
19
- * and hub-resident, so a per-node retention would be a promise nothing could
20
- * keep.
21
- *
22
- * ## Refused, not clamped
23
- *
24
- * A cadence outside 5-60 s is REFUSED. Clamping would silently store 10 when
25
- * the operator typed 2 and then report 10 back as though it had been accepted
26
- * — the failure mode where a knob and its readback agree on a value nobody
27
- * chose. The schema advertises the bounds; this refuses anything else.
28
- */
29
1
  /** The resolved, in-force configuration. */
30
2
  export interface LoadSeriesConfig {
31
- readonly cadenceSec: number;
32
- readonly retentionHours: number;
33
- readonly maxRows: number;
3
+ readonly cadenceSec: number;
4
+ readonly retentionHours: number;
5
+ readonly maxRows: number;
34
6
  }
35
7
  /** Why a value was refused — the message an operator is shown verbatim. */
36
8
  export declare class LoadSeriesConfigError extends Error {
37
- constructor(message: string);
9
+ constructor(message: string);
38
10
  }
39
11
  /**
40
- * Resolve the configuration, REFUSING anything out of range.
41
- *
42
- * An ABSENT field takes its default — that is not a refusal, it is a document
43
- * that has never been written. A PRESENT field outside its bounds throws.
44
- */
12
+ * Resolve the configuration, REFUSING anything out of range.
13
+ *
14
+ * An ABSENT field takes its default — that is not a refusal, it is a document
15
+ * that has never been written. A PRESENT field outside its bounds throws.
16
+ */
45
17
  export declare function resolveLoadSeriesConfig(raw: {
46
- readonly loadSeriesCadenceSec?: unknown;
47
- readonly loadSeriesRetentionHours?: unknown;
18
+ readonly loadSeriesCadenceSec?: unknown;
19
+ readonly loadSeriesRetentionHours?: unknown;
48
20
  }): LoadSeriesConfig;
49
21
  /** What a configuration is projected to cost, from OBSERVED counts. */
50
22
  export interface LoadSeriesProjection {
51
- /** Rows the retention window alone would hold. */
52
- readonly intendedRows: number;
53
- /** Rows actually allowed — `min(intendedRows, maxRows)`. */
54
- readonly boundedRows: number;
55
- readonly estimatedBytes: number;
56
- /** Does the row cap bite before the retention window is full? */
57
- readonly capBites: boolean;
23
+ /** Rows the retention window alone would hold. */
24
+ readonly intendedRows: number;
25
+ /** Rows actually allowed — `min(intendedRows, maxRows)`. */
26
+ readonly boundedRows: number;
27
+ readonly estimatedBytes: number;
28
+ /** Does the row cap bite before the retention window is full? */
29
+ readonly capBites: boolean;
58
30
  }
59
31
  /**
60
- * Project the cost of a configuration from the numbers the cluster is actually
61
- * reporting — nodes and processes OBSERVED, never a constant.
62
- *
63
- * This is what makes the knob honest: an operator raising retention to three
64
- * days sees the row count and the megabytes BEFORE applying it, rather than
65
- * discovering them afterwards. `MEASURED_BYTES_PER_ROW` is measured, not
66
- * guessed — see `load-series-store.ts`.
67
- */
32
+ * Project the cost of a configuration from the numbers the cluster is actually
33
+ * reporting — nodes and processes OBSERVED, never a constant.
34
+ *
35
+ * This is what makes the knob honest: an operator raising retention to three
36
+ * days sees the row count and the megabytes BEFORE applying it, rather than
37
+ * discovering them afterwards. `MEASURED_BYTES_PER_ROW` is measured, not
38
+ * guessed — see `load-series-store.ts`.
39
+ */
68
40
  export declare function projectLoadSeriesCost(input: {
69
- readonly config: LoadSeriesConfig;
70
- /** Process rows observed across the fleet in the most recent snapshots. */
71
- readonly observedProcessRows: number;
41
+ readonly config: LoadSeriesConfig;
42
+ /** Process rows observed across the fleet in the most recent snapshots. */
43
+ readonly observedProcessRows: number;
72
44
  }): LoadSeriesProjection;
73
45
  /** Human-readable one-liner for the settings form. */
74
46
  export declare function describeLoadSeriesCost(projection: LoadSeriesProjection): string;