@camstack/system 1.2.390 → 1.2.392

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (575) hide show
  1. package/dist/addon/addon-api-factory.d.ts +30 -30
  2. package/dist/addon-routes/addon-route-registry.d.ts +31 -31
  3. package/dist/addon-runner.js +1 -1
  4. package/dist/addon-runner.mjs +1 -1
  5. package/dist/addon-utils.d.ts +22 -22
  6. package/dist/addon-utils.js +1 -1
  7. package/dist/addon-utils.mjs +1 -1
  8. package/dist/amd-accelerators-CEuPFBBK.js +36 -0
  9. package/dist/amd-accelerators-U_RsoEDd.mjs +35 -0
  10. package/dist/amd-npu-B-QyyMyF.js +53 -0
  11. package/dist/amd-npu-Db_SoSuL.mjs +52 -0
  12. package/dist/auth/admin-token-manager.d.ts +37 -67
  13. package/dist/auth/api-key-manager.d.ts +8 -8
  14. package/dist/auth/auth-audit-log.d.ts +29 -49
  15. package/dist/auth/auth-manager.d.ts +127 -126
  16. package/dist/auth/cidr.d.ts +8 -8
  17. package/dist/auth/external-identity-manager.d.ts +46 -34
  18. package/dist/auth/jwt-signing-key.d.ts +14 -14
  19. package/dist/auth/login-session-manager.d.ts +95 -135
  20. package/dist/auth/parse-record.d.ts +13 -13
  21. package/dist/auth/scope-matcher.d.ts +7 -7
  22. package/dist/auth/scoped-token-manager.d.ts +62 -62
  23. package/dist/auth/token-expiry.d.ts +49 -26
  24. package/dist/auth/totp-manager.d.ts +48 -48
  25. package/dist/auth/user-management-internal.d.ts +67 -52
  26. package/dist/auth/user-manager.d.ts +58 -58
  27. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  28. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
  29. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
  30. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  31. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  32. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  33. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
  34. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
  35. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  36. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  37. package/dist/builtins/alerts/alerts.addon.js +1 -1
  38. package/dist/builtins/alerts/alerts.addon.mjs +1 -1
  39. package/dist/builtins/alerts/device-label.d.ts +6 -6
  40. package/dist/builtins/alerts/index.d.ts +1 -1
  41. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  42. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  43. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  44. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  45. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  46. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  47. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  48. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  49. package/dist/builtins/autotrack/index.d.ts +2 -2
  50. package/dist/builtins/autotrack/index.js +1 -1
  51. package/dist/builtins/autotrack/index.mjs +1 -1
  52. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  53. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  54. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  55. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
  56. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +2 -2
  57. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  58. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  59. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  60. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  61. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  62. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  63. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  64. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  65. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  66. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  67. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  68. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  69. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  70. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  71. package/dist/builtins/calendars/calendars.addon.js +1 -1
  72. package/dist/builtins/calendars/calendars.addon.mjs +1 -1
  73. package/dist/builtins/calendars/index.d.ts +1 -1
  74. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  75. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  76. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  77. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  78. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  79. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  80. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  81. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  82. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  83. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  84. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  85. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  86. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  87. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  88. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  89. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  90. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  91. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  92. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  93. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  94. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  95. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  96. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  97. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  98. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  99. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  100. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  101. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  102. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  103. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  104. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  105. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  106. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  107. package/dist/builtins/camera-grid/index.d.ts +44 -44
  108. package/dist/builtins/camera-grid/index.js +1 -1
  109. package/dist/builtins/camera-grid/index.mjs +1 -1
  110. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  111. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  112. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  113. package/dist/builtins/composer/composed-device.d.ts +39 -17
  114. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  115. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  116. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  117. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  118. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  119. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  120. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  121. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  122. package/dist/builtins/composer/composer.addon.js +2 -2
  123. package/dist/builtins/composer/composer.addon.mjs +2 -2
  124. package/dist/builtins/composer/composer.d.ts +145 -100
  125. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  126. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  127. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  128. package/dist/builtins/composer/composition-target.d.ts +38 -34
  129. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  130. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  131. package/dist/builtins/composer/existing-target.d.ts +90 -73
  132. package/dist/builtins/composer/field-record.d.ts +26 -19
  133. package/dist/builtins/composer/graft-host.d.ts +56 -32
  134. package/dist/builtins/composer/held-claims.d.ts +26 -9
  135. package/dist/builtins/composer/index.d.ts +1 -1
  136. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  137. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  138. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  139. package/dist/builtins/composer/source-readings.d.ts +67 -61
  140. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  141. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  142. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  143. package/dist/builtins/console-logging/index.d.ts +3 -3
  144. package/dist/builtins/console-logging/index.js +1 -1
  145. package/dist/builtins/console-logging/index.mjs +1 -1
  146. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  147. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  148. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  149. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  150. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  151. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  152. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  153. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  154. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  155. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  156. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  157. package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
  158. package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
  159. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  160. package/dist/builtins/core-blocks/index.d.ts +8 -8
  161. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  162. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  163. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  164. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  165. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  166. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  167. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  168. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  169. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  170. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  171. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  172. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  173. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  174. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  175. package/dist/builtins/device-manager/device-manager.addon.js +2 -2
  176. package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
  177. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  178. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  179. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  180. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  181. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  182. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  183. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  184. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  185. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  186. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  187. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  188. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  189. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  190. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  191. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  192. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  193. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  194. package/dist/builtins/device-manager/index.d.ts +2 -2
  195. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  196. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  197. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  198. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  199. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  200. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  201. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  202. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  203. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  204. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  205. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  206. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  207. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  208. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  209. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  210. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  211. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  212. package/dist/builtins/hub-forwarder/index.js +1 -1
  213. package/dist/builtins/hub-forwarder/index.mjs +1 -1
  214. package/dist/builtins/keychain/index.d.ts +1 -1
  215. package/dist/builtins/keychain/index.js +3 -3
  216. package/dist/builtins/keychain/index.mjs +3 -3
  217. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  218. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  219. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  220. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  221. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  222. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  223. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  224. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  225. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  226. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  227. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  228. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  229. package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
  230. package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
  231. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  232. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  233. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  234. package/dist/builtins/local-auth/index.d.ts +1 -1
  235. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  236. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  237. package/dist/builtins/local-auth/local-auth.addon.js +2 -2
  238. package/dist/builtins/local-auth/local-auth.addon.mjs +2 -2
  239. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  240. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  241. package/dist/builtins/local-network/address-book.d.ts +61 -36
  242. package/dist/builtins/local-network/index.d.ts +2 -2
  243. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  244. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  245. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  246. package/dist/builtins/local-network/local-network.addon.js +1 -1
  247. package/dist/builtins/local-network/local-network.addon.mjs +1 -1
  248. package/dist/builtins/loki-logging/index.d.ts +4 -4
  249. package/dist/builtins/loki-logging/index.js +1 -1
  250. package/dist/builtins/loki-logging/index.mjs +1 -1
  251. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  252. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  253. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  254. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  255. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  256. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  257. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  258. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  259. package/dist/builtins/native-metrics/index.d.ts +2 -2
  260. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  261. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  262. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  263. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  264. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  265. package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
  266. package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
  267. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  268. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  269. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  270. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  271. package/dist/builtins/platform-probe/amd-accelerators.d.ts +15 -0
  272. package/dist/builtins/platform-probe/amd-npu.d.ts +29 -0
  273. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  274. package/dist/builtins/platform-probe/index.d.ts +38 -30
  275. package/dist/builtins/platform-probe/index.js +59 -22
  276. package/dist/builtins/platform-probe/index.mjs +59 -22
  277. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  278. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  279. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  280. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  281. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  282. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  283. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  284. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  285. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
  286. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
  287. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  288. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  289. package/dist/builtins/snapshot/index.d.ts +2 -2
  290. package/dist/builtins/snapshot/index.js +1 -1
  291. package/dist/builtins/snapshot/index.mjs +1 -1
  292. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  293. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  294. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  295. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  296. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  297. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  298. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  299. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  300. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  301. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  302. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  303. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  304. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  305. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  306. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  307. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  308. package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
  309. package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
  310. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  311. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  312. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  313. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  314. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  315. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  316. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  317. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  318. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  319. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  320. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  321. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  322. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  323. package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +0 -0
  324. package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +0 -0
  325. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  326. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  327. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  328. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  329. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  330. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  331. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  332. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  333. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  334. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  335. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  336. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  337. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  338. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  339. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  340. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  341. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  342. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  343. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  344. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  345. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  346. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  347. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  348. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  349. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  350. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  351. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  352. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  353. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
  354. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
  355. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  356. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  357. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  358. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  359. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  360. package/dist/builtins/system-config/index.d.ts +2 -2
  361. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  362. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  363. package/dist/builtins/system-config/system-config.addon.js +39 -35
  364. package/dist/builtins/system-config/system-config.addon.mjs +320 -316
  365. package/dist/builtins/winston-logging/index.d.ts +3 -3
  366. package/dist/builtins/winston-logging/index.js +1 -1
  367. package/dist/builtins/winston-logging/index.mjs +1 -1
  368. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  369. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  370. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Nx-lrlHR.js} +19 -1
  371. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-x-onDDiV.mjs} +2 -2
  372. package/dist/{composition-sources-wdAxs-uY.js → composition-sources-LUJsW0AQ.js} +1 -1
  373. package/dist/{composition-sources-xqhm2Ygr.mjs → composition-sources-R8TskGSV.mjs} +1 -1
  374. package/dist/{constants-Ca-Sgcl8.js → constants-D4lxxip7.js} +1 -1
  375. package/dist/{constants-D5z4EwY8.mjs → constants-DMvAcbbP.mjs} +1 -1
  376. package/dist/{dist-8LQ4lDEB.js → dist-XTkzsnz-.js} +35 -1
  377. package/dist/{dist-Biqn3TEn.mjs → dist-byg8IP4Q.mjs} +35 -1
  378. package/dist/download/hosted-model-revisions.d.ts +8 -8
  379. package/dist/download/model-download-service.d.ts +32 -32
  380. package/dist/download/model-downloader.d.ts +88 -88
  381. package/dist/{event-loop-stall-monitor-CNj73d4D.js → event-loop-stall-monitor-DPFghEFw.js} +1 -1
  382. package/dist/{event-loop-stall-monitor-BtK_0Pjc.mjs → event-loop-stall-monitor-TG8UcdY2.mjs} +1 -1
  383. package/dist/events/event-bus.d.ts +6 -6
  384. package/dist/events/system-event-bus.d.ts +11 -11
  385. package/dist/feature/feature-manager.d.ts +6 -6
  386. package/dist/http/asset-compression.d.ts +35 -73
  387. package/dist/http/authenticated-file-server.d.ts +32 -32
  388. package/dist/http/data-plane-registry.d.ts +49 -39
  389. package/dist/http/file-data-plane.d.ts +14 -14
  390. package/dist/http/lan-http-bind.d.ts +24 -13
  391. package/dist/http/reverse-proxy.d.ts +36 -24
  392. package/dist/index.d.ts +137 -137
  393. package/dist/index.js +9 -8
  394. package/dist/index.mjs +7 -9
  395. package/dist/{jwt-signing-key-DxV2ucvJ.js → jwt-signing-key-CD87HrHH.js} +1 -1
  396. package/dist/{jwt-signing-key-SnDgvVUQ.mjs → jwt-signing-key-DNBxSN5p.mjs} +1 -1
  397. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  398. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  399. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  400. package/dist/kernel/addon-installer.d.ts +609 -609
  401. package/dist/kernel/addon-loader.d.ts +133 -133
  402. package/dist/kernel/addon-manifest.d.ts +118 -118
  403. package/dist/kernel/addon-residue.d.ts +28 -32
  404. package/dist/kernel/array-buffer-census.d.ts +84 -88
  405. package/dist/kernel/bootstrap-config.d.ts +3 -3
  406. package/dist/kernel/cap-router-builder.d.ts +145 -101
  407. package/dist/kernel/capability-handle.d.ts +41 -41
  408. package/dist/kernel/capability-registry.d.ts +588 -576
  409. package/dist/kernel/config-manager.d.ts +199 -199
  410. package/dist/kernel/config-schema.d.ts +132 -128
  411. package/dist/kernel/custom-action-registry.d.ts +25 -25
  412. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  413. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  414. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  415. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  416. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  417. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  418. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  419. package/dist/kernel/deps/npm-command.d.ts +45 -45
  420. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  421. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  422. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  423. package/dist/kernel/device-registry.d.ts +27 -27
  424. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  425. package/dist/kernel/event-plane-report.d.ts +174 -174
  426. package/dist/kernel/fs-utils.d.ts +70 -70
  427. package/dist/kernel/gc-census.d.ts +119 -119
  428. package/dist/kernel/heap-spaces.d.ts +87 -87
  429. package/dist/kernel/heap-watch.d.ts +706 -706
  430. package/dist/kernel/host-externals.d.ts +8 -8
  431. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  432. package/dist/kernel/index.d.ts +115 -113
  433. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  434. package/dist/kernel/infra-capabilities.d.ts +7 -7
  435. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  436. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  437. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  438. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  439. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  440. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  441. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  442. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  443. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  444. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  445. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  446. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  447. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  448. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  449. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  450. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  451. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  452. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  453. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  454. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  455. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  456. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  457. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  458. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  459. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  460. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  461. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  462. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  463. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  464. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  465. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  466. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  467. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  468. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  469. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  470. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  471. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  472. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  473. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  474. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  475. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  476. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  477. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  478. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  479. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  480. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  481. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  482. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  483. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  484. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  485. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  486. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  487. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  488. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  489. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  490. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  491. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  492. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  493. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  494. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  495. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  496. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  497. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  498. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  499. package/dist/kernel/process-cpu-census.d.ts +55 -55
  500. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  501. package/dist/kernel/restart-coordinator.d.ts +71 -71
  502. package/dist/kernel/settings-door-view.d.ts +36 -25
  503. package/dist/kernel/settings-read-error.d.ts +29 -31
  504. package/dist/kernel/settings-view-types.d.ts +100 -95
  505. package/dist/kernel/socket-plane-report.d.ts +214 -153
  506. package/dist/kernel/status-overlay.d.ts +31 -11
  507. package/dist/kernel/storage-location-registry.d.ts +50 -50
  508. package/dist/kernel/store-settings-view.d.ts +13 -13
  509. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  510. package/dist/kernel/system-settings-policy.d.ts +15 -34
  511. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  512. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  513. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  514. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  515. package/dist/kernel/transport/cap-route.d.ts +139 -139
  516. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  517. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  518. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  519. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  520. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  521. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  522. package/dist/kernel/transport/index.d.ts +36 -36
  523. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  524. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  525. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  526. package/dist/kernel/transport/local-transport.d.ts +92 -92
  527. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  528. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  529. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  530. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  531. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  532. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  533. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  534. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  535. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  536. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  537. package/dist/kernel/workspace-detect.d.ts +7 -7
  538. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  539. package/dist/logging/formatter.d.ts +52 -25
  540. package/dist/logging/log-manager.d.ts +133 -133
  541. package/dist/logging/log-redactor.d.ts +22 -1
  542. package/dist/logging/log-ring-buffer.d.ts +57 -57
  543. package/dist/logging/logging-gate.d.ts +69 -25
  544. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  545. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  546. package/dist/logging/scoped-logger.d.ts +14 -14
  547. package/dist/network/network-quality.d.ts +8 -8
  548. package/dist/notification/notification-service.d.ts +37 -37
  549. package/dist/notification/toast-service.d.ts +18 -18
  550. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  551. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  552. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  553. package/dist/process/proc-stat.d.ts +51 -51
  554. package/dist/process/resource-monitor.d.ts +19 -19
  555. package/dist/python/python-env-manager.d.ts +10 -10
  556. package/dist/repl/interfaces.d.ts +21 -21
  557. package/dist/repl/repl-engine.d.ts +6 -6
  558. package/dist/{restore-archive-D4cmLoNe.mjs → restore-archive-Bmmmyp1M.mjs} +81 -81
  559. package/dist/{restore-archive-Do_Yu5rC.js → restore-archive-bvYTsnvp.js} +1 -1
  560. package/dist/{retired-settings-keys-BsgVxh8-.mjs → retired-settings-keys-R9CBo2lY.mjs} +1 -1
  561. package/dist/{retired-settings-keys-Cyn3OD0K.js → retired-settings-keys-V0yq5Bm6.js} +1 -1
  562. package/dist/storage/fs-storage-backend.d.ts +35 -35
  563. package/dist/storage/storage-location-manager.d.ts +21 -21
  564. package/dist/storage/storage-manager.d.ts +68 -68
  565. package/dist/tls/boot-tls.d.ts +24 -24
  566. package/dist/tls/cert-evaluation.d.ts +25 -25
  567. package/dist/tls/cert-identity.d.ts +39 -39
  568. package/dist/tls/cert-issue.d.ts +37 -17
  569. package/dist/tls/cert-manager.d.ts +86 -84
  570. package/dist/tls/https-listener.d.ts +16 -16
  571. package/dist/tls/index.d.ts +8 -8
  572. package/dist/tls/tls-actions.d.ts +18 -18
  573. package/dist/tls/tls-status.d.ts +15 -15
  574. package/dist/tls/uploaded-cert.d.ts +9 -9
  575. package/package.json +9 -3
