@camstack/system 1.2.390 → 1.2.392

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/dist/addon/addon-api-factory.d.ts +30 -30
  2. package/dist/addon-routes/addon-route-registry.d.ts +31 -31
  3. package/dist/addon-runner.js +1 -1
  4. package/dist/addon-runner.mjs +1 -1
  5. package/dist/addon-utils.d.ts +22 -22
  6. package/dist/addon-utils.js +1 -1
  7. package/dist/addon-utils.mjs +1 -1
  8. package/dist/amd-accelerators-CEuPFBBK.js +36 -0
  9. package/dist/amd-accelerators-U_RsoEDd.mjs +35 -0
  10. package/dist/amd-npu-B-QyyMyF.js +53 -0
  11. package/dist/amd-npu-Db_SoSuL.mjs +52 -0
  12. package/dist/auth/admin-token-manager.d.ts +37 -67
  13. package/dist/auth/api-key-manager.d.ts +8 -8
  14. package/dist/auth/auth-audit-log.d.ts +29 -49
  15. package/dist/auth/auth-manager.d.ts +127 -126
  16. package/dist/auth/cidr.d.ts +8 -8
  17. package/dist/auth/external-identity-manager.d.ts +46 -34
  18. package/dist/auth/jwt-signing-key.d.ts +14 -14
  19. package/dist/auth/login-session-manager.d.ts +95 -135
  20. package/dist/auth/parse-record.d.ts +13 -13
  21. package/dist/auth/scope-matcher.d.ts +7 -7
  22. package/dist/auth/scoped-token-manager.d.ts +62 -62
  23. package/dist/auth/token-expiry.d.ts +49 -26
  24. package/dist/auth/totp-manager.d.ts +48 -48
  25. package/dist/auth/user-management-internal.d.ts +67 -52
  26. package/dist/auth/user-manager.d.ts +58 -58
  27. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  28. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  29. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  30. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  31. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  32. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  33. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  34. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  35. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  36. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  37. package/dist/builtins/alerts/alerts.addon.js +1 -1
  38. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  39. package/dist/builtins/alerts/device-label.d.ts +6 -6
  40. package/dist/builtins/alerts/index.d.ts +1 -1
  41. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  42. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  43. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  44. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  45. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  46. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  47. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  48. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  49. package/dist/builtins/autotrack/index.d.ts +2 -2
  50. package/dist/builtins/autotrack/index.js +1 -1
  51. package/dist/builtins/autotrack/index.mjs +1 -1
  52. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  53. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  54. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  55. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  56. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  57. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  58. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  59. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  60. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  61. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  62. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  63. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  64. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  65. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  66. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  67. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  68. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  69. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  70. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  71. package/dist/builtins/calendars/calendars.addon.js +1 -1
  72. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  73. package/dist/builtins/calendars/index.d.ts +1 -1
  74. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  75. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  76. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  77. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  78. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  79. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  80. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  81. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  82. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  83. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  84. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  85. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  86. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  87. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  88. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  89. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  90. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  91. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  92. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  93. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  94. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  95. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  96. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  97. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  98. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  99. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  100. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  101. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  102. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  103. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  104. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  105. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  106. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  107. package/dist/builtins/camera-grid/index.d.ts +44 -44
  108. package/dist/builtins/camera-grid/index.js +1 -1
  109. package/dist/builtins/camera-grid/index.mjs +1 -1
  110. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  111. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  112. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  113. package/dist/builtins/composer/composed-device.d.ts +39 -17
  114. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  115. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  116. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  117. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  118. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  119. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  120. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  121. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  122. package/dist/builtins/composer/composer.addon.js +2 -2
  123. package/dist/builtins/composer/composer.addon.mjs +2 -2
  124. package/dist/builtins/composer/composer.d.ts +145 -100
  125. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  126. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  127. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  128. package/dist/builtins/composer/composition-target.d.ts +38 -34
  129. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  130. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  131. package/dist/builtins/composer/existing-target.d.ts +90 -73
  132. package/dist/builtins/composer/field-record.d.ts +26 -19
  133. package/dist/builtins/composer/graft-host.d.ts +56 -32
  134. package/dist/builtins/composer/held-claims.d.ts +26 -9
  135. package/dist/builtins/composer/index.d.ts +1 -1
  136. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  137. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  138. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  139. package/dist/builtins/composer/source-readings.d.ts +67 -61
  140. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  141. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  142. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  143. package/dist/builtins/console-logging/index.d.ts +3 -3
  144. package/dist/builtins/console-logging/index.js +1 -1
  145. package/dist/builtins/console-logging/index.mjs +1 -1
  146. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  147. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  148. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  149. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  150. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  151. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  152. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  153. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  154. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  155. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  156. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  157. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  158. package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
  159. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  160. package/dist/builtins/core-blocks/index.d.ts +8 -8
  161. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  162. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  163. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  164. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  165. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  166. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  167. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  168. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  169. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  170. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  171. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  172. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  173. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  174. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  175. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  176. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  177. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  178. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  179. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  180. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  181. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  182. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  183. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  184. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  185. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  186. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  187. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  188. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  189. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  190. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  191. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  192. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  193. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  194. package/dist/builtins/device-manager/index.d.ts +2 -2
  195. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  196. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  197. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  198. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  199. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  200. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  201. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  202. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  203. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  204. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  205. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  206. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  207. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  208. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  209. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  210. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  211. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  212. package/dist/builtins/hub-forwarder/index.js +1 -1
  213. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  214. package/dist/builtins/keychain/index.d.ts +1 -1
  215. package/dist/builtins/keychain/index.js +3 -3
  216. package/dist/builtins/keychain/index.mjs +3 -3
  217. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  218. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  219. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  220. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  221. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  222. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  223. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  224. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  225. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  226. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  227. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  228. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  229. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  230. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  231. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  232. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  233. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  234. package/dist/builtins/local-auth/index.d.ts +1 -1
  235. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  236. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  237. package/dist/builtins/local-auth/local-auth.addon.js +2 -2
  238. package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
  239. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  240. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  241. package/dist/builtins/local-network/address-book.d.ts +61 -36
  242. package/dist/builtins/local-network/index.d.ts +2 -2
  243. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  244. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  245. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  246. package/dist/builtins/local-network/local-network.addon.js +1 -1
  247. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  248. package/dist/builtins/loki-logging/index.d.ts +4 -4
  249. package/dist/builtins/loki-logging/index.js +1 -1
  250. package/dist/builtins/loki-logging/index.mjs +1 -1
  251. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  252. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  253. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  254. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  255. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  256. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  257. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  258. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  259. package/dist/builtins/native-metrics/index.d.ts +2 -2
  260. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  261. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  262. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  263. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  264. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  265. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  266. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  267. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  268. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  269. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  270. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  271. package/dist/builtins/platform-probe/amd-accelerators.d.ts +15 -0
  272. package/dist/builtins/platform-probe/amd-npu.d.ts +29 -0
  273. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  274. package/dist/builtins/platform-probe/index.d.ts +38 -30
  275. package/dist/builtins/platform-probe/index.js +59 -22
  276. package/dist/builtins/platform-probe/index.mjs +59 -22
  277. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  278. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  279. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  280. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  281. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  282. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  283. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  284. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  285. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  286. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  287. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  288. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  289. package/dist/builtins/snapshot/index.d.ts +2 -2
  290. package/dist/builtins/snapshot/index.js +1 -1
  291. package/dist/builtins/snapshot/index.mjs +1 -1
  292. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  293. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  294. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  295. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  296. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  297. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  298. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  299. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  300. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  301. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  302. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  303. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  304. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  305. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  306. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  307. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  308. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  309. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  310. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  311. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  312. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  313. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  314. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  315. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  316. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  317. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  318. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  319. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  320. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  321. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  322. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  323. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  324. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  325. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  326. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  327. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  328. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  329. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  330. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  331. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  332. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  333. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  334. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  335. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  336. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  337. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  338. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  339. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  340. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  341. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  342. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  343. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  344. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  345. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  346. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  347. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  348. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  349. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  350. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  351. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  352. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  353. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  354. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  355. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  356. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  357. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  358. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  359. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  360. package/dist/builtins/system-config/index.d.ts +2 -2
  361. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  362. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  363. package/dist/builtins/system-config/system-config.addon.js +39 -35
  364. package/dist/builtins/system-config/system-config.addon.mjs +320 -316
  365. package/dist/builtins/winston-logging/index.d.ts +3 -3
  366. package/dist/builtins/winston-logging/index.js +1 -1
  367. package/dist/builtins/winston-logging/index.mjs +1 -1
  368. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  369. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  370. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Nx-lrlHR.js} +19 -1
  371. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-x-onDDiV.mjs} +2 -2
  372. package/dist/{composition-sources-wdAxs-uY.js → composition-sources-LUJsW0AQ.js} +1 -1
  373. package/dist/{composition-sources-xqhm2Ygr.mjs → composition-sources-R8TskGSV.mjs} +1 -1
  374. package/dist/{constants-Ca-Sgcl8.js → constants-D4lxxip7.js} +1 -1
  375. package/dist/{constants-D5z4EwY8.mjs → constants-DMvAcbbP.mjs} +1 -1
  376. package/dist/{dist-8LQ4lDEB.js → dist-XTkzsnz-.js} +35 -1
  377. package/dist/{dist-Biqn3TEn.mjs → dist-byg8IP4Q.mjs} +35 -1
  378. package/dist/download/hosted-model-revisions.d.ts +8 -8
  379. package/dist/download/model-download-service.d.ts +32 -32
  380. package/dist/download/model-downloader.d.ts +88 -88
  381. package/dist/{event-loop-stall-monitor-CNj73d4D.js → event-loop-stall-monitor-DPFghEFw.js} +1 -1
  382. package/dist/{event-loop-stall-monitor-BtK_0Pjc.mjs → event-loop-stall-monitor-TG8UcdY2.mjs} +1 -1
  383. package/dist/events/event-bus.d.ts +6 -6
  384. package/dist/events/system-event-bus.d.ts +11 -11
  385. package/dist/feature/feature-manager.d.ts +6 -6
  386. package/dist/http/asset-compression.d.ts +35 -73
  387. package/dist/http/authenticated-file-server.d.ts +32 -32
  388. package/dist/http/data-plane-registry.d.ts +49 -39
  389. package/dist/http/file-data-plane.d.ts +14 -14
  390. package/dist/http/lan-http-bind.d.ts +24 -13
  391. package/dist/http/reverse-proxy.d.ts +36 -24
  392. package/dist/index.d.ts +137 -137
  393. package/dist/index.js +9 -8
  394. package/dist/index.mjs +7 -9
  395. package/dist/{jwt-signing-key-DxV2ucvJ.js → jwt-signing-key-CD87HrHH.js} +1 -1
  396. package/dist/{jwt-signing-key-SnDgvVUQ.mjs → jwt-signing-key-DNBxSN5p.mjs} +1 -1
  397. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  398. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  399. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  400. package/dist/kernel/addon-installer.d.ts +609 -609
  401. package/dist/kernel/addon-loader.d.ts +133 -133
  402. package/dist/kernel/addon-manifest.d.ts +118 -118
  403. package/dist/kernel/addon-residue.d.ts +28 -32
  404. package/dist/kernel/array-buffer-census.d.ts +84 -88
  405. package/dist/kernel/bootstrap-config.d.ts +3 -3
  406. package/dist/kernel/cap-router-builder.d.ts +145 -101
  407. package/dist/kernel/capability-handle.d.ts +41 -41
  408. package/dist/kernel/capability-registry.d.ts +588 -576
  409. package/dist/kernel/config-manager.d.ts +199 -199
  410. package/dist/kernel/config-schema.d.ts +132 -128
  411. package/dist/kernel/custom-action-registry.d.ts +25 -25
  412. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  413. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  414. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  415. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  416. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  417. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  418. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  419. package/dist/kernel/deps/npm-command.d.ts +45 -45
  420. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  421. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  422. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  423. package/dist/kernel/device-registry.d.ts +27 -27
  424. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  425. package/dist/kernel/event-plane-report.d.ts +174 -174
  426. package/dist/kernel/fs-utils.d.ts +70 -70
  427. package/dist/kernel/gc-census.d.ts +119 -119
  428. package/dist/kernel/heap-spaces.d.ts +87 -87
  429. package/dist/kernel/heap-watch.d.ts +706 -706
  430. package/dist/kernel/host-externals.d.ts +8 -8
  431. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  432. package/dist/kernel/index.d.ts +115 -113
  433. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  434. package/dist/kernel/infra-capabilities.d.ts +7 -7
  435. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  436. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  437. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  438. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  439. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  440. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  441. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  442. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  443. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  444. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  445. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  446. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  447. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  448. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  449. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  450. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  451. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  452. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  453. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  454. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  455. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  456. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  457. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  458. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  459. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  460. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  461. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  462. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  463. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  464. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  465. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  466. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  467. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  468. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  469. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  470. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  471. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  472. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  473. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  474. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  475. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  476. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  477. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  478. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  479. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  480. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  481. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  482. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  483. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  484. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  485. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  486. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  487. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  488. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  489. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  490. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  491. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  492. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  493. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  494. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  495. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  496. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  497. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  498. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  499. package/dist/kernel/process-cpu-census.d.ts +55 -55
  500. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  501. package/dist/kernel/restart-coordinator.d.ts +71 -71
  502. package/dist/kernel/settings-door-view.d.ts +36 -25
  503. package/dist/kernel/settings-read-error.d.ts +29 -31
  504. package/dist/kernel/settings-view-types.d.ts +100 -95
  505. package/dist/kernel/socket-plane-report.d.ts +214 -153
  506. package/dist/kernel/status-overlay.d.ts +31 -11
  507. package/dist/kernel/storage-location-registry.d.ts +50 -50
  508. package/dist/kernel/store-settings-view.d.ts +13 -13
  509. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  510. package/dist/kernel/system-settings-policy.d.ts +15 -34
  511. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  512. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  513. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  514. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  515. package/dist/kernel/transport/cap-route.d.ts +139 -139
  516. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  517. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  518. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  519. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  520. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  521. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  522. package/dist/kernel/transport/index.d.ts +36 -36
  523. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  524. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  525. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  526. package/dist/kernel/transport/local-transport.d.ts +92 -92
  527. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  528. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  529. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  530. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  531. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  532. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  533. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  534. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  535. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  536. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  537. package/dist/kernel/workspace-detect.d.ts +7 -7
  538. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  539. package/dist/logging/formatter.d.ts +52 -25
  540. package/dist/logging/log-manager.d.ts +133 -133
  541. package/dist/logging/log-redactor.d.ts +22 -1
  542. package/dist/logging/log-ring-buffer.d.ts +57 -57
  543. package/dist/logging/logging-gate.d.ts +69 -25
  544. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  545. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  546. package/dist/logging/scoped-logger.d.ts +14 -14
  547. package/dist/network/network-quality.d.ts +8 -8
  548. package/dist/notification/notification-service.d.ts +37 -37
  549. package/dist/notification/toast-service.d.ts +18 -18
  550. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  551. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  552. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  553. package/dist/process/proc-stat.d.ts +51 -51
  554. package/dist/process/resource-monitor.d.ts +19 -19
  555. package/dist/python/python-env-manager.d.ts +10 -10
  556. package/dist/repl/interfaces.d.ts +21 -21
  557. package/dist/repl/repl-engine.d.ts +6 -6
  558. package/dist/{restore-archive-D4cmLoNe.mjs → restore-archive-Bmmmyp1M.mjs} +81 -81
  559. package/dist/{restore-archive-Do_Yu5rC.js → restore-archive-bvYTsnvp.js} +1 -1
  560. package/dist/{retired-settings-keys-BsgVxh8-.mjs → retired-settings-keys-R9CBo2lY.mjs} +1 -1
  561. package/dist/{retired-settings-keys-Cyn3OD0K.js → retired-settings-keys-V0yq5Bm6.js} +1 -1
  562. package/dist/storage/fs-storage-backend.d.ts +35 -35
  563. package/dist/storage/storage-location-manager.d.ts +21 -21
  564. package/dist/storage/storage-manager.d.ts +68 -68
  565. package/dist/tls/boot-tls.d.ts +24 -24
  566. package/dist/tls/cert-evaluation.d.ts +25 -25
  567. package/dist/tls/cert-identity.d.ts +39 -39
  568. package/dist/tls/cert-issue.d.ts +37 -17
  569. package/dist/tls/cert-manager.d.ts +86 -84
  570. package/dist/tls/https-listener.d.ts +16 -16
  571. package/dist/tls/index.d.ts +8 -8
  572. package/dist/tls/tls-actions.d.ts +18 -18
  573. package/dist/tls/tls-status.d.ts +15 -15
  574. package/dist/tls/uploaded-cert.d.ts +9 -9
  575. package/package.json +9 -3
