@camstack/system 1.2.390 → 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 -100
  307. package/dist/builtins/system-config/system-config.addon.js +37 -33
  308. package/dist/builtins/system-config/system-config.addon.mjs +37 -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,61 +1,103 @@
1
- import { AddonContext, ICapabilityRegistry, WrapperActivationRead } from '@camstack/types';
2
- import { WriteLock } from './write-lock.js';
3
1
  /**
4
- * What a wrapper-activation write needs, and nothing more.
5
- *
6
- * Deliberately narrower than `AggregationDeps`: the verb touches the settings
7
- * door, the event bus, the registry and the addon-store write lock. Handing it
8
- * the device ledger and the remote-native cache it never reads would make this
9
- * loop untestable without standing up the whole addon.
10
- */
2
+ * The per-device wrapper activation — the operator-facing verb
3
+ * (`deviceManager.setWrapperActive`) and the ONE place it is written, read
4
+ * back, and mirrored onto the resolution path. [D556](../../../../../docs/decisions/adr-0556-a-per-device-source-switch-is-the-wrapper-activation-and-the-registry-holds-only-its-projection.md)
5
+ *
6
+ * ## The loop this closes
7
+ *
8
+ * `setWrapperActive` persisted into `deviceBindings[deviceId][capName]` and was
9
+ * read by `getBindings` — so it was never a store *nobody* read. What it never
10
+ * reached was the PROVIDER resolver: `CapabilityRegistry.getProviderForDevice`
11
+ * consults `deviceOverrides`, an in-memory map written only from the admin
12
+ * `capabilities` router, and `resolveCollectionForDevice` consulted a
13
+ * per-device collection FILTER written from the same two places and persisted
14
+ * by nothing. One half persisted and unresolved, the other resolved and
15
+ * unpersisted (D554 context 3 measured the first half and recorded it open).
16
+ *
17
+ * D556's answer: **the persisted activation is the authority; the registry
18
+ * holds only its projection.** This module is the hinge — it owns the store
19
+ * shape, the toggle arithmetic, and the mirror, and nothing else may write the
20
+ * registry's per-device source set.
21
+ *
22
+ * ## There is no longer a per-source switch, and that is the point
23
+ *
24
+ * D556 shipped a DENY list of a collection cap's switched-off sources, and
25
+ * D555 re-keyed it by SOURCE. The operator removed the whole idea on
26
+ * 2026-09-20: *"tutti i providers funzionano sempre, non serve
27
+ * disattivarli/attivarli … loro vivono lì."* [all the providers always work, there is no need to deactivate/activate them … they live there.] A collection capability's
28
+ * providers are a SET, derived from who provides it
29
+ * (`device-bindings-store.ts` step 0) and persisted nowhere — so this verb has
30
+ * nothing to write for one, and it says so rather than writing a store the
31
+ * enumeration does not read. That store-nobody-reads is the D62 shape, and it
32
+ * happened here for the third time in one day: the collection branch wrote
33
+ * `disabledSourceIds` while `getBindings` answered from somewhere else, which
34
+ * is how a provider could be registered and unbound at the same time with
35
+ * nobody seeing it. `scripts/check-device-selection-authority.ts` now makes
36
+ * that unrepresentable rather than merely absent: every field this module
37
+ * writes must be a field `getBindings` reads.
38
+ *
39
+ * What survives is the SINGLETON half, which is what D62 is actually about:
40
+ * one verb, one authority, no second store, the `{wrapperAddonId: null}`
41
+ * marker, the write lock and the out-of-lock emit.
42
+ */
43
+ import type { AddonContext, ICapabilityRegistry, WrapperActivationRead } from "@camstack/types";
44
+ import type { WriteLock } from "./write-lock.js";
45
+ /**
46
+ * What a wrapper-activation write needs, and nothing more.
47
+ *
48
+ * Deliberately narrower than `AggregationDeps`: the verb touches the settings
49
+ * door, the event bus, the registry and the addon-store write lock. Handing it
50
+ * the device ledger and the remote-native cache it never reads would make this
51
+ * loop untestable without standing up the whole addon.
52
+ */
11
53
  export interface WrapperActivationDeps {
12
- readonly ctx: AddonContext;
13
- readonly capabilityRegistry: ICapabilityRegistry | undefined;
14
- /** Ordering for every read-modify-write of the fleet-wide `deviceBindings` blob (D62). */
15
- readonly withAddonStoreWriteLock: WriteLock;
54
+ readonly ctx: AddonContext;
55
+ readonly capabilityRegistry: ICapabilityRegistry | undefined;
56
+ /** Ordering for every read-modify-write of the fleet-wide `deviceBindings` blob (D62). */
57
+ readonly withAddonStoreWriteLock: WriteLock;
16
58
  }