@@ -1,144 +1,144 @@
1
- import { AddonDeclaration, ICamstackAddon, IScopedLogger, StorageLocationDeclaration } from '@camstack/types';
1
+ import type { AddonDeclaration, ICamstackAddon, IScopedLogger, StorageLocationDeclaration } from "@camstack/types";
2
2
  /**
3
- * Cache-bust key for an addon entry module: the `?v=` query that makes each
4
- * on-disk REVISION of `entryPath` a distinct ESM module URL. Returns null when
5
- * the entry cannot be stat'd — the caller then does a plain import.
6
- *
7
- * The key is `<version>-<content hash>`, and BOTH halves are load-bearing
8
- * because each on its own has a documented way of not changing across a real
9
- * redeploy:
10
- *
11
- * - **mtime does not change.** `npm pack` normalises every file's mtime in the
12
- * tarball to 499162500000 (1985-10-26); every install path here extracts
13
- * such a tarball, so the entry file of v1.0.0 and of v1.0.99 carry the same
14
- * mtime. An mtime-only key (what this used to be) is a NO-OP — it produced
15
- * one byte-identical URL for every version of every addon ever installed.
16
- * - **the version does not change** on a `camstack deploy` of an unbumped
17
- * workspace package — the whole dev loop.
18
- * - **the entry hash does not change** when a multi-chunk dist alters a chunk
19
- * the entry only re-exports; the version bump covers that case.
20
- *
21
- * Hashing the entry costs one extra read of an already-read file (~1.5 MB for
22
- * the largest addon bundle, single-digit ms) once per addon load. Cheap against
23
- * what a stale key costs: hub-main keeps validating `addons.custom` input
24
- * against the OLD `customActions` schema — silently STRIPPING newly-added
25
- * fields — and, worse, Node caches a load that THREW as a rejected module and
26
- * replays that rejection for every later retry at the same URL. On 2026-08-12
27
- * `@camstack/addon-export-hap` burned 126 identical failed load retries over
28
- * 10.5h, none of which could have succeeded: the fixed bytes on disk were never
29
- * read.
30
- *
31
- * Never throws: an unreadable version degrades to the mtime, an unreadable body
32
- * to mtime+size.
33
- */
3
+ * Cache-bust key for an addon entry module: the `?v=` query that makes each
4
+ * on-disk REVISION of `entryPath` a distinct ESM module URL. Returns null when
5
+ * the entry cannot be stat'd — the caller then does a plain import.
6
+ *
7
+ * The key is `<version>-<content hash>`, and BOTH halves are load-bearing
8
+ * because each on its own has a documented way of not changing across a real
9
+ * redeploy:
10
+ *
11
+ * - **mtime does not change.** `npm pack` normalises every file's mtime in the
12
+ * tarball to 499162500000 (1985-10-26); every install path here extracts
13
+ * such a tarball, so the entry file of v1.0.0 and of v1.0.99 carry the same
14
+ * mtime. An mtime-only key (what this used to be) is a NO-OP — it produced
15
+ * one byte-identical URL for every version of every addon ever installed.
16
+ * - **the version does not change** on a `camstack deploy` of an unbumped
17
+ * workspace package — the whole dev loop.
18
+ * - **the entry hash does not change** when a multi-chunk dist alters a chunk
19
+ * the entry only re-exports; the version bump covers that case.
20
+ *
21
+ * Hashing the entry costs one extra read of an already-read file (~1.5 MB for
22
+ * the largest addon bundle, single-digit ms) once per addon load. Cheap against
23
+ * what a stale key costs: hub-main keeps validating `addons.custom` input
24
+ * against the OLD `customActions` schema — silently STRIPPING newly-added
25
+ * fields — and, worse, Node caches a load that THREW as a rejected module and
26
+ * replays that rejection for every later retry at the same URL. On 2026-08-12
27
+ * `@camstack/addon-export-hap` burned 126 identical failed load retries over
28
+ * 10.5h, none of which could have succeeded: the fixed bytes on disk were never
29
+ * read.
30
+ *
31
+ * Never throws: an unreadable version degrades to the mtime, an unreadable body
32
+ * to mtime+size.
33
+ */
34
34
  export declare function addonModuleCacheKey(entryPath: string): string | null;
