@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,49 +1,49 @@
1
- import { ChildCapDescriptor } from './child-cap-protocol.js';
1
+ import type { ChildCapDescriptor } from "./child-cap-protocol.js";
2
2
  /**
3
- * One connected child as the index reads it: its id and the cap manifest it
4
- * registered. A structural subset of `LocalChildRegistry`'s own child entry,
5
- * so the index can be built from `children.values()` directly and unit-tested
6
- * without a socket.
7
- */
3
+ * One connected child as the index reads it: its id and the cap manifest it
4
+ * registered. A structural subset of `LocalChildRegistry`'s own child entry,
5
+ * so the index can be built from `children.values()` directly and unit-tested
6
+ * without a socket.
7
+ */
8
8
  export interface CapIndexEntry {
9
- readonly childId: string;
10
- readonly caps: readonly ChildCapDescriptor[];
9
+ readonly childId: string;
10
+ readonly caps: readonly ChildCapDescriptor[];
11
11
  }
12
12
  /**
13
- * The two questions `resolveChildId` asks, answered in O(1).
14
- *
15
- * Deliberately NOT "resolve a child": the operator's `setActiveSingleton`
16
- * preference is read at CALL time from the capability registry and can change
17
- * without any child connecting or leaving, so the index must not be allowed to
18
- * hold an answer that depends on it. It holds only what the `children` map
19
- * says, which is the same thing that invalidates it.
20
- */
13
+ * The two questions `resolveChildId` asks, answered in O(1).
14
+ *
15
+ * Deliberately NOT "resolve a child": the operator's `setActiveSingleton`
16
+ * preference is read at CALL time from the capability registry and can change
17
+ * without any child connecting or leaving, so the index must not be allowed to
18
+ * hold an answer that depends on it. It holds only what the `children` map
19
+ * says, which is the same thing that invalidates it.
20
+ */
21
21
  export interface CapChildIndex {
22
- /** The FIRST child owning the exact `(capName, deviceId)` pair, or null. */
23
- deviceOwner(capName: string, deviceId: number): string | null;
24
- /**
25
- * Every child owning a deviceId-LESS descriptor for `capName`, in children
26
- * insertion order (so `[0]` is the first-registered), each named once.
27
- */
28
- singletonCandidates(capName: string): readonly string[];
22
+ /** The FIRST child owning the exact `(capName, deviceId)` pair, or null. */
23
+ deviceOwner(capName: string, deviceId: number): string | null;
24
+ /**
25
+ * Every child owning a deviceId-LESS descriptor for `capName`, in children
26
+ * insertion order (so `[0]` is the first-registered), each named once.
27
+ */
28
+ singletonCandidates(capName: string): readonly string[];
29
29
  }
30
30
  /**
31
- * Build the `(cap, device?) → child` index from the connected children.
32
- *
33
- * A PURE function of what it is handed — it captures nothing, subscribes to
34
- * nothing and cannot be updated in place. That is the whole safety argument
35
- * (D3, D457): the only way to change what it says is to build a new one from
36
- * the `children` map, so an index can never name a child that map has already
37
- * dropped. An incremental index — add on register, remove on close — would be
38
- * a second registry that can disagree with the first, and a stale one routes
39
- * to a dead runner, which is strictly worse than a slow scan.
40
- *
41
- * Cost: O(children × descriptors), paid once per mutation of the children map
42
- * (a register, a re-register, a disconnect) rather than once per cap call.
43
- *
44
- * The two tiers stay separate, exactly as the scan had them: a device lookup
45
- * is never answered from a deviceId-less descriptor. `resolveChildId` owns
46
- * the fallback from tier 1 to tier 2, and folding it in here would make it
47
- * unreachable.
48
- */
31
+ * Build the `(cap, device?) → child` index from the connected children.
32
+ *
33
+ * A PURE function of what it is handed — it captures nothing, subscribes to
34
+ * nothing and cannot be updated in place. That is the whole safety argument
35
+ * (D3, D457): the only way to change what it says is to build a new one from
36
+ * the `children` map, so an index can never name a child that map has already
37
+ * dropped. An incremental index — add on register, remove on close — would be
38
+ * a second registry that can disagree with the first, and a stale one routes
39
+ * to a dead runner, which is strictly worse than a slow scan.
40
+ *
41
+ * Cost: O(children × descriptors), paid once per mutation of the children map
42
+ * (a register, a re-register, a disconnect) rather than once per cap call.
43
+ *
44
+ * The two tiers stay separate, exactly as the scan had them: a device lookup
45
+ * is never answered from a deviceId-less descriptor. `resolveChildId` owns
46
+ * the fallback from tier 1 to tier 2, and folding it in here would make it
47
+ * unreachable.
48
+ */
49
49
  export declare function buildCapChildIndex(entries: Iterable<CapIndexEntry>): CapChildIndex;