17
59
  /** The operator-facing activation, as it arrives from the cap router. */
18
60
  export interface WrapperActivationInput {
19
- readonly deviceId: number;
20
- readonly capName: string;
21
- readonly wrapperAddonId: string;
22
- readonly active: boolean;
61
+ readonly deviceId: number;
62
+ readonly capName: string;
63
+ readonly wrapperAddonId: string;
64
+ readonly active: boolean;
23
65
  }
24
66
  /**
25
- * Activate or deactivate a wrapper for one device.
26
- *
27
- * SINGLETON caps only, and that is now enforced rather than assumed: one
28
- * `wrapperAddonId`, or the explicit `null` "operator disabled" marker that
29
- * stops `getBindings` step 2 re-binding a `defaultActive` wrapper.
30
- *
31
- * A COLLECTION cap is REFUSED by name. Its providers are a derived SET
32
- * (`device-bindings-store.ts` step 0) — there is nothing to activate, and a
33
- * verb that accepted the call and wrote a store nobody reads is exactly what
34
- * this module shipped until 2026-09-20.
35
- */
67
+ * Activate or deactivate a wrapper for one device.
68
+ *
69
+ * SINGLETON caps only, and that is now enforced rather than assumed: one
70
+ * `wrapperAddonId`, or the explicit `null` "operator disabled" marker that
71
+ * stops `getBindings` step 2 re-binding a `defaultActive` wrapper.
72
+ *
73
+ * A COLLECTION cap is REFUSED by name. Its providers are a derived SET
74
+ * (`device-bindings-store.ts` step 0) — there is nothing to activate, and a
75
+ * verb that accepted the call and wrote a store nobody reads is exactly what
76
+ * this module shipped until 2026-09-20.
77
+ */
36
78
  export declare function setWrapperActive(deps: WrapperActivationDeps, input: WrapperActivationInput): Promise<void>;
37
79
  /** Which activation `getWrapperActivation` is asked about. */
38
80
  export interface WrapperActivationQuery {
39
- readonly deviceId: number;
40
- readonly capName: string;
81
+ readonly deviceId: number;
82
+ readonly capName: string;
41
83
  }