35
35
  export interface RegisteredAddon {
36
- readonly declaration: AddonDeclaration;
37
- readonly packageName: string;
38
- readonly packageVersion: string;
39
- /** Human-readable package name from camstack.displayName in package.json */
40
- readonly packageDisplayName?: string;
41
- /**
42
- * Optional bundle metadata when the npm package ships multiple addon
43
- * entries. Mirrors `AddonPackageManifest.bundle`. Drives the
44
- * collapsible bundle card in the Addons admin UI.
45
- */
46
- readonly bundle?: {
47
- displayName: string;
48
- description?: string;
49
- icon?: string;
50
- };
51
- readonly addonClass: new () => ICamstackAddon;
52
- /**
53
- * Full raw module namespace. Consumers can read additional named exports
54
- * (e.g. `customActions`) without instantiating the addon — lets the hub
55
- * register a forkable addon's custom-action catalog with real zod
56
- * schemas before the child process is up.
57
- */
58
- readonly module: Readonly<Record<string, unknown>>;
36
+ readonly declaration: AddonDeclaration;
37
+ readonly packageName: string;
38
+ readonly packageVersion: string;
39
+ /** Human-readable package name from camstack.displayName in package.json */
40
+ readonly packageDisplayName?: string;
41
+ /**
42
+ * Optional bundle metadata when the npm package ships multiple addon
43
+ * entries. Mirrors `AddonPackageManifest.bundle`. Drives the
44
+ * collapsible bundle card in the Addons admin UI.
45
+ */
46
+ readonly bundle?: {
47
+ displayName: string;
48
+ description?: string;
49
+ icon?: string;
50
+ };
51
+ readonly addonClass: new () => ICamstackAddon;
52
+ /**
53
+ * Full raw module namespace. Consumers can read additional named exports
54
+ * (e.g. `customActions`) without instantiating the addon — lets the hub
55
+ * register a forkable addon's custom-action catalog with real zod
56
+ * schemas before the child process is up.
57
+ */
58
+ readonly module: Readonly<Record<string, unknown>>;
59
59
  }
