@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,92 +1,92 @@
1
1
  /**
2
- * Which collection IS the database.
3
- *
4
- * ## Why this exists
5
- *
6
- * The boot line already says how big the file is (`dbSizeMb`) and how much of
7
- * it is real (`freePct`). Measured on the live hub 2026-08-25 those read
8
- * `dbSizeMb=858 liveMb=840 freeMb=18 freePct=2` — so the growth from 153 MB
9
- * (08-08) is not a high-water mark waiting for a VACUUM, it is live rows. That
10
- * turned "should we VACUUM" into "which table", and nothing in this system
11
- * could answer it.
12
- *
13
- * Nothing could, structurally: per-addon scoped collections
14
- * (`<addonId>:<canonical>`) are created on the first write and declared in no
15
- * source file, so the real set only exists on the running node. A reference
16
- * page cannot list them and a grep cannot find them.
17
- *
18
- * ## Why `dbstat` and not `COUNT(*)`
19
- *
20
- * `dbstat` reports the pages a table actually occupies, which is the question —
21
- * a table with few enormous rows and a table with many small ones are the same
22
- * problem when the file is the thing that grew. It walks the b-tree structure
23
- * without decoding row payloads, so it costs a page traversal rather than a
24
- * full table scan. It is still real work on an 840 MB file, which is why the
25
- * caller runs it ONCE, well after boot, off the critical path — never on the
26
- * path a config read waits behind.
27
- */
2
+ * Which collection IS the database.
3
+ *
4
+ * ## Why this exists
5
+ *
6
+ * The boot line already says how big the file is (`dbSizeMb`) and how much of
7
+ * it is real (`freePct`). Measured on the live hub 2026-08-25 those read
8
+ * `dbSizeMb=858 liveMb=840 freeMb=18 freePct=2` — so the growth from 153 MB
9
+ * (08-08) is not a high-water mark waiting for a VACUUM, it is live rows. That
10
+ * turned "should we VACUUM" into "which table", and nothing in this system
11
+ * could answer it.
12
+ *
13
+ * Nothing could, structurally: per-addon scoped collections
14
+ * (`<addonId>:<canonical>`) are created on the first write and declared in no
15
+ * source file, so the real set only exists on the running node. A reference
16
+ * page cannot list them and a grep cannot find them.
17
+ *
18
+ * ## Why `dbstat` and not `COUNT(*)`
19
+ *
20
+ * `dbstat` reports the pages a table actually occupies, which is the question —
21
+ * a table with few enormous rows and a table with many small ones are the same
22
+ * problem when the file is the thing that grew. It walks the b-tree structure
23
+ * without decoding row payloads, so it costs a page traversal rather than a
24
+ * full table scan. It is still real work on an 840 MB file, which is why the
25
+ * caller runs it ONCE, well after boot, off the critical path — never on the
26
+ * path a config read waits behind.
27
+ */
28
28
  /** What kind of object a `dbstat` group is. An index is an object too. */
29
- export type SqliteObjectKind = 'table' | 'index' | 'unknown';
29
+ export type SqliteObjectKind = "table" | "index" | "unknown";
30
30
  /** One `dbstat` group: an object and the space it occupies. */
31
31
  export interface TableSizeRow {
32
- readonly name: string;
33
- /**
34
- * `sqlite_master.tbl_name` — for a table this IS the table, for an index it
35
- * is the table the index belongs to. Ownership is read from the relation
36
- * SQLite already stores; an index name carries none (`idx_b_outbox` only
37
- * looks parseable, and `sqlite_autoindex_a:media_1` would parse to nonsense).
38
- */
39
- readonly tableName: string;
40
- readonly bytes: number;
41
- readonly pages: number;
42
- readonly kind: SqliteObjectKind;
32
+ readonly name: string;
33
+ /**
34
+ * `sqlite_master.tbl_name` — for a table this IS the table, for an index it
35
+ * is the table the index belongs to. Ownership is read from the relation
36
+ * SQLite already stores; an index name carries none (`idx_b_outbox` only
37
+ * looks parseable, and `sqlite_autoindex_a:media_1` would parse to nonsense).
38
+ */
39
+ readonly tableName: string;
40
+ readonly bytes: number;
41
+ readonly pages: number;
42
+ readonly kind: SqliteObjectKind;
43
43
  }