@@ -1,235 +1,260 @@
1
- import { ServiceDiscoveryBroker } from '../moleculer/resilient-cap-call.js';
2
- import { CapRoute, CapRouteOpts, HubLocalUdsRoute, InProcessProviderRef } from './cap-route.js';
3
- import { CapCallInput } from './child-cap-protocol.js';
4
1
  /**
5
- * Minimal surface of LocalChildRegistry that the resolver needs.
6
- * Keeping a narrow interface here prevents the resolver from depending on the
7
- * full LocalChildRegistry class and avoids `as unknown as` casts in tests.
8
- * The real `LocalChildRegistry` structurally satisfies this interface.
9
- */
2
+ * CapRouteResolver — builds a live CapRouteSnapshot from injected deps and
3
+ * dispatches a resolved CapRoute to the appropriate transport.
4
+ *
5
+ * Layer boundary: this file lives in `@camstack/kernel` and MUST NOT import
6
+ * from `server/backend`. All server-side state is injected via narrow named
7
+ * interfaces (NodeCapAuthority, InProcessProviderLookup, BrokerHandle).
8
+ *
9
+ * Wire conventions (kept here as the single source of truth):
10
+ *
11
+ * remote-moleculer dispatch
12
+ * action : `${addonId}.${capName}.${method}`
13
+ * params : methodArgs (passed through)
14
+ * options : { nodeID: route.nodeId, timeout: 60_000 }
15
+ * note : addonId is resolved by NodeCapAuthority.getAddonId(nodeId, cap)
16
+ *
17
+ * agent-child-forward dispatch
18
+ * service : `$agent-cap-fwd`
19
+ * action : `$agent-cap-fwd.forward`
20
+ * params : { capName, method, args, childId, deviceId? }
21
+ * options : { nodeID: route.agentNodeId, timeout: 60_000 }
22
+ * note : Task 6's agent-side service MUST register the Moleculer service
23
+ * `$agent-cap-fwd` with action `forward` that accepts this shape
24
+ * and fans the call over UDS to route.childId.
25
+ */
26
+ import type { ServiceDiscoveryBroker } from "../moleculer/resilient-cap-call.js";
27
+ import type { CapRoute, CapRouteOpts, HubLocalUdsRoute, InProcessProviderRef } from "./cap-route.js";
28
+ import type { CapCallInput } from "./child-cap-protocol.js";
29
+ /**
30
+ * Minimal surface of LocalChildRegistry that the resolver needs.
31
+ * Keeping a narrow interface here prevents the resolver from depending on the
32
+ * full LocalChildRegistry class and avoids `as unknown as` casts in tests.
33
+ * The real `LocalChildRegistry` structurally satisfies this interface.
34
+ */
10
35
  export interface HubLocalChildDispatcher {
11
- /** Returns the childId that provides the cap, or null. */
12
- resolveChildId(capName: string, deviceId?: number): string | null;
13
- /** Forwards a cap call to a specific child by id. */
14
- callCapOnChild(childId: string, input: CapCallInput): Promise<unknown>;
36
+ /** Returns the childId that provides the cap, or null. */
37
+ resolveChildId(capName: string, deviceId?: number): string | null;
38
+ /** Forwards a cap call to a specific child by id. */
39
+ callCapOnChild(childId: string, input: CapCallInput): Promise<unknown>;
15
40
  }