60
60
  /**
61
- * Per-package failure record. Surfaced via `listLoadFailures()` so the
62
- * AddonRegistry can hand the failures to the kernel's
63
- * `AddonHealthMonitor` after `loadFromDirectory()` completes — the
64
- * health monitor then schedules the retry loop and emits operator-
65
- * visible alerts post-grace.
66
- *
67
- * Two failure shapes are tracked:
68
- * - **package-level**: package.json couldn't be read/parsed, or the
69
- * manifest was malformed. `addonId` undefined.
70
- * - **declaration-level**: per-addon load failure inside
71
- * `loadDeclaration` (entry import threw, addon class resolution
72
- * failed, etc). `addonId` set to `declaration.id`.
73
- */
61
+ * Per-package failure record. Surfaced via `listLoadFailures()` so the
62
+ * AddonRegistry can hand the failures to the kernel's
63
+ * `AddonHealthMonitor` after `loadFromDirectory()` completes — the
64
+ * health monitor then schedules the retry loop and emits operator-
65
+ * visible alerts post-grace.
66
+ *
67
+ * Two failure shapes are tracked:
68
+ * - **package-level**: package.json couldn't be read/parsed, or the
69
+ * manifest was malformed. `addonId` undefined.
70
+ * - **declaration-level**: per-addon load failure inside
71
+ * `loadDeclaration` (entry import threw, addon class resolution
72
+ * failed, etc). `addonId` set to `declaration.id`.
73
+ */
74
74
  export interface AddonLoadFailure {
75
- readonly packageName: string;
76
- readonly addonDir: string;
77
- readonly addonId?: string;
78
- readonly error: Error;
79
- readonly timestamp: number;
75
+ readonly packageName: string;
76
+ readonly addonDir: string;
77
+ readonly addonId?: string;
78
+ readonly error: Error;
79
+ readonly timestamp: number;
80
80
  }