44
44
  /** One line of the report. */
45
45
  export interface TableSizeEntry {
46
- readonly name: string;
47
- readonly sizeMb: number;
48
- readonly pages: number;
49
- /** Share of the whole file, percent. 0 when the file size is unknown. */
50
- readonly pct: number;
51
- readonly kind: SqliteObjectKind;
46
+ readonly name: string;
47
+ readonly sizeMb: number;
48
+ readonly pages: number;
49
+ /** Share of the whole file, percent. 0 when the file size is unknown. */
50
+ readonly pct: number;
51
+ readonly kind: SqliteObjectKind;
52
52
  }
53
53
  /** Everything one addon prefix owns, tables and their indexes together. */
54
54
  export interface OwnerRollup {
55
- readonly owner: string;
56
- readonly sizeMb: number;
57
- readonly objects: number;
55
+ readonly owner: string;
56
+ readonly sizeMb: number;
57
+ readonly objects: number;
58
58
  }
59
59
  export interface TableSizeReport {
60
- readonly tables: readonly TableSizeEntry[];
61
- /** Megabytes held by everything below the cut. */
62
- readonly otherMb: number;
63
- /** How many OBJECTS are behind `otherMb` — tables and indexes alike. */
64
- readonly otherObjects: number;
65
- readonly tableCount: number;
66
- readonly indexCount: number;
67
- /** Every owner, biggest first. */
68
- readonly byOwner: readonly OwnerRollup[];
60
+ readonly tables: readonly TableSizeEntry[];
61
+ /** Megabytes held by everything below the cut. */
62
+ readonly otherMb: number;
63
+ /** How many OBJECTS are behind `otherMb` — tables and indexes alike. */
64
+ readonly otherObjects: number;
65
+ readonly tableCount: number;
66
+ readonly indexCount: number;
67
+ /** Every owner, biggest first. */
68
+ readonly byOwner: readonly OwnerRollup[];
69
69
  }
70
70
  /** The label for anything that is not a per-addon scoped collection. */
71
71
  export declare const UNSCOPED_OWNER = "(unscoped)";
72
72
  /**
73
- * Rank tables by the space they hold and keep the top `limit`.
74
- *
75
- * The tail is REPORTED, never dropped: a top-N that silently discards the rest
76
- * reads as "these N are the database", which is exactly the wrong conclusion
77
- * when the remainder is a third of the file.
78
- */
73
+ * Rank tables by the space they hold and keep the top `limit`.
74
+ *
75
+ * The tail is REPORTED, never dropped: a top-N that silently discards the rest
76
+ * reads as "these N are the database", which is exactly the wrong conclusion
77
+ * when the remainder is a third of the file.
78
+ */
79
79
  export declare function summariseTableSizes(rows: readonly TableSizeRow[], totalBytes: number, limit: number): TableSizeReport;
80
80
  /**
81
- * How long after opening the connection the report runs.
82
- *
83
- * Not zero and not "on every boot forever at startup": boot is already the
84
- * busiest window this engine sees (`ensureTable` x9, the retired-key purge, the
85
- * vector registry), and a page traversal of an 840 MB file placed there would
86
- * be indistinguishable from the stall this whole subsystem was just fixed for.
87
- * Sixty seconds puts it after the storm, once per process.
88
- */
89
- export declare const STORAGE_REPORT_DELAY_MS = 60000;
81
+ * How long after opening the connection the report runs.
82
+ *
83
+ * Not zero and not "on every boot forever at startup": boot is already the
84
+ * busiest window this engine sees (`ensureTable` x9, the retired-key purge, the
85
+ * vector registry), and a page traversal of an 840 MB file placed there would
86
+ * be indistinguishable from the stall this whole subsystem was just fixed for.
87
+ * Sixty seconds puts it after the storm, once per process.
88
+ */
89
+ export declare const STORAGE_REPORT_DELAY_MS = 6e4;
90
90
  /** Top-N tables named individually; the remainder is reported as a tail. */