16
41
  /**
17
- * Minimal view of the cluster node registry needed to build a CapRouteSnapshot.
18
- * The concrete implementation (HubNodeRegistry) lives in server/backend and is
19
- * wired in by Task 4/5. Keeping this interface in kernel prevents a layering
20
- * inversion.
21
- */
42
+ * Minimal view of the cluster node registry needed to build a CapRouteSnapshot.
43
+ * The concrete implementation (HubNodeRegistry) lives in server/backend and is
44
+ * wired in by Task 4/5. Keeping this interface in kernel prevents a layering
45
+ * inversion.
46
+ */
22
47
  export interface NodeCapAuthority {
23
- /** Returns true if the given node's latest manifest includes the given cap. */
24
- nodeKnowsCap(nodeId: string, capName: string): boolean;
25
- /** Returns true if the given nodeId is an agent (bare id, no '/' separator). */
26
- nodeIsAgent(nodeId: string): boolean;
27
- /** Returns true if the given node is currently connected/online. */
28
- nodeOnline(nodeId: string): boolean;
29
- /** Returns all nodeIds currently in the registry. */
30
- listNodeIds(): readonly string[];
31
- /**
32
- * Returns the addonId for the provider that registered (nodeId, capName).
33
- * Used to build the Moleculer action `${addonId}.${capName}.${method}`.
34
- * Returns null when the node does not host the cap (should not happen if
35
- * nodeKnowsCap is true, but guard defensively).
36
- */
37
- getAddonId(nodeId: string, capName: string): string | null;
38
- /**
39
- * Returns the childId (runner id) of the agent's UDS child that provides
40
- * the given cap. Only meaningful when nodeIsAgent(nodeId) is true.
41
- * Returns null when unknown.
42
- */
43
- getAgentChildId(agentNodeId: string, capName: string): string | null;
44
- /**
45
- * Returns true if the (nodeId, capName, deviceId?) tuple is a device-scoped
46
- * NATIVE cap (vs. a system/manifest cap). When true, the remote-moleculer
47
- * dispatcher uses `capActionName(addonId, cap, method, true)` which expands to
48
- * `${addonId}.native-provider.${cap}.${method}` instead of the plain system-cap
49
- * action `${addonId}.${cap}.${method}`.
50
- * Implementations that do not track native caps should return false.
51
- */
52
- isNativeCap(nodeId: string, capName: string, deviceId?: number): boolean;
48
+ /** Returns true if the given node's latest manifest includes the given cap. */
49
+ nodeKnowsCap(nodeId: string, capName: string): boolean;
50
+ /** Returns true if the given nodeId is an agent (bare id, no '/' separator). */
51
+ nodeIsAgent(nodeId: string): boolean;
52
+ /** Returns true if the given node is currently connected/online. */
53
+ nodeOnline(nodeId: string): boolean;
54
+ /** Returns all nodeIds currently in the registry. */
55
+ listNodeIds(): readonly string[];
56
+ /**
57
+ * Returns the addonId for the provider that registered (nodeId, capName).
58
+ * Used to build the Moleculer action `${addonId}.${capName}.${method}`.
59
+ * Returns null when the node does not host the cap (should not happen if
60
+ * nodeKnowsCap is true, but guard defensively).
61
+ */
62
+ getAddonId(nodeId: string, capName: string): string | null;
63
+ /**
64
+ * Returns the childId (runner id) of the agent's UDS child that provides
65
+ * the given cap. Only meaningful when nodeIsAgent(nodeId) is true.
66
+ * Returns null when unknown.
67
+ */
68
+ getAgentChildId(agentNodeId: string, capName: string): string | null;
69
+ /**
70
+ * Returns true if the (nodeId, capName, deviceId?) tuple is a device-scoped
71
+ * NATIVE cap (vs. a system/manifest cap). When true, the remote-moleculer
72
+ * dispatcher uses `capActionName(addonId, cap, method, true)` which expands to
73
+ * `${addonId}.native-provider.${cap}.${method}` instead of the plain system-cap
74
+ * action `${addonId}.${cap}.${method}`.
75
+ * Implementations that do not track native caps should return false.
76
+ */
77
+ isNativeCap(nodeId: string, capName: string, deviceId?: number): boolean;
53
78
  }