42
84
  /**
43
- * The STORED activation for one `(device, capName)` pair, three-way — the
44
- * provider behind `deviceManager.getWrapperActivation` (D675).
45
- *
46
- * Reads ONE row — this addon's `deviceBindings` key (~1.6 KB live) — through
47
- * the settings view's single-key three-way read, never the addon's whole store
48
- * (~625 KB) and never `readAddonStore()`, which folds a failed read into `{}`.
49
- *
50
- * Absence is graded by LEVEL:
51
- * - STORE level — the read failed, or the `deviceBindings` row does not exist,
52
- * or it is not a map — is `failed`. Every hub that has ever bound anything
53
- * holds that row, so its absence is the signature of a store answering from
54
- * an empty or unready snapshot (D44), and it must never silence a press
55
- * (D49). An install that has never bound anything lands here too; erring
56
- * `failed` there costs nothing, because nothing is bound to silence.
57
- * - PAIR level — the row was read and has no entry for this device, or none
58
- * for this cap, or none with `wrapperAddonId` — is `missing`: the operator
59
- * never touched this pair.
60
- */
61
- export declare function readWrapperActivation(deps: Pick<WrapperActivationDeps, 'ctx'>, query: WrapperActivationQuery): Promise<WrapperActivationRead>;
85
+ * The STORED activation for one `(device, capName)` pair, three-way — the
86
+ * provider behind `deviceManager.getWrapperActivation` (D675).
87
+ *
88
+ * Reads ONE row — this addon's `deviceBindings` key (~1.6 KB live) — through
89
+ * the settings view's single-key three-way read, never the addon's whole store
90
+ * (~625 KB) and never `readAddonStore()`, which folds a failed read into `{}`.
91
+ *
92
+ * Absence is graded by LEVEL:
93
+ * - STORE level — the read failed, or the `deviceBindings` row does not exist,
94
+ * or it is not a map — is `failed`. Every hub that has ever bound anything
95
+ * holds that row, so its absence is the signature of a store answering from
96
+ * an empty or unready snapshot (D44), and it must never silence a press
97
+ * (D49). An install that has never bound anything lands here too; erring
98
+ * `failed` there costs nothing, because nothing is bound to silence.
99
+ * - PAIR level — the row was read and has no entry for this device, or none
100
+ * for this cap, or none with `wrapperAddonId` — is `missing`: the operator
101
+ * never touched this pair.
102
+ */
103
+ export declare function readWrapperActivation(deps: Pick<WrapperActivationDeps, "ctx">, query: WrapperActivationQuery): Promise<WrapperActivationRead>;
@@ -1,77 +1,92 @@
1
- import { z } from 'zod';
2
- import { ClaimOutcome, IScopedLogger } from '@camstack/types';
3
- import { MergedSlice, OwnedCap, OwnedCaps } from './field-ownership.js';
1
+ /**
2
+ * The claims half of the hub runtime-state mirror (D663): which caps of a
3
+ * device are claimed, by whom, and what the MERGED view of each claimed cap
4
+ * currently is. `DeviceStateMirror` owns the native shadow, the seeding and
5
+ * the disk writes; this class owns the two maps the merge lives in and the
6
+ * rule for what a consumer sees.
7
+ *
8
+ * The view of a claimed cap is `mergeOwned(native, claim)`. When the merge is
9
+ * a slice it is what reads answer and what is emitted. When it is HELD, what
10
+ * reads answer depends on WHY: a bad overlay (every value present, schema
11
+ * refused it) keeps the last good slice readable; a value or native that has
12
+ * not arrived yet answers nothing — otherwise the previous merge would answer a
13
+ * newly claimed field from the native (S5, D62). Held transitions log once per
14
+ * (device, cap, reason) with `tags: { deviceId }` (D391).
15
+ */
16
+ import type { z } from "zod";
17
+ import type { ClaimOutcome, IScopedLogger } from "@camstack/types";
18
+ import { type MergedSlice, type OwnedCap, type OwnedCaps } from "./field-ownership.js";
4
19
  /** Resolves a cap's `runtimeState` schema by name; null when it declares none. */
5
20
  export type RuntimeStateSchemaLookup = (capName: string) => z.ZodType | null;
6
21
  /** Per (device, cap) state of a claimed cap: what the merge last said, and the
7
- * last GOOD merged slice — kept readable while a bad overlay holds the cap. */
22
+ * last GOOD merged slice — kept readable while a bad overlay holds the cap. */
8
23
  export interface ClaimedView {
9
- readonly merged: MergedSlice;
10
- readonly visible: Readonly<Record<string, unknown>> | null;
24
+ readonly merged: MergedSlice;
25
+ readonly visible: Readonly<Record<string, unknown>> | null;
11
26
  }
12
27
  /** What the views need from their owner: the schema, the log and the public emit. */
13
28
  export interface ClaimViewSink {
14
- readonly logger: IScopedLogger;
15
- readonly schemaFor: RuntimeStateSchemaLookup;
16
- emitSlice(deviceId: number, capName: string, slice: Record<string, unknown>): void;
29
+ readonly logger: IScopedLogger;
30
+ readonly schemaFor: RuntimeStateSchemaLookup;
31
+ emitSlice(deviceId: number, capName: string, slice: Record<string, unknown>): void;
17
32
  }
18
33
  /** Lazily indexes the codegen'd cap set — the hub already carries the barrel. */
19
34
  export declare function defaultSchemaFor(capName: string): z.ZodType | null;