81
81
  /**
82
- * Pure extraction of per-addon storage-location declarations from a set of
83
- * registered addons. Each registered addon carries its manifest declaration
84
- * (`RegisteredAddon.declaration`), whose optional `storageLocations` array is
85
- * the `camstack.addons[].storageLocations` entry authored in package.json.
86
- *
87
- * Returns ONE inner array per addon that declared at least one location;
88
- * addons declaring nothing are omitted entirely (no empty arrays). The result
89
- * is the `perAddon` input shape consumed by
90
- * {@link buildStorageLocationRegistry}.
91
- */
82
+ * Pure extraction of per-addon storage-location declarations from a set of
83
+ * registered addons. Each registered addon carries its manifest declaration
84
+ * (`RegisteredAddon.declaration`), whose optional `storageLocations` array is
85
+ * the `camstack.addons[].storageLocations` entry authored in package.json.
86
+ *
87
+ * Returns ONE inner array per addon that declared at least one location;
88
+ * addons declaring nothing are omitted entirely (no empty arrays). The result
89
+ * is the `perAddon` input shape consumed by
90
+ * {@link buildStorageLocationRegistry}.
91
+ */
92
92
  export declare function extractStorageLocationDeclarations(addons: Iterable<RegisteredAddon>): StorageLocationDeclaration[][];
93
93
  export declare class AddonLoader {
94
- private addons;
95
- private readonly loadFailures;
96
- private readonly logger;
97
- constructor(logger?: IScopedLogger);
98
- /**
99
- * Failures encountered during the most recent `loadFromDirectory` /
100
- * `loadFromAddonDir` pass. Cleared (per-package) on a successful
101
- * subsequent reload so retries don't see stale entries. Cumulative
102
- * across multiple loads otherwise.
103
- */
104
- listLoadFailures(): readonly AddonLoadFailure[];
105
- /** Forget any tracked failures for a given package — uninstall path. */
106
- clearLoadFailures(packageName: string): void;
107
- /** Scan addons directory and load all addon packages.
108
- * Supports scoped layout: addons/@scope/package-name/
109
- *
110
- * `skipPackages` names scoped packages (e.g. `@camstack/system`) that the
111
- * caller loads from elsewhere — the single-copy model loads the framework
112
- * BUILTINS from the active closure, not the (now-inert) addons-dir copy, so
113
- * the addons-dir `@camstack/system` must NOT be double-loaded here. */
114
- loadFromDirectory(addonsDir: string, skipPackages?: readonly string[]): Promise<void>;
115
- private tryLoadAddon;
116
- /** Load addon from a specific directory (package.json + dist/) */
117
- loadFromAddonDir(addonDir: string): Promise<void>;
118
- private loadDeclaration;
119
- /** Load addon from a direct path (for development/testing) */
120
- loadFromPath(addonId: string, modulePath: string, packageName: string, declaration?: Partial<AddonDeclaration>, packageVersion?: string): Promise<void>;
121
- /** Get a registered addon by ID */
122
- getAddon(addonId: string): RegisteredAddon | undefined;
123
- /** List all registered addons */
124
- listAddons(): RegisteredAddon[];
125
- /**
126
- * Per-addon storage-location declarations across every registered addon.
127
- *
128
- * Each registered addon's `declaration.storageLocations` (the
129
- * `camstack.addons[].storageLocations` array from package.json) is surfaced
130
- * as one inner array; addons declaring nothing are omitted. The result is
131
- * fed directly to `buildStorageLocationRegistry(perAddon)` so the
132
- * storage-orchestrator can aggregate declarations and seed `<id>:default`
133
- * instances.
134
- */
135
- listStorageLocationDeclarations(): StorageLocationDeclaration[][];
136
- /** Check if an addon is registered */
137
- hasAddon(addonId: string): boolean;
138
- /**
139
- * Create a new instance of an addon (not yet initialized).
140
- * Injects the manifest from package.json (AddonDeclaration) so the
141
- * addon class doesn't need to declare it.
142
- */
143
- createInstance(addonId: string): ICamstackAddon;
94
+ private addons;
95
+ private readonly loadFailures;
96
+ private readonly logger;
97
+ constructor(logger?: IScopedLogger);
98
+ /**
99
+ * Failures encountered during the most recent `loadFromDirectory` /
100
+ * `loadFromAddonDir` pass. Cleared (per-package) on a successful
101
+ * subsequent reload so retries don't see stale entries. Cumulative
102
+ * across multiple loads otherwise.
103
+ */
104
+ listLoadFailures(): readonly AddonLoadFailure[];
105
+ /** Forget any tracked failures for a given package — uninstall path. */
106
+ clearLoadFailures(packageName: string): void;
107
+ /** Scan addons directory and load all addon packages.
108
+ * Supports scoped layout: addons/@scope/package-name/
109
+ *
110
+ * `skipPackages` names scoped packages (e.g. `@camstack/system`) that the
111
+ * caller loads from elsewhere — the single-copy model loads the framework
112
+ * BUILTINS from the active closure, not the (now-inert) addons-dir copy, so
113
+ * the addons-dir `@camstack/system` must NOT be double-loaded here. */
114
+ loadFromDirectory(addonsDir: string, skipPackages?: readonly string[]): Promise<void>;
115
+ private tryLoadAddon;
116
+ /** Load addon from a specific directory (package.json + dist/) */
117
+ loadFromAddonDir(addonDir: string): Promise<void>;
118
+ private loadDeclaration;
119
+ /** Load addon from a direct path (for development/testing) */
120
+ loadFromPath(addonId: string, modulePath: string, packageName: string, declaration?: Partial<AddonDeclaration>, packageVersion?: string): Promise<void>;
121
+ /** Get a registered addon by ID */
122
+ getAddon(addonId: string): RegisteredAddon | undefined;
123
+ /** List all registered addons */
124
+ listAddons(): RegisteredAddon[];
125
+ /**
126
+ * Per-addon storage-location declarations across every registered addon.
127
+ *
128
+ * Each registered addon's `declaration.storageLocations` (the
129
+ * `camstack.addons[].storageLocations` array from package.json) is surfaced
130
+ * as one inner array; addons declaring nothing are omitted. The result is
131
+ * fed directly to `buildStorageLocationRegistry(perAddon)` so the
132
+ * storage-orchestrator can aggregate declarations and seed `<id>:default`
133
+ * instances.
134
+ */
135
+ listStorageLocationDeclarations(): StorageLocationDeclaration[][];
136
+ /** Check if an addon is registered */
137
+ hasAddon(addonId: string): boolean;
138
+ /**
139
+ * Create a new instance of an addon (not yet initialized).
140
+ * Injects the manifest from package.json (AddonDeclaration) so the
141
+ * addon class doesn't need to declare it.
142
+ */
143
+ createInstance(addonId: string): ICamstackAddon;
144
144
  }