91
91
  export declare const STORAGE_REPORT_TOP_N = 10;
92
92
  /** Owners named individually in the log line. */
@@ -1,72 +1,81 @@
1
- import { VectorFilter, VectorMetadata, VectorMetric } from '@camstack/types';
1
+ /**
2
+ * Shapes shared by the vector index and its provider.
3
+ *
4
+ * There is ONE index implementation on purpose (`SqliteVecVectorIndex`). A
5
+ * second one behind a flag would mean two code paths that can disagree and a
6
+ * silent fallback that turns "the extension is missing" into "search is
7
+ * mysteriously slow". Replaceability lives at the CAPABILITY — another provider
8
+ * takes over wholesale — not inside this module.
9
+ */
10
+ import type { VectorFilter, VectorMetadata, VectorMetric } from "@camstack/types";
2
11
  /** Metadata keys promoted to real, indexable columns in every backend. */
3
12
  export declare const PROMOTED_COLUMNS: readonly ["deviceId", "timestamp", "className", "modelId"];
4
13
  /** A ranked hit as a backend returns it. */
5
14
  export interface VectorMatchRow {
6
- readonly id: string;
7
- /** Similarity, higher is nearer — NOT a distance. Backends convert. */
8
- readonly score: number;
9
- readonly metadata: VectorMetadata;
15
+ readonly id: string;
16
+ /** Similarity, higher is nearer — NOT a distance. Backends convert. */
17
+ readonly score: number;
18
+ readonly metadata: VectorMetadata;
10
19
  }
11
20
  /**
12
- * What one ranked search returned, INCLUDING the `k` it really ran with.
13
- *
14
- * `effectiveTopK` is part of the answer rather than a log line for the reason
15
- * `vector-store.cap.ts` records: a ceiling the caller learns about only from
16
- * the provider's own log is a number truncated in silence.
17
- */
21
+ * What one ranked search returned, INCLUDING the `k` it really ran with.
22
+ *
23
+ * `effectiveTopK` is part of the answer rather than a log line for the reason
24
+ * `vector-store.cap.ts` records: a ceiling the caller learns about only from
25
+ * the provider's own log is a number truncated in silence.
26
+ */
18
27
  export interface VectorQueryOutcome {
19
- readonly matches: VectorMatchRow[];
20
- readonly scanned: number;
21
- readonly truncated: boolean;
22
- readonly effectiveTopK: number;
28
+ readonly matches: VectorMatchRow[];
29
+ readonly scanned: number;
30
+ readonly truncated: boolean;
31
+ readonly effectiveTopK: number;
23
32
  }
24
33
  /** One row read back WITH its vector, base64 Float32LE. */
25
34
  export interface VectorFetchRow {
26
- readonly id: string;
27
- readonly vector: string;
28
- readonly metadata: VectorMetadata;
35
+ readonly id: string;
36
+ readonly vector: string;
37
+ readonly metadata: VectorMetadata;
29
38
  }
30
39
  /** One page of an unranked walk. `nextCursor: null` means end of index. */
31
40
  export interface VectorScanPage {
32
- readonly items: Array<{
33
- id: string;
34
- metadata: VectorMetadata;
35
- }>;
36
- readonly nextCursor: number | null;
41
+ readonly items: Array<{
42
+ id: string;
43
+ metadata: VectorMetadata;
44
+ }>;
45
+ readonly nextCursor: number | null;
37
46
  }