20
35
  export declare function sameOwnedCap(a: OwnedCap, b: OwnedCap): boolean;
21
36
  type ClaimRefusal = Extract<ClaimOutcome, {
22
- ok: false;
37
+ ok: false;
23
38
  }>;
24
- export declare function refused(code: ClaimRefusal['code'], message: string): ClaimOutcome;
39
+ export declare function refused(code: ClaimRefusal["code"], message: string): ClaimOutcome;
25
40
  export declare class ClaimViews {
26
- private readonly sink;
27
- /** Claims by device, by cap. Absent for every device without one. */
28
- private readonly owned;
29
- /** The merged view of each claimed cap; recomputed on every native or owned write. */
30
- private readonly views;
31
- constructor(sink: ClaimViewSink);
32
- claim(deviceId: number, capName: string): OwnedCap | undefined;
33
- setClaim(deviceId: number, capName: string, claim: OwnedCap): void;
34
- /** Removes the claim AND its view. */
35
- deleteClaim(deviceId: number, capName: string): void;
36
- /** Fill gaps only: a claim already in memory was written through and is newer than the row. */
37
- seedClaims(deviceId: number, claims: OwnedCaps): void;
38
- clearDevice(deviceId: number): void;
39
- ownedCaps(deviceId: number): OwnedCaps;
40
- claimsOf(deviceId: number): Iterable<[string, OwnedCap]>;
41
- /** Devices with at least one view — for the whole-system dump. */
42
- deviceIds(): Iterable<number>;
43
- isClaimed(deviceId: number, capName: string): boolean;
44
- /** `undefined` when the cap is not claimed; `null` when it is claimed and held with nothing to show. */
45
- visible(deviceId: number, capName: string): Readonly<Record<string, unknown>> | null | undefined;
46
- /** Every claimed cap of a device that currently has something to show. */
47
- visibleCaps(deviceId: number): Iterable<[string, Readonly<Record<string, unknown>>]>;
48
- /** What the merge says for a claimed cap; null when the cap is not claimed. */
49
- effective(deviceId: number, capName: string): MergedSlice | null;
50
- view(deviceId: number, capName: string): ClaimedView | undefined;
51
- /** Put a view back (rollback of a failed write-through); `undefined` removes it. */
52
- restoreView(deviceId: number, capName: string, view: ClaimedView | undefined): void;
53
- /**
54
- * Recompute a claimed cap's merged view and emit it when it is a slice and
55
- * either changed or `emitUnchanged` (the native moved). A held view emits
56
- * nothing and logs once per transition, naming the fields; a bad overlay
57
- * keeps the last good slice readable, a missing value or native does not.
58
- */
59
- recompute(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null, emitUnchanged: boolean): void;
60
- /**
61
- * The view a claim has NOW — set, never emitted, never logged. A claim is
62
- * written through, and readers must see it from the moment it is accepted
63
- * (S5): without this, `capSlice` answered the NATIVE for an already-claimed
64
- * field for the whole row round-trip (D663 re-review N-5). The emit is judged
65
- * later, by `recompute`, against what consumers last saw.
66
- */
67
- previewView(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null): void;
68
- /** The one rule for what a claimed cap shows: the merge when it is a slice; on
69
- * a bad overlay the last good slice stays readable; a value or native not yet
70
- * arrived shows nothing. */
71
- private derive;
72
- /** The merged view for a claim that arrived by seed: computed, never emitted. */
73
- seedView(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null): void;
74
- private ownedFor;
75
- private viewsFor;
41
+ private readonly sink;
42
+ /** Claims by device, by cap. Absent for every device without one. */
43
+ private readonly owned;
44
+ /** The merged view of each claimed cap; recomputed on every native or owned write. */
45
+ private readonly views;
46
+ constructor(sink: ClaimViewSink);
47
+ claim(deviceId: number, capName: string): OwnedCap | undefined;
48
+ setClaim(deviceId: number, capName: string, claim: OwnedCap): void;
49
+ /** Removes the claim AND its view. */
50
+ deleteClaim(deviceId: number, capName: string): void;
51
+ /** Fill gaps only: a claim already in memory was written through and is newer than the row. */
52
+ seedClaims(deviceId: number, claims: OwnedCaps): void;
53
+ clearDevice(deviceId: number): void;
54
+ ownedCaps(deviceId: number): OwnedCaps;
55
+ claimsOf(deviceId: number): Iterable<[string, OwnedCap]>;
56
+ /** Devices with at least one view — for the whole-system dump. */
57
+ deviceIds(): Iterable<number>;
58
+ isClaimed(deviceId: number, capName: string): boolean;
59
+ /** `undefined` when the cap is not claimed; `null` when it is claimed and held with nothing to show. */
60
+ visible(deviceId: number, capName: string): Readonly<Record<string, unknown>> | null | undefined;
61
+ /** Every claimed cap of a device that currently has something to show. */
62
+ visibleCaps(deviceId: number): Iterable<[string, Readonly<Record<string, unknown>>]>;
63
+ /** What the merge says for a claimed cap; null when the cap is not claimed. */
64
+ effective(deviceId: number, capName: string): MergedSlice | null;
65
+ view(deviceId: number, capName: string): ClaimedView | undefined;
66
+ /** Put a view back (rollback of a failed write-through); `undefined` removes it. */
67
+ restoreView(deviceId: number, capName: string, view: ClaimedView | undefined): void;
68
+ /**
69
+ * Recompute a claimed cap's merged view and emit it when it is a slice and
70
+ * either changed or `emitUnchanged` (the native moved). A held view emits
71
+ * nothing and logs once per transition, naming the fields; a bad overlay
72
+ * keeps the last good slice readable, a missing value or native does not.
73
+ */
74
+ recompute(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null, emitUnchanged: boolean): void;
75
+ /**
76
+ * The view a claim has NOW — set, never emitted, never logged. A claim is
77
+ * written through, and readers must see it from the moment it is accepted
78
+ * (S5): without this, `capSlice` answered the NATIVE for an already-claimed
79
+ * field for the whole row round-trip (D663 re-review N-5). The emit is judged
80
+ * later, by `recompute`, against what consumers last saw.
81
+ */
82
+ previewView(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null): void;
83
+ /** The one rule for what a claimed cap shows: the merge when it is a slice; on
84
+ * a bad overlay the last good slice stays readable; a value or native not yet
85
+ * arrived shows nothing. */
86
+ private derive;
87
+ /** The merged view for a claim that arrived by seed: computed, never emitted. */
88
+ seedView(deviceId: number, capName: string, claim: OwnedCap, native: Readonly<Record<string, unknown>> | null): void;
89
+ private ownedFor;
90
+ private viewsFor;
76
91
  }