54
79
  /**
55
- * Injected lookup for providers that live in the hub host process.
56
- * Returns a ready-to-invoke InProcessProviderRef, or null if the cap is not
57
- * hosted in-process.
58
- */
80
+ * Injected lookup for providers that live in the hub host process.
81
+ * Returns a ready-to-invoke InProcessProviderRef, or null if the cap is not
82
+ * hosted in-process.
83
+ */
59
84
  export type InProcessProviderLookup = (capName: string) => InProcessProviderRef | null;
60
85
  export interface CapRouteResolverDeps {
61
- /** The hub's own Moleculer nodeId (e.g. `'hub'`). */
62
- readonly hubNodeId: string;
63
- /**
64
- * Minimal Moleculer broker surface: `call` + `waitForServices`.
65
- * Used for remote-moleculer and agent-child-forward dispatches.
66
- */
67
- readonly broker: ServiceDiscoveryBroker;
68
- /**
69
- * Local UDS child dispatcher — routes hub-local-uds dispatches.
70
- * May be null when the UDS server failed to start.
71
- */
72
- readonly hubLocalRegistry: HubLocalChildDispatcher | null;
73
- /**
74
- * Authority over which nodes are online and which caps they know.
75
- * Decouples the resolver from the concrete HubNodeRegistry class.
76
- */
77
- readonly nodeAuthority: NodeCapAuthority;
78
- /**
79
- * Lookup for hub-in-process providers.
80
- * Decouples the resolver from CapabilityRegistry.
81
- */
82
- readonly inProcessProviders: InProcessProviderLookup;
83
- /**
84
- * Optional NODE-ACCURATE lookup for providers physically resident on the
85
- * hub node — consulted ONLY when a call is EXPLICITLY pinned to the hub.
86
- * `inProcessProviders` may resolve the cluster-elected ACTIVE singleton
87
- * (a remote-proxy provider registered in the hub registry), which must not
88
- * satisfy a `nodePin('hub')`. See `CapRouteSnapshot.hubResidentProvides`.
89
- */
90
- readonly hubResidentProviders?: InProcessProviderLookup;
91
- /**
92
- * Per-cap-method RPC timeout (ms). Lets a long-running cap method (e.g.
93
- * `model-convert.convert`, minutes) override the default 60s remote/forward
94
- * timeout that would otherwise kill it mid-run. Returns undefined to use the
95
- * default. Resolved from the cap definition's `methods[method].timeoutMs`.
96
- */
97
- readonly capTimeoutMs?: (capName: string, method: string) => number | undefined;
86
+ /** The hub's own Moleculer nodeId (e.g. `'hub'`). */
87
+ readonly hubNodeId: string;
88
+ /**
89
+ * Minimal Moleculer broker surface: `call` + `waitForServices`.
90
+ * Used for remote-moleculer and agent-child-forward dispatches.
91
+ */
92
+ readonly broker: ServiceDiscoveryBroker;
93
+ /**
94
+ * Local UDS child dispatcher — routes hub-local-uds dispatches.
95
+ * May be null when the UDS server failed to start.
96
+ */
97
+ readonly hubLocalRegistry: HubLocalChildDispatcher | null;
98
+ /**
99
+ * Authority over which nodes are online and which caps they know.
100
+ * Decouples the resolver from the concrete HubNodeRegistry class.
101
+ */
102
+ readonly nodeAuthority: NodeCapAuthority;
103
+ /**
104
+ * Lookup for hub-in-process providers.
105
+ * Decouples the resolver from CapabilityRegistry.
106
+ */
107
+ readonly inProcessProviders: InProcessProviderLookup;
108
+ /**
109
+ * Optional NODE-ACCURATE lookup for providers physically resident on the
110
+ * hub node — consulted ONLY when a call is EXPLICITLY pinned to the hub.
111
+ * `inProcessProviders` may resolve the cluster-elected ACTIVE singleton
112
+ * (a remote-proxy provider registered in the hub registry), which must not
113
+ * satisfy a `nodePin('hub')`. See `CapRouteSnapshot.hubResidentProvides`.
114
+ */
115
+ readonly hubResidentProviders?: InProcessProviderLookup;
116
+ /**
117
+ * Per-cap-method RPC timeout (ms). Lets a long-running cap method (e.g.
118
+ * `model-convert.convert`, minutes) override the default 60s remote/forward
119
+ * timeout that would otherwise kill it mid-run. Returns undefined to use the
120
+ * default. Resolved from the cap definition's `methods[method].timeoutMs`.
121
+ */
122
+ readonly capTimeoutMs?: (capName: string, method: string) => number | undefined;
98
123
  }