@@ -1,128 +1,128 @@
1
1
  /**
2
- * `closure` — re-aligned from the running `@camstack/server` closure at boot.
3
- *
4
- * Distinct from `bundled`, which is the copy an Electron app shipped with and
5
- * seeds ONCE. A `closure` install is a refresh of a copy that was already
6
- * there, and naming it separately is what lets an operator tell "I deployed
7
- * this" from "the server update brought it" — the distinction the six stale
8
- * copies of 2026-09-17 had no way to express, all of them reading `upload`
9
- * because each HAD been a deliberate deploy, once. See D518.
10
- */
11
- export type AddonInstallSource = 'npm' | 'local' | 'upload' | 'bundled' | 'seed' | 'closure';
2
+ * `closure` — re-aligned from the running `@camstack/server` closure at boot.
3
+ *
4
+ * Distinct from `bundled`, which is the copy an Electron app shipped with and
5
+ * seeds ONCE. A `closure` install is a refresh of a copy that was already
6
+ * there, and naming it separately is what lets an operator tell "I deployed
7
+ * this" from "the server update brought it" — the distinction the six stale
8
+ * copies of 2026-09-17 had no way to express, all of them reading `upload`
9
+ * because each HAD been a deliberate deploy, once. See D518.
10
+ */
11
+ export type AddonInstallSource = "npm" | "local" | "upload" | "bundled" | "seed" | "closure";
12
12
  export interface AddonManifestEntry {
13
- /** Full pkg name, e.g. `@camstack/addon-pipeline`. */
14
- name: string;
15
- /** Semver currently installed. */
16
- version: string;
17
- /** Where this version came from. */
18
- source: AddonInstallSource;
19
- /** ISO 8601 of first install. */
20
- installedAt: string;
21
- /** ISO 8601 of last update (== installedAt for first install). */
22
- updatedAt: string;
23
- /**
24
- * Path (absolute) of the most recent pre-update backup, if any.
25
- * Used by `applyUpdate` rollback when an upgrade fails its post-restart
26
- * health check. Cleared once the new version is confirmed healthy.
27
- */
28
- lastBackupDir?: string;
29
- /**
30
- * Free-form, addon-specific metadata. Currently unused but reserved so
31
- * future fields (e.g. integrity hash, peer-dep checks) don't require a
32
- * manifest schema bump.
33
- */
34
- meta?: Record<string, unknown>;
13
+ /** Full pkg name, e.g. `@camstack/addon-pipeline`. */
14
+ name: string;
15
+ /** Semver currently installed. */
16
+ version: string;
17
+ /** Where this version came from. */
18
+ source: AddonInstallSource;
19
+ /** ISO 8601 of first install. */
20
+ installedAt: string;
21
+ /** ISO 8601 of last update (== installedAt for first install). */
22
+ updatedAt: string;
23
+ /**
24
+ * Path (absolute) of the most recent pre-update backup, if any.
25
+ * Used by `applyUpdate` rollback when an upgrade fails its post-restart
26
+ * health check. Cleared once the new version is confirmed healthy.
27
+ */
28
+ lastBackupDir?: string;
29
+ /**
30
+ * Free-form, addon-specific metadata. Currently unused but reserved so
31
+ * future fields (e.g. integrity hash, peer-dep checks) don't require a
32
+ * manifest schema bump.
33
+ */
34
+ meta?: Record<string, unknown>;
35
35
  }
36
36
  /** One correction `reconcileFromDisk` made to bring the manifest back to disk truth. */
37
37
  export interface ManifestReconcileChange {
38
- readonly kind: 'added' | 'version-corrected' | 'pruned';
39
- readonly name: string;
40
- /** Version the manifest claimed before the change. Absent for `added`. */
41
- readonly from?: string;
42
- /** Version now recorded. Absent for `pruned`. */
43
- readonly to?: string;
38
+ readonly kind: "added" | "version-corrected" | "pruned";
39
+ readonly name: string;
40
+ /** Version the manifest claimed before the change. Absent for `added`. */
41
+ readonly from?: string;
42
+ /** Version now recorded. Absent for `pruned`. */
43
+ readonly to?: string;
44
44
  }
