@atomic-chat/core 0.19.1 → 0.20.6

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 (335) hide show
  1. package/dist/app-daemon.js +5 -0
  2. package/dist/app-daemon.js.map +1 -1
  3. package/dist/audio/args.d.ts +19 -0
  4. package/dist/audio/args.js +39 -0
  5. package/dist/audio/args.js.map +1 -0
  6. package/dist/audio/capabilities.d.ts +24 -0
  7. package/dist/audio/capabilities.js +96 -0
  8. package/dist/audio/capabilities.js.map +1 -0
  9. package/dist/audio/config.d.ts +40 -0
  10. package/dist/audio/config.js +57 -0
  11. package/dist/audio/config.js.map +1 -0
  12. package/dist/audio/errors.d.ts +23 -0
  13. package/dist/audio/errors.js +52 -0
  14. package/dist/audio/errors.js.map +1 -0
  15. package/dist/audio/gallery.d.ts +30 -0
  16. package/dist/audio/gallery.js +152 -0
  17. package/dist/audio/gallery.js.map +1 -0
  18. package/dist/audio/http.d.ts +26 -0
  19. package/dist/audio/http.js +56 -0
  20. package/dist/audio/http.js.map +1 -0
  21. package/dist/audio/idle.d.ts +22 -0
  22. package/dist/audio/idle.js +44 -0
  23. package/dist/audio/idle.js.map +1 -0
  24. package/dist/audio/index.d.ts +26 -0
  25. package/dist/audio/index.js +27 -0
  26. package/dist/audio/index.js.map +1 -0
  27. package/dist/audio/install.d.ts +57 -0
  28. package/dist/audio/install.js +196 -0
  29. package/dist/audio/install.js.map +1 -0
  30. package/dist/audio/jobs.d.ts +77 -0
  31. package/dist/audio/jobs.js +340 -0
  32. package/dist/audio/jobs.js.map +1 -0
  33. package/dist/audio/model-files.d.ts +12 -0
  34. package/dist/audio/model-files.js +42 -0
  35. package/dist/audio/model-files.js.map +1 -0
  36. package/dist/audio/output.d.ts +32 -0
  37. package/dist/audio/output.js +93 -0
  38. package/dist/audio/output.js.map +1 -0
  39. package/dist/audio/parse.d.ts +15 -0
  40. package/dist/audio/parse.js +149 -0
  41. package/dist/audio/parse.js.map +1 -0
  42. package/dist/audio/recipe.d.ts +22 -0
  43. package/dist/audio/recipe.js +92 -0
  44. package/dist/audio/recipe.js.map +1 -0
  45. package/dist/audio/request.d.ts +24 -0
  46. package/dist/audio/request.js +86 -0
  47. package/dist/audio/request.js.map +1 -0
  48. package/dist/audio/server-process.d.ts +51 -0
  49. package/dist/audio/server-process.js +202 -0
  50. package/dist/audio/server-process.js.map +1 -0
  51. package/dist/audio/service.d.ts +107 -0
  52. package/dist/audio/service.js +402 -0
  53. package/dist/audio/service.js.map +1 -0
  54. package/dist/audio/session.d.ts +73 -0
  55. package/dist/audio/session.js +216 -0
  56. package/dist/audio/session.js.map +1 -0
  57. package/dist/audio/state.d.ts +68 -0
  58. package/dist/audio/state.js +88 -0
  59. package/dist/audio/state.js.map +1 -0
  60. package/dist/audio/types.d.ts +52 -0
  61. package/dist/audio/types.js +8 -0
  62. package/dist/audio/types.js.map +1 -0
  63. package/dist/audio/wav.d.ts +22 -0
  64. package/dist/audio/wav.js +56 -0
  65. package/dist/audio/wav.js.map +1 -0
  66. package/dist/audio/wiring.d.ts +31 -0
  67. package/dist/audio/wiring.js +41 -0
  68. package/dist/audio/wiring.js.map +1 -0
  69. package/dist/backend/install/service.js +4 -2
  70. package/dist/backend/install/service.js.map +1 -1
  71. package/dist/cli/launch.js +2 -0
  72. package/dist/cli/launch.js.map +1 -1
  73. package/dist/cli/main.d.ts +1 -1
  74. package/dist/cli/main.js +5 -0
  75. package/dist/cli/main.js.map +1 -1
  76. package/dist/client/control-client.d.ts +21 -1
  77. package/dist/client/control-client.js +50 -0
  78. package/dist/client/control-client.js.map +1 -1
  79. package/dist/client/index.d.ts +1 -0
  80. package/dist/client/index.js +1 -0
  81. package/dist/client/index.js.map +1 -1
  82. package/dist/client/model-catalog.d.ts +40 -0
  83. package/dist/client/model-catalog.js +149 -0
  84. package/dist/client/model-catalog.js.map +1 -0
  85. package/dist/cloud/registry.js +1 -0
  86. package/dist/cloud/registry.js.map +1 -1
  87. package/dist/config/paths.d.ts +22 -1
  88. package/dist/config/paths.js +24 -0
  89. package/dist/config/paths.js.map +1 -1
  90. package/dist/contracts/audio.d.ts +290 -0
  91. package/dist/contracts/audio.js +24 -0
  92. package/dist/contracts/audio.js.map +1 -0
  93. package/dist/contracts/embedding.js +1 -0
  94. package/dist/contracts/embedding.js.map +1 -1
  95. package/dist/contracts/engine-builds.d.ts +10 -4
  96. package/dist/contracts/engine-builds.js +10 -2
  97. package/dist/contracts/engine-builds.js.map +1 -1
  98. package/dist/contracts/engines.d.ts +1 -1
  99. package/dist/contracts/engines.js +4 -0
  100. package/dist/contracts/engines.js.map +1 -1
  101. package/dist/contracts/errors.d.ts +14 -2
  102. package/dist/contracts/errors.js +29 -0
  103. package/dist/contracts/errors.js.map +1 -1
  104. package/dist/contracts/events.d.ts +10 -0
  105. package/dist/contracts/geniex.d.ts +98 -0
  106. package/dist/contracts/geniex.js +15 -0
  107. package/dist/contracts/geniex.js.map +1 -0
  108. package/dist/contracts/index.d.ts +2 -0
  109. package/dist/contracts/index.js +2 -0
  110. package/dist/contracts/index.js.map +1 -1
  111. package/dist/contracts/model-yml.d.ts +40 -0
  112. package/dist/contracts/model-yml.js +7 -0
  113. package/dist/contracts/model-yml.js.map +1 -1
  114. package/dist/contracts/session.d.ts +6 -1
  115. package/dist/contracts/session.js.map +1 -1
  116. package/dist/contracts/settings.d.ts +12 -1
  117. package/dist/contracts/settings.js.map +1 -1
  118. package/dist/core/atomic-core.d.ts +6 -1
  119. package/dist/core/atomic-core.js +7 -1
  120. package/dist/core/atomic-core.js.map +1 -1
  121. package/dist/core/create.js +105 -6
  122. package/dist/core/create.js.map +1 -1
  123. package/dist/core/gpu-residency.d.ts +8 -2
  124. package/dist/core/gpu-residency.js +9 -1
  125. package/dist/core/gpu-residency.js.map +1 -1
  126. package/dist/core/types.d.ts +3 -0
  127. package/dist/core/types.js.map +1 -1
  128. package/dist/diffusion/install.d.ts +6 -3
  129. package/dist/diffusion/install.js +5 -4
  130. package/dist/diffusion/install.js.map +1 -1
  131. package/dist/embedding/index.js +1 -0
  132. package/dist/embedding/index.js.map +1 -1
  133. package/dist/engine-builds/engines.d.ts +31 -8
  134. package/dist/engine-builds/engines.js +118 -14
  135. package/dist/engine-builds/engines.js.map +1 -1
  136. package/dist/engine-builds/geniex.d.ts +35 -0
  137. package/dist/engine-builds/geniex.js +111 -0
  138. package/dist/engine-builds/geniex.js.map +1 -0
  139. package/dist/engine-builds/index.d.ts +3 -2
  140. package/dist/engine-builds/index.js +3 -2
  141. package/dist/engine-builds/index.js.map +1 -1
  142. package/dist/engine-builds/manifest.d.ts +95 -5
  143. package/dist/engine-builds/manifest.js +152 -9
  144. package/dist/engine-builds/manifest.js.map +1 -1
  145. package/dist/engine-builds/order.d.ts +7 -1
  146. package/dist/engine-builds/order.js +13 -0
  147. package/dist/engine-builds/order.js.map +1 -1
  148. package/dist/engine-builds/select.d.ts +43 -11
  149. package/dist/engine-builds/select.js +64 -16
  150. package/dist/engine-builds/select.js.map +1 -1
  151. package/dist/engine-builds/service.d.ts +19 -11
  152. package/dist/engine-builds/service.js +31 -9
  153. package/dist/engine-builds/service.js.map +1 -1
  154. package/dist/engines/service.d.ts +4 -3
  155. package/dist/engines/service.js +5 -3
  156. package/dist/engines/service.js.map +1 -1
  157. package/dist/engines/versions.js +3 -0
  158. package/dist/engines/versions.js.map +1 -1
  159. package/dist/integrations/catalog.d.ts +3 -1
  160. package/dist/integrations/catalog.js +8 -2
  161. package/dist/integrations/catalog.js.map +1 -1
  162. package/dist/integrations/config-io.d.ts +45 -4
  163. package/dist/integrations/config-io.js +91 -6
  164. package/dist/integrations/config-io.js.map +1 -1
  165. package/dist/integrations/configure/codex-repair.d.ts +75 -0
  166. package/dist/integrations/configure/codex-repair.js +254 -0
  167. package/dist/integrations/configure/codex-repair.js.map +1 -0
  168. package/dist/integrations/configure/codex.d.ts +48 -10
  169. package/dist/integrations/configure/codex.js +126 -32
  170. package/dist/integrations/configure/codex.js.map +1 -1
  171. package/dist/integrations/configure/registry.d.ts +4 -1
  172. package/dist/integrations/configure/registry.js +1 -0
  173. package/dist/integrations/configure/registry.js.map +1 -1
  174. package/dist/lock/process-journal.d.ts +3 -3
  175. package/dist/models/compatibility/rules-baseline.js +1 -0
  176. package/dist/models/compatibility/rules-baseline.js.map +1 -1
  177. package/dist/models/compatibility/rules.js +1 -0
  178. package/dist/models/compatibility/rules.js.map +1 -1
  179. package/dist/models/gguf/kv-cache.d.ts +5 -0
  180. package/dist/models/gguf/kv-cache.js +35 -2
  181. package/dist/models/gguf/kv-cache.js.map +1 -1
  182. package/dist/models/gguf/reader.d.ts +5 -0
  183. package/dist/models/gguf/reader.js +15 -3
  184. package/dist/models/gguf/reader.js.map +1 -1
  185. package/dist/models/hf.d.ts +3 -0
  186. package/dist/models/hf.js +11 -4
  187. package/dist/models/hf.js.map +1 -1
  188. package/dist/router/resolve.d.ts +3 -2
  189. package/dist/router/resolve.js +3 -1
  190. package/dist/router/resolve.js.map +1 -1
  191. package/dist/runtime/geniex/accelerators.d.ts +20 -0
  192. package/dist/runtime/geniex/accelerators.js +53 -0
  193. package/dist/runtime/geniex/accelerators.js.map +1 -0
  194. package/dist/runtime/geniex/check.d.ts +34 -0
  195. package/dist/runtime/geniex/check.js +117 -0
  196. package/dist/runtime/geniex/check.js.map +1 -0
  197. package/dist/runtime/geniex/chip.d.ts +29 -0
  198. package/dist/runtime/geniex/chip.js +35 -0
  199. package/dist/runtime/geniex/chip.js.map +1 -0
  200. package/dist/runtime/geniex/devices.d.ts +13 -0
  201. package/dist/runtime/geniex/devices.js +32 -0
  202. package/dist/runtime/geniex/devices.js.map +1 -0
  203. package/dist/runtime/geniex/geniex-host.d.ts +17 -0
  204. package/dist/runtime/geniex/geniex-host.js +26 -0
  205. package/dist/runtime/geniex/geniex-host.js.map +1 -0
  206. package/dist/runtime/geniex/host/args.d.ts +56 -0
  207. package/dist/runtime/geniex/host/args.js +115 -0
  208. package/dist/runtime/geniex/host/args.js.map +1 -0
  209. package/dist/runtime/geniex/host/engine.d.ts +76 -0
  210. package/dist/runtime/geniex/host/engine.js +122 -0
  211. package/dist/runtime/geniex/host/engine.js.map +1 -0
  212. package/dist/runtime/geniex/host/ffi-bun.d.ts +15 -0
  213. package/dist/runtime/geniex/host/ffi-bun.js +415 -0
  214. package/dist/runtime/geniex/host/ffi-bun.js.map +1 -0
  215. package/dist/runtime/geniex/host/grammar.d.ts +11 -0
  216. package/dist/runtime/geniex/host/grammar.js +223 -0
  217. package/dist/runtime/geniex/host/grammar.js.map +1 -0
  218. package/dist/runtime/geniex/host/inspect.d.ts +25 -0
  219. package/dist/runtime/geniex/host/inspect.js +177 -0
  220. package/dist/runtime/geniex/host/inspect.js.map +1 -0
  221. package/dist/runtime/geniex/host/library.d.ts +117 -0
  222. package/dist/runtime/geniex/host/library.js +38 -0
  223. package/dist/runtime/geniex/host/library.js.map +1 -0
  224. package/dist/runtime/geniex/host/openai.d.ts +62 -0
  225. package/dist/runtime/geniex/host/openai.js +458 -0
  226. package/dist/runtime/geniex/host/openai.js.map +1 -0
  227. package/dist/runtime/geniex/host/run.d.ts +48 -0
  228. package/dist/runtime/geniex/host/run.js +208 -0
  229. package/dist/runtime/geniex/host/run.js.map +1 -0
  230. package/dist/runtime/geniex/host/server.d.ts +39 -0
  231. package/dist/runtime/geniex/host/server.js +232 -0
  232. package/dist/runtime/geniex/host/server.js.map +1 -0
  233. package/dist/runtime/geniex/host/worker-protocol.d.ts +76 -0
  234. package/dist/runtime/geniex/host/worker-protocol.js +116 -0
  235. package/dist/runtime/geniex/host/worker-protocol.js.map +1 -0
  236. package/dist/runtime/geniex/host/worker-source.generated.d.ts +1 -0
  237. package/dist/runtime/geniex/host/worker-source.generated.js +4 -0
  238. package/dist/runtime/geniex/host/worker-source.generated.js.map +1 -0
  239. package/dist/runtime/geniex/host/worker.d.ts +7 -0
  240. package/dist/runtime/geniex/host/worker.js +19 -0
  241. package/dist/runtime/geniex/host/worker.js.map +1 -0
  242. package/dist/runtime/geniex/host-process.d.ts +48 -0
  243. package/dist/runtime/geniex/host-process.js +104 -0
  244. package/dist/runtime/geniex/host-process.js.map +1 -0
  245. package/dist/runtime/geniex/index.d.ts +11 -0
  246. package/dist/runtime/geniex/index.js +12 -0
  247. package/dist/runtime/geniex/index.js.map +1 -0
  248. package/dist/runtime/geniex/model-yml.d.ts +8 -0
  249. package/dist/runtime/geniex/model-yml.js +98 -0
  250. package/dist/runtime/geniex/model-yml.js.map +1 -0
  251. package/dist/runtime/geniex/runtime.d.ts +94 -0
  252. package/dist/runtime/geniex/runtime.js +366 -0
  253. package/dist/runtime/geniex/runtime.js.map +1 -0
  254. package/dist/runtime/litert-lm/host/openai.d.ts +4 -37
  255. package/dist/runtime/litert-lm/host/openai.js +11 -96
  256. package/dist/runtime/litert-lm/host/openai.js.map +1 -1
  257. package/dist/runtime/litert-lm/host/pool.d.ts +1 -7
  258. package/dist/runtime/litert-lm/host/pool.js +1 -17
  259. package/dist/runtime/litert-lm/host/pool.js.map +1 -1
  260. package/dist/runtime/litert-lm/host/server.js +11 -53
  261. package/dist/runtime/litert-lm/host/server.js.map +1 -1
  262. package/dist/runtime/llamacpp/args.d.ts +5 -0
  263. package/dist/runtime/llamacpp/args.js +2 -0
  264. package/dist/runtime/llamacpp/args.js.map +1 -1
  265. package/dist/runtime/llamacpp/fit-margin.d.ts +44 -0
  266. package/dist/runtime/llamacpp/fit-margin.js +50 -0
  267. package/dist/runtime/llamacpp/fit-margin.js.map +1 -1
  268. package/dist/runtime/llamacpp/load-plan.d.ts +5 -0
  269. package/dist/runtime/llamacpp/load-plan.js +57 -22
  270. package/dist/runtime/llamacpp/load-plan.js.map +1 -1
  271. package/dist/runtime/llamacpp/runtime.d.ts +2 -1
  272. package/dist/runtime/llamacpp/runtime.js +3 -1
  273. package/dist/runtime/llamacpp/runtime.js.map +1 -1
  274. package/dist/runtime/shared/external-sessions.js +1 -0
  275. package/dist/runtime/shared/external-sessions.js.map +1 -1
  276. package/dist/runtime/shared/fifo-lock.d.ts +10 -0
  277. package/dist/runtime/shared/fifo-lock.js +21 -0
  278. package/dist/runtime/shared/fifo-lock.js.map +1 -0
  279. package/dist/runtime/shared/index.d.ts +2 -0
  280. package/dist/runtime/shared/index.js +2 -0
  281. package/dist/runtime/shared/index.js.map +1 -1
  282. package/dist/runtime/shared/openai-sse.d.ts +112 -0
  283. package/dist/runtime/shared/openai-sse.js +178 -0
  284. package/dist/runtime/shared/openai-sse.js.map +1 -0
  285. package/dist/server/control/index.d.ts +1 -1
  286. package/dist/server/control/router.js +4 -0
  287. package/dist/server/control/router.js.map +1 -1
  288. package/dist/server/control/routes/audio.d.ts +15 -0
  289. package/dist/server/control/routes/audio.js +59 -0
  290. package/dist/server/control/routes/audio.js.map +1 -0
  291. package/dist/server/control/routes/geniex.d.ts +7 -0
  292. package/dist/server/control/routes/geniex.js +22 -0
  293. package/dist/server/control/routes/geniex.js.map +1 -0
  294. package/dist/server/control/types.d.ts +36 -2
  295. package/dist/server/control/types.js.map +1 -1
  296. package/dist/server/http.js +4 -0
  297. package/dist/server/http.js.map +1 -1
  298. package/dist/server/public/audio-speech-params.d.ts +47 -0
  299. package/dist/server/public/audio-speech-params.js +177 -0
  300. package/dist/server/public/audio-speech-params.js.map +1 -0
  301. package/dist/server/public/audio-speech.d.ts +14 -0
  302. package/dist/server/public/audio-speech.js +118 -0
  303. package/dist/server/public/audio-speech.js.map +1 -0
  304. package/dist/server/public/embedding.d.ts +8 -7
  305. package/dist/server/public/embedding.js +15 -7
  306. package/dist/server/public/embedding.js.map +1 -1
  307. package/dist/server/public/forward.js +15 -1
  308. package/dist/server/public/forward.js.map +1 -1
  309. package/dist/server/public/index.d.ts +1 -1
  310. package/dist/server/public/index.js +7 -0
  311. package/dist/server/public/index.js.map +1 -1
  312. package/dist/server/public/listing.js +1 -0
  313. package/dist/server/public/listing.js.map +1 -1
  314. package/dist/server/public/responses.js +9 -0
  315. package/dist/server/public/responses.js.map +1 -1
  316. package/dist/server/public/trace.js +2 -0
  317. package/dist/server/public/trace.js.map +1 -1
  318. package/dist/server/public/types.d.ts +29 -1
  319. package/dist/server/public/validate.d.ts +32 -0
  320. package/dist/server/public/validate.js +146 -0
  321. package/dist/server/public/validate.js.map +1 -0
  322. package/dist/settings/schema/geniex.json +63 -0
  323. package/dist/settings/schema/mlx.json +1 -1
  324. package/dist/settings/schema.js +11 -0
  325. package/dist/settings/schema.js.map +1 -1
  326. package/dist/telemetry/reports.d.ts +12 -0
  327. package/dist/telemetry/reports.js +38 -0
  328. package/dist/telemetry/reports.js.map +1 -1
  329. package/dist/telemetry/subscribe.d.ts +3 -3
  330. package/dist/telemetry/subscribe.js +8 -3
  331. package/dist/telemetry/subscribe.js.map +1 -1
  332. package/dist/telemetry/types.d.ts +1 -1
  333. package/dist/version.d.ts +1 -1
  334. package/dist/version.js +1 -1
  335. package/package.json +11 -2