99
124
  /**
100
- * Params envelope sent to the agent's `$agent-cap-fwd.forward` Moleculer action.
101
- *
102
- * Task 6 MUST register a Moleculer service named `$agent-cap-fwd` with an
103
- * action `forward` that receives this payload, resolves `childId` in its own
104
- * LocalChildRegistry, and dispatches over UDS to that child.
105
- */
125
+ * Params envelope sent to the agent's `$agent-cap-fwd.forward` Moleculer action.
126
+ *
127
+ * Task 6 MUST register a Moleculer service named `$agent-cap-fwd` with an
128
+ * action `forward` that receives this payload, resolves `childId` in its own
129
+ * LocalChildRegistry, and dispatches over UDS to that child.
130
+ */
106
131
  export interface AgentCapForwardParams {
107
- readonly capName: string;
108
- readonly method: string;
109
- readonly args: unknown;
110
- /**
111
- * Optional: the hub cannot resolve which forked child under the agent provides the cap.
112
- * The agent resolves its own child locally (Task 6). Present when the hub authority
113
- * happens to know it, absent (undefined) when not.
114
- */
115
- readonly childId?: string;
116
- readonly deviceId?: number;
117
- /**
118
- * Out-of-band PROVIDER-selection hint — the twin of `CapCallMessage.addonId`
119
- * (Task 7.5a). A GROUPED runner (`execution.group`) on an AGENT can host two
120
- * co-located addons registering the SAME collection cap, exactly like the
121
- * hub-local-uds case (`LocalChildRegistry.toCapCall`'s `addonId`, threaded by
122
- * `buildCapCallFn`'s hub-local branch). Before this field existed, the hub had
123
- * no channel to carry the selector across the hub→agent envelope — grouped-
124
- * runner provider selection worked on the hub and silently fell back to
125
- * "whichever provider is first" on an agent. Absent → the agent dispatch falls
126
- * back to its sole provider for the cap (same fallback `child-cap-dispatch.ts`
127
- * already has for a call that never carried the hint).
128
- */
129
- readonly addonId?: string;
132
+ readonly capName: string;
133
+ readonly method: string;
134
+ readonly args: unknown;
135
+ /**
136
+ * Optional: the hub cannot resolve which forked child under the agent provides the cap.
137
+ * The agent resolves its own child locally (Task 6). Present when the hub authority
138
+ * happens to know it, absent (undefined) when not.
139
+ */
140
+ readonly childId?: string;
141
+ readonly deviceId?: number;
142
+ /**
143
+ * Out-of-band PROVIDER-selection hint — the twin of `CapCallMessage.addonId`
144
+ * (Task 7.5a). A GROUPED runner (`execution.group`) on an AGENT can host two
145
+ * co-located addons registering the SAME collection cap, exactly like the
146
+ * hub-local-uds case (`LocalChildRegistry.toCapCall`'s `addonId`, threaded by
147
+ * `buildCapCallFn`'s hub-local branch). Before this field existed, the hub had
148
+ * no channel to carry the selector across the hub→agent envelope — grouped-
149
+ * runner provider selection worked on the hub and silently fell back to
150
+ * "whichever provider is first" on an agent. Absent → the agent dispatch falls
151
+ * back to its sole provider for the cap (same fallback `child-cap-dispatch.ts`
152
+ * already has for a call that never carried the hint).
153
+ */
154
+ readonly addonId?: string;
130
155
  }
131
156
  /** The Moleculer service name that Task 6's agent registers. */
132
157
  export declare const AGENT_CAP_FWD_SERVICE: "$agent-cap-fwd";
133
158
  /** The Moleculer action (service.action) for agent cap forwarding. */