77
92
  export {};
@@ -1,43 +1,66 @@
1
- import { ClaimOutcome, ClaimsListing, FieldClaimMode, IScopedLogger } from '@camstack/types';
2
- import { DeviceManagerSettings } from './device-meta-store.js';
3
- import { DeviceStateMirror } from './device-state-mirror.js';
4
- import { FieldClaimsIndex } from './field-claims-index.js';
1
+ /**
2
+ * The `deviceState` CLAIM methods (D663): `claimFields`, `patchOwnedFields`,
3
+ * `releaseClaim`, `listClaims`. Thin over two authorities — the mirror owns the
4
+ * row and the merge, the index owns the listing — and the ORDER between them:
5
+ *
6
+ * claim : index first, then the row — when the index does not yet name the
7
+ * (device, cap). A crash leaves an index entry with no row claim,
8
+ * which is harmless (a row read at the next seed) and self-heals;
9
+ * the reverse would let a claimed device seed without its row.
10
+ * When the index ALREADY names the pair (a standing owner), the
11
+ * row goes first and the index moves only on `ok`: `hasClaims` is
12
+ * already true, so index-first buys nothing, and it would name an
13
+ * owner the row is about to refuse.
14
+ * release : row first, then the index. `not-claimed` from the row also drops
15
+ * the index entry — that is how an orphan heals (condition ii).
16
+ *
17
+ * Every method refuses by NAME (`ClaimOutcome`), never by silence: an unknown
18
+ * device, a device whose migration is in flight (its row is about to be swapped
19
+ * with another's — D663 5b), a value outside the planned field set (S5). A
20
+ * failed store write REJECTS (I-4): the composer reads a rejection as unknown
21
+ * and re-sends; a typed refusal is a fact about the claim, a rejection a fact
22
+ * about the store.
23
+ */
24
+ import type { ClaimOutcome, ClaimsListing, FieldClaimMode, IScopedLogger } from "@camstack/types";
25
+ import type { DeviceManagerSettings } from "./device-meta-store.js";
26
+ import type { DeviceStateMirror } from "./device-state-mirror.js";
27
+ import type { FieldClaimsIndex } from "./field-claims-index.js";
5
28
  export interface ClaimFieldsInput {
6
- readonly deviceId: number;
7
- readonly capName: string;
8
- readonly owner: string;
9
- readonly mode: FieldClaimMode;
10
- readonly fields: readonly string[];
11
- readonly values: Readonly<Record<string, unknown>>;
29
+ readonly deviceId: number;
30
+ readonly capName: string;
31
+ readonly owner: string;
32
+ readonly mode: FieldClaimMode;
33
+ readonly fields: readonly string[];
34
+ readonly values: Readonly<Record<string, unknown>>;
12
35
  }