@@ -1,271 +1,263 @@
1
- import { AddonContext, ClaimOutcome } from '@camstack/types';
2
- import { DeviceManagerSettings } from './device-meta-store.js';
3
- import { RuntimeStateSchemaLookup } from './device-state-claim-views.js';
4
- import { MergedSlice, OwnedCap, OwnedCaps } from './field-ownership.js';
5
- import { MirrorWriteHold } from './mirror-row-writer.js';
6
- import { RuntimeStatePolicyLookup } from './runtime-state-persist-gate.js';
1
+ import type { AddonContext, ClaimOutcome } from "@camstack/types";
2
+ import type { DeviceManagerSettings } from "./device-meta-store.js";
3
+ import { type RuntimeStateSchemaLookup } from "./device-state-claim-views.js";
4
+ import { type MergedSlice, type OwnedCap, type OwnedCaps } from "./field-ownership.js";
5
+ import { type MirrorWriteHold } from "./mirror-row-writer.js";
6
+ import { type RuntimeStatePolicyLookup } from "./runtime-state-persist-gate.js";
7
7
  /**
8
- * What the seed consults first: the claims index (Task 6). It is written
9
- * BEFORE the row, so a loaded index is a superset of the rows' claims and a
10
- * device it does not name has nothing to merge — no row read (D447).
11
- */
8
+ * What the seed consults first: the claims index (Task 6). It is written
9
+ * BEFORE the row, so a loaded index is a superset of the rows' claims and a
10
+ * device it does not name has nothing to merge — no row read (D447).
11
+ */
12
12
  export type ClaimsIndexView = {
13
- readonly state: 'loaded';
14
- hasClaims(deviceId: number): boolean;
13
+ readonly state: "loaded";
14
+ hasClaims(deviceId: number): boolean;
15
15
  } | {
16
- readonly state: 'not-loaded';
16
+ readonly state: "not-loaded";
17
17
  };