134
- export declare const AGENT_CAP_FWD_ACTION: "$agent-cap-fwd.forward";
159
+ export declare const AGENT_CAP_FWD_ACTION: string;
135
160
  export declare function extractDeviceId(args: unknown): number | undefined;
136
161
  /**
137
- * Extract an inline `nodeId` string from a cap call's args — the per-call node
138
- * pin a forked addon expresses by carrying `nodeId` in the input (the SAME way
139
- * device-scoped caps carry `deviceId`, and the way the generated cap-router on
140
- * the hub already honours an inline pin). Mirrors {@link extractDeviceId}.
141
- *
142
- * This is the routing source for hub→remote-node EXECUTION pinning (e.g. the
143
- * benchmark addon running a synthetic/decoder workload ON a chosen agent). The
144
- * out-of-band `nodePin(op.context)` path does NOT survive the forked addon →
145
- * hub UDS link chain, so `onUnownedCall` reads the inline pin instead. Provider
146
- * methods that don't declare `nodeId` simply ignore the extra field (they
147
- * destructure the fields they need); methods that DO declare it (e.g.
148
- * `getEngineProvisioning({nodeId})`) still receive it unchanged.
149
- */
162
+ * Extract an inline `nodeId` string from a cap call's args — the per-call node
163
+ * pin a forked addon expresses by carrying `nodeId` in the input (the SAME way
164
+ * device-scoped caps carry `deviceId`, and the way the generated cap-router on
165
+ * the hub already honours an inline pin). Mirrors {@link extractDeviceId}.
166
+ *
167
+ * This is the routing source for hub→remote-node EXECUTION pinning (e.g. the
168
+ * benchmark addon running a synthetic/decoder workload ON a chosen agent). The
169
+ * out-of-band `nodePin(op.context)` path does NOT survive the forked addon →
170
+ * hub UDS link chain, so `onUnownedCall` reads the inline pin instead. Provider
171
+ * methods that don't declare `nodeId` simply ignore the extra field (they
172
+ * destructure the fields they need); methods that DO declare it (e.g.
173
+ * `getEngineProvisioning({nodeId})`) still receive it unchanged.
174
+ */
150
175
  export declare function extractNodeId(args: unknown): string | undefined;
151
176
  /**
152
- * Stamp the CALLER identity into a cap call's args — the SAME "provider
153
- * destructures what it needs and ignores the rest" convention
154
- * {@link extractNodeId} already relies on for the inline `nodeId` pin.
155
- *
156
- * The stamp is the transport's, never the caller's (D787):
157
- * - a stamp (`callerAddonId` known to the transport) OVERWRITES whatever the
158
- * args carry under that key;
159
- * - NO stamp STRIPS the key: a call that crossed a wire with no identity the
160
- * transport can vouch for must not arrive carrying a claimed one. The
161
- * keychain owner-checks on this field, and until 2026-10-08 an unstamped
162
- * call let a child's own `callerAddonId` through untouched.
163
- *
164
- * A hub in-process caller never reaches this function (`localProviderLink`
165
- * calls the provider directly), which is the one place a stated identity is
166
- * trusted. A non-object `args` (or `null`/array) is returned unchanged: there
167
- * is nowhere to attach a key, and nowhere one could hide.
168
- */
177
+ * Stamp the CALLER identity into a cap call's args — the SAME "provider
178
+ * destructures what it needs and ignores the rest" convention
179
+ * {@link extractNodeId} already relies on for the inline `nodeId` pin.
180
+ *
181
+ * The stamp is the transport's, never the caller's (D787):
182
+ * - a stamp (`callerAddonId` known to the transport) OVERWRITES whatever the
183
+ * args carry under that key;
184
+ * - NO stamp STRIPS the key: a call that crossed a wire with no identity the
185
+ * transport can vouch for must not arrive carrying a claimed one. The
186
+ * keychain owner-checks on this field, and until 2026-10-08 an unstamped
187
+ * call let a child's own `callerAddonId` through untouched.
188
+ *
189
+ * A hub in-process caller never reaches this function (`localProviderLink`
190
+ * calls the provider directly), which is the one place a stated identity is
191
+ * trusted. A non-object `args` (or `null`/array) is returned unchanged: there
192
+ * is nowhere to attach a key, and nowhere one could hide.
193
+ */
169
194
  export declare function stampCallerAddonId(args: unknown, callerAddonId: string | undefined): unknown;