13
36
  export interface PatchOwnedFieldsInput {
14
- readonly deviceId: number;
15
- readonly capName: string;
16
- readonly owner: string;
17
- readonly values: Readonly<Record<string, unknown>>;
37
+ readonly deviceId: number;
38
+ readonly capName: string;
39
+ readonly owner: string;
40
+ readonly values: Readonly<Record<string, unknown>>;
18
41
  }
19
42
  export interface ReleaseClaimInput {
20
- readonly deviceId: number;
21
- readonly capName: string;
22
- readonly owner: string;
43
+ readonly deviceId: number;
44
+ readonly capName: string;
45
+ readonly owner: string;
23
46
  }
24
47
  export interface ListClaimsInput {
25
- readonly ownerPrefix?: string;
48
+ readonly ownerPrefix?: string;
26
49
  }
27
50
  export interface DeviceStateClaimMethods {
28
- claimFields(input: ClaimFieldsInput): Promise<ClaimOutcome>;
29
- patchOwnedFields(input: PatchOwnedFieldsInput): Promise<ClaimOutcome>;
30
- releaseClaim(input: ReleaseClaimInput): Promise<ClaimOutcome>;
31
- listClaims(input: ListClaimsInput): Promise<ClaimsListing>;
51
+ claimFields(input: ClaimFieldsInput): Promise<ClaimOutcome>;
52
+ patchOwnedFields(input: PatchOwnedFieldsInput): Promise<ClaimOutcome>;
53
+ releaseClaim(input: ReleaseClaimInput): Promise<ClaimOutcome>;
54
+ listClaims(input: ListClaimsInput): Promise<ClaimsListing>;
32
55
  }
33
56
  export interface DeviceStateClaimDeps {
34
- readonly mirror: Pick<DeviceStateMirror, 'claim' | 'patchOwned' | 'release'>;
35
- readonly index: FieldClaimsIndex;
36
- readonly settings: DeviceManagerSettings;
37
- readonly logger: IScopedLogger;
38
- /** Is this a device the ledger knows? `resolvePersistedById(id) !== null`. */
39
- deviceExists(deviceId: number): Promise<boolean>;
40
- /** Is a migration involving this device running right now? */
41
- migrationInFlight(deviceId: number): boolean;
57
+ readonly mirror: Pick<DeviceStateMirror, "claim" | "patchOwned" | "release">;
58
+ readonly index: FieldClaimsIndex;
59
+ readonly settings: DeviceManagerSettings;
60
+ readonly logger: IScopedLogger;
61
+ /** Is this a device the ledger knows? `resolvePersistedById(id) !== null`. */
62
+ deviceExists(deviceId: number): Promise<boolean>;
63
+ /** Is a migration involving this device running right now? */
64
+ migrationInFlight(deviceId: number): boolean;
42
65
  }
43
66
  export declare function createDeviceStateClaimMethods(deps: DeviceStateClaimDeps): DeviceStateClaimMethods;