@@ -32,9 +32,10 @@
32
32
  * the same tag (ADR 2026-10-06). CUDA 13 is the only accelerated tier there:
33
33
  * those builds target sm_121 (GB10 / N1X) with a Hopper PTX floor.
34
34
  */
35
- import type { DiffusionBackend } from '../contracts/index.js';
35
+ import type { AudioBackend, DiffusionBackend } from '../contracts/index.js';
36
36
  import type { HardwareFacts } from '../hardware/index.js';
37
37
  import type { FoundryLocalPlatform, LiteRtLmPlatform } from './manifest.js';
38
+ import type { GeniexHostPlatform } from '../runtime/geniex/chip.js';
38
39
  /**
39
40
  * Smallest Vulkan device worth moving a Linux host off the CPU build for.
40
41
  * Mirrors `LINUX_VULKAN_MIN_VRAM_MIB` in
@@ -75,8 +76,15 @@ export declare function diffusionBackendLadder(input: DiffusionBackendSelectionI
75
76
  export declare function selectDiffusionBackend(input: DiffusionBackendSelectionInput): string | null;
76
77
  /** The companion archive a backend needs unpacked beside it, if any. */
77
78
  export declare function companionFor(backendId: string): 'win-cudart-cu12' | null;
78
- /** The compute backend a manifest id was built for, for the install record. */
79
+ /** The compute backend a manifest id was built for, for the sd.cpp install record. */
79
80
  export declare function backendKindOf(backendId: string): DiffusionBackend;