38
47
  export interface VectorIndexStats {
39
- readonly backend: string;
40
- readonly count: number;
41
- readonly dim: number;
42
- readonly metric: VectorMetric;
43
- readonly exact: boolean;
48
+ readonly backend: string;
49
+ readonly count: number;
50
+ readonly dim: number;
51
+ readonly metric: VectorMetric;
52
+ readonly exact: boolean;
44
53
  }
45
54
  export interface VectorIndexBackend {
46
- loadIndexRegistry(): Promise<void>;
47
- declareIndex(index: string, dim: number, metric: VectorMetric): Promise<void>;
48
- upsert(index: string, items: readonly {
49
- id: string;
50
- vector: string;
51
- metadata: VectorMetadata;
52
- }[]): Promise<{
53
- upserted: number;
54
- rejected: number;
55
- }>;
56
- query(params: {
57
- index: string;
58
- vector: string;
59
- topK: number;
60
- minScore?: number;
61
- filter?: VectorFilter;
62
- }): Promise<VectorQueryOutcome>;
63
- getByIds(index: string, ids: readonly string[]): Promise<Array<{
64
- id: string;
65
- metadata: VectorMetadata;
66
- }>>;
67
- fetchByIds(index: string, ids: readonly string[]): Promise<VectorFetchRow[]>;
68
- scan(index: string, cursor: number, limit: number): Promise<VectorScanPage>;
69
- deleteByIds(index: string, ids: readonly string[]): Promise<number>;
70
- deleteByFilter(index: string, filter: VectorFilter): Promise<number>;
71
- stats(index: string): Promise<VectorIndexStats>;
55
+ loadIndexRegistry(): Promise<void>;
56
+ declareIndex(index: string, dim: number, metric: VectorMetric): Promise<void>;
57
+ upsert(index: string, items: readonly {
58
+ id: string;
59
+ vector: string;
60
+ metadata: VectorMetadata;
61
+ }[]): Promise<{
62
+ upserted: number;
63
+ rejected: number;
64
+ }>;
65
+ query(params: {
66
+ index: string;
67
+ vector: string;
68
+ topK: number;
69
+ minScore?: number;
70
+ filter?: VectorFilter;
71
+ }): Promise<VectorQueryOutcome>;
72
+ getByIds(index: string, ids: readonly string[]): Promise<Array<{
73
+ id: string;
74
+ metadata: VectorMetadata;
75
+ }>>;
76
+ fetchByIds(index: string, ids: readonly string[]): Promise<VectorFetchRow[]>;
77
+ scan(index: string, cursor: number, limit: number): Promise<VectorScanPage>;
78
+ deleteByIds(index: string, ids: readonly string[]): Promise<number>;
79
+ deleteByFilter(index: string, filter: VectorFilter): Promise<number>;
80
+ stats(index: string): Promise<VectorIndexStats>;
72
81
  }