45
45
  export interface AddonManifestFile {
46
- /**
47
- * Schema version. Increment whenever the on-disk shape changes
48
- * incompatibly so older readers can refuse to load.
49
- */
50
- version: 1;
51
- /** Per-package state, keyed by full pkg name. */
52
- addons: Record<string, AddonManifestEntry>;
53
- /** ISO 8601 of last manifest write. */
54
- updatedAt: string;
46
+ /**
47
+ * Schema version. Increment whenever the on-disk shape changes
48
+ * incompatibly so older readers can refuse to load.
49
+ */
50
+ version: 1;
51
+ /** Per-package state, keyed by full pkg name. */
52
+ addons: Record<string, AddonManifestEntry>;
53
+ /** ISO 8601 of last manifest write. */
54
+ updatedAt: string;
55
55
  }
56
56
  export declare class AddonManifest {
57
- private readonly manifestPath;
58
- private cache;
59
- constructor(addonsDir: string);
60
- /**
61
- * Read the manifest from disk. Returns an empty manifest if the file is
62
- * missing or corrupted (logs a warning to stderr in the corrupted case).
63
- * Cached per instance — call `invalidate()` to force a re-read.
64
- */
65
- read(): AddonManifestFile;
66
- /**
67
- * Atomic write — writes to a tmpfile in the same directory, then renames.
68
- * Rename is atomic on the same filesystem, so readers can never observe
69
- * a half-written file.
70
- */
71
- write(manifest: AddonManifestFile): void;
72
- /** Lookup a single addon's manifest entry, or `null` if not tracked. */
73
- get(name: string): AddonManifestEntry | null;
74
- /** List every tracked entry. */
75
- list(): AddonManifestEntry[];
76
- /**
77
- * Insert or replace an addon entry. `installedAt` is preserved if the
78
- * entry already exists; only `updatedAt` advances on subsequent writes.
79
- */
80
- upsert(name: string, fields: Omit<AddonManifestEntry, 'name' | 'installedAt' | 'updatedAt'>): void;
81
- /** Remove an addon from tracking (e.g. uninstall). */
82
- remove(name: string): void;
83
- /**
84
- * Drop the in-memory cache so the next `read()` re-loads from disk.
85
- * Useful when an external process may have written the manifest.
86
- */
87
- invalidate(): void;
88
- /**
89
- * Reconcile the manifest against what is actually present on disk.
90
- *
91
- * **The directory is the truth.** It is what `AddonLoader` runs; a manifest
92
- * that disagrees with it is a lie the update flow and the admin UI then
93
- * repeat. Three corrections, all idempotent and safe on every boot:
94
- *
95
- * - **added** — an on-disk addon with no entry gets one, source `'seed'`.
96
- * Addons baked into the Docker/Electron image are copied straight into
97
- * `addonsDir` by the container entrypoint (`ensureRequiredPackages` then
98
- * sees `package.json` present and skips, never calling `upsert`), so they
99
- * would otherwise stay untracked and `applyUpdate` would reject them with
100
- * "not currently tracked in manifest" — what broke "Update all" on a
101
- * fresh image.
102
- * - **version-corrected** — an entry whose version disagrees with the
103
- * installed `package.json` adopts the DISK version. Provenance (`source`,
104
- * `installedAt`) is NOT derivable from disk and stays authoritative here;
105
- * `updatedAt` is left alone because the correction is not an update, and
106
- * stamping `now` would claim an install that never happened.
107
- * - **pruned** — an entry naming a directory that does not exist. The live
108
- * hub carried three (`@camstack/system 1.2.29`, `addon-viewer-ui 1.1.39`,
109
- * `addon-agent-ui 1.2.4`); `@camstack/system` in particular is
110
- * host-provided and deliberately NOT seeded under `addonsDir`
111
- * ([D45]), so its entry advertised a copy that must not exist.
112
- * An entry holding a `lastBackupDir` is NEVER pruned: that pointer is the
113
- * only reference to a pre-update backup, and the launcher's backup sweep
114
- * reclaims anything the manifest does not point at.
115
- *
116
- * `onChange` receives one record per correction, so the caller can log
117
- * exactly what moved. Returns the total number of changes.
118
- */
119
- reconcileFromDisk(addonsDir: string, onChange?: (change: ManifestReconcileChange) => void): number;
120
- /**
121
- * Migration helper: if the manifest is empty but the addons directory
122
- * has packages with `.install-source` markers (the legacy per-addon
123
- * tracking), seed the manifest from those markers. Runs once at boot.
124
- * Returns the number of entries migrated.
125
- */
126
- migrateFromInstallSourceMarkers(addonsDir: string): number;
127
- private empty;
57
+ private readonly manifestPath;
58
+ private cache;
59
+ constructor(addonsDir: string);
60
+ /**
61
+ * Read the manifest from disk. Returns an empty manifest if the file is
62
+ * missing or corrupted (logs a warning to stderr in the corrupted case).
63
+ * Cached per instance — call `invalidate()` to force a re-read.
64
+ */
65
+ read(): AddonManifestFile;
66
+ /**
67
+ * Atomic write — writes to a tmpfile in the same directory, then renames.
68
+ * Rename is atomic on the same filesystem, so readers can never observe
69
+ * a half-written file.
70
+ */
71
+ write(manifest: AddonManifestFile): void;
72
+ /** Lookup a single addon's manifest entry, or `null` if not tracked. */
73
+ get(name: string): AddonManifestEntry | null;
74
+ /** List every tracked entry. */
75
+ list(): AddonManifestEntry[];
76
+ /**
77
+ * Insert or replace an addon entry. `installedAt` is preserved if the
78
+ * entry already exists; only `updatedAt` advances on subsequent writes.
79
+ */
80
+ upsert(name: string, fields: Omit<AddonManifestEntry, "name" | "installedAt" | "updatedAt">): void;
81
+ /** Remove an addon from tracking (e.g. uninstall). */
82
+ remove(name: string): void;
83
+ /**
84
+ * Drop the in-memory cache so the next `read()` re-loads from disk.
85
+ * Useful when an external process may have written the manifest.
86
+ */
87
+ invalidate(): void;
88
+ /**
89
+ * Reconcile the manifest against what is actually present on disk.
90
+ *
91
+ * **The directory is the truth.** It is what `AddonLoader` runs; a manifest
92
+ * that disagrees with it is a lie the update flow and the admin UI then
93
+ * repeat. Three corrections, all idempotent and safe on every boot:
94
+ *
95
+ * - **added** — an on-disk addon with no entry gets one, source `'seed'`.
96
+ * Addons baked into the Docker/Electron image are copied straight into
97
+ * `addonsDir` by the container entrypoint (`ensureRequiredPackages` then
98
+ * sees `package.json` present and skips, never calling `upsert`), so they
99
+ * would otherwise stay untracked and `applyUpdate` would reject them with
100
+ * "not currently tracked in manifest" — what broke "Update all" on a
101
+ * fresh image.
102
+ * - **version-corrected** — an entry whose version disagrees with the
103
+ * installed `package.json` adopts the DISK version. Provenance (`source`,
104
+ * `installedAt`) is NOT derivable from disk and stays authoritative here;
105
+ * `updatedAt` is left alone because the correction is not an update, and
106
+ * stamping `now` would claim an install that never happened.
107
+ * - **pruned** — an entry naming a directory that does not exist. The live
108
+ * hub carried three (`@camstack/system 1.2.29`, `addon-viewer-ui 1.1.39`,
109
+ * `addon-agent-ui 1.2.4`); `@camstack/system` in particular is
110
+ * host-provided and deliberately NOT seeded under `addonsDir`
111
+ * ([D45]), so its entry advertised a copy that must not exist.
112
+ * An entry holding a `lastBackupDir` is NEVER pruned: that pointer is the
113
+ * only reference to a pre-update backup, and the launcher's backup sweep
114
+ * reclaims anything the manifest does not point at.
115
+ *
116
+ * `onChange` receives one record per correction, so the caller can log
117
+ * exactly what moved. Returns the total number of changes.
118
+ */
119
+ reconcileFromDisk(addonsDir: string, onChange?: (change: ManifestReconcileChange) => void): number;
120
+ /**
121
+ * Migration helper: if the manifest is empty but the addons directory
122
+ * has packages with `.install-source` markers (the legacy per-addon
123
+ * tracking), seed the manifest from those markers. Runs once at boot.
124
+ * Returns the number of entries migrated.
125
+ */
126
+ migrateFromInstallSourceMarkers(addonsDir: string): number;
127
+ private empty;
128
128
  }