81
+ /**
82
+ * The compute backend an audio.cpp manifest id was built for: what the install record keeps, what the
83
+ * probe checks the build carries and what the server is started with (`--backend`). `null` for an id
84
+ * audio.cpp has no build of — ROCm (never offered), the cudart companion, anything unknown — which is
85
+ * therefore never on the ladder.
86
+ */
87
+ export declare function audioBackendKindOf(backendId: string): AudioBackend | null;
80
88
  /** What the ladder reads, from the core's own facts (the override applied). */
81
89
  export declare function sdcppHostOf(facts: Pick<HardwareFacts, 'osType' | 'arch' | 'cpuExtensions' | 'gpus'>): Omit<DiffusionBackendSelectionInput, 'available' | 'os'> & {
82
90
  os: string;
@@ -90,23 +98,32 @@ export interface SdcppHostChoice {
90
98
  /** Why `backend_id` is `null`. */
91
99
  reason: string | null;
92
100
  }
93
- /**
94
- * The ladder for `manifest`, leaving out the builds that failed here on this tag; when that leaves
95
- * nothing, the last build is offered again, so a retry ends on its own error rather than on "no build
96
- * for this computer" (the app's `backendLadderForHost`).
97
- */
98
- export declare function sdcppHostChoice(host: Omit<DiffusionBackendSelectionInput, 'available' | 'os'> & {
101
+ type GgmlHost = Omit<DiffusionBackendSelectionInput, 'available' | 'os'> & {
99
102
  os: string;
100
- }, manifest: {
103
+ };
104
+ type GgmlManifestAssets = {
101
105
  tag_name: string;
102
106
  assets: readonly {
103
107
  backend: string;
104
108
  companion?: boolean;
105
109
  }[];
106
- }, failed: ReadonlySet<string>): SdcppHostChoice;
110
+ };
111
+ /** sd.cpp's ladder for this host over what `manifest` ships, without the rungs that failed on its tag. */
112
+ export declare function sdcppHostChoice(host: GgmlHost, manifest: GgmlManifestAssets, failed: ReadonlySet<string>): SdcppHostChoice;
113
+ /**
114
+ * audio.cpp's ladder: sd.cpp's, over the same backend-id vocabulary, without ROCm (audio.cpp ships no
115
+ * ROCm build, so an AMD card on Windows runs Vulkan) and without any id `audioBackendKindOf` does not
116
+ * know. The failed rungs are audio.cpp's own (`<data>/audio/failed-backends.json`).
117
+ */
118
+ export declare function audiocppHostChoice(host: GgmlHost, manifest: GgmlManifestAssets, failed: ReadonlySet<string>): SdcppHostChoice;
107
119
  /** The app kept "a few tags' worth of rungs"; older entries name tags no manifest serves. */
108
120
  export declare const FAILED_BACKENDS_LIMIT = 16;
109
- /** `<tag>/<backend_id>` pairs that failed their probe on this machine; empty when unreadable. */
121
+ /**
122
+ * `<tag>/<backend_id>` pairs that failed their probe on this machine; empty when unreadable. Each
123
+ * engine with a ladder keeps its own file (sd.cpp `<data>/diffusion/failed-backends.json`, audio.cpp
124
+ * `<data>/audio/failed-backends.json`): the two engines share backend ids and may share tags' shape,
125
+ * but a build of one failing says nothing about the other.
126
+ */
110
127
  export declare function readFailedBackends(file: string): Promise<Set<string>>;
111
128
  /** Remember one more failed pair, newest last; a failed write only costs a repeated download. */
112
129
  export declare function rememberFailedBackend(file: string, tag: string, backendId: string): Promise<void>;
@@ -166,3 +183,18 @@ export declare function liteRtLmHostChoice(host: LiteRtLmHostPlatform, release:
166
183
  backend_id: string | null;
167
184
  reason: string | null;
168
185
  };
186
+ /**
187
+ * GenieX (change `add-geniex-runtime`, task 4.4): the host runs the one SDK zip of its platform, when
188
+ * the newest release has it. Which platform, and whether at all, `geniexHostPlatform` decided from
189
+ * the processor string (`runtime/geniex/chip.ts`).
190
+ */
191
+ export declare function geniexHostChoice(host: GeniexHostPlatform, release: {
192
+ assets: readonly {
193
+ platform: string;
194
+ }[];
195
+ } | null): {
196
+ ladder: string[];
197
+ backend_id: string | null;
198
+ reason: string | null;
199
+ };
200
+ export {};
@@ -121,7 +121,7 @@ export function selectDiffusionBackend(input) {
121
121
  export function companionFor(backendId) {
122
122
  return backendId === WIN_CUDA12 ? WIN_CUDART_CU12 : null;
123
123
  }
124
- /** The compute backend a manifest id was built for, for the install record. */
124
+ /** The compute backend a manifest id was built for, for the sd.cpp install record. */
125
125
  export function backendKindOf(backendId) {
126
126
  if (backendId.startsWith('macos-'))
127
127
  return 'metal';
@@ -133,6 +133,23 @@ export function backendKindOf(backendId) {
133
133
  return 'vulkan';
134
134
  return 'cpu';
135
135
  }
136
+ /**
137
+ * The compute backend an audio.cpp manifest id was built for: what the install record keeps, what the
138
+ * probe checks the build carries and what the server is started with (`--backend`). `null` for an id
139
+ * audio.cpp has no build of — ROCm (never offered), the cudart companion, anything unknown — which is
140
+ * therefore never on the ladder.
141
+ */
142
+ export function audioBackendKindOf(backendId) {
143
+ if (backendId.startsWith('macos-'))
144
+ return 'metal';
145
+ if (/-cuda\d+-/.test(backendId))
146
+ return 'cuda';
147
+ if (backendId.includes('-vulkan-'))
148
+ return 'vulkan';
149
+ if (backendId.includes('-cpu-'))
150
+ return 'cpu';
151
+ return null;
152
+ }
136
153
  // --- core: the host from the core's hardware facts, failed rungs, MLX ------------------------------
137
154
  /** What the ladder reads, from the core's own facts (the override applied). */
138
155
  export function sdcppHostOf(facts) {
@@ -156,38 +173,55 @@ export function sdcppHostOf(facts) {
156
173
  /** The key a failed probe is remembered under: a new tag gets a fresh try. */
157
174
  export const failedBackendKey = (tag, backendId) => `${tag}/${backendId}`;
158
175
  /** Why no build applies, in words a settings card can show (the app's `unsupportedReason`). */
159
- function unsupportedReason(host) {
176
+ function unsupportedReason(host, words) {
160
177
  if (host.os === 'macos')
161
- return 'Image generation needs an Apple Silicon Mac; Intel Macs are not supported.';
178
+ return `${words.feature} needs an Apple Silicon Mac; Intel Macs are not supported.`;
162
179
  if (host.os !== 'windows' && host.os !== 'linux')
163
- return `Image generation is not supported on ${host.os}.`;
180
+ return `${words.feature} is not supported on ${host.os}.`;
164
181
  if (host.arch !== 'x64')
165
- return `The release manifest lists no stable-diffusion.cpp build for ${host.arch} ${host.os} yet.`;
182
+ return `The release manifest lists no ${words.project} build for ${host.arch} ${host.os} yet.`;
166
183
  return 'The release manifest lists no build for this computer.';
167
184
  }
168
185
  /**
169
- * The ladder for `manifest`, leaving out the builds that failed here on this tag; when that leaves
170
- * nothing, the last build is offered again, so a retry ends on its own error rather than on "no build
171
- * for this computer" (the app's `backendLadderForHost`).
186
+ * The ladder for `manifest` over `available` of its builds, leaving out the builds that failed here on
187
+ * this tag; when that leaves nothing, the last build is offered again, so a retry ends on its own error
188
+ * rather than on "no build for this computer" (the app's `backendLadderForHost`).
172
189
  */
173
- export function sdcppHostChoice(host, manifest, failed) {
190
+ function ggmlHostChoice(host, manifest, failed, available, words) {
174
191
  const supported = host.os === 'macos' || host.os === 'windows' || host.os === 'linux';
175
192
  const ladder = supported
176
- ? diffusionBackendLadder({
177
- ...host,
178
- os: host.os,
179
- available: manifest.assets.filter((asset) => !asset.companion).map((asset) => asset.backend),
180
- })
193
+ ? diffusionBackendLadder({ ...host, os: host.os, available })
181
194
  : [];
182
195
  if (ladder.length === 0)
183
- return { ladder: [], backend_id: null, reason: unsupportedReason(host) };
196
+ return { ladder: [], backend_id: null, reason: unsupportedReason(host, words) };
184
197
  const usable = ladder.filter((id) => !failed.has(failedBackendKey(manifest.tag_name, id)));
185
198
  const offered = usable.length > 0 ? usable : ladder.slice(-1);
186
199
  return { ladder: offered, backend_id: offered[0] ?? null, reason: null };
187
200
  }
201
+ const buildIds = (manifest) => manifest.assets.filter((asset) => !asset.companion).map((asset) => asset.backend);
202
+ /** sd.cpp's ladder for this host over what `manifest` ships, without the rungs that failed on its tag. */
203
+ export function sdcppHostChoice(host, manifest, failed) {
204
+ return ggmlHostChoice(host, manifest, failed, buildIds(manifest), {
205
+ feature: 'Image generation',
206
+ project: 'stable-diffusion.cpp',
207
+ });
208
+ }
209
+ /**
210
+ * audio.cpp's ladder: sd.cpp's, over the same backend-id vocabulary, without ROCm (audio.cpp ships no
211
+ * ROCm build, so an AMD card on Windows runs Vulkan) and without any id `audioBackendKindOf` does not
212
+ * know. The failed rungs are audio.cpp's own (`<data>/audio/failed-backends.json`).
213
+ */
214
+ export function audiocppHostChoice(host, manifest, failed) {
215
+ return ggmlHostChoice({ ...host, features: { ...host.features, rocm: false } }, manifest, failed, buildIds(manifest).filter((id) => audioBackendKindOf(id) !== null), { feature: 'Audio generation', project: 'audio.cpp' });
216
+ }
188
217
  /** The app kept "a few tags' worth of rungs"; older entries name tags no manifest serves. */
189
218
  export const FAILED_BACKENDS_LIMIT = 16;
190
- /** `<tag>/<backend_id>` pairs that failed their probe on this machine; empty when unreadable. */
219
+ /**
220
+ * `<tag>/<backend_id>` pairs that failed their probe on this machine; empty when unreadable. Each
221
+ * engine with a ladder keeps its own file (sd.cpp `<data>/diffusion/failed-backends.json`, audio.cpp
222
+ * `<data>/audio/failed-backends.json`): the two engines share backend ids and may share tags' shape,
223
+ * but a build of one failing says nothing about the other.
224
+ */
191
225
  export async function readFailedBackends(file) {
192
226
  try {
193
227
  const parsed = JSON.parse(await readFile(file, 'utf8'));
@@ -310,4 +344,18 @@ export function liteRtLmHostChoice(host, release) {
310
344
  };
311
345
  return { ladder: [host.platform], backend_id: host.platform, reason: null };
312
346
  }
347
+ /**
348
+ * GenieX (change `add-geniex-runtime`, task 4.4): the host runs the one SDK zip of its platform, when
349
+ * the newest release has it. Which platform, and whether at all, `geniexHostPlatform` decided from
350
+ * the processor string (`runtime/geniex/chip.ts`).
351
+ */
352
+ export function geniexHostChoice(host, release) {
353
+ if (host.platform === null)
354
+ return { ladder: [], backend_id: null, reason: host.reason };
355
+ if (!release)
356
+ return { ladder: [], backend_id: null, reason: 'The GenieX manifest is unavailable.' };
357
+ if (!release.assets.some((asset) => asset.platform === host.platform))
358
+ return { ladder: [], backend_id: null, reason: `The GenieX manifest lists no SDK for ${host.platform}.` };
359
+ return { ladder: [host.platform], backend_id: host.platform, reason: null };
360
+ }
313
361
  //# sourceMappingURL=select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/engine-builds/select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"select.js","sourceRoot":"","sources":["../../src/engine-builds/select.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
- * Engine builds of sd.cpp and MLX: the catalog, the update check, the install, the removal and the
3
- * cleanup at start (openspec change `move-sdcpp-mlx-install-to-core`, spec `engine-builds`).
2
+ * Engine builds (sd.cpp, audio.cpp, MLX, Foundry Local, LiteRT-LM, GenieX): the catalog, the update
3
+ * check, the install, the removal and the cleanup at start (openspec change
4
+ * `move-sdcpp-mlx-install-to-core`, spec `engine-builds`).
4
5
  *
5
6
  * The core advises and the client decides (ADR 2026-09-27): the catalog and the update check only
6
7
  * read; an install happens when a client calls it, and that call is also the client's consent to
@@ -17,14 +18,15 @@
17
18
  * decision during its acceptance): the old ones stay listed, inactive, for the user to remove. The
18
19
  * `retired` and `kept_in_use` of an install answer are therefore always empty.
19
20
  *
20
- * sd.cpp walks down the host's ladder when a build unpacks but fails its probe (design D7): the pair
21
- * is remembered in `<data>/diffusion/failed-backends.json` and the next build is installed under the
22
- * same task id; only the last build's failure reaches the client.
21
+ * sd.cpp and audio.cpp walk down the host's ladder when a build unpacks but fails its probe (design
22
+ * D7): the pair is remembered in the engine's own failed-backends file
23
+ * (`<data>/diffusion/failed-backends.json`, `<data>/audio/failed-backends.json`) and the next build is
24
+ * installed under the same task id; only the last build's failure reaches the client.
23
25
  */
24
26
  import type { CoreEvents, EngineBuildCatalog, EngineBuildCatalogRequest, EngineBuildId, EngineBuildInstallRequest, EngineBuildInstallResult, EngineBuildRemoveResult, EngineBuildUpdateCheck, ProxyConfig } from '../contracts/index.js';
25
27
  import type { Downloader } from '../downloads/index.js';
26
28
  import type { HardwareFacts } from '../hardware/index.js';
27
- import type { EngineHostPlatform } from './engines.js';
29
+ import type { Build, EngineHostPlatform, EngineProbeFacts } from './engines.js';
28
30
  import type { ManifestOf, ManifestRead } from './manifest.js';
29
31
  /** What an engine's runtime lends this module. */
30
32
  export interface EngineHost {
@@ -45,10 +47,14 @@ export interface EngineHost {
45
47
  export declare const IDLE_ENGINE_HOST: EngineHost;
46
48
  export interface EngineBuildsDeps {
47
49
  dataFolder: string;
48
- /** `<data>/diffusion/backends` and `<data>/mlx/backends`. */
50
+ /** Each engine's `<data>/…/backends` (`<data>/diffusion/backends`, `<data>/audio/backends`, …). */
49
51
  roots: Record<EngineBuildId, string>;
50
- /** `<data>/diffusion/failed-backends.json`. */
51
- failedBackendsFile: string;
52
+ /**
53
+ * Where each engine with a ladder remembers the builds that failed their probe on this machine:
54
+ * sd.cpp `<data>/diffusion/failed-backends.json`, audio.cpp `<data>/audio/failed-backends.json`. An
55
+ * engine absent here remembers nothing.
56
+ */
57
+ failedBackendsFiles: Partial<Record<EngineBuildId, string>>;
52
58
  /** The desktop app's `resources/bin`; absent on `atc`. */
53
59
  resourcesDir?: string | undefined;
54
60
  platform: NodeJS.Platform;
@@ -76,8 +82,8 @@ export interface EngineBuildsDeps {
76
82
  * `liteRtLmHostPlatform`); an engine absent from the table runs nowhere.
77
83
  */
78
84
  hostPlatforms?: Partial<Record<EngineBuildId, EngineHostPlatform>>;
79
- /** This core's host mode probing an unpacked build, per engine (`foundry-host`, `litert-host`). */
80
- hostProbes?: Partial<Record<EngineBuildId, (buildDir: string) => Promise<void>>>;
85
+ /** This core's host mode probing an unpacked build, per engine (`foundry-host`, `litert-host`, `geniex-host`). */
86
+ hostProbes?: Partial<Record<EngineBuildId, (buildDir: string) => Promise<EngineProbeFacts | void>>>;
81
87
  /** Test seams for the probes. */
82
88
  probe?: Partial<Record<EngineBuildId, (dir: string) => Promise<void>>>;
83
89
  }
@@ -111,6 +117,8 @@ export declare class EngineBuildsService {
111
117
  private removeLeftovers;
112
118
  /** The directory of the build the next load of `engine` uses; nothing installed, `undefined`. */
113
119
  activeDir(engine: EngineBuildId): Promise<string | undefined>;
120
+ /** The build the next load of `engine` uses, with what its record keeps (GenieX: the probe's devices). */
121
+ activeBuild(engine: EngineBuildId): Promise<Build | undefined>;
114
122
  /** The build the next MLX load starts: the newest of bundled and downloaded, bundled on a tie. */
115
123
  resolveMlxBinary(): Promise<string | undefined>;
116
124
  private builds;
@@ -1,6 +1,7 @@
1
1
  /**
2
- * Engine builds of sd.cpp and MLX: the catalog, the update check, the install, the removal and the
3
- * cleanup at start (openspec change `move-sdcpp-mlx-install-to-core`, spec `engine-builds`).
2
+ * Engine builds (sd.cpp, audio.cpp, MLX, Foundry Local, LiteRT-LM, GenieX): the catalog, the update
3
+ * check, the install, the removal and the cleanup at start (openspec change
4
+ * `move-sdcpp-mlx-install-to-core`, spec `engine-builds`).
4
5
  *
5
6
  * The core advises and the client decides (ADR 2026-09-27): the catalog and the update check only
6
7
  * read; an install happens when a client calls it, and that call is also the client's consent to
@@ -17,9 +18,10 @@
17
18
  * decision during its acceptance): the old ones stay listed, inactive, for the user to remove. The
18
19
  * `retired` and `kept_in_use` of an install answer are therefore always empty.
19
20
  *
20
- * sd.cpp walks down the host's ladder when a build unpacks but fails its probe (design D7): the pair
21
- * is remembered in `<data>/diffusion/failed-backends.json` and the next build is installed under the
22
- * same task id; only the last build's failure reaches the client.
21
+ * sd.cpp and audio.cpp walk down the host's ladder when a build unpacks but fails its probe (design
22
+ * D7): the pair is remembered in the engine's own failed-backends file
23
+ * (`<data>/diffusion/failed-backends.json`, `<data>/audio/failed-backends.json`) and the next build is
24
+ * installed under the same task id; only the last build's failure reaches the client.
23
25
  */
24
26
  import { readdir, rm } from 'node:fs/promises';
25
27
  import { join } from 'node:path';
@@ -42,11 +44,23 @@ const ref = (build) => ({
42
44
  backend_id: build.backend_id,
43
45
  origin: build.origin,
44
46
  });
47
+ /** What `archives` download in all; `null` when there are none or the manifest leaves a size out. */
48
+ function downloadBytes(archives) {
49
+ let total = 0;
50
+ for (const archive of archives) {
51
+ if (archive.size === undefined)
52
+ return null;
53
+ total += archive.size;
54
+ }
55
+ return archives.length > 0 ? total : null;
56
+ }
45
57
  const ENGINE_LABELS = {
46
58
  'sd-cpp': 'sd.cpp',
47
59
  'mlx': 'MLX',
48
60
  'foundry-local': 'Foundry Local',
49
61
  'litert-lm': 'LiteRT-LM',
62
+ 'geniex': 'GenieX',
63
+ 'audio-cpp': 'audio.cpp',
50
64
  };
51
65
  export function parseEngineBuildId(raw) {
52
66
  const known = ENGINE_BUILD_IDS.find((id) => id === raw);
@@ -74,6 +88,7 @@ export class EngineBuildsService {
74
88
  for (const build of builds)
75
89
  installed.push(await this.describe(build, active, inUse));
76
90
  const release = read.manifest ? this.engine(engine).release(read.manifest) : null;
91
+ const archives = read.manifest && choice.backend_id ? this.engine(engine).archives(read.manifest, choice.backend_id) : [];
77
92
  const manifest = release && read.source && read.fetched_at !== null
78
93
  ? {
79
94
  tag: release.tag,
@@ -89,6 +104,7 @@ export class EngineBuildsService {
89
104
  manifest_error: manifest ? null : read.error,
90
105
  host_backend_id: choice.backend_id,
91
106
  host_reason: choice.reason,
107
+ host_download_bytes: downloadBytes(archives),
92
108
  installed,
93
109
  active: installed.find((build) => build.active) ?? null,
94
110
  };
@@ -189,7 +205,8 @@ export class EngineBuildsService {
189
205
  const dir = join(this.deps.roots[engine], tag, backendId);
190
206
  const sha256 = archives[0]?.sha256 ?? null;
191
207
  const context = this.context(engine);
192
- const probe = this.deps.probe?.[engine] ?? ((staging) => descriptor.probe(staging, context));
208
+ const probe = this.deps.probe?.[engine] ?? ((staging) => descriptor.probe(staging, context, backendId));
209
+ let facts = null;
193
210
  const { replaced } = await installStaged({
194
211
  dataFolder: this.deps.dataFolder,
195
212
  target: dir,
@@ -201,7 +218,7 @@ export class EngineBuildsService {
201
218
  now: this.now,
202
219
  verify: async (staging) => {
203
220
  await descriptor.prepare?.(staging, context);
204
- await probe(staging).catch(onProbeFailure);
221
+ facts = (await probe(staging).catch(onProbeFailure)) ?? null;
205
222
  },
206
223
  record: (staging) => descriptor.record(staging, {
207
224
  tag,
@@ -211,6 +228,7 @@ export class EngineBuildsService {
211
228
  publishedAt,
212
229
  cApiVersion: cApiVersion ?? null,
213
230
  abi: abi ?? null,
231
+ probe: facts,
214
232
  }),
215
233
  });
216
234
  const build = { tag, backend_id: backendId, origin: 'downloaded' };
@@ -276,7 +294,11 @@ export class EngineBuildsService {
276
294
  // --- what is on disk -------------------------------------------------------------------------
277
295
  /** The directory of the build the next load of `engine` uses; nothing installed, `undefined`. */
278
296
  async activeDir(engine) {
279
- return this.activeOf(engine, await this.builds(engine))?.dir;
297
+ return (await this.activeBuild(engine))?.dir;
298
+ }
299
+ /** The build the next load of `engine` uses, with what its record keeps (GenieX: the probe's devices). */
300
+ async activeBuild(engine) {
301
+ return this.activeOf(engine, await this.builds(engine));
280
302
  }
281
303
  /** The build the next MLX load starts: the newest of bundled and downloaded, bundled on a tie. */
282
304
  async resolveMlxBinary() {
@@ -296,7 +318,7 @@ export class EngineBuildsService {
296
318
  context(engine) {
297
319
  return {
298
320
  root: this.deps.roots[engine],
299
- failedBackendsFile: this.deps.failedBackendsFile,
321
+ failedBackendsFile: this.deps.failedBackendsFiles[engine],
300
322
  resourcesDir: this.deps.resourcesDir,
301
323
  platform: this.deps.platform,
302
324
  hardware: this.deps.hardware,
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engine-builds/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engine-builds/service.ts"],"names":[],"mappings":"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"}
@@ -22,15 +22,16 @@ export interface EngineRemoveOptions {
22
22
  retainModels?: boolean;
23
23
  }
24
24
  /**
25
- * The engines registered on this host, in catalog order: the three llama.cpp providers and sd.cpp
26
- * everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
25
+ * The engines registered on this host, in catalog order: the three llama.cpp providers, sd.cpp and
26
+ * audio.cpp everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
27
27
  * `add-foundry-local` design D7), LiteRT-LM likewise (`liteRtLm`, change `add-litert-lm-runtime`
28
- * design D7), a managed engine where this core offers it (Linux, Windows with
28
+ * design D7), GenieX on a Snapdragon X (`geniex`, change `add-geniex-runtime` design D3), a managed engine where this core offers it (Linux, Windows with
29
29
  * Atomic Chat's WSL distribution).
30
30
  */
31
31
  export declare function hostEngines(platform: NodeJS.Platform, managed: readonly string[], host?: {
32
32
  foundryLocal?: boolean;
33
33
  liteRtLm?: boolean;
34
+ geniex?: boolean;
34
35
  }): EngineId[];
35
36
  export interface EnginesServiceDeps {
36
37
  engines: readonly EngineHandle[];
@@ -7,10 +7,10 @@
7
7
  import { AtomicCoreError, ENGINE_IDS, ENGINE_KINDS } from '../contracts/index.js';
8
8
  import { collectEngineVersions } from './versions.js';
9
9
  /**
10
- * The engines registered on this host, in catalog order: the three llama.cpp providers and sd.cpp
11
- * everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
10
+ * The engines registered on this host, in catalog order: the three llama.cpp providers, sd.cpp and
11
+ * audio.cpp everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
12
12
  * `add-foundry-local` design D7), LiteRT-LM likewise (`liteRtLm`, change `add-litert-lm-runtime`
13
- * design D7), a managed engine where this core offers it (Linux, Windows with
13
+ * design D7), GenieX on a Snapdragon X (`geniex`, change `add-geniex-runtime` design D3), a managed engine where this core offers it (Linux, Windows with
14
14
  * Atomic Chat's WSL distribution).
15
15
  */
16
16
  export function hostEngines(platform, managed, host = {}) {
@@ -21,6 +21,8 @@ export function hostEngines(platform, managed, host = {}) {
21
21
  return host.foundryLocal === true;
22
22
  if (engine === 'litert-lm')
23
23
  return host.liteRtLm === true;
24
+ if (engine === 'geniex')
25
+ return host.geniex === true;
24
26
  if (ENGINE_KINDS[engine] === 'managed')
25
27
  return managed.includes(engine);
26
28
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engines/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engines/service.ts"],"names":[],"mappings":"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"}
@@ -160,12 +160,15 @@ export async function engineBuildVersions(deps, request) {
160
160
  }
161
161
  : null;
162
162
  const manifest = catalog.manifest;
163
+ // With no update to offer (nothing active yet, or the active build is the manifest's), the size is
164
+ // the catalog's: what an install of the host build downloads.
163
165
  const latest = target ??
164
166
  (manifest && catalog.host_backend_id
165
167
  ? {
166
168
  version: manifest.tag,
167
169
  variant: catalog.host_backend_id,
168
170
  ...(manifest.published_at !== undefined ? { published_at: manifest.published_at } : {}),
171
+ ...(catalog.host_download_bytes !== null ? { download_bytes: catalog.host_download_bytes } : {}),
169
172
  }
170
173
  : null);
171
174
  const source = manifest?.source ?? null;