@@ -1,106 +1,143 @@
1
- import { IScopedLogger, VectorFilter, VectorMetadata, VectorMetric, encodeVectorBase64 } from '@camstack/types';
2
- import { SqliteOpProfiler } from './query-profiler.js';
3
- import { VectorFetchRow, VectorIndexStats, VectorQueryOutcome, VectorScanPage } from './vector-index-shared.js';
1
+ /**
2
+ * sqlite-vec vector index — the ANN-capable `vector-store` backend.
3
+ *
4
+ * Same database file, same open handle, same process as the brute-force index
5
+ * it replaces: `sqlite-vec` is an EXTENSION, not a service. That is why it was
6
+ * chosen over Qdrant/Milvus/LanceDB — at this scale a second thing to run, back
7
+ * up and version buys nothing that a `vec0` virtual table does not.
8
+ *
9
+ * ## What the extension gives us, and what it costs
10
+ *
11
+ * A `vec0` table stores the vector as a packed Float32 blob and does the
12
+ * distance in C, with the metadata prefilters compiled into the SAME statement
13
+ * — so `deviceId = ? AND ts BETWEEN ? AND ?` narrows the candidate set before
14
+ * any distance is computed, instead of after loading every row into JS.
15
+ *
16
+ * It is not free of sharp edges, and all three below were found by running it,
17
+ * not by reading about it:
18
+ *
19
+ * 1. **The primary key must be declared `TEXT PRIMARY KEY`.** The default
20
+ * `rowid` form rejects our ids with "Only integers are allowed for primary
21
+ * key values" — and our ids are track UUIDs.
22
+ * 2. **Integer metadata must be bound as BigInt.** `better-sqlite3` sends a
23
+ * plain JS number as a FLOAT, and `vec0` rejects it with "Expected integer
24
+ * for INTEGER metadata column". A silent `Number` → `BigInt` conversion at
25
+ * the boundary is therefore mandatory, not defensive.
26
+ * 3. **`distance_metric=cosine` returns a DISTANCE**, 0 for identical and 2
27
+ * for opposite. The capability's contract is a SCORE where higher is
28
+ * nearer, so it is converted — `score = 1 - distance` — exactly once, here.
29
+ *
30
+ * ## Switching backends is not free
31
+ *
32
+ * The `vec0` table is a different table from the brute-force one. Turning this
33
+ * on gives an EMPTY index until something repopulates it; for object CLIP that
34
+ * is `pipelineAnalytics.rebuildObjectEmbeddings`. Off by default for that
35
+ * reason.
36
+ */
37
+ import type { IScopedLogger, VectorFilter, VectorMetadata, VectorMetric } from "@camstack/types";
38
+ import { encodeVectorBase64 } from "@camstack/types";
39
+ import type { SqliteOpProfiler } from "./query-profiler.js";
40
+ import { type VectorFetchRow, type VectorIndexStats, type VectorQueryOutcome, type VectorScanPage } from "./vector-index-shared.js";
4
41
  /** The raw statement surface this index needs from better-sqlite3. */
5
42
  export interface RawSqliteDatabase {
6
- exec(sql: string): unknown;
7
- prepare(sql: string): {
8
- run(...params: unknown[]): {
9
- changes: number;
10
- };
11
- all(...params: unknown[]): unknown[];
12
- get(...params: unknown[]): unknown;
13
- };
14
- loadExtension?(path: string): void;
43
+ exec(sql: string): unknown;
44
+ prepare(sql: string): {
45
+ run(...params: unknown[]): {
46
+ changes: number;
47
+ };
48
+ all(...params: unknown[]): unknown[];
49
+ get(...params: unknown[]): unknown;
50
+ };
51
+ loadExtension?(path: string): void;
15
52
  }
16
53
  /**
17
- * The largest `k` sqlite-vec will accept in a KNN query.
18
- *
19
- * This is the EXTENSION's own compile-time limit, not a number chosen here —
20
- * measured against the real extension, which answers a larger `k` with
21
- * `SqliteError: k value in knn query too large, provided 20000 and the limit
22
- * is 4096` rather than with rows.
23
- *
24
- * It matters that this is the extension's number. The vector door looked like
25
- * a bypass of {@link SETTINGS_QUERY_HARD_ROW_CAP}: `vector-store.cap.ts`
26
- * declares `topK: z.number().int().positive()` with no `.max()`, and it is
27
- * bound straight into `k = ?` on the same connection, in the same process, as
28
- * the capped `data-store-provider.query`. It is not a bypass — sqlite-vec was
29
- * holding the line the whole time, which caps a KNN's heap cost at 4 096 rows
30
- * of metadata. What was actually broken is that it held the line by THROWING,
31
- * so an over-large `topK` reached the caller as a raw SQLite error instead of
32
- * as the bounded answer it could always have been served.
33
- */
54
+ * The largest `k` sqlite-vec will accept in a KNN query.
55
+ *
56
+ * This is the EXTENSION's own compile-time limit, not a number chosen here —
57
+ * measured against the real extension, which answers a larger `k` with
58
+ * `SqliteError: k value in knn query too large, provided 20000 and the limit
59
+ * is 4096` rather than with rows.
60
+ *
61
+ * It matters that this is the extension's number. The vector door looked like
62
+ * a bypass of {@link SETTINGS_QUERY_HARD_ROW_CAP}: `vector-store.cap.ts`
63
+ * declares `topK: z.number().int().positive()` with no `.max()`, and it is
64
+ * bound straight into `k = ?` on the same connection, in the same process, as
65
+ * the capped `data-store-provider.query`. It is not a bypass — sqlite-vec was
66
+ * holding the line the whole time, which caps a KNN's heap cost at 4 096 rows
67
+ * of metadata. What was actually broken is that it held the line by THROWING,
68
+ * so an over-large `topK` reached the caller as a raw SQLite error instead of
69
+ * as the bounded answer it could always have been served.
70
+ */
34
71
  export declare const VEC_KNN_MAX_K = 4096;