170
195
  export declare class CapRouteResolver {
171
- private readonly hubNodeId;
172
- private readonly broker;
173
- private readonly hubLocalRegistry;
174
- private readonly nodeAuthority;
175
- private readonly inProcessProviders;
176
- private readonly hubResidentProviders?;
177
- private readonly capTimeoutMs?;
178
- private readonly snapshot;
179
- constructor(deps: CapRouteResolverDeps);
180
- /** Per-call RPC timeout: the cap method's declared override, else the default. */
181
- private callTimeout;
182
- resolveCapRoute(capName: string, opts: CapRouteOpts): CapRoute;
183
- /**
184
- * Resolve the hub-local-uds route for a cap owned by a forked hub-local
185
- * child, IGNORING any in-hub provider registered for the same cap name.
186
- *
187
- * `resolveCapRoute` gives Priority 1 to `hub-in-process`: when an in-hub
188
- * provider (e.g. a wrapper) is registered for the cap, the route always
189
- * classifies as `hub-in-process` and the hub-local-uds NATIVE child is never
190
- * reached. That is correct for the generic dispatch path (the wrapper is the
191
- * active provider), but WRONG for the native-cap fallback
192
- * (`setNativeFallback`), whose contract is to reach the NATIVE provider in
193
- * the forked vendor child so a wrapper can delegate to it. A wrapper cap
194
- * with a forked native (today: `snapshot`) otherwise resolves to the wrapper
195
- * itself, the native is never invoked, and the wrapper silently falls
196
- * through to its secondary strategy.
197
- *
198
- * This method consults ONLY the hub-local-child authority
199
- * (`hubLocalChildProvides` + `getHubLocalChildId`, both deviceId-aware), so
200
- * it returns the native child route regardless of any in-process shadow.
201
- * Returns null when no hub-local child owns `(capName, deviceId)` — the
202
- * caller then falls through to its remote-resolution branch.
203
- */
204
- resolveHubLocalUdsRoute(capName: string, deviceId?: number): HubLocalUdsRoute | null;
205
- /**
206
- * @param addonId Optional out-of-band PROVIDER-selection hint (Task 7.5a):
207
- * the addonId of the provider the CALLER already resolved (e.g.
208
- * `buildCapCallFn`'s `deps.addonId` for a registered grouped-runner
209
- * provider). Only meaningful for `agent-child-forward` — a `remote-moleculer`
210
- * route already encodes the provider in its action name
211
- * (`${addonId}.${cap}.${method}`, via `NodeCapAuthority.getAddonId`), and a
212
- * `hub-local-uds` caller that already knows the addonId (`buildCapCallFn`)
213
- * talks to `LocalChildRegistry.callCapOnChild` directly rather than through
214
- * `dispatch`.
215
- * @param callerAddonId Optional out-of-band CALLER-identity hint — the
216
- * addon that ORIGINATED the call, distinct from `addonId` above (which
217
- * names the resolved PROVIDER, not the caller). Set by
218
- * `onUnownedCall` from `CapCallInput.callerAddonId`
219
- * (`LocalChildRegistry` stamped it off the registered `childId`). Only
220
- * the `hub-in-process` branch consumes it — merged into `args` so a
221
- * diagnostic tool deep in that provider (e.g. device-manager's
222
- * fleet-read census) can read it without every provider method changing
223
- * signature, the same "extra field the provider destructures or
224
- * ignores" convention `nodeId` already uses on this path.
225
- */
226
- dispatch(route: CapRoute, method: string, args: unknown, addonId?: string, callerAddonId?: string): Promise<unknown>;
227
- /**
228
- * Inner dispatch: may throw CapRouteError (validation failures) or arbitrary
229
- * transport errors. The outer `dispatch` wraps non-CapRouteErrors.
230
- */
231
- private dispatchInner;
232
- private buildSnapshot;
233
- /** Extract a nodeId string from a route for error reporting, or undefined. */
234
- private routeNodeId;
196
+ private readonly hubNodeId;
197
+ private readonly broker;
198
+ private readonly hubLocalRegistry;
199
+ private readonly nodeAuthority;
200
+ private readonly inProcessProviders;
201
+ private readonly hubResidentProviders?;
202
+ private readonly capTimeoutMs?;
203
+ private readonly snapshot;
204
+ constructor(deps: CapRouteResolverDeps);
205
+ /** Per-call RPC timeout: the cap method's declared override, else the default. */
206
+ private callTimeout;
207
+ resolveCapRoute(capName: string, opts: CapRouteOpts): CapRoute;
208
+ /**
209
+ * Resolve the hub-local-uds route for a cap owned by a forked hub-local
210
+ * child, IGNORING any in-hub provider registered for the same cap name.
211
+ *
212
+ * `resolveCapRoute` gives Priority 1 to `hub-in-process`: when an in-hub
213
+ * provider (e.g. a wrapper) is registered for the cap, the route always
214
+ * classifies as `hub-in-process` and the hub-local-uds NATIVE child is never
215
+ * reached. That is correct for the generic dispatch path (the wrapper is the
216
+ * active provider), but WRONG for the native-cap fallback
217
+ * (`setNativeFallback`), whose contract is to reach the NATIVE provider in
218
+ * the forked vendor child so a wrapper can delegate to it. A wrapper cap
219
+ * with a forked native (today: `snapshot`) otherwise resolves to the wrapper
220
+ * itself, the native is never invoked, and the wrapper silently falls
221
+ * through to its secondary strategy.
222
+ *
223
+ * This method consults ONLY the hub-local-child authority
224
+ * (`hubLocalChildProvides` + `getHubLocalChildId`, both deviceId-aware), so
225
+ * it returns the native child route regardless of any in-process shadow.
226
+ * Returns null when no hub-local child owns `(capName, deviceId)` — the
227
+ * caller then falls through to its remote-resolution branch.
228
+ */
229
+ resolveHubLocalUdsRoute(capName: string, deviceId?: number): HubLocalUdsRoute | null;
230
+ /**
231
+ * @param addonId Optional out-of-band PROVIDER-selection hint (Task 7.5a):
232
+ * the addonId of the provider the CALLER already resolved (e.g.
233
+ * `buildCapCallFn`'s `deps.addonId` for a registered grouped-runner
234
+ * provider). Only meaningful for `agent-child-forward` — a `remote-moleculer`
235
+ * route already encodes the provider in its action name
236
+ * (`${addonId}.${cap}.${method}`, via `NodeCapAuthority.getAddonId`), and a
237
+ * `hub-local-uds` caller that already knows the addonId (`buildCapCallFn`)
238
+ * talks to `LocalChildRegistry.callCapOnChild` directly rather than through
239
+ * `dispatch`.
240
+ * @param callerAddonId Optional out-of-band CALLER-identity hint — the
241
+ * addon that ORIGINATED the call, distinct from `addonId` above (which
242
+ * names the resolved PROVIDER, not the caller). Set by
243
+ * `onUnownedCall` from `CapCallInput.callerAddonId`
244
+ * (`LocalChildRegistry` stamped it off the registered `childId`). Only
245
+ * the `hub-in-process` branch consumes it — merged into `args` so a
246
+ * diagnostic tool deep in that provider (e.g. device-manager's
247
+ * fleet-read census) can read it without every provider method changing
248
+ * signature, the same "extra field the provider destructures or
249
+ * ignores" convention `nodeId` already uses on this path.
250
+ */
251
+ dispatch(route: CapRoute, method: string, args: unknown, addonId?: string, callerAddonId?: string): Promise<unknown>;
252
+ /**
253
+ * Inner dispatch: may throw CapRouteError (validation failures) or arbitrary
254
+ * transport errors. The outer `dispatch` wraps non-CapRouteErrors.
255
+ */
256
+ private dispatchInner;
257
+ private buildSnapshot;
258
+ /** Extract a nodeId string from a route for error reporting, or undefined. */
259
+ private routeNodeId;
235
260
  }