18
18
  /**
19
- * How `seedMirror` treats what memory already holds. `fill` (boot, first
20
- * write) only adds caps memory lacks — memory is never behind the row.
21
- * `replace` (the migration reseed) drops the device's slices, claims and views
22
- * first: the row now describes different hardware, so everything memory held
23
- * under that number is the wrong device's state.
24
- */
25
- export type SeedMode = 'fill' | 'replace';
19
+ * How `seedMirror` treats what memory already holds. `fill` (boot, first
20
+ * write) only adds caps memory lacks — memory is never behind the row.
21
+ * `replace` (the migration reseed) drops the device's slices, claims and views
22
+ * first: the row now describes different hardware, so everything memory held
23
+ * under that number is the wrong device's state.
24
+ */
25
+ export type SeedMode = "fill" | "replace";
26
26
  export declare class DeviceStateMirror {
27
- private readonly ctx;
28
- /**
29
- * Per-cap durability + volatile-field policy. Defaults to the codegen'd
30
- * projection of every `*.cap.ts` (D4: the cap declares, the kernel reads).
31
- * Injectable so a spec can exercise the gate without the real cap set.
32
- */
33
- private readonly policyFor;
34
- /**
35
- * Hub-side mirror of every device's cap-keyed NATIVE runtime state — what the
36
- * provider wrote. Key: deviceId. Value: per-cap slice map. Empty by default —
37
- * slices show up as `setCapSlice` calls trickle in.
38
- */
39
- private readonly stateMirror;
40
- /** The claims and the merged view of every claimed cap (D663). */
41
- private readonly claims;
42
- /**
43
- * Devices whose CLAIMS are known: the row was read, or a loaded claims index
44
- * vouched that it names none (D447). This is a READ-path fact — what a
45
- * status read may answer from. It never licenses a row write (D677).
46
- */
47
- private readonly seeded;
48
- /**
49
- * Devices whose row was actually READ into memory in THIS process. Every row
50
- * write of a device requires it (D677): the write replaces the whole row, so
51
- * memory must hold what the row held — an index that vouches for the claims
52
- * says nothing about the native slices beside them.
53
- */
54
- private readonly rowRead;
55
- /** One row read per device, however many writes arrive during it. */
56
- private readonly seeding;
57
- /** Devices whose seed refusal is already logged — once per transition. */
58
- private readonly seedRefusalLogged;
59
- /** Every write of a device's row, and what is believed to be on it. */
60
- private readonly writer;
61
- constructor(ctx: AddonContext,
62
- /**
63
- * Per-cap durability + volatile-field policy. Defaults to the codegen'd
64
- * projection of every `*.cap.ts` (D4: the cap declares, the kernel reads).
65
- * Injectable so a spec can exercise the gate without the real cap set.
66
- */
67
- policyFor?: RuntimeStatePolicyLookup,
68
- /** The cap's `runtimeState` schema a merged slice is parsed with (D663). */
69
- schemaFor?: RuntimeStateSchemaLookup);
70
- /**
71
- * Single-cap mirror update — diff against the current mirror,
72
- * persist the new slice in-memory, emit `DeviceStateChanged` for
73
- * this cap. No-op on identical writes (both same shape and same
74
- * values). Called by `setCapSlice` provider.
75
- *
76
- * This is the NATIVE path, unchanged for every writer. Under a claim the
77
- * native slice is stored as the shadow and what is emitted is the merge.
78
- *
79
- * @returns whether the mirror actually changed. The caller uses this to
80
- * decide whether the (synchronous, disk-blocking) runtime-state write is
81
- * worth scheduling — see `scheduleRuntimeStateDiskWrite`. Returning void
82
- * here and scheduling unconditionally is what made an unchanged poll cost
83
- * a SQLite commit.
84
- */
85
- applySingleCapUpdate(deviceId: number, capName: string, slice: Record<string, unknown>): boolean;
86
- /**
87
- * Claim `cap.fields` of `capName` on `deviceId` for `cap.owner`. Written
88
- * through: resolves after the row write. A re-claim by the same owner
89
- * replaces `fields`; values of fields no longer claimed are dropped and the
90
- * native shows for them (ruling S1b). An empty `fields` is what the composer
91
- * never sends — it releases — and is refused.
92
- */
93
- claim(deviceId: number, capName: string, cap: OwnedCap, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
94
- /** Is this exact claim what the row carries, per `lastPersisted`? */
95
- private isClaimPersisted;
96
- /**
97
- * Write owned values. Partial patches MERGE into `values` (ruling S5); a key
98
- * outside `fields` is refused. Debounced like a native slice.
99
- */
100
- patchOwned(deviceId: number, capName: string, owner: string, values: Readonly<Record<string, unknown>>, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
101
- /**
102
- * Remove the claim. A `replace` hands the cap back: the native slice is
103
- * emitted exactly as last written. An `add` had no native — the cap leaves
104
- * the mirror and nothing is emitted (consumer mirrors keep the last value
105
- * until they re-read; recorded for Task 15). Written through.
106
- */
107
- release(deviceId: number, capName: string, owner: string, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
108
- /** The claims on a device; empty for every device without one. */
109
- ownedCaps(deviceId: number): OwnedCaps;
110
- /** The NATIVE shadow of one cap — for the owner-side mechanism only (D224). */
111
- nativeSlice(deviceId: number, cap: string): Record<string, unknown> | null;
112
- /** What the merge says for a claimed cap; null when the cap is not claimed. */
113
- effectiveIfClaimed(deviceId: number, cap: string): MergedSlice | null;
114
- isSeeded(deviceId: number): boolean;
115
- /**
116
- * Forget a removed device (D677): its armed row write is cancelled and one
117
- * in flight awaited BEFORE its memory goes, so nothing writes its row back
118
- * after `removeDevice` clears it.
119
- */
120
- forgetDevice(deviceId: number): Promise<void>;
121
- /** The device's row was read in this process — the precondition of every row write (D677). */
122
- isRowRead(deviceId: number): boolean;
123
- /**
124
- * The SYNCHRONOUS half of {@link ensureSeeded}, branch (c): a LOADED claims
125
- * index that does not name the device vouches for its CLAIMS — seeded, no
126
- * read. That is all it vouches for: the device is still not `rowRead`, and
127
- * the writer reads the row before its first write (D677).
128
- * Refused (false) while a read is in flight, because that read may be
129
- * landing a claim the index does not know yet; refused when the index cannot
130
- * vouch. The overlay's `peek` calls this instead of `ensureSeeded`: a sync
131
- * path must never hold a promise that can reject (D391 — an unhandled
132
- * rejection is an untagged line on hub-main).
133
- */
134
- seedIfIndexClears(deviceId: number, index: ClaimsIndexView): boolean;
135
- /**
136
- * Make sure the device's CLAIMS are known before a status read is answered
137
- * or a native slice applied (D49). Index first, single-flight (ruling S6):
138
- * (a) already seeded → nothing;
139
- * (b) a seed in flight → await it;
140
- * (c) a LOADED index that does not name the device → seeded, no read;
141
- * (d) otherwise read the row once and seed it.
142
- * A read that throws propagates and is logged once per device transition
143
- * (D391).
144
- *
145
- * Also the native-write RPC's gate: a slice may be APPLIED once its claims
146
- * are known. Never the ROW write's: branch (c) knows the claims and nothing
147
- * about the native slices on the row; a writer that trusted it replaced a
148
- * row it never read with the one slice it held, and every restored cap
149
- * nobody re-wrote soon after boot was erased (D677, superseding S6(c) for
150
- * writes). The writer calls {@link ensureRowRead}.
151
- */
152
- ensureSeeded(deviceId: number, settings: DeviceManagerSettings, index: ClaimsIndexView): Promise<void>;
153
- /**
154
- * A row write replaces the whole row: memory must hold what the row held
155
- * (D677). Reads the row once, single-flight, and fills memory's gaps from it
156
- * (`seedMirror('fill')`: a slice memory already holds is newer and wins).
157
- * A read that throws propagates — nothing is written — and is logged once
158
- * per device transition (D49, D391).
159
- */
160
- ensureRowRead(deviceId: number, settings: DeviceManagerSettings): Promise<void>;
161
- /** An unreadable row is a NAMED refusal (D49): the answer is unknown — a
162
- * throw could be read as "gone", `not-claimed` as "never was". Logged by `readRowOnce`. */
163
- private readRowOrRefuse;
164
- private readRowOnce;
165
- private nativeOf;
166
- /**
167
- * Write the row now — a claim is atomic with the row — and refresh the
168
- * baseline. Queued behind any write in flight for the device (one row write
169
- * at a time, N-4), and the blob is taken when the write RUNS, so it carries
170
- * whatever memory holds by then. A failed write is rolled back in memory IF
171
- * what this op put there is still there (the two never disagree); when a
172
- * newer same-owner state landed in the window it stands, and the debounced
173
- * writer converges the row to it. Either way the failure is logged hub-side
174
- * (D391) and rethrown; a repeat of the same claim is then a real write, never
175
- * `changed: false`, and consumers are handed the truth that stands.
176
- */
177
- private writeThrough;
178
- /** After a rollback, re-emit what is true now: the restored claim's merge, or the native. */
179
- private reemitAfterRollback;
180
- /** Arm the debounced writer for a change to `changedCap` — see `MirrorRowWriter.schedule`. */
181
- scheduleRuntimeStateDiskWrite(deviceId: number, settings: DeviceManagerSettings, changedCap: string): void;
182
- /** Hold the writer off these rows for a migration — see `MirrorRowWriter.holdDiskWrites`. */
183
- holdDiskWrites(deviceIds: readonly number[], settings: DeviceManagerSettings): Promise<MirrorWriteHold>;
184
- /** Flush every pending debounced disk write (graceful shutdown). */
185
- flushPendingWrites(settings: DeviceManagerSettings | undefined): Promise<void>;
186
- /** The device's row as it may reach disk: NATIVE slices plus `$owned`, restricted by durability. */
187
- private persistableForDevice;
188
- /**
189
- * One-shot mirror seed used by `loadRuntimeState` at boot so the hub knows
190
- * every persisted slice before the first `setCapSlice`. No events emitted —
191
- * population, not a transition. `fill` (default) fills GAPS and never
192
- * overwrites memory (ruling S6: a slice in memory is at least as new as the
193
- * row, a claim in memory was written through); `replace` (the migration
194
- * reseed) drops the device's memory first — the row now belongs to different
195
- * hardware. Malformed `$owned` entries are dropped by name and logged once.
196
- * Callers pass the blob through `withResetSessionProbe` first.
197
- */
198
- seedMirror(deviceId: number, blob: Record<string, unknown>, mode?: SeedMode): void;
199
- /**
200
- * The hub mirror's `feature-probe.lastProbedAt` is a PER-SESSION liveness
201
- * signal — it means "this worker process completed a probe THIS session".
202
- * Persisted runtime state carries the PRE-RESTART timestamp, which is stale
203
- * after a hub or worker restart: the device has not re-probed yet. Seeding it
204
- * verbatim makes `resolveDeviceProbed` report `probed:true` during the
205
- * restart→reprobe window, which defeats the export carry-forward gate
206
- * (`resolveExportFingerprint`, gated on `device.probed`) and posts a spurious
207
- * partial `AddOrUpdateReport` to Alexa/HAP before the real probe lands.
208
- *
209
- * Reset `lastProbedAt` to 0 for the MIRROR seed only — `probed:false` carries
210
- * the last-advertised fingerprint forward until the worker republishes a
211
- * fresh probe (its post-probe `setCapSlice` raises `lastProbedAt` again, which
212
- * also fires `DeviceReady`). The worker's returned `initialRuntimeState` blob
213
- * is untouched, and every non-probe slice (e.g. `device-status`/online) is
214
- * preserved.
215
- */
216
- withResetSessionProbe(blob: Record<string, unknown>): Record<string, unknown>;
217
- /**
218
- * Resolve a device's REAL `online` flag for the persisted/forked-worker
219
- * list branch. Forked workers own the live `IDevice` in their own process,
220
- * so the hub registry can't read `device.online` directly. The owning
221
- * driver instead publishes its liveness through the auto-registered
222
- * `device-status` runtime-state slice (`markOnline` → `setCapState`), which
223
- * the canonical `deviceState.setCapSlice` write entrypoint mirrors into the
224
- * hub-side `stateMirror`. We read that mirrored slice here so the list
225
- * payload reflects the device's actual reachability instead of a constant.
226
- *
227
- * Fallback (`fallbackOnline`) preserves the legacy behaviour when no slice
228
- * has been published yet: a persisted device with a live registry is
229
- * assumed online (it was successfully registered by its owning process),
230
- * and the null-registry "offline view" keeps reporting offline. We never
231
- * regress a device to offline merely because its mirror is empty.
232
- */
233
- resolveDeviceOnline(deviceId: number, fallbackOnline: boolean): boolean;
234
- /**
235
- * Derive the `probed` flag for an offline-view (forked-worker, not
236
- * live in the hub registry) device projection. Reads the mirrored
237
- * `feature-probe` slice the owning worker publishes. Mirrors the
238
- * `toDeviceInfo` rule: no mirrored slice → ready (`true`, no probe seen);
239
- * slice present → ready iff `lastProbedAt` has advanced past 0. The
240
- * mirror is populated when the worker's first `setCapSlice` RPC arrives
241
- * (BaseDevice seeds `feature-probe` `lastProbedAt:0` at construction, but
242
- * cross-process delivery is async); until then the no-entry path returns
243
- * `true` — a brief transient window, same as `resolveDeviceOnline`.
244
- */
245
- resolveDeviceProbed(deviceId: number): boolean;
246
- /** The EFFECTIVE slices of a device: native for an unclaimed cap, the merge
247
- * for a claimed one (a held cap is not reported). */
248
- snapshotForDevice(deviceId: number): Record<string, Record<string, unknown>>;
249
- /** One cap's EFFECTIVE slice, cloned. Null when the device has never written
250
- * it — callers read that as "the cap has no state", never as an empty slice —
251
- * and null while a claim holds it. */
252
- capSlice(deviceId: number, cap: string): Record<string, unknown> | null;
253
- /** The device's NATIVE slices — what the row stores under the cap names. */
254
- private nativeSnapshotForDevice;
255
- /** Whole-system mirror dump. Backs `deviceState.getAllSnapshots` — one
256
- * round-trip for a warm boot instead of N per-device calls. */
257
- allSnapshots(): Record<string, Record<string, Record<string, unknown>>>;
258
- /**
259
- * The PUBLIC event: exactly `{ deviceId, capName, slice }` for every device,
260
- * claimed or not. The native shadow never rides here (D224) — see
261
- * `emitNativeShadow`.
262
- */
263
- private emitStateChanged;
264
- /**
265
- * The owner-only event (D224, D663): the native slice as the provider wrote
266
- * it, for the composer's native self-reads. Its category is refused by the
267
- * public event routers (`isOwnerOnlyEventCategory`), so no UI or share-scope
268
- * subscriber ever sees a second truth beside the merged slice.
269
- */
270
- private emitNativeShadow;
27
+ private readonly ctx;
28
+ /**
29
+ * Per-cap durability + volatile-field policy. Defaults to the codegen'd
30
+ * projection of every `*.cap.ts` (D4: the cap declares, the kernel reads).
31
+ * Injectable so a spec can exercise the gate without the real cap set.
32
+ */
33
+ private readonly policyFor;
34
+ /**
35
+ * Hub-side mirror of every device's cap-keyed NATIVE runtime state — what the
36
+ * provider wrote. Key: deviceId. Value: per-cap slice map. Empty by default —
37
+ * slices show up as `setCapSlice` calls trickle in.
38
+ */
39
+ private readonly stateMirror;
40
+ /** The claims and the merged view of every claimed cap (D663). */
41
+ private readonly claims;
42
+ /**
43
+ * Devices whose CLAIMS are known: the row was read, or a loaded claims index
44
+ * vouched that it names none (D447). This is a READ-path fact — what a
45
+ * status read may answer from. It never licenses a row write (D677).
46
+ */
47
+ private readonly seeded;
48
+ /**
49
+ * Devices whose row was actually READ into memory in THIS process. Every row
50
+ * write of a device requires it (D677): the write replaces the whole row, so
51
+ * memory must hold what the row held — an index that vouches for the claims
52
+ * says nothing about the native slices beside them.
53
+ */
54
+ private readonly rowRead;
55
+ /** One row read per device, however many writes arrive during it. */
56
+ private readonly seeding;
57
+ /** Devices whose seed refusal is already logged — once per transition. */
58
+ private readonly seedRefusalLogged;
59
+ /** Every write of a device's row, and what is believed to be on it. */
60
+ private readonly writer;
61
+ constructor(ctx: AddonContext, policyFor?: RuntimeStatePolicyLookup, schemaFor?: RuntimeStateSchemaLookup);
62
+ /**
63
+ * Single-cap mirror update — diff against the current mirror,
64
+ * persist the new slice in-memory, emit `DeviceStateChanged` for
65
+ * this cap. No-op on identical writes (both same shape and same
66
+ * values). Called by `setCapSlice` provider.
67
+ *
68
+ * This is the NATIVE path, unchanged for every writer. Under a claim the
69
+ * native slice is stored as the shadow and what is emitted is the merge.
70
+ *
71
+ * @returns whether the mirror actually changed. The caller uses this to
72
+ * decide whether the (synchronous, disk-blocking) runtime-state write is
73
+ * worth scheduling — see `scheduleRuntimeStateDiskWrite`. Returning void
74
+ * here and scheduling unconditionally is what made an unchanged poll cost
75
+ * a SQLite commit.
76
+ */
77
+ applySingleCapUpdate(deviceId: number, capName: string, slice: Record<string, unknown>): boolean;
78
+ /**
79
+ * Claim `cap.fields` of `capName` on `deviceId` for `cap.owner`. Written
80
+ * through: resolves after the row write. A re-claim by the same owner
81
+ * replaces `fields`; values of fields no longer claimed are dropped and the
82
+ * native shows for them (ruling S1b). An empty `fields` is what the composer
83
+ * never sends — it releases — and is refused.
84
+ */
85
+ claim(deviceId: number, capName: string, cap: OwnedCap, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
86
+ /** Is this exact claim what the row carries, per `lastPersisted`? */
87
+ private isClaimPersisted;
88
+ /**
89
+ * Write owned values. Partial patches MERGE into `values` (ruling S5); a key
90
+ * outside `fields` is refused. Debounced like a native slice.
91
+ */
92
+ patchOwned(deviceId: number, capName: string, owner: string, values: Readonly<Record<string, unknown>>, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
93
+ /**
94
+ * Remove the claim. A `replace` hands the cap back: the native slice is
95
+ * emitted exactly as last written. An `add` had no native — the cap leaves
96
+ * the mirror and nothing is emitted (consumer mirrors keep the last value
97
+ * until they re-read; recorded for Task 15). Written through.
98
+ */
99
+ release(deviceId: number, capName: string, owner: string, settings: DeviceManagerSettings): Promise<ClaimOutcome>;
100
+ /** The claims on a device; empty for every device without one. */
101
+ ownedCaps(deviceId: number): OwnedCaps;
102
+ /** The NATIVE shadow of one cap — for the owner-side mechanism only (D224). */
103
+ nativeSlice(deviceId: number, cap: string): Record<string, unknown> | null;
104
+ /** What the merge says for a claimed cap; null when the cap is not claimed. */
105
+ effectiveIfClaimed(deviceId: number, cap: string): MergedSlice | null;
106
+ isSeeded(deviceId: number): boolean;
107
+ /**
108
+ * Forget a removed device (D677): its armed row write is cancelled and one
109
+ * in flight awaited BEFORE its memory goes, so nothing writes its row back
110
+ * after `removeDevice` clears it.
111
+ */
112
+ forgetDevice(deviceId: number): Promise<void>;
113
+ /** The device's row was read in this process — the precondition of every row write (D677). */
114
+ isRowRead(deviceId: number): boolean;
115
+ /**
116
+ * The SYNCHRONOUS half of {@link ensureSeeded}, branch (c): a LOADED claims
117
+ * index that does not name the device vouches for its CLAIMS — seeded, no
118
+ * read. That is all it vouches for: the device is still not `rowRead`, and
119
+ * the writer reads the row before its first write (D677).
120
+ * Refused (false) while a read is in flight, because that read may be
121
+ * landing a claim the index does not know yet; refused when the index cannot
122
+ * vouch. The overlay's `peek` calls this instead of `ensureSeeded`: a sync
123
+ * path must never hold a promise that can reject (D391 — an unhandled
124
+ * rejection is an untagged line on hub-main).
125
+ */
126
+ seedIfIndexClears(deviceId: number, index: ClaimsIndexView): boolean;
127
+ /**
128
+ * Make sure the device's CLAIMS are known before a status read is answered
129
+ * or a native slice applied (D49). Index first, single-flight (ruling S6):
130
+ * (a) already seeded → nothing;
131
+ * (b) a seed in flight → await it;
132
+ * (c) a LOADED index that does not name the device → seeded, no read;
133
+ * (d) otherwise read the row once and seed it.
134
+ * A read that throws propagates and is logged once per device transition
135
+ * (D391).
136
+ *
137
+ * Also the native-write RPC's gate: a slice may be APPLIED once its claims
138
+ * are known. Never the ROW write's: branch (c) knows the claims and nothing
139
+ * about the native slices on the row; a writer that trusted it replaced a
140
+ * row it never read with the one slice it held, and every restored cap
141
+ * nobody re-wrote soon after boot was erased (D677, superseding S6(c) for
142
+ * writes). The writer calls {@link ensureRowRead}.
143
+ */
144
+ ensureSeeded(deviceId: number, settings: DeviceManagerSettings, index: ClaimsIndexView): Promise<void>;
145
+ /**
146
+ * A row write replaces the whole row: memory must hold what the row held
147
+ * (D677). Reads the row once, single-flight, and fills memory's gaps from it
148
+ * (`seedMirror('fill')`: a slice memory already holds is newer and wins).
149
+ * A read that throws propagates — nothing is written — and is logged once
150
+ * per device transition (D49, D391).
151
+ */
152
+ ensureRowRead(deviceId: number, settings: DeviceManagerSettings): Promise<void>;
153
+ /** An unreadable row is a NAMED refusal (D49): the answer is unknown — a
154
+ * throw could be read as "gone", `not-claimed` as "never was". Logged by `readRowOnce`. */
155
+ private readRowOrRefuse;
156
+ private readRowOnce;
157
+ private nativeOf;
158
+ /**
159
+ * Write the row now — a claim is atomic with the row — and refresh the
160
+ * baseline. Queued behind any write in flight for the device (one row write
161
+ * at a time, N-4), and the blob is taken when the write RUNS, so it carries
162
+ * whatever memory holds by then. A failed write is rolled back in memory IF
163
+ * what this op put there is still there (the two never disagree); when a
164
+ * newer same-owner state landed in the window it stands, and the debounced
165
+ * writer converges the row to it. Either way the failure is logged hub-side
166
+ * (D391) and rethrown; a repeat of the same claim is then a real write, never
167
+ * `changed: false`, and consumers are handed the truth that stands.
168
+ */
169
+ private writeThrough;
170
+ /** After a rollback, re-emit what is true now: the restored claim's merge, or the native. */
171
+ private reemitAfterRollback;
172
+ /** Arm the debounced writer for a change to `changedCap` — see `MirrorRowWriter.schedule`. */
173
+ scheduleRuntimeStateDiskWrite(deviceId: number, settings: DeviceManagerSettings, changedCap: string): void;
174
+ /** Hold the writer off these rows for a migration — see `MirrorRowWriter.holdDiskWrites`. */
175
+ holdDiskWrites(deviceIds: readonly number[], settings: DeviceManagerSettings): Promise<MirrorWriteHold>;
176
+ /** Flush every pending debounced disk write (graceful shutdown). */
177
+ flushPendingWrites(settings: DeviceManagerSettings | undefined): Promise<void>;
178
+ /** The device's row as it may reach disk: NATIVE slices plus `$owned`, restricted by durability. */
179
+ private persistableForDevice;
180
+ /**
181
+ * One-shot mirror seed used by `loadRuntimeState` at boot so the hub knows
182
+ * every persisted slice before the first `setCapSlice`. No events emitted —
183
+ * population, not a transition. `fill` (default) fills GAPS and never
184
+ * overwrites memory (ruling S6: a slice in memory is at least as new as the
185
+ * row, a claim in memory was written through); `replace` (the migration
186
+ * reseed) drops the device's memory first — the row now belongs to different
187
+ * hardware. Malformed `$owned` entries are dropped by name and logged once.
188
+ * Callers pass the blob through `withResetSessionProbe` first.
189
+ */
190
+ seedMirror(deviceId: number, blob: Record<string, unknown>, mode?: SeedMode): void;
191
+ /**
192
+ * The hub mirror's `feature-probe.lastProbedAt` is a PER-SESSION liveness
193
+ * signal — it means "this worker process completed a probe THIS session".
194
+ * Persisted runtime state carries the PRE-RESTART timestamp, which is stale
195
+ * after a hub or worker restart: the device has not re-probed yet. Seeding it
196
+ * verbatim makes `resolveDeviceProbed` report `probed:true` during the
197
+ * restart→reprobe window, which defeats the export carry-forward gate
198
+ * (`resolveExportFingerprint`, gated on `device.probed`) and posts a spurious
199
+ * partial `AddOrUpdateReport` to Alexa/HAP before the real probe lands.
200
+ *
201
+ * Reset `lastProbedAt` to 0 for the MIRROR seed only — `probed:false` carries
202
+ * the last-advertised fingerprint forward until the worker republishes a
203
+ * fresh probe (its post-probe `setCapSlice` raises `lastProbedAt` again, which
204
+ * also fires `DeviceReady`). The worker's returned `initialRuntimeState` blob
205
+ * is untouched, and every non-probe slice (e.g. `device-status`/online) is
206
+ * preserved.
207
+ */
208
+ withResetSessionProbe(blob: Record<string, unknown>): Record<string, unknown>;
209
+ /**
210
+ * Resolve a device's REAL `online` flag for the persisted/forked-worker
211
+ * list branch. Forked workers own the live `IDevice` in their own process,
212
+ * so the hub registry can't read `device.online` directly. The owning
213
+ * driver instead publishes its liveness through the auto-registered
214
+ * `device-status` runtime-state slice (`markOnline` → `setCapState`), which
215
+ * the canonical `deviceState.setCapSlice` write entrypoint mirrors into the
216
+ * hub-side `stateMirror`. We read that mirrored slice here so the list
217
+ * payload reflects the device's actual reachability instead of a constant.
218
+ *
219
+ * Fallback (`fallbackOnline`) preserves the legacy behaviour when no slice
220
+ * has been published yet: a persisted device with a live registry is
221
+ * assumed online (it was successfully registered by its owning process),
222
+ * and the null-registry "offline view" keeps reporting offline. We never
223
+ * regress a device to offline merely because its mirror is empty.
224
+ */
225
+ resolveDeviceOnline(deviceId: number, fallbackOnline: boolean): boolean;
226
+ /**
227
+ * Derive the `probed` flag for an offline-view (forked-worker, not
228
+ * live in the hub registry) device projection. Reads the mirrored
229
+ * `feature-probe` slice the owning worker publishes. Mirrors the
230
+ * `toDeviceInfo` rule: no mirrored slice → ready (`true`, no probe seen);
231
+ * slice present → ready iff `lastProbedAt` has advanced past 0. The
232
+ * mirror is populated when the worker's first `setCapSlice` RPC arrives
233
+ * (BaseDevice seeds `feature-probe` `lastProbedAt:0` at construction, but
234
+ * cross-process delivery is async); until then the no-entry path returns
235
+ * `true` — a brief transient window, same as `resolveDeviceOnline`.
236
+ */
237
+ resolveDeviceProbed(deviceId: number): boolean;
238
+ /** The EFFECTIVE slices of a device: native for an unclaimed cap, the merge
239
+ * for a claimed one (a held cap is not reported). */
240
+ snapshotForDevice(deviceId: number): Record<string, Record<string, unknown>>;
241
+ /** One cap's EFFECTIVE slice, cloned. Null when the device has never written
242
+ * it — callers read that as "the cap has no state", never as an empty slice —
243
+ * and null while a claim holds it. */
244
+ capSlice(deviceId: number, cap: string): Record<string, unknown> | null;
245
+ /** The device's NATIVE slices — what the row stores under the cap names. */
246
+ private nativeSnapshotForDevice;
247
+ /** Whole-system mirror dump. Backs `deviceState.getAllSnapshots` — one
248
+ * round-trip for a warm boot instead of N per-device calls. */
249
+ allSnapshots(): Record<string, Record<string, Record<string, unknown>>>;
250
+ /**
251
+ * The PUBLIC event: exactly `{ deviceId, capName, slice }` for every device,
252
+ * claimed or not. The native shadow never rides here (D224) — see
253
+ * `emitNativeShadow`.
254
+ */
255
+ private emitStateChanged;
256
+ /**
257
+ * The owner-only event (D224, D663): the native slice as the provider wrote
258
+ * it, for the composer's native self-reads. Its category is refused by the
259
+ * public event routers (`isOwnerOnlyEventCategory`), so no UI or share-scope
260
+ * subscriber ever sees a second truth beside the merged slice.
261
+ */
262
+ private emitNativeShadow;
271
263
  }