35
72
  export interface SqliteVecIndexDeps {
36
- readonly db: RawSqliteDatabase;
37
- readonly logger: IScopedLogger;
38
- /**
39
- * The relational engine's profiler, so a KNN lands in the SAME report
40
- * window as the queries it competes with. Optional because the specs
41
- * construct this index against a raw handle with no engine behind it.
42
- */
43
- readonly profiler?: SqliteOpProfiler;
73
+ readonly db: RawSqliteDatabase;
74
+ readonly logger: IScopedLogger;
75
+ /**
76
+ * The relational engine's profiler, so a KNN lands in the SAME report
77
+ * window as the queries it competes with. Optional because the specs
78
+ * construct this index against a raw handle with no engine behind it.
79
+ */
80
+ readonly profiler?: SqliteOpProfiler;
44
81
  }
45
82
  export declare class SqliteVecVectorIndex {
46
- private readonly db;
47
- private readonly logger;
48
- private readonly profiler;
49
- private readonly specs;
50
- constructor(deps: SqliteVecIndexDeps);
51
- /** Run one synchronous statement under the shared profiler, if there is one. */
52
- private measured;
53
- /** Recover index declarations so an existing table is usable from boot. */
54
- loadIndexRegistry(): Promise<void>;
55
- declareIndex(index: string, dim: number, metric: VectorMetric): Promise<void>;
56
- private specOf;
57
- upsert(index: string, items: readonly {
58
- id: string;
59
- vector: string;
60
- metadata: VectorMetadata;
61
- }[]): Promise<{
62
- upserted: number;
63
- rejected: number;
64
- }>;
65
- query(params: {
66
- index: string;
67
- vector: string;
68
- topK: number;
69
- minScore?: number;
70
- filter?: VectorFilter;
71
- }): Promise<VectorQueryOutcome>;
72
- /**
73
- * Ids read back WITH their vectors.
74
- *
75
- * `vec0` returns a vector column as the packed Float32 blob it stores, which
76
- * is byte-for-byte what `upsert` was given — so the round trip is a base64
77
- * encode and nothing else. No re-normalisation, no float re-ordering: a
78
- * gallery loaded through here ranks identically to one loaded from the JSON
79
- * column it replaced.
80
- */
81
- fetchByIds(index: string, ids: readonly string[]): Promise<VectorFetchRow[]>;
82
- /**
83
- * One page of the whole index, unranked.
84
- *
85
- * `LIMIT ? OFFSET ?` over the `vec0` table with NO `MATCH` clause: a plain
86
- * scan, so the extension's KNN `k` ceiling ({@link VEC_KNN_MAX_K}) does not
87
- * apply and no distance is computed at all. Ordered by `id` so a cursor means
88
- * the same thing across calls — `rowid` order is not stable under the
89
- * DELETE-then-INSERT upsert this class performs.
90
- *
91
- * The cursor is an OFFSET, so rows deleted behind the walk shift the window.
92
- * That is acceptable and deliberate for the one caller: a reconcile that
93
- * misses a row this pass sees it next pass, and the alternative — a keyset
94
- * cursor on a virtual table whose ordering the extension owns — buys nothing
95
- * for a walk that is idempotent by construction.
96
- */
97
- scan(index: string, cursor: number, limit: number): Promise<VectorScanPage>;
98
- getByIds(index: string, ids: readonly string[]): Promise<Array<{
99
- id: string;
100
- metadata: VectorMetadata;
101
- }>>;
102
- deleteByIds(index: string, ids: readonly string[]): Promise<number>;
103
- deleteByFilter(index: string, filter: VectorFilter): Promise<number>;
104
- stats(index: string): Promise<VectorIndexStats>;
83
+ private readonly db;
84
+ private readonly logger;
85
+ private readonly profiler;
86
+ private readonly specs;
87
+ constructor(deps: SqliteVecIndexDeps);
88
+ /** Run one synchronous statement under the shared profiler, if there is one. */
89
+ private measured;
90
+ /** Recover index declarations so an existing table is usable from boot. */
91
+ loadIndexRegistry(): Promise<void>;
92
+ declareIndex(index: string, dim: number, metric: VectorMetric): Promise<void>;
93
+ private specOf;
94
+ upsert(index: string, items: readonly {
95
+ id: string;
96
+ vector: string;
97
+ metadata: VectorMetadata;
98
+ }[]): Promise<{
99
+ upserted: number;
100
+ rejected: number;
101
+ }>;
102
+ query(params: {
103
+ index: string;
104
+ vector: string;
105
+ topK: number;
106
+ minScore?: number;
107
+ filter?: VectorFilter;
108
+ }): Promise<VectorQueryOutcome>;
109
+ /**
110
+ * Ids read back WITH their vectors.
111
+ *
112
+ * `vec0` returns a vector column as the packed Float32 blob it stores, which
113
+ * is byte-for-byte what `upsert` was given — so the round trip is a base64
114
+ * encode and nothing else. No re-normalisation, no float re-ordering: a
115
+ * gallery loaded through here ranks identically to one loaded from the JSON
116
+ * column it replaced.
117
+ */
118
+ fetchByIds(index: string, ids: readonly string[]): Promise<VectorFetchRow[]>;
119
+ /**
120
+ * One page of the whole index, unranked.
121
+ *
122
+ * `LIMIT ? OFFSET ?` over the `vec0` table with NO `MATCH` clause: a plain
123
+ * scan, so the extension's KNN `k` ceiling ({@link VEC_KNN_MAX_K}) does not
124
+ * apply and no distance is computed at all. Ordered by `id` so a cursor means
125
+ * the same thing across calls — `rowid` order is not stable under the
126
+ * DELETE-then-INSERT upsert this class performs.
127
+ *
128
+ * The cursor is an OFFSET, so rows deleted behind the walk shift the window.
129
+ * That is acceptable and deliberate for the one caller: a reconcile that
130
+ * misses a row this pass sees it next pass, and the alternative — a keyset
131
+ * cursor on a virtual table whose ordering the extension owns — buys nothing
132
+ * for a walk that is idempotent by construction.
133
+ */
134
+ scan(index: string, cursor: number, limit: number): Promise<VectorScanPage>;
135
+ getByIds(index: string, ids: readonly string[]): Promise<Array<{
136
+ id: string;
137
+ metadata: VectorMetadata;
138
+ }>>;
139
+ deleteByIds(index: string, ids: readonly string[]): Promise<number>;
140
+ deleteByFilter(index: string, filter: VectorFilter): Promise<number>;
141
+ stats(index: string): Promise<VectorIndexStats>;
105
142
  }
106
143
  export { encodeVectorBase64 };