@@ -1,49 +1,45 @@
1
1
  /** Where residue is moved to, relative to the addon root. */
2
2
  export declare const QUARANTINE_DIRNAME = ".quarantine";
3
- export type ResidueReason =
4
- /** The directory name carries a backup marker — `.bak…`, `.old…`, `.orig…`. */
5
- 'backup-residue'
6
- /** The directory declares a package whose name is not this directory. */
7
- | 'name-mismatch';
3
+ export type ResidueReason = "backup-residue" | "name-mismatch";
8
4
  export interface AddonDirCandidate {
9
- /** Directory basename under the addon root (or under its `@scope`). */
10
- readonly dirName: string;
11
- /** `name` from the directory's `package.json`; null when absent/unreadable. */
12
- readonly declaredName: string | null;
5
+ /** Directory basename under the addon root (or under its `@scope`). */
6
+ readonly dirName: string;
7
+ /** `name` from the directory's `package.json`; null when absent/unreadable. */
8
+ readonly declaredName: string | null;
13
9
  }
14
10
  export interface ResidueVerdict extends AddonDirCandidate {
15
- readonly reason: ResidueReason;
11
+ readonly reason: ResidueReason;
16
12
  }
17
13
  /**
18
- * Is this directory residue? Returns the verdict, or null to keep it.
19
- *
20
- * A directory with no `package.json` is NOT residue on that ground alone —
21
- * `models/`, a half-finished copy, a scratch dir are all absence, not a
22
- * rename. Only a backup marker condemns one.
23
- */
14
+ * Is this directory residue? Returns the verdict, or null to keep it.
15
+ *
16
+ * A directory with no `package.json` is NOT residue on that ground alone —
17
+ * `models/`, a half-finished copy, a scratch dir are all absence, not a
18
+ * rename. Only a backup marker condemns one.
19
+ */
24
20
  export declare function classifyAddonDir(candidate: AddonDirCandidate): ResidueVerdict | null;
25
21
  export declare function selectAddonResidue(candidates: readonly AddonDirCandidate[]): readonly ResidueVerdict[];
26
22
  export interface QuarantinedEntry extends ResidueVerdict {
27
- /** Absolute path the residue occupied under the addon root. */
28
- readonly from: string;
29
- /** Absolute path it now occupies under `.quarantine/`. */
30
- readonly to: string;
23
+ /** Absolute path the residue occupied under the addon root. */
24
+ readonly from: string;
25
+ /** Absolute path it now occupies under `.quarantine/`. */
26
+ readonly to: string;
31
27
  }
32
28
  export interface ResidueQuarantineFailure extends ResidueVerdict {
33
- readonly from: string;
34
- readonly error: string;
29
+ readonly from: string;
30
+ readonly error: string;
35
31
  }
36
32
  export interface ResidueQuarantineResult {
37
- readonly quarantined: readonly QuarantinedEntry[];
38
- /** Residue that could not be moved. Reported, never fatal. */
39
- readonly failed: readonly ResidueQuarantineFailure[];
33
+ readonly quarantined: readonly QuarantinedEntry[];
34
+ /** Residue that could not be moved. Reported, never fatal. */
35
+ readonly failed: readonly ResidueQuarantineFailure[];
40
36
  }
41
37
  /**
42
- * Move every residue directory under `addonsDir` into `addonsDir/.quarantine`.
43
- *
44
- * Runs at boot, BEFORE anything scans the root or seeds into it — a residue
45
- * that is still present when the loader walks has already been installed.
46
- * Never throws, never deletes; a move that fails is reported and left in
47
- * place, which is strictly better than a half-moved package.
48
- */
38
+ * Move every residue directory under `addonsDir` into `addonsDir/.quarantine`.
39
+ *
40
+ * Runs at boot, BEFORE anything scans the root or seeds into it — a residue
41
+ * that is still present when the loader walks has already been installed.
42
+ * Never throws, never deletes; a move that fails is reported and left in
43
+ * place, which is strictly better than a half-moved package.
44
+ */
49
45
  export declare function quarantineAddonResidue(addonsDir: string, log: (message: string) => void): ResidueQuarantineResult;