@atomic-chat/core 0.5.1 → 0.13.2

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 (970) hide show
  1. package/README.md +22 -0
  2. package/dist/app-daemon.js +20 -67
  3. package/dist/app-daemon.js.map +1 -1
  4. package/dist/backend/advisor/advisor.d.ts +132 -0
  5. package/dist/backend/advisor/advisor.js +537 -0
  6. package/dist/backend/advisor/advisor.js.map +1 -0
  7. package/dist/backend/advisor/index.d.ts +6 -0
  8. package/dist/backend/advisor/index.js +7 -0
  9. package/dist/backend/advisor/index.js.map +1 -0
  10. package/dist/backend/advisor/policy.d.ts +81 -0
  11. package/dist/backend/advisor/policy.js +154 -0
  12. package/dist/backend/advisor/policy.js.map +1 -0
  13. package/dist/backend/catalog/archive.d.ts +21 -7
  14. package/dist/backend/catalog/archive.js +57 -17
  15. package/dist/backend/catalog/archive.js.map +1 -1
  16. package/dist/backend/catalog/bundled-manifest-baseline.js +42 -26
  17. package/dist/backend/catalog/bundled-manifest-baseline.js.map +1 -1
  18. package/dist/backend/catalog/cuda-family.d.ts +12 -2
  19. package/dist/backend/catalog/cuda-family.js +30 -7
  20. package/dist/backend/catalog/cuda-family.js.map +1 -1
  21. package/dist/backend/catalog/index.d.ts +5 -0
  22. package/dist/backend/catalog/index.js +5 -0
  23. package/dist/backend/catalog/index.js.map +1 -1
  24. package/dist/backend/catalog/manifest.d.ts +5 -3
  25. package/dist/backend/catalog/manifest.js +12 -9
  26. package/dist/backend/catalog/manifest.js.map +1 -1
  27. package/dist/backend/catalog/migrate.d.ts +8 -6
  28. package/dist/backend/catalog/migrate.js +26 -15
  29. package/dist/backend/catalog/migrate.js.map +1 -1
  30. package/dist/backend/catalog/prism-catalog.d.ts +42 -0
  31. package/dist/backend/catalog/prism-catalog.js +101 -0
  32. package/dist/backend/catalog/prism-catalog.js.map +1 -0
  33. package/dist/backend/catalog/prism-manifest-baseline.d.ts +2 -0
  34. package/dist/backend/catalog/prism-manifest-baseline.js +11 -0
  35. package/dist/backend/catalog/prism-manifest-baseline.js.map +1 -0
  36. package/dist/backend/catalog/prism-manifest-baseline.json +134 -0
  37. package/dist/backend/catalog/prism-manifest.d.ts +90 -0
  38. package/dist/backend/catalog/prism-manifest.js +171 -0
  39. package/dist/backend/catalog/prism-manifest.js.map +1 -0
  40. package/dist/backend/catalog/turboquant-catalog.d.ts +60 -0
  41. package/dist/backend/catalog/turboquant-catalog.js +162 -0
  42. package/dist/backend/catalog/turboquant-catalog.js.map +1 -0
  43. package/dist/backend/catalog/turboquant-index.d.ts +104 -0
  44. package/dist/backend/catalog/turboquant-index.js +260 -0
  45. package/dist/backend/catalog/turboquant-index.js.map +1 -0
  46. package/dist/backend/index.d.ts +1 -0
  47. package/dist/backend/index.js +1 -0
  48. package/dist/backend/index.js.map +1 -1
  49. package/dist/backend/install/runtime-backend.d.ts +6 -6
  50. package/dist/backend/install/runtime-backend.js +23 -20
  51. package/dist/backend/install/runtime-backend.js.map +1 -1
  52. package/dist/backend/install/service.d.ts +106 -5
  53. package/dist/backend/install/service.js +247 -21
  54. package/dist/backend/install/service.js.map +1 -1
  55. package/dist/backend/installed/bundled.d.ts +19 -0
  56. package/dist/backend/installed/bundled.js +45 -0
  57. package/dist/backend/installed/bundled.js.map +1 -0
  58. package/dist/backend/installed/index.d.ts +1 -0
  59. package/dist/backend/installed/index.js +1 -0
  60. package/dist/backend/installed/index.js.map +1 -1
  61. package/dist/backend/installed/installed.js +3 -0
  62. package/dist/backend/installed/installed.js.map +1 -1
  63. package/dist/backend/optimal/optimal-cache.d.ts +27 -8
  64. package/dist/backend/optimal/optimal-cache.js +38 -19
  65. package/dist/backend/optimal/optimal-cache.js.map +1 -1
  66. package/dist/backend/optimal/optimal-store.js +1 -1
  67. package/dist/backend/optimal/optimal-store.js.map +1 -1
  68. package/dist/backend/select/categories.d.ts +2 -1
  69. package/dist/backend/select/categories.js +8 -1
  70. package/dist/backend/select/categories.js.map +1 -1
  71. package/dist/backend/select/features.d.ts +13 -5
  72. package/dist/backend/select/features.js +36 -6
  73. package/dist/backend/select/features.js.map +1 -1
  74. package/dist/backend/select/index.d.ts +2 -0
  75. package/dist/backend/select/index.js +2 -0
  76. package/dist/backend/select/index.js.map +1 -1
  77. package/dist/backend/select/prism.d.ts +54 -0
  78. package/dist/backend/select/prism.js +212 -0
  79. package/dist/backend/select/prism.js.map +1 -0
  80. package/dist/backend/select/recovery.d.ts +4 -2
  81. package/dist/backend/select/recovery.js +17 -5
  82. package/dist/backend/select/recovery.js.map +1 -1
  83. package/dist/backend/select/tiers.d.ts +20 -11
  84. package/dist/backend/select/tiers.js +49 -11
  85. package/dist/backend/select/tiers.js.map +1 -1
  86. package/dist/backend/select/turboquant-tiers.d.ts +45 -0
  87. package/dist/backend/select/turboquant-tiers.js +114 -0
  88. package/dist/backend/select/turboquant-tiers.js.map +1 -0
  89. package/dist/backend/types.d.ts +6 -69
  90. package/dist/cli/commands/backends.d.ts +10 -0
  91. package/dist/cli/commands/backends.js +142 -0
  92. package/dist/cli/commands/backends.js.map +1 -0
  93. package/dist/cli/commands/hardware.d.ts +13 -0
  94. package/dist/cli/commands/hardware.js +71 -0
  95. package/dist/cli/commands/hardware.js.map +1 -0
  96. package/dist/cli/commands/host-step.d.ts +28 -0
  97. package/dist/cli/commands/host-step.js +67 -0
  98. package/dist/cli/commands/host-step.js.map +1 -0
  99. package/dist/cli/commands/index.d.ts +4 -1
  100. package/dist/cli/commands/index.js +4 -1
  101. package/dist/cli/commands/index.js.map +1 -1
  102. package/dist/cli/commands/serve.js +4 -4
  103. package/dist/cli/commands/serve.js.map +1 -1
  104. package/dist/cli/commands/shared.d.ts +6 -1
  105. package/dist/cli/commands/shared.js +7 -0
  106. package/dist/cli/commands/shared.js.map +1 -1
  107. package/dist/cli/io.d.ts +11 -0
  108. package/dist/cli/io.js +28 -3
  109. package/dist/cli/io.js.map +1 -1
  110. package/dist/cli/launch.js +2 -2
  111. package/dist/cli/launch.js.map +1 -1
  112. package/dist/cli/main.d.ts +1 -1
  113. package/dist/cli/main.js +11 -1
  114. package/dist/cli/main.js.map +1 -1
  115. package/dist/client/control-client.d.ts +128 -7
  116. package/dist/client/control-client.js +211 -12
  117. package/dist/client/control-client.js.map +1 -1
  118. package/dist/cloud/registry.js +9 -1
  119. package/dist/cloud/registry.js.map +1 -1
  120. package/dist/config/paths.d.ts +137 -0
  121. package/dist/config/paths.js +163 -0
  122. package/dist/config/paths.js.map +1 -1
  123. package/dist/contracts/backend-advisor.d.ts +225 -0
  124. package/dist/contracts/backend-advisor.js +14 -0
  125. package/dist/contracts/backend-advisor.js.map +1 -0
  126. package/dist/contracts/control-api.d.ts +7 -1
  127. package/dist/contracts/control-api.js +7 -1
  128. package/dist/contracts/control-api.js.map +1 -1
  129. package/dist/contracts/decision.d.ts +394 -0
  130. package/dist/contracts/decision.js +69 -0
  131. package/dist/contracts/decision.js.map +1 -0
  132. package/dist/contracts/diffusion.d.ts +62 -9
  133. package/dist/contracts/embedding.d.ts +103 -0
  134. package/dist/contracts/embedding.js +24 -0
  135. package/dist/contracts/embedding.js.map +1 -0
  136. package/dist/contracts/engine-builds.d.ts +108 -0
  137. package/dist/contracts/engine-builds.js +11 -0
  138. package/dist/contracts/engine-builds.js.map +1 -0
  139. package/dist/contracts/engines.d.ts +157 -0
  140. package/dist/contracts/engines.js +50 -0
  141. package/dist/contracts/engines.js.map +1 -0
  142. package/dist/contracts/environment.d.ts +774 -0
  143. package/dist/contracts/environment.js +116 -0
  144. package/dist/contracts/environment.js.map +1 -0
  145. package/dist/contracts/errors.d.ts +43 -2
  146. package/dist/contracts/errors.js +41 -0
  147. package/dist/contracts/errors.js.map +1 -1
  148. package/dist/contracts/events.d.ts +82 -4
  149. package/dist/contracts/hardware.d.ts +79 -6
  150. package/dist/contracts/hardware.js +9 -5
  151. package/dist/contracts/hardware.js.map +1 -1
  152. package/dist/contracts/index.d.ts +8 -0
  153. package/dist/contracts/index.js +8 -0
  154. package/dist/contracts/index.js.map +1 -1
  155. package/dist/contracts/model-compatibility.d.ts +97 -0
  156. package/dist/contracts/model-compatibility.js +6 -0
  157. package/dist/contracts/model-compatibility.js.map +1 -0
  158. package/dist/contracts/model-setup.d.ts +115 -0
  159. package/dist/contracts/model-setup.js +33 -0
  160. package/dist/contracts/model-setup.js.map +1 -0
  161. package/dist/contracts/model-yml.d.ts +14 -0
  162. package/dist/contracts/model-yml.js +1 -0
  163. package/dist/contracts/model-yml.js.map +1 -1
  164. package/dist/contracts/session.d.ts +45 -2
  165. package/dist/contracts/session.js +14 -1
  166. package/dist/contracts/session.js.map +1 -1
  167. package/dist/contracts/settings.d.ts +44 -1
  168. package/dist/contracts/settings.js.map +1 -1
  169. package/dist/core/atomic-core.d.ts +44 -5
  170. package/dist/core/atomic-core.js +24 -0
  171. package/dist/core/atomic-core.js.map +1 -1
  172. package/dist/core/create.js +517 -23
  173. package/dist/core/create.js.map +1 -1
  174. package/dist/core/gpu/index.d.ts +6 -0
  175. package/dist/core/gpu/index.js +7 -0
  176. package/dist/core/gpu/index.js.map +1 -0
  177. package/dist/core/gpu/policy.d.ts +68 -0
  178. package/dist/core/gpu/policy.js +99 -0
  179. package/dist/core/gpu/policy.js.map +1 -0
  180. package/dist/core/gpu/residency.d.ts +44 -0
  181. package/dist/core/gpu/residency.js +101 -0
  182. package/dist/core/gpu/residency.js.map +1 -0
  183. package/dist/core/gpu-residency.d.ts +39 -0
  184. package/dist/core/gpu-residency.js +32 -0
  185. package/dist/core/gpu-residency.js.map +1 -0
  186. package/dist/core/index.d.ts +1 -1
  187. package/dist/core/managed-engines.d.ts +207 -0
  188. package/dist/core/managed-engines.js +579 -0
  189. package/dist/core/managed-engines.js.map +1 -0
  190. package/dist/core/managed-environment.d.ts +72 -0
  191. package/dist/core/managed-environment.js +218 -0
  192. package/dist/core/managed-environment.js.map +1 -0
  193. package/dist/core/model-setup/index.d.ts +4 -0
  194. package/dist/core/model-setup/index.js +5 -0
  195. package/dist/core/model-setup/index.js.map +1 -0
  196. package/dist/core/model-setup/plan.d.ts +56 -0
  197. package/dist/core/model-setup/plan.js +158 -0
  198. package/dist/core/model-setup/plan.js.map +1 -0
  199. package/dist/core/model-setup/service.d.ts +92 -0
  200. package/dist/core/model-setup/service.js +329 -0
  201. package/dist/core/model-setup/service.js.map +1 -0
  202. package/dist/core/model-setup/store.d.ts +29 -0
  203. package/dist/core/model-setup/store.js +116 -0
  204. package/dist/core/model-setup/store.js.map +1 -0
  205. package/dist/core/model-setup/wiring.d.ts +59 -0
  206. package/dist/core/model-setup/wiring.js +132 -0
  207. package/dist/core/model-setup/wiring.js.map +1 -0
  208. package/dist/core/prism.d.ts +36 -0
  209. package/dist/core/prism.js +42 -0
  210. package/dist/core/prism.js.map +1 -0
  211. package/dist/core/public-server.d.ts +7 -0
  212. package/dist/core/public-server.js +2 -0
  213. package/dist/core/public-server.js.map +1 -1
  214. package/dist/core/sessions.d.ts +6 -1
  215. package/dist/core/sessions.js +18 -14
  216. package/dist/core/sessions.js.map +1 -1
  217. package/dist/core/types.d.ts +27 -1
  218. package/dist/core/types.js.map +1 -1
  219. package/dist/decision/args.d.ts +110 -0
  220. package/dist/decision/args.js +126 -0
  221. package/dist/decision/args.js.map +1 -0
  222. package/dist/decision/backoff.d.ts +25 -0
  223. package/dist/decision/backoff.js +33 -0
  224. package/dist/decision/backoff.js.map +1 -0
  225. package/dist/decision/engine-candidates.d.ts +52 -0
  226. package/dist/decision/engine-candidates.js +138 -0
  227. package/dist/decision/engine-candidates.js.map +1 -0
  228. package/dist/decision/engine-fallback.d.ts +41 -0
  229. package/dist/decision/engine-fallback.js +57 -0
  230. package/dist/decision/engine-fallback.js.map +1 -0
  231. package/dist/decision/engine-version.d.ts +27 -0
  232. package/dist/decision/engine-version.js +54 -0
  233. package/dist/decision/engine-version.js.map +1 -0
  234. package/dist/decision/engine.d.ts +114 -0
  235. package/dist/decision/engine.js +253 -0
  236. package/dist/decision/engine.js.map +1 -0
  237. package/dist/decision/http.d.ts +36 -0
  238. package/dist/decision/http.js +73 -0
  239. package/dist/decision/http.js.map +1 -0
  240. package/dist/decision/index.d.ts +20 -0
  241. package/dist/decision/index.js +21 -0
  242. package/dist/decision/index.js.map +1 -0
  243. package/dist/decision/model-facts.d.ts +32 -0
  244. package/dist/decision/model-facts.js +40 -0
  245. package/dist/decision/model-facts.js.map +1 -0
  246. package/dist/decision/outcome.d.ts +35 -0
  247. package/dist/decision/outcome.js +105 -0
  248. package/dist/decision/outcome.js.map +1 -0
  249. package/dist/decision/process.d.ts +67 -0
  250. package/dist/decision/process.js +133 -0
  251. package/dist/decision/process.js.map +1 -0
  252. package/dist/decision/readiness.d.ts +74 -0
  253. package/dist/decision/readiness.js +165 -0
  254. package/dist/decision/readiness.js.map +1 -0
  255. package/dist/decision/request.d.ts +11 -0
  256. package/dist/decision/request.js +56 -0
  257. package/dist/decision/request.js.map +1 -0
  258. package/dist/decision/service.d.ts +202 -0
  259. package/dist/decision/service.js +711 -0
  260. package/dist/decision/service.js.map +1 -0
  261. package/dist/decision/upstream-version.d.ts +23 -0
  262. package/dist/decision/upstream-version.js +34 -0
  263. package/dist/decision/upstream-version.js.map +1 -0
  264. package/dist/decision/wiring.d.ts +67 -0
  265. package/dist/decision/wiring.js +101 -0
  266. package/dist/decision/wiring.js.map +1 -0
  267. package/dist/diffusion/args.d.ts +4 -2
  268. package/dist/diffusion/args.js +10 -3
  269. package/dist/diffusion/args.js.map +1 -1
  270. package/dist/diffusion/image-job.js +1 -1
  271. package/dist/diffusion/image-job.js.map +1 -1
  272. package/dist/diffusion/install.d.ts +35 -11
  273. package/dist/diffusion/install.js +74 -49
  274. package/dist/diffusion/install.js.map +1 -1
  275. package/dist/diffusion/job-kind.d.ts +33 -7
  276. package/dist/diffusion/jobs.d.ts +6 -1
  277. package/dist/diffusion/jobs.js +60 -18
  278. package/dist/diffusion/jobs.js.map +1 -1
  279. package/dist/diffusion/parse.d.ts +1 -2
  280. package/dist/diffusion/parse.js +1 -13
  281. package/dist/diffusion/parse.js.map +1 -1
  282. package/dist/diffusion/progress.js +3 -0
  283. package/dist/diffusion/progress.js.map +1 -1
  284. package/dist/diffusion/server-process.d.ts +6 -0
  285. package/dist/diffusion/server-process.js +3 -2
  286. package/dist/diffusion/server-process.js.map +1 -1
  287. package/dist/diffusion/service.d.ts +52 -6
  288. package/dist/diffusion/service.js +215 -40
  289. package/dist/diffusion/service.js.map +1 -1
  290. package/dist/diffusion/session.d.ts +27 -3
  291. package/dist/diffusion/session.js +108 -17
  292. package/dist/diffusion/session.js.map +1 -1
  293. package/dist/diffusion/state.d.ts +19 -1
  294. package/dist/diffusion/state.js +10 -0
  295. package/dist/diffusion/state.js.map +1 -1
  296. package/dist/diffusion/tracker.d.ts +15 -1
  297. package/dist/diffusion/tracker.js +32 -6
  298. package/dist/diffusion/tracker.js.map +1 -1
  299. package/dist/diffusion/types.d.ts +7 -0
  300. package/dist/diffusion/types.js +11 -0
  301. package/dist/diffusion/types.js.map +1 -1
  302. package/dist/diffusion/video-estimate.d.ts +214 -0
  303. package/dist/diffusion/video-estimate.js +402 -0
  304. package/dist/diffusion/video-estimate.js.map +1 -0
  305. package/dist/diffusion/video-eta.d.ts +90 -0
  306. package/dist/diffusion/video-eta.js +248 -0
  307. package/dist/diffusion/video-eta.js.map +1 -0
  308. package/dist/diffusion/video-history.d.ts +45 -0
  309. package/dist/diffusion/video-history.js +121 -0
  310. package/dist/diffusion/video-history.js.map +1 -0
  311. package/dist/diffusion/video-job.d.ts +13 -5
  312. package/dist/diffusion/video-job.js +42 -15
  313. package/dist/diffusion/video-job.js.map +1 -1
  314. package/dist/diffusion/video-recipe.js +3 -0
  315. package/dist/diffusion/video-recipe.js.map +1 -1
  316. package/dist/diffusion/video-tiling.d.ts +54 -0
  317. package/dist/diffusion/video-tiling.js +70 -0
  318. package/dist/diffusion/video-tiling.js.map +1 -0
  319. package/dist/diffusion/wiring.d.ts +14 -1
  320. package/dist/diffusion/wiring.js +7 -0
  321. package/dist/diffusion/wiring.js.map +1 -1
  322. package/dist/downloads/protocol.d.ts +3 -8
  323. package/dist/downloads/protocol.js.map +1 -1
  324. package/dist/embedding/args.d.ts +39 -0
  325. package/dist/embedding/args.js +46 -0
  326. package/dist/embedding/args.js.map +1 -0
  327. package/dist/embedding/engine.d.ts +50 -0
  328. package/dist/embedding/engine.js +100 -0
  329. package/dist/embedding/engine.js.map +1 -0
  330. package/dist/embedding/ffmpeg.d.ts +18 -0
  331. package/dist/embedding/ffmpeg.js +63 -0
  332. package/dist/embedding/ffmpeg.js.map +1 -0
  333. package/dist/embedding/index.d.ts +16 -0
  334. package/dist/embedding/index.js +17 -0
  335. package/dist/embedding/index.js.map +1 -0
  336. package/dist/embedding/model-facts.d.ts +51 -0
  337. package/dist/embedding/model-facts.js +84 -0
  338. package/dist/embedding/model-facts.js.map +1 -0
  339. package/dist/embedding/process.d.ts +66 -0
  340. package/dist/embedding/process.js +131 -0
  341. package/dist/embedding/process.js.map +1 -0
  342. package/dist/embedding/readiness.d.ts +56 -0
  343. package/dist/embedding/readiness.js +114 -0
  344. package/dist/embedding/readiness.js.map +1 -0
  345. package/dist/embedding/request.d.ts +43 -0
  346. package/dist/embedding/request.js +285 -0
  347. package/dist/embedding/request.js.map +1 -0
  348. package/dist/embedding/service.d.ts +152 -0
  349. package/dist/embedding/service.js +602 -0
  350. package/dist/embedding/service.js.map +1 -0
  351. package/dist/embedding/wiring.d.ts +51 -0
  352. package/dist/embedding/wiring.js +79 -0
  353. package/dist/embedding/wiring.js.map +1 -0
  354. package/dist/engine-builds/builds.d.ts +54 -0
  355. package/dist/engine-builds/builds.js +151 -0
  356. package/dist/engine-builds/builds.js.map +1 -0
  357. package/dist/engine-builds/index.d.ts +10 -0
  358. package/dist/engine-builds/index.js +11 -0
  359. package/dist/engine-builds/index.js.map +1 -0
  360. package/dist/engine-builds/install.d.ts +42 -0
  361. package/dist/engine-builds/install.js +100 -0
  362. package/dist/engine-builds/install.js.map +1 -0
  363. package/dist/engine-builds/manifest.d.ts +121 -0
  364. package/dist/engine-builds/manifest.js +254 -0
  365. package/dist/engine-builds/manifest.js.map +1 -0
  366. package/dist/engine-builds/order.d.ts +24 -0
  367. package/dist/engine-builds/order.js +44 -0
  368. package/dist/engine-builds/order.js.map +1 -0
  369. package/dist/engine-builds/select.d.ts +123 -0
  370. package/dist/engine-builds/select.js +223 -0
  371. package/dist/engine-builds/select.js.map +1 -0
  372. package/dist/engine-builds/service.d.ts +123 -0
  373. package/dist/engine-builds/service.js +392 -0
  374. package/dist/engine-builds/service.js.map +1 -0
  375. package/dist/engines/descriptor-order.d.ts +28 -0
  376. package/dist/engines/descriptor-order.js +60 -0
  377. package/dist/engines/descriptor-order.js.map +1 -0
  378. package/dist/engines/engine-build.d.ts +23 -0
  379. package/dist/engines/engine-build.js +58 -0
  380. package/dist/engines/engine-build.js.map +1 -0
  381. package/dist/engines/index.d.ts +10 -0
  382. package/dist/engines/index.js +11 -0
  383. package/dist/engines/index.js.map +1 -0
  384. package/dist/engines/llamacpp.d.ts +71 -0
  385. package/dist/engines/llamacpp.js +176 -0
  386. package/dist/engines/llamacpp.js.map +1 -0
  387. package/dist/engines/managed.d.ts +49 -0
  388. package/dist/engines/managed.js +88 -0
  389. package/dist/engines/managed.js.map +1 -0
  390. package/dist/engines/service.d.ts +46 -0
  391. package/dist/engines/service.js +61 -0
  392. package/dist/engines/service.js.map +1 -0
  393. package/dist/engines/versions.d.ts +65 -0
  394. package/dist/engines/versions.js +259 -0
  395. package/dist/engines/versions.js.map +1 -0
  396. package/dist/hardware/cpu-flags.d.ts +44 -0
  397. package/dist/hardware/cpu-flags.js +206 -0
  398. package/dist/hardware/cpu-flags.js.map +1 -0
  399. package/dist/hardware/drm-sysfs.d.ts +51 -0
  400. package/dist/hardware/drm-sysfs.js +67 -0
  401. package/dist/hardware/drm-sysfs.js.map +1 -0
  402. package/dist/hardware/facts.d.ts +42 -0
  403. package/dist/hardware/facts.js +92 -0
  404. package/dist/hardware/facts.js.map +1 -0
  405. package/dist/hardware/index.d.ts +19 -3
  406. package/dist/hardware/index.js +19 -3
  407. package/dist/hardware/index.js.map +1 -1
  408. package/dist/hardware/merge.d.ts +55 -0
  409. package/dist/hardware/merge.js +141 -0
  410. package/dist/hardware/merge.js.map +1 -0
  411. package/dist/hardware/nvidia-smi.d.ts +43 -0
  412. package/dist/hardware/nvidia-smi.js +118 -0
  413. package/dist/hardware/nvidia-smi.js.map +1 -0
  414. package/dist/hardware/probe-common.d.ts +72 -0
  415. package/dist/hardware/probe-common.js +106 -0
  416. package/dist/hardware/probe-common.js.map +1 -0
  417. package/dist/hardware/probe-darwin.d.ts +20 -0
  418. package/dist/hardware/probe-darwin.js +76 -0
  419. package/dist/hardware/probe-darwin.js.map +1 -0
  420. package/dist/hardware/probe-linux.d.ts +9 -0
  421. package/dist/hardware/probe-linux.js +133 -0
  422. package/dist/hardware/probe-linux.js.map +1 -0
  423. package/dist/hardware/probe-windows.d.ts +7 -0
  424. package/dist/hardware/probe-windows.js +50 -0
  425. package/dist/hardware/probe-windows.js.map +1 -0
  426. package/dist/hardware/probe.d.ts +16 -0
  427. package/dist/hardware/probe.js +65 -0
  428. package/dist/hardware/probe.js.map +1 -0
  429. package/dist/hardware/service.d.ts +60 -0
  430. package/dist/hardware/service.js +114 -0
  431. package/dist/hardware/service.js.map +1 -0
  432. package/dist/hardware/vulkan.d.ts +47 -0
  433. package/dist/hardware/vulkan.js +148 -0
  434. package/dist/hardware/vulkan.js.map +1 -0
  435. package/dist/hardware/windows-video.d.ts +97 -0
  436. package/dist/hardware/windows-video.js +214 -0
  437. package/dist/hardware/windows-video.js.map +1 -0
  438. package/dist/host/app-daemon.d.ts +47 -0
  439. package/dist/host/app-daemon.js +146 -0
  440. package/dist/host/app-daemon.js.map +1 -0
  441. package/dist/host/index.d.ts +5 -3
  442. package/dist/host/index.js +5 -3
  443. package/dist/host/index.js.map +1 -1
  444. package/dist/host/log-file.d.ts +74 -0
  445. package/dist/host/log-file.js +214 -0
  446. package/dist/host/log-file.js.map +1 -0
  447. package/dist/host/recipes/enable-wsl.d.ts +63 -0
  448. package/dist/host/recipes/enable-wsl.js +73 -0
  449. package/dist/host/recipes/enable-wsl.js.map +1 -0
  450. package/dist/host/recipes/executor-io-windows.d.ts +69 -0
  451. package/dist/host/recipes/executor-io-windows.js +235 -0
  452. package/dist/host/recipes/executor-io-windows.js.map +1 -0
  453. package/dist/host/recipes/executor-io.d.ts +80 -0
  454. package/dist/host/recipes/executor-io.js +211 -0
  455. package/dist/host/recipes/executor-io.js.map +1 -0
  456. package/dist/host/recipes/executor.d.ts +81 -0
  457. package/dist/host/recipes/executor.js +678 -0
  458. package/dist/host/recipes/executor.js.map +1 -0
  459. package/dist/host/recipes/guest-executor.d.ts +29 -0
  460. package/dist/host/recipes/guest-executor.js +76 -0
  461. package/dist/host/recipes/guest-executor.js.map +1 -0
  462. package/dist/host/recipes/index.d.ts +16 -0
  463. package/dist/host/recipes/index.js +17 -0
  464. package/dist/host/recipes/index.js.map +1 -0
  465. package/dist/host/recipes/install-container-runtime.d.ts +389 -0
  466. package/dist/host/recipes/install-container-runtime.js +796 -0
  467. package/dist/host/recipes/install-container-runtime.js.map +1 -0
  468. package/dist/host/recipes/openpgp.d.ts +23 -0
  469. package/dist/host/recipes/openpgp.js +153 -0
  470. package/dist/host/recipes/openpgp.js.map +1 -0
  471. package/dist/host/recipes/request-file.d.ts +96 -0
  472. package/dist/host/recipes/request-file.js +103 -0
  473. package/dist/host/recipes/request-file.js.map +1 -0
  474. package/dist/lock/process-journal.d.ts +5 -2
  475. package/dist/lock/process-journal.js.map +1 -1
  476. package/dist/models/capabilities.d.ts +7 -0
  477. package/dist/models/capabilities.js +17 -1
  478. package/dist/models/capabilities.js.map +1 -1
  479. package/dist/models/compatibility/index.d.ts +10 -0
  480. package/dist/models/compatibility/index.js +11 -0
  481. package/dist/models/compatibility/index.js.map +1 -0
  482. package/dist/models/compatibility/inspect.d.ts +19 -0
  483. package/dist/models/compatibility/inspect.js +59 -0
  484. package/dist/models/compatibility/inspect.js.map +1 -0
  485. package/dist/models/compatibility/resolve.d.ts +59 -0
  486. package/dist/models/compatibility/resolve.js +219 -0
  487. package/dist/models/compatibility/resolve.js.map +1 -0
  488. package/dist/models/compatibility/rules-baseline.d.ts +2 -0
  489. package/dist/models/compatibility/rules-baseline.js +10 -0
  490. package/dist/models/compatibility/rules-baseline.js.map +1 -0
  491. package/dist/models/compatibility/rules-baseline.json +292 -0
  492. package/dist/models/compatibility/rules-service.d.ts +36 -0
  493. package/dist/models/compatibility/rules-service.js +109 -0
  494. package/dist/models/compatibility/rules-service.js.map +1 -0
  495. package/dist/models/compatibility/rules.d.ts +81 -0
  496. package/dist/models/compatibility/rules.js +164 -0
  497. package/dist/models/compatibility/rules.js.map +1 -0
  498. package/dist/models/compatibility/service.d.ts +59 -0
  499. package/dist/models/compatibility/service.js +137 -0
  500. package/dist/models/compatibility/service.js.map +1 -0
  501. package/dist/models/decision-checkpoint.d.ts +22 -0
  502. package/dist/models/decision-checkpoint.js +33 -0
  503. package/dist/models/decision-checkpoint.js.map +1 -0
  504. package/dist/models/gguf/classify.d.ts +27 -1
  505. package/dist/models/gguf/classify.js +78 -2
  506. package/dist/models/gguf/classify.js.map +1 -1
  507. package/dist/models/gguf/index.d.ts +1 -0
  508. package/dist/models/gguf/index.js +1 -0
  509. package/dist/models/gguf/index.js.map +1 -1
  510. package/dist/models/gguf/tensors.d.ts +56 -0
  511. package/dist/models/gguf/tensors.js +236 -0
  512. package/dist/models/gguf/tensors.js.map +1 -0
  513. package/dist/models/index.d.ts +2 -0
  514. package/dist/models/index.js +2 -0
  515. package/dist/models/index.js.map +1 -1
  516. package/dist/router/resolve.d.ts +7 -1
  517. package/dist/router/resolve.js +14 -1
  518. package/dist/router/resolve.js.map +1 -1
  519. package/dist/runtime/container/argv.d.ts +88 -0
  520. package/dist/runtime/container/argv.js +406 -0
  521. package/dist/runtime/container/argv.js.map +1 -0
  522. package/dist/runtime/container/docker-binary.d.ts +4 -0
  523. package/dist/runtime/container/docker-binary.js +34 -0
  524. package/dist/runtime/container/docker-binary.js.map +1 -0
  525. package/dist/runtime/container/env.d.ts +17 -0
  526. package/dist/runtime/container/env.js +52 -0
  527. package/dist/runtime/container/env.js.map +1 -0
  528. package/dist/runtime/container/exec.d.ts +27 -0
  529. package/dist/runtime/container/exec.js +79 -0
  530. package/dist/runtime/container/exec.js.map +1 -0
  531. package/dist/runtime/container/execution-journal.d.ts +55 -0
  532. package/dist/runtime/container/execution-journal.js +167 -0
  533. package/dist/runtime/container/execution-journal.js.map +1 -0
  534. package/dist/runtime/container/heartbeat.d.ts +47 -0
  535. package/dist/runtime/container/heartbeat.js +78 -0
  536. package/dist/runtime/container/heartbeat.js.map +1 -0
  537. package/dist/runtime/container/index.d.ts +30 -0
  538. package/dist/runtime/container/index.js +31 -0
  539. package/dist/runtime/container/index.js.map +1 -0
  540. package/dist/runtime/container/operations.d.ts +40 -0
  541. package/dist/runtime/container/operations.js +233 -0
  542. package/dist/runtime/container/operations.js.map +1 -0
  543. package/dist/runtime/container/pull.d.ts +48 -0
  544. package/dist/runtime/container/pull.js +280 -0
  545. package/dist/runtime/container/pull.js.map +1 -0
  546. package/dist/runtime/container/reconcile.d.ts +34 -0
  547. package/dist/runtime/container/reconcile.js +79 -0
  548. package/dist/runtime/container/reconcile.js.map +1 -0
  549. package/dist/runtime/container/types.d.ts +124 -0
  550. package/dist/runtime/container/types.js +2 -0
  551. package/dist/runtime/container/types.js.map +1 -0
  552. package/dist/runtime/container/watchdog.d.ts +114 -0
  553. package/dist/runtime/container/watchdog.js +418 -0
  554. package/dist/runtime/container/watchdog.js.map +1 -0
  555. package/dist/runtime/container/wiring.d.ts +78 -0
  556. package/dist/runtime/container/wiring.js +92 -0
  557. package/dist/runtime/container/wiring.js.map +1 -0
  558. package/dist/runtime/container/wsl-exec.d.ts +13 -0
  559. package/dist/runtime/container/wsl-exec.js +18 -0
  560. package/dist/runtime/container/wsl-exec.js.map +1 -0
  561. package/dist/runtime/environment/cached-document.d.ts +128 -0
  562. package/dist/runtime/environment/cached-document.js +218 -0
  563. package/dist/runtime/environment/cached-document.js.map +1 -0
  564. package/dist/runtime/environment/canonical-json.d.ts +78 -0
  565. package/dist/runtime/environment/canonical-json.js +86 -0
  566. package/dist/runtime/environment/canonical-json.js.map +1 -0
  567. package/dist/runtime/environment/descriptor-provider.d.ts +121 -0
  568. package/dist/runtime/environment/descriptor-provider.js +159 -0
  569. package/dist/runtime/environment/descriptor-provider.js.map +1 -0
  570. package/dist/runtime/environment/descriptor.d.ts +35 -0
  571. package/dist/runtime/environment/descriptor.js +239 -0
  572. package/dist/runtime/environment/descriptor.js.map +1 -0
  573. package/dist/runtime/environment/diagnostics.d.ts +50 -0
  574. package/dist/runtime/environment/diagnostics.js +114 -0
  575. package/dist/runtime/environment/diagnostics.js.map +1 -0
  576. package/dist/runtime/environment/document-fields.d.ts +39 -0
  577. package/dist/runtime/environment/document-fields.js +96 -0
  578. package/dist/runtime/environment/document-fields.js.map +1 -0
  579. package/dist/runtime/environment/environment-manifest-provider.d.ts +65 -0
  580. package/dist/runtime/environment/environment-manifest-provider.js +89 -0
  581. package/dist/runtime/environment/environment-manifest-provider.js.map +1 -0
  582. package/dist/runtime/environment/environment-manifest.d.ts +35 -0
  583. package/dist/runtime/environment/environment-manifest.js +131 -0
  584. package/dist/runtime/environment/environment-manifest.js.map +1 -0
  585. package/dist/runtime/environment/guest-host.d.ts +43 -0
  586. package/dist/runtime/environment/guest-host.js +88 -0
  587. package/dist/runtime/environment/guest-host.js.map +1 -0
  588. package/dist/runtime/environment/host-exec.d.ts +38 -0
  589. package/dist/runtime/environment/host-exec.js +145 -0
  590. package/dist/runtime/environment/host-exec.js.map +1 -0
  591. package/dist/runtime/environment/host-step-failure.d.ts +33 -0
  592. package/dist/runtime/environment/host-step-failure.js +34 -0
  593. package/dist/runtime/environment/host-step-failure.js.map +1 -0
  594. package/dist/runtime/environment/index.d.ts +56 -0
  595. package/dist/runtime/environment/index.js +57 -0
  596. package/dist/runtime/environment/index.js.map +1 -0
  597. package/dist/runtime/environment/installations.d.ts +25 -0
  598. package/dist/runtime/environment/installations.js +70 -0
  599. package/dist/runtime/environment/installations.js.map +1 -0
  600. package/dist/runtime/environment/inventory.d.ts +42 -0
  601. package/dist/runtime/environment/inventory.js +57 -0
  602. package/dist/runtime/environment/inventory.js.map +1 -0
  603. package/dist/runtime/environment/linux-blockers.d.ts +130 -0
  604. package/dist/runtime/environment/linux-blockers.js +251 -0
  605. package/dist/runtime/environment/linux-blockers.js.map +1 -0
  606. package/dist/runtime/environment/linux-docker-facts.d.ts +200 -0
  607. package/dist/runtime/environment/linux-docker-facts.js +342 -0
  608. package/dist/runtime/environment/linux-docker-facts.js.map +1 -0
  609. package/dist/runtime/environment/linux-docker-network.d.ts +80 -0
  610. package/dist/runtime/environment/linux-docker-network.js +195 -0
  611. package/dist/runtime/environment/linux-docker-network.js.map +1 -0
  612. package/dist/runtime/environment/linux-host.d.ts +22 -0
  613. package/dist/runtime/environment/linux-host.js +98 -0
  614. package/dist/runtime/environment/linux-host.js.map +1 -0
  615. package/dist/runtime/environment/linux-plan.d.ts +126 -0
  616. package/dist/runtime/environment/linux-plan.js +392 -0
  617. package/dist/runtime/environment/linux-plan.js.map +1 -0
  618. package/dist/runtime/environment/linux-probe.d.ts +245 -0
  619. package/dist/runtime/environment/linux-probe.js +315 -0
  620. package/dist/runtime/environment/linux-probe.js.map +1 -0
  621. package/dist/runtime/environment/linux-provisioner.d.ts +102 -0
  622. package/dist/runtime/environment/linux-provisioner.js +734 -0
  623. package/dist/runtime/environment/linux-provisioner.js.map +1 -0
  624. package/dist/runtime/environment/provisioner-descriptors.d.ts +17 -0
  625. package/dist/runtime/environment/provisioner-descriptors.js +62 -0
  626. package/dist/runtime/environment/provisioner-descriptors.js.map +1 -0
  627. package/dist/runtime/environment/recovery.d.ts +74 -0
  628. package/dist/runtime/environment/recovery.js +121 -0
  629. package/dist/runtime/environment/recovery.js.map +1 -0
  630. package/dist/runtime/environment/rootfs-download.d.ts +2 -0
  631. package/dist/runtime/environment/rootfs-download.js +47 -0
  632. package/dist/runtime/environment/rootfs-download.js.map +1 -0
  633. package/dist/runtime/environment/service.d.ts +280 -0
  634. package/dist/runtime/environment/service.js +776 -0
  635. package/dist/runtime/environment/service.js.map +1 -0
  636. package/dist/runtime/environment/state.d.ts +163 -0
  637. package/dist/runtime/environment/state.js +479 -0
  638. package/dist/runtime/environment/state.js.map +1 -0
  639. package/dist/runtime/environment/store-models.d.ts +19 -0
  640. package/dist/runtime/environment/store-models.js +30 -0
  641. package/dist/runtime/environment/store-models.js.map +1 -0
  642. package/dist/runtime/environment/store.d.ts +210 -0
  643. package/dist/runtime/environment/store.js +438 -0
  644. package/dist/runtime/environment/store.js.map +1 -0
  645. package/dist/runtime/environment/windows-environment-record.d.ts +48 -0
  646. package/dist/runtime/environment/windows-environment-record.js +89 -0
  647. package/dist/runtime/environment/windows-environment-record.js.map +1 -0
  648. package/dist/runtime/environment/windows-forwarding.d.ts +27 -0
  649. package/dist/runtime/environment/windows-forwarding.js +84 -0
  650. package/dist/runtime/environment/windows-forwarding.js.map +1 -0
  651. package/dist/runtime/environment/windows-guest-setup.d.ts +48 -0
  652. package/dist/runtime/environment/windows-guest-setup.js +157 -0
  653. package/dist/runtime/environment/windows-guest-setup.js.map +1 -0
  654. package/dist/runtime/environment/windows-host.d.ts +46 -0
  655. package/dist/runtime/environment/windows-host.js +163 -0
  656. package/dist/runtime/environment/windows-host.js.map +1 -0
  657. package/dist/runtime/environment/windows-plan.d.ts +78 -0
  658. package/dist/runtime/environment/windows-plan.js +216 -0
  659. package/dist/runtime/environment/windows-plan.js.map +1 -0
  660. package/dist/runtime/environment/windows-probe.d.ts +135 -0
  661. package/dist/runtime/environment/windows-probe.js +261 -0
  662. package/dist/runtime/environment/windows-probe.js.map +1 -0
  663. package/dist/runtime/environment/windows-provisioner.d.ts +113 -0
  664. package/dist/runtime/environment/windows-provisioner.js +782 -0
  665. package/dist/runtime/environment/windows-provisioner.js.map +1 -0
  666. package/dist/runtime/environment/wiring.d.ts +117 -0
  667. package/dist/runtime/environment/wiring.js +354 -0
  668. package/dist/runtime/environment/wiring.js.map +1 -0
  669. package/dist/runtime/foundation-models/runtime.d.ts +8 -0
  670. package/dist/runtime/foundation-models/runtime.js +5 -2
  671. package/dist/runtime/foundation-models/runtime.js.map +1 -1
  672. package/dist/runtime/llamacpp/args.d.ts +10 -1
  673. package/dist/runtime/llamacpp/args.js +43 -7
  674. package/dist/runtime/llamacpp/args.js.map +1 -1
  675. package/dist/runtime/llamacpp/fit-margin.d.ts +46 -0
  676. package/dist/runtime/llamacpp/fit-margin.js +47 -0
  677. package/dist/runtime/llamacpp/fit-margin.js.map +1 -0
  678. package/dist/runtime/llamacpp/index.d.ts +1 -0
  679. package/dist/runtime/llamacpp/index.js +1 -0
  680. package/dist/runtime/llamacpp/index.js.map +1 -1
  681. package/dist/runtime/llamacpp/load-plan.d.ts +23 -1
  682. package/dist/runtime/llamacpp/load-plan.js +82 -1
  683. package/dist/runtime/llamacpp/load-plan.js.map +1 -1
  684. package/dist/runtime/llamacpp/policy.d.ts +16 -0
  685. package/dist/runtime/llamacpp/policy.js +20 -0
  686. package/dist/runtime/llamacpp/policy.js.map +1 -1
  687. package/dist/runtime/llamacpp/probe.d.ts +21 -1
  688. package/dist/runtime/llamacpp/probe.js +32 -6
  689. package/dist/runtime/llamacpp/probe.js.map +1 -1
  690. package/dist/runtime/llamacpp/runtime.d.ts +56 -1
  691. package/dist/runtime/llamacpp/runtime.js +142 -15
  692. package/dist/runtime/llamacpp/runtime.js.map +1 -1
  693. package/dist/runtime/managed-engines/index.d.ts +8 -0
  694. package/dist/runtime/managed-engines/index.js +9 -0
  695. package/dist/runtime/managed-engines/index.js.map +1 -0
  696. package/dist/runtime/managed-engines/runtime.d.ts +140 -0
  697. package/dist/runtime/managed-engines/runtime.js +402 -0
  698. package/dist/runtime/managed-engines/runtime.js.map +1 -0
  699. package/dist/runtime/managed-engines/spec.d.ts +70 -0
  700. package/dist/runtime/managed-engines/spec.js +39 -0
  701. package/dist/runtime/managed-engines/spec.js.map +1 -0
  702. package/dist/runtime/managed-models/check.d.ts +50 -0
  703. package/dist/runtime/managed-models/check.js +157 -0
  704. package/dist/runtime/managed-models/check.js.map +1 -0
  705. package/dist/runtime/managed-models/compatibility.d.ts +256 -0
  706. package/dist/runtime/managed-models/compatibility.js +594 -0
  707. package/dist/runtime/managed-models/compatibility.js.map +1 -0
  708. package/dist/runtime/managed-models/delete.d.ts +15 -0
  709. package/dist/runtime/managed-models/delete.js +60 -0
  710. package/dist/runtime/managed-models/delete.js.map +1 -0
  711. package/dist/runtime/managed-models/guest-files.d.ts +8 -0
  712. package/dist/runtime/managed-models/guest-files.js +49 -0
  713. package/dist/runtime/managed-models/guest-files.js.map +1 -0
  714. package/dist/runtime/managed-models/index.d.ts +17 -0
  715. package/dist/runtime/managed-models/index.js +18 -0
  716. package/dist/runtime/managed-models/index.js.map +1 -0
  717. package/dist/runtime/managed-models/location.d.ts +22 -0
  718. package/dist/runtime/managed-models/location.js +53 -0
  719. package/dist/runtime/managed-models/location.js.map +1 -0
  720. package/dist/runtime/managed-models/migrate.d.ts +30 -0
  721. package/dist/runtime/managed-models/migrate.js +119 -0
  722. package/dist/runtime/managed-models/migrate.js.map +1 -0
  723. package/dist/runtime/managed-models/model-dir.d.ts +36 -0
  724. package/dist/runtime/managed-models/model-dir.js +136 -0
  725. package/dist/runtime/managed-models/model-dir.js.map +1 -0
  726. package/dist/runtime/managed-models/quant-format.d.ts +71 -0
  727. package/dist/runtime/managed-models/quant-format.js +299 -0
  728. package/dist/runtime/managed-models/quant-format.js.map +1 -0
  729. package/dist/runtime/managed-models/registry.d.ts +26 -0
  730. package/dist/runtime/managed-models/registry.js +66 -0
  731. package/dist/runtime/managed-models/registry.js.map +1 -0
  732. package/dist/runtime/managed-text/adapter.d.ts +266 -0
  733. package/dist/runtime/managed-text/adapter.js +96 -0
  734. package/dist/runtime/managed-text/adapter.js.map +1 -0
  735. package/dist/runtime/managed-text/backend-target.d.ts +3 -0
  736. package/dist/runtime/managed-text/backend-target.js +52 -0
  737. package/dist/runtime/managed-text/backend-target.js.map +1 -0
  738. package/dist/runtime/managed-text/deployment.d.ts +14 -0
  739. package/dist/runtime/managed-text/deployment.js +32 -0
  740. package/dist/runtime/managed-text/deployment.js.map +1 -0
  741. package/dist/runtime/managed-text/engine-cache.d.ts +15 -0
  742. package/dist/runtime/managed-text/engine-cache.js +64 -0
  743. package/dist/runtime/managed-text/engine-cache.js.map +1 -0
  744. package/dist/runtime/managed-text/gateway.d.ts +158 -0
  745. package/dist/runtime/managed-text/gateway.js +535 -0
  746. package/dist/runtime/managed-text/gateway.js.map +1 -0
  747. package/dist/runtime/managed-text/generation-defaults.d.ts +23 -0
  748. package/dist/runtime/managed-text/generation-defaults.js +51 -0
  749. package/dist/runtime/managed-text/generation-defaults.js.map +1 -0
  750. package/dist/runtime/managed-text/index.d.ts +26 -0
  751. package/dist/runtime/managed-text/index.js +27 -0
  752. package/dist/runtime/managed-text/index.js.map +1 -0
  753. package/dist/runtime/managed-text/lifecycle.d.ts +276 -0
  754. package/dist/runtime/managed-text/lifecycle.js +859 -0
  755. package/dist/runtime/managed-text/lifecycle.js.map +1 -0
  756. package/dist/runtime/managed-text/load-policy.d.ts +47 -0
  757. package/dist/runtime/managed-text/load-policy.js +111 -0
  758. package/dist/runtime/managed-text/load-policy.js.map +1 -0
  759. package/dist/runtime/managed-text/mount-source.d.ts +14 -0
  760. package/dist/runtime/managed-text/mount-source.js +18 -0
  761. package/dist/runtime/managed-text/mount-source.js.map +1 -0
  762. package/dist/runtime/managed-text/readiness.d.ts +13 -0
  763. package/dist/runtime/managed-text/readiness.js +24 -0
  764. package/dist/runtime/managed-text/readiness.js.map +1 -0
  765. package/dist/runtime/managed-text/request-rules.d.ts +18 -0
  766. package/dist/runtime/managed-text/request-rules.js +62 -0
  767. package/dist/runtime/managed-text/request-rules.js.map +1 -0
  768. package/dist/runtime/managed-text/types.d.ts +88 -0
  769. package/dist/runtime/managed-text/types.js +12 -0
  770. package/dist/runtime/managed-text/types.js.map +1 -0
  771. package/dist/runtime/managed-text/wsl-deployment.d.ts +24 -0
  772. package/dist/runtime/managed-text/wsl-deployment.js +70 -0
  773. package/dist/runtime/managed-text/wsl-deployment.js.map +1 -0
  774. package/dist/runtime/mlx/errors.d.ts +6 -1
  775. package/dist/runtime/mlx/errors.js +7 -2
  776. package/dist/runtime/mlx/errors.js.map +1 -1
  777. package/dist/runtime/mlx/runtime.d.ts +36 -1
  778. package/dist/runtime/mlx/runtime.js +85 -4
  779. package/dist/runtime/mlx/runtime.js.map +1 -1
  780. package/dist/runtime/shared/backend-output.d.ts +23 -0
  781. package/dist/runtime/shared/backend-output.js +32 -0
  782. package/dist/runtime/shared/backend-output.js.map +1 -0
  783. package/dist/runtime/shared/bounded-output.d.ts +24 -0
  784. package/dist/runtime/shared/bounded-output.js +63 -0
  785. package/dist/runtime/shared/bounded-output.js.map +1 -0
  786. package/dist/runtime/shared/external-sessions.js +9 -1
  787. package/dist/runtime/shared/external-sessions.js.map +1 -1
  788. package/dist/runtime/shared/gpu-occupancy.d.ts +60 -0
  789. package/dist/runtime/shared/gpu-occupancy.js +10 -0
  790. package/dist/runtime/shared/gpu-occupancy.js.map +1 -0
  791. package/dist/runtime/shared/index.d.ts +4 -0
  792. package/dist/runtime/shared/index.js +4 -0
  793. package/dist/runtime/shared/index.js.map +1 -1
  794. package/dist/runtime/shared/local-runtime.d.ts +35 -0
  795. package/dist/runtime/shared/ports.d.ts +6 -0
  796. package/dist/runtime/shared/ports.js +12 -1
  797. package/dist/runtime/shared/ports.js.map +1 -1
  798. package/dist/runtime/shared/process.d.ts +11 -0
  799. package/dist/runtime/shared/process.js +20 -0
  800. package/dist/runtime/shared/process.js.map +1 -1
  801. package/dist/runtime/shared/redact-args.d.ts +7 -0
  802. package/dist/runtime/shared/redact-args.js +26 -0
  803. package/dist/runtime/shared/redact-args.js.map +1 -0
  804. package/dist/runtime/shared/sidecar.d.ts +15 -0
  805. package/dist/runtime/shared/sidecar.js +43 -8
  806. package/dist/runtime/shared/sidecar.js.map +1 -1
  807. package/dist/runtime/tensorrt-llm/adapter.d.ts +250 -0
  808. package/dist/runtime/tensorrt-llm/adapter.js +1011 -0
  809. package/dist/runtime/tensorrt-llm/adapter.js.map +1 -0
  810. package/dist/runtime/tensorrt-llm/check.d.ts +12 -0
  811. package/dist/runtime/tensorrt-llm/check.js +21 -0
  812. package/dist/runtime/tensorrt-llm/check.js.map +1 -0
  813. package/dist/runtime/tensorrt-llm/compatibility.d.ts +100 -0
  814. package/dist/runtime/tensorrt-llm/compatibility.js +181 -0
  815. package/dist/runtime/tensorrt-llm/compatibility.js.map +1 -0
  816. package/dist/runtime/tensorrt-llm/engine.d.ts +3 -0
  817. package/dist/runtime/tensorrt-llm/engine.js +24 -0
  818. package/dist/runtime/tensorrt-llm/engine.js.map +1 -0
  819. package/dist/runtime/tensorrt-llm/host-facts.d.ts +55 -0
  820. package/dist/runtime/tensorrt-llm/host-facts.js +87 -0
  821. package/dist/runtime/tensorrt-llm/host-facts.js.map +1 -0
  822. package/dist/runtime/tensorrt-llm/index.d.ts +30 -0
  823. package/dist/runtime/tensorrt-llm/index.js +31 -0
  824. package/dist/runtime/tensorrt-llm/index.js.map +1 -0
  825. package/dist/runtime/tensorrt-llm/installation.d.ts +23 -0
  826. package/dist/runtime/tensorrt-llm/installation.js +53 -0
  827. package/dist/runtime/tensorrt-llm/installation.js.map +1 -0
  828. package/dist/runtime/tensorrt-llm/kv-cache.d.ts +25 -0
  829. package/dist/runtime/tensorrt-llm/kv-cache.js +28 -0
  830. package/dist/runtime/tensorrt-llm/kv-cache.js.map +1 -0
  831. package/dist/runtime/tensorrt-llm/prelaunch.d.ts +20 -0
  832. package/dist/runtime/tensorrt-llm/prelaunch.js +168 -0
  833. package/dist/runtime/tensorrt-llm/prelaunch.js.map +1 -0
  834. package/dist/runtime/tensorrt-llm/route-policy.d.ts +19 -0
  835. package/dist/runtime/tensorrt-llm/route-policy.js +17 -0
  836. package/dist/runtime/tensorrt-llm/route-policy.js.map +1 -0
  837. package/dist/runtime/tensorrt-llm/settings.d.ts +7 -0
  838. package/dist/runtime/tensorrt-llm/settings.js +48 -0
  839. package/dist/runtime/tensorrt-llm/settings.js.map +1 -0
  840. package/dist/runtime/vllm/adapter.d.ts +46 -0
  841. package/dist/runtime/vllm/adapter.js +425 -0
  842. package/dist/runtime/vllm/adapter.js.map +1 -0
  843. package/dist/runtime/vllm/engine.d.ts +16 -0
  844. package/dist/runtime/vllm/engine.js +37 -0
  845. package/dist/runtime/vllm/engine.js.map +1 -0
  846. package/dist/runtime/vllm/index.d.ts +11 -0
  847. package/dist/runtime/vllm/index.js +12 -0
  848. package/dist/runtime/vllm/index.js.map +1 -0
  849. package/dist/runtime/vllm/memory.d.ts +69 -0
  850. package/dist/runtime/vllm/memory.js +123 -0
  851. package/dist/runtime/vllm/memory.js.map +1 -0
  852. package/dist/runtime/vllm/settings.d.ts +52 -0
  853. package/dist/runtime/vllm/settings.js +151 -0
  854. package/dist/runtime/vllm/settings.js.map +1 -0
  855. package/dist/runtime/wsl/guest-paths.d.ts +33 -0
  856. package/dist/runtime/wsl/guest-paths.js +83 -0
  857. package/dist/runtime/wsl/guest-paths.js.map +1 -0
  858. package/dist/runtime/wsl/guest-scope.d.ts +14 -0
  859. package/dist/runtime/wsl/guest-scope.js +98 -0
  860. package/dist/runtime/wsl/guest-scope.js.map +1 -0
  861. package/dist/runtime/wsl/index.d.ts +12 -0
  862. package/dist/runtime/wsl/index.js +13 -0
  863. package/dist/runtime/wsl/index.js.map +1 -0
  864. package/dist/runtime/wsl/keeper.d.ts +29 -0
  865. package/dist/runtime/wsl/keeper.js +48 -0
  866. package/dist/runtime/wsl/keeper.js.map +1 -0
  867. package/dist/runtime/wsl/transport.d.ts +106 -0
  868. package/dist/runtime/wsl/transport.js +181 -0
  869. package/dist/runtime/wsl/transport.js.map +1 -0
  870. package/dist/server/control/index.d.ts +1 -1
  871. package/dist/server/control/router.js +15 -0
  872. package/dist/server/control/router.js.map +1 -1
  873. package/dist/server/control/routes/backends.js +26 -0
  874. package/dist/server/control/routes/backends.js.map +1 -1
  875. package/dist/server/control/routes/decision.d.ts +10 -0
  876. package/dist/server/control/routes/decision.js +43 -0
  877. package/dist/server/control/routes/decision.js.map +1 -0
  878. package/dist/server/control/routes/diffusion-video.js +4 -0
  879. package/dist/server/control/routes/diffusion-video.js.map +1 -1
  880. package/dist/server/control/routes/diffusion.d.ts +1 -1
  881. package/dist/server/control/routes/diffusion.js +4 -9
  882. package/dist/server/control/routes/diffusion.js.map +1 -1
  883. package/dist/server/control/routes/embedding.d.ts +9 -0
  884. package/dist/server/control/routes/embedding.js +43 -0
  885. package/dist/server/control/routes/embedding.js.map +1 -0
  886. package/dist/server/control/routes/engine-builds.d.ts +14 -0
  887. package/dist/server/control/routes/engine-builds.js +82 -0
  888. package/dist/server/control/routes/engine-builds.js.map +1 -0
  889. package/dist/server/control/routes/engines.d.ts +17 -0
  890. package/dist/server/control/routes/engines.js +152 -0
  891. package/dist/server/control/routes/engines.js.map +1 -0
  892. package/dist/server/control/routes/environments.d.ts +16 -0
  893. package/dist/server/control/routes/environments.js +207 -0
  894. package/dist/server/control/routes/environments.js.map +1 -0
  895. package/dist/server/control/routes/hardware.d.ts +1 -1
  896. package/dist/server/control/routes/hardware.js +11 -6
  897. package/dist/server/control/routes/hardware.js.map +1 -1
  898. package/dist/server/control/routes/model-setups.d.ts +11 -0
  899. package/dist/server/control/routes/model-setups.js +55 -0
  900. package/dist/server/control/routes/model-setups.js.map +1 -0
  901. package/dist/server/control/routes/models.d.ts +3 -2
  902. package/dist/server/control/routes/models.js +45 -2
  903. package/dist/server/control/routes/models.js.map +1 -1
  904. package/dist/server/control/types.d.ts +167 -9
  905. package/dist/server/control/types.js.map +1 -1
  906. package/dist/server/http.d.ts +9 -1
  907. package/dist/server/http.js +51 -1
  908. package/dist/server/http.js.map +1 -1
  909. package/dist/server/public/decision-preview.d.ts +17 -0
  910. package/dist/server/public/decision-preview.js +119 -0
  911. package/dist/server/public/decision-preview.js.map +1 -0
  912. package/dist/server/public/decision.d.ts +32 -0
  913. package/dist/server/public/decision.js +135 -0
  914. package/dist/server/public/decision.js.map +1 -0
  915. package/dist/server/public/embedding.d.ts +31 -0
  916. package/dist/server/public/embedding.js +126 -0
  917. package/dist/server/public/embedding.js.map +1 -0
  918. package/dist/server/public/errors.d.ts +2 -1
  919. package/dist/server/public/errors.js +5 -2
  920. package/dist/server/public/errors.js.map +1 -1
  921. package/dist/server/public/forward.js +75 -3
  922. package/dist/server/public/forward.js.map +1 -1
  923. package/dist/server/public/gates.d.ts +13 -0
  924. package/dist/server/public/gates.js +37 -14
  925. package/dist/server/public/gates.js.map +1 -1
  926. package/dist/server/public/index.d.ts +5 -2
  927. package/dist/server/public/index.js +14 -1
  928. package/dist/server/public/index.js.map +1 -1
  929. package/dist/server/public/listing.d.ts +13 -2
  930. package/dist/server/public/listing.js +33 -9
  931. package/dist/server/public/listing.js.map +1 -1
  932. package/dist/server/public/policy.d.ts +9 -0
  933. package/dist/server/public/policy.js +68 -0
  934. package/dist/server/public/policy.js.map +1 -0
  935. package/dist/server/public/responses.js +10 -0
  936. package/dist/server/public/responses.js.map +1 -1
  937. package/dist/server/public/trace.d.ts +2 -2
  938. package/dist/server/public/trace.js +6 -2
  939. package/dist/server/public/trace.js.map +1 -1
  940. package/dist/server/public/types.d.ts +84 -1
  941. package/dist/settings/decision.d.ts +15 -0
  942. package/dist/settings/decision.js +88 -0
  943. package/dist/settings/decision.js.map +1 -0
  944. package/dist/settings/embedding.d.ts +12 -0
  945. package/dist/settings/embedding.js +82 -0
  946. package/dist/settings/embedding.js.map +1 -0
  947. package/dist/settings/index.d.ts +2 -0
  948. package/dist/settings/index.js +2 -0
  949. package/dist/settings/index.js.map +1 -1
  950. package/dist/settings/schema/atomic-prism.json +433 -0
  951. package/dist/settings/schema/tensorrt-llm.json +253 -0
  952. package/dist/settings/schema/vllm.json +273 -0
  953. package/dist/settings/schema.js +58 -0
  954. package/dist/settings/schema.js.map +1 -1
  955. package/dist/settings/store.d.ts +13 -2
  956. package/dist/settings/store.js +44 -0
  957. package/dist/settings/store.js.map +1 -1
  958. package/dist/util/index.d.ts +1 -0
  959. package/dist/util/index.js +1 -0
  960. package/dist/util/index.js.map +1 -1
  961. package/dist/util/result.d.ts +19 -0
  962. package/dist/util/result.js +15 -0
  963. package/dist/util/result.js.map +1 -0
  964. package/dist/version.d.ts +1 -1
  965. package/dist/version.js +1 -1
  966. package/dist/version.js.map +1 -1
  967. package/package.json +1 -1
  968. package/src/settings/schema/atomic-prism.json +433 -0
  969. package/src/settings/schema/tensorrt-llm.json +253 -0
  970. package/src/settings/schema/vllm.json +273 -0
@@ -0,0 +1,774 @@
1
+ /**
2
+ * Managed text runtimes on the wire: the container environment the core owns, the per-engine
3
+ * runtime installations inside it, the durable operations that install, update and remove them,
4
+ * the metadata that says what one engine release runs and supports, and the verdict the core
5
+ * returns when asked whether a given checkpoint can run on this machine.
6
+ *
7
+ * Ported selectively from `origin/feat/tenzor-rt` @ `632b934` (openspec change
8
+ * `add-tensorrt-llm-linux`, design D1; see `docs/decisions/` for the ADR). The descriptor shapes
9
+ * below follow `atomic-chat-conf/runtimes/schema.json`, the source of truth for what a published
10
+ * descriptor contains (design D7/D9/D12); `ModelCompatibility` is new, the verdict of the future
11
+ * `POST /atomic/v1/models/tensorrt-llm/check` (spec `tensorrt-llm-models`). The environment routes,
12
+ * the durable operation and the Linux setup (task 2.6) produce the environment shapes.
13
+ *
14
+ * Browser-safe: types and string constants only, no `node:*`.
15
+ *
16
+ * Field names are snake_case: this surface is emitted from a descriptor published as JSON and has
17
+ * no older camelCase mirror to preserve.
18
+ */
19
+ import type { ErrorBody } from './errors.js';
20
+ /** A content digest, always `sha256:` + lowercase hex. Verifies bytes, never publisher or fitness. */
21
+ export type Sha256Digest = `sha256:${string}`;
22
+ /**
23
+ * Which container engine an environment drives. One per host recipe: Docker on the Linux host
24
+ * itself, or the Docker inside the WSL distribution the core owns on Windows.
25
+ */
26
+ export declare const EXECUTOR_KINDS: readonly ["linux-docker", "wsl-docker"];
27
+ export type ExecutorKind = (typeof EXECUTOR_KINDS)[number];
28
+ /** What a durable operation is for. Removal is its own kind, never an update to an empty target. */
29
+ export declare const MANAGED_OPERATION_KINDS: readonly ["setup", "update", "remove"];
30
+ export type ManagedOperationKind = (typeof MANAGED_OPERATION_KINDS)[number];
31
+ /**
32
+ * What an operation acts on. The shared environment is one target; a single engine's installation
33
+ * is another. An operation on one installation never changes a sibling.
34
+ */
35
+ export type ManagedOperationTarget = {
36
+ kind: 'environment';
37
+ } | {
38
+ kind: 'runtime';
39
+ installation_id: string;
40
+ engine_id: string;
41
+ };
42
+ /**
43
+ * Where a durable operation stands. `ready` means the target is verified — for a runtime target
44
+ * that is the installation, never the model, which has readiness of its own.
45
+ *
46
+ * `relogin-required` is Linux-only: adding the user to the `docker` group takes effect at their
47
+ * next sign-in, so the operation waits there and re-probes when the app opens again.
48
+ * `reboot-required` is the Windows equivalent after enabling the WSL features.
49
+ */
50
+ export declare const MANAGED_PHASES: readonly ["checking", "awaiting-consent", "preparing-host", "relogin-required", "reboot-required", "preparing-environment", "pulling-image", "verifying", "activating", "removing", "ready", "removed", "cancelling", "cancelled", "failed"];
51
+ export type ManagedPhase = (typeof MANAGED_PHASES)[number];
52
+ /**
53
+ * Whether this host can run the target at all. `prerequisite-blocked` is a fact about the machine
54
+ * (no NVIDIA driver, an unqualified distribution); `setup-required` means it can, but has not.
55
+ */
56
+ export declare const MANAGED_AVAILABILITY: readonly ["supported", "setup-required", "prerequisite-blocked", "unsupported"];
57
+ export type ManagedAvailability = (typeof MANAGED_AVAILABILITY)[number];
58
+ /** Lifecycle of one engine's installation inside an environment. */
59
+ export declare const RUNTIME_INSTALLATION_STATUSES: readonly ["absent", "installing", "ready", "updating", "removing", "failed"];
60
+ export type RuntimeInstallationStatus = (typeof RUNTIME_INSTALLATION_STATUSES)[number];
61
+ /**
62
+ * Progress of the current phase. `completed`/`total` are null while the work has no measurable
63
+ * size; a client renders that as indeterminate and never invents a percentage.
64
+ */
65
+ export interface ManagedProgress {
66
+ label: string;
67
+ completed: number | null;
68
+ total: number | null;
69
+ unit: 'bytes' | 'steps' | 'unknown';
70
+ }
71
+ /**
72
+ * One GPU as the managed runtime sees it, derived from the hardware probe. Distinct from
73
+ * `backend/types.ts`'s `GpuProbeInfo`, which is the raw probe slice the llama.cpp backend selectors
74
+ * read: memory here is bytes rather than MiB and the fields a model check needs are required.
75
+ * `compute_capability` is NVML's `"major.minor"` spelling, e.g. `"8.9"` (Ada) or `"12.0"`
76
+ * (Blackwell); it decides which quantization formats a checkpoint may use. `total_vram_bytes` is
77
+ * null for a unified-memory card (e.g. GB10/DGX Spark) that reports no VRAM of its own — the model
78
+ * compatibility check then compares against host memory instead (design D13).
79
+ */
80
+ export interface GpuFacts {
81
+ gpu_id: string;
82
+ name: string;
83
+ compute_capability: string;
84
+ total_vram_bytes: number | null;
85
+ free_vram_bytes: number | null;
86
+ driver_version: string | null;
87
+ }
88
+ /**
89
+ * One engine installed into an environment. `active_descriptor_id` is what runs now;
90
+ * `candidate_descriptor_id` is a staged update that has not been activated, kept separate so a
91
+ * failed candidate never replaces a working runtime.
92
+ */
93
+ export interface RuntimeInstallation {
94
+ installation_id: string;
95
+ engine_id: string;
96
+ environment_id: string;
97
+ active_descriptor_id: string | null;
98
+ candidate_descriptor_id: string | null;
99
+ availability: ManagedAvailability;
100
+ status: RuntimeInstallationStatus;
101
+ }
102
+ /**
103
+ * Full state of one environment. Sent whole on `environment:changed`, so a client rebuilds from a
104
+ * snapshot and then applies events. `instance_id` identifies the core that produced it and
105
+ * `revision` orders it: apply only a strictly newer revision of the current instance.
106
+ */
107
+ export interface EnvironmentSnapshot {
108
+ schema_version: 1;
109
+ environment_id: string;
110
+ instance_id: string;
111
+ revision: number;
112
+ executor: ExecutorKind;
113
+ availability: ManagedAvailability;
114
+ gpus: GpuFacts[];
115
+ /**
116
+ * Why `availability` is `prerequisite-blocked` (or `unsupported`), as of the last probe of this
117
+ * host; empty when nothing blocks. Structured, so a client can show each reason with its own
118
+ * instructions rather than one generic message (task 2.6).
119
+ */
120
+ blockers: ManagedBlocker[];
121
+ /**
122
+ * SELinux is enforcing for containers on this host (`docker info`), so the core labels its own
123
+ * mounts `:z` (design D15). Null until a probe has answered.
124
+ */
125
+ selinux: boolean | null;
126
+ installations: RuntimeInstallation[];
127
+ active_operation_id: string | null;
128
+ /**
129
+ * `minimum_app_version` of the descriptor currently in effect for this environment: a pinned
130
+ * installation's own cached descriptor where one exists, otherwise the latest descriptor this
131
+ * core has ever accepted into its cache — resolved network-free, so this never blocks on a fetch
132
+ * to answer — so a client can show "update the app" before the user hits a blocked install. `null`
133
+ * when neither resolves (no installation, and nothing has ever been cached) (spec
134
+ * `runtime-descriptor-catalog`, "Минимальные версии соблюдаются").
135
+ */
136
+ minimum_app_version: string | null;
137
+ /**
138
+ * The WSL distribution this environment runs in (change `add-tensorrt-llm-windows`): on Windows,
139
+ * once core has imported its own one; `null` before that and always on Linux, where the
140
+ * environment is the host itself. Additive: a client that predates it ignores the key.
141
+ */
142
+ distribution: EnvironmentDistribution | null;
143
+ /**
144
+ * Environment variables that move where this core reads its conf documents or keeps its managed
145
+ * state (`ATOMIC_RUNTIME_DESCRIPTOR_URL`, `ATOMIC_ENVIRONMENT_MANIFEST_URL`,
146
+ * `ATOMIC_CORE_MANAGED_ROOT`), as this process sees them; empty when none is set. A test machine
147
+ * kept a commit-pinned descriptor URL and never saw the next descriptor (2026-10-06): a client
148
+ * shows these so such a machine says so on screen. Additive: an older client ignores the key.
149
+ */
150
+ source_overrides: EnvironmentSourceOverride[];
151
+ }
152
+ /** One environment variable that overrides a managed-runtime source, and its value. */
153
+ export interface EnvironmentSourceOverride {
154
+ variable: string;
155
+ value: string;
156
+ }
157
+ /**
158
+ * What `POST /environments/:environmentId/reset` did: the finished operations it moved out of the
159
+ * operations directory (into `operations-archive/<time>/` beside it), so no finished setup or removal is shown
160
+ * or resumed any more and the next setup starts from a fresh plan. Nothing installed — the
161
+ * distribution, images, models, cached documents, installation records — is touched.
162
+ */
163
+ export interface EnvironmentResetResult {
164
+ environment_id: string;
165
+ archived_operation_ids: string[];
166
+ /** Where they went, for a person who wants them back; null when nothing was archived. */
167
+ archive_path: string | null;
168
+ }
169
+ /**
170
+ * `GET /environments/:environmentId/diagnostics`: what a person pastes into a support message — the
171
+ * snapshot, which conf documents this core reads and from where, what it has cached, every operation
172
+ * on disk and the managed-runtime code's recent warnings. Read-only.
173
+ */
174
+ export interface EnvironmentDiagnostics {
175
+ generated_at: string;
176
+ core_version: string;
177
+ platform: string;
178
+ arch: string;
179
+ environment: EnvironmentSnapshot | null;
180
+ sources: EnvironmentDocumentSource[];
181
+ operations: EnvironmentOperationSummary[];
182
+ /** The last warnings the managed-runtime code logged, newest last: document fallbacks, cache failures. */
183
+ recent_warnings: string[];
184
+ /**
185
+ * What this core's move of TensorRT-LLM's models into the managed model store did at its start
186
+ * (change `add-vllm-runtime`, design D5); null before it ran or where there is nothing to move.
187
+ */
188
+ store_migration?: ManagedStoreMigration | null;
189
+ }
190
+ /** The move of TensorRT-LLM's models into the managed model store, as it went. */
191
+ export interface ManagedStoreMigration {
192
+ from: string;
193
+ to: string;
194
+ /** Ids moved, in order. */
195
+ moved: string[];
196
+ /** Ids already in the store: neither folder was touched. */
197
+ conflicts: {
198
+ model_id: string;
199
+ source: string;
200
+ target: string;
201
+ }[];
202
+ }
203
+ /** One conf document a core reads: where from, whether that is overridden, and what it has cached. */
204
+ export interface EnvironmentDocumentSource {
205
+ document: 'runtime-descriptor' | 'environment-manifest';
206
+ /** A runtime descriptor's engine: each managed engine has its own source (change `add-vllm-runtime`). */
207
+ engine_id?: string;
208
+ url: string;
209
+ default_url: string;
210
+ /** The variable that set `url`, or null when it is `default_url`. */
211
+ overridden_by: string | null;
212
+ latest_cached_id: string | null;
213
+ cached_ids: string[];
214
+ }
215
+ /** An operation on disk, reduced to what explains it. */
216
+ export interface EnvironmentOperationSummary {
217
+ operation_id: string;
218
+ kind: ManagedOperationKind;
219
+ target: ManagedOperationTarget;
220
+ phase: ManagedPhase;
221
+ checkpoint: string | null;
222
+ revision: number;
223
+ consented_descriptor_id: string | null;
224
+ plan_descriptor_id: string | null;
225
+ error: ErrorBody | null;
226
+ }
227
+ /**
228
+ * Atomic Chat's own WSL distribution as a client shows it: its registered `name`, the Windows
229
+ * directory that holds its `ext4.vhdx` (`path`, under the user's `%LOCALAPPDATA%`), and how many
230
+ * bytes that disk image takes on the Windows volume (`size_bytes`). The image grows and never shrinks
231
+ * by itself, so this is the space removing the environment gives back. Null when it could not be
232
+ * read — never a guessed 0.
233
+ */
234
+ export interface EnvironmentDistribution {
235
+ name: string;
236
+ path: string;
237
+ size_bytes: number | null;
238
+ }
239
+ /**
240
+ * The one privileged thing the core asks the app to do, per host recipe. The webview never chooses
241
+ * a command: it forwards this step, and the trusted helper owns the arguments.
242
+ */
243
+ export declare const MANAGED_HOST_ACTIONS: readonly ["linux.install-container-runtime", "windows.enable-wsl"];
244
+ export type ManagedHostAction = (typeof MANAGED_HOST_ACTIONS)[number];
245
+ /**
246
+ * The validated values of a `linux.install-container-runtime` step (task 2.5's recipe): the account
247
+ * to add to the `docker` group, the machine, and which missing components to install. The client
248
+ * copies them verbatim into the host-step request file; the executor recomputes
249
+ * `parameters_digest` from them and refuses the step if it does not match. Nothing else reaches the
250
+ * privileged process.
251
+ */
252
+ export interface ContainerRuntimeStepParameters {
253
+ user: string;
254
+ arch: 'x86_64' | 'aarch64';
255
+ family: 'apt' | 'dnf';
256
+ distro_id: string;
257
+ version_id: string;
258
+ /**
259
+ * Subset of `docker-engine`, `nvidia-container-toolkit`, `nvidia-runtime`, `nvidia-cdi` (task
260
+ * 2.23: the NVIDIA CDI spec), `docker-restart`, `docker-service`, `docker-group`, in recipe order.
261
+ */
262
+ components: string[];
263
+ }
264
+ /**
265
+ * The validated values of a `windows.enable-wsl` step (change `add-tensorrt-llm-windows`, design
266
+ * D2): none. The elevated executor only ever runs `wsl --install`, so nothing a
267
+ * client or a user could choose reaches it; the digest still binds the (empty) object, the same
268
+ * check every action gets.
269
+ */
270
+ export type EnableWslStepParameters = Record<string, never>;
271
+ /**
272
+ * The parameters of each privileged action, keyed by `ManagedHostStep.action`: one action, one
273
+ * shape, so a client and the executor tell them apart by the action alone.
274
+ */
275
+ export interface ManagedHostStepParameters {
276
+ 'linux.install-container-runtime': ContainerRuntimeStepParameters;
277
+ 'windows.enable-wsl': EnableWslStepParameters;
278
+ }
279
+ /**
280
+ * The pending privileged step. `nonce` is single-use and `expected_operation_revision` pins it to
281
+ * one state of one operation, so a receipt cannot be replayed into a later phase. The digests bind
282
+ * it to the exact recipe and parameters the user approved; `parameters` are those parameters, which
283
+ * the client writes into the host-step request file unchanged. A union by `action`: the parameters'
284
+ * shape is the action's own (`ManagedHostStepParameters`).
285
+ */
286
+ export type ManagedHostStep = {
287
+ [A in ManagedHostAction]: {
288
+ step_id: string;
289
+ action: A;
290
+ recipe_id: string;
291
+ recipe_digest: Sha256Digest;
292
+ parameters_digest: Sha256Digest;
293
+ parameters: ManagedHostStepParameters[A];
294
+ nonce: string;
295
+ expected_operation_revision: number;
296
+ };
297
+ }[ManagedHostAction];
298
+ /**
299
+ * What the app reports back after the OS authorization prompt. It is an assertion, not proof: the
300
+ * core re-probes the host before marking the step complete.
301
+ */
302
+ export interface ManagedHostReceipt {
303
+ step_id: string;
304
+ nonce: string;
305
+ expected_operation_revision: number;
306
+ recipe_digest: Sha256Digest;
307
+ parameters_digest: Sha256Digest;
308
+ outcome: 'completed' | 'declined' | 'relogin-required' | 'reboot-required' | 'failed';
309
+ receipt_id: string;
310
+ /**
311
+ * The privileged step's own `log_tail` from its result file (task 2.23, F-4), forwarded as read;
312
+ * optional and additive. On a `failed` receipt it becomes the operation error's `details`, and a
313
+ * cause the core recognises in it (Docker's address pools exhausted by the host's routes) is named
314
+ * in the error's `message`. Never evidence of success: the core re-probes regardless. The core
315
+ * keeps at most its last 16 KiB.
316
+ */
317
+ log_tail?: string;
318
+ }
319
+ /**
320
+ * A durable operation. It outlives the dialog, the app and the core: closing the UI does not cancel
321
+ * it, and `cancellation_requested` is a request recorded during work that cannot be interrupted
322
+ * safely, honored at the next safe boundary.
323
+ *
324
+ * `plan_digest` is what the core currently intends; `approved_plan_digest` is what the user agreed
325
+ * to. They differ when the host changed under an operation awaiting consent, and privileged work
326
+ * never starts while they differ. In every work phase (`preparing-host` through `activating`, and
327
+ * `removing`) and in `ready`/`removed` they are equal: work only ever runs under the approval of
328
+ * the plan it names. Before any consent they may differ in a phase that is not work — `checking`,
329
+ * `awaiting-consent`, or `failed`/`relogin-required` straight from a probe (a blocked host, no
330
+ * approval yet). After work began a waiting or failed phase keeps the consented digest in both,
331
+ * unless the core re-asked: when the host changed beyond what the consent covers, `awaiting-consent`
332
+ * offers the new plan in `plan_digest` while `approved_plan_digest` still names the old approval,
333
+ * and a phase reached from there (a cancel, a failed or blocked probe) keeps them different. Work
334
+ * never starts again until they are equal.
335
+ *
336
+ * `carried_plan_digest` is the plan the core continued under after work began, covered by the
337
+ * consent's basis (the same descriptor, engine image digest and target the approved plan named):
338
+ * after a sign-in or a restart the host looks different (packages installed, space used by the
339
+ * pull), so a fresh probe yields a new digest, but it asks nothing the user did not approve. It is
340
+ * reported here, apart, and never replaces `plan_digest` or `approved_plan_digest`. Null until the
341
+ * core has continued that way, and again after a new approval.
342
+ */
343
+ export interface EnvironmentOperation {
344
+ schema_version: 1;
345
+ operation_id: string;
346
+ request_id: string;
347
+ environment_id: string;
348
+ target: ManagedOperationTarget;
349
+ kind: ManagedOperationKind;
350
+ instance_id: string;
351
+ revision: number;
352
+ phase: ManagedPhase;
353
+ plan_digest: Sha256Digest | null;
354
+ approved_plan_digest: Sha256Digest | null;
355
+ carried_plan_digest: Sha256Digest | null;
356
+ progress: ManagedProgress | null;
357
+ pending_host_step: ManagedHostStep | null;
358
+ completed_step_ids: string[];
359
+ cancellation_requested: boolean;
360
+ error: ErrorBody | null;
361
+ }
362
+ /**
363
+ * Start an operation. `request_id` is the caller's idempotency key: the same ID with the same
364
+ * fingerprint returns the existing operation, with a different one it is a conflict.
365
+ */
366
+ export interface BeginOperation {
367
+ request_id: string;
368
+ target: ManagedOperationTarget;
369
+ kind: ManagedOperationKind;
370
+ descriptor_id?: string;
371
+ retain_models?: boolean;
372
+ approved_plan_digest?: Sha256Digest;
373
+ }
374
+ /**
375
+ * Continue an operation that is awaiting consent, blocked on a sign-out or reboot, failed or
376
+ * cancelled. Carrying the approval here rather than in a second `begin` is deliberate: a resume
377
+ * re-probes first and can only continue the operation that already exists.
378
+ *
379
+ * `approved_plan_digest` approves the plan on offer only in `awaiting-consent`. In any other phase it
380
+ * may only restate the operation's current `plan_digest`; a different one is refused with
381
+ * `MANAGED_PLAN_CHANGED` (409) and nothing changes — resume without it, and approve whatever plan the
382
+ * re-probe then offers.
383
+ */
384
+ export interface ResumeOperation {
385
+ expected_revision: number;
386
+ approved_plan_digest?: Sha256Digest;
387
+ }
388
+ /**
389
+ * One change the plan makes to the machine, structured: `code` names the change for a client (and
390
+ * for the plan digest) to key off, `params` carries its specifics (the packages, the user, the
391
+ * number of running containers a Docker restart stops), and `text` is what a person reads before
392
+ * the OS authorization prompt. A removal plan lists what it deletes the same way.
393
+ */
394
+ export interface ManagedSystemChange {
395
+ code: string;
396
+ text: string;
397
+ params?: Record<string, string>;
398
+ }
399
+ /**
400
+ * Something the plan's reader should know that does not block it and that the plan cannot fix
401
+ * (task 2.23, F-4): shaped like `ManagedSystemChange`. `code` is stable for a client to key off
402
+ * (`docker-address-pools-overlap-routes`: the host's routes cover every default Docker address pool,
403
+ * so Docker would not start — `params.routes` names them), `text` says what to do. Not part of
404
+ * `plan_digest`: a warning never asks for a new consent.
405
+ */
406
+ export interface ManagedPlanWarning {
407
+ code: string;
408
+ text: string;
409
+ params?: Record<string, string>;
410
+ }
411
+ /**
412
+ * The Windows causes of a blocker (`ManagedBlocker.reason`) or of a failure (`ErrorBody.details`) a
413
+ * client switches on (change `add-tensorrt-llm-windows`, spec `wsl-runtime-environment`):
414
+ * - `wsl-localhost-forwarding` — the engine answers inside the distribution but not on Windows'
415
+ * `127.0.0.1`: WSL's localhost forwarding is off or broken (`.wslconfig`);
416
+ * - `wsl-stopped` — the distribution or the WSL VM stopped under a running session;
417
+ * - `wsl-version` — the installed WSL is older than the manifest's `minimum_wsl_version`;
418
+ * - `wsl1-distribution` — Atomic Chat's own distribution is registered as WSL 1;
419
+ * - `virtualization-disabled` — virtualization is off in the firmware;
420
+ * - `foreign-distribution` — a distribution with Atomic Chat's name exists that it did not import.
421
+ */
422
+ export declare const WSL_REASONS: readonly ["wsl-localhost-forwarding", "wsl-stopped", "wsl-version", "wsl1-distribution", "virtualization-disabled", "foreign-distribution"];
423
+ export type WslReason = (typeof WSL_REASONS)[number];
424
+ /**
425
+ * One reason the host cannot proceed. The `ErrorBody` part is what becomes the operation's `error`;
426
+ * `reason` is a stable machine-readable cause (`driver-too-old`, `relogin-required`, ...), `params`
427
+ * its specifics (required and actual versions, ...), and `commands` exact, copyable shell commands
428
+ * where the fix is manual (Arch, a group-only host).
429
+ */
430
+ export interface ManagedBlocker extends ErrorBody {
431
+ reason?: string;
432
+ params?: Record<string, string>;
433
+ commands?: string[];
434
+ }
435
+ /**
436
+ * What setup would actually do, computed without touching the machine. `adopts_existing_engine`
437
+ * says the host already has a working container engine, so there is no privileged step and no
438
+ * system change at all. `blockers` being non-empty is a normal answer, not a transport error.
439
+ */
440
+ export interface RequirementPlan {
441
+ plan_digest: Sha256Digest;
442
+ environment_id: string;
443
+ target: ManagedOperationTarget;
444
+ availability: ManagedAvailability;
445
+ recipe_id: string;
446
+ recipe_digest: Sha256Digest;
447
+ /**
448
+ * The runtime descriptor this plan installs (or, for a removal, the one being removed): the
449
+ * cached descriptor the request named when this core has it, otherwise the newest one it can get.
450
+ * Null when none is available. Part of what the consent covers (task 2.6).
451
+ */
452
+ descriptor_id: string | null;
453
+ /**
454
+ * The environment manifest this plan judged the host against — which distributions the install
455
+ * recipe is qualified for (`EnvironmentManifest.manifest_id`). Null when none is available: then
456
+ * a host that needs an install is blocked, and a ready one is adopted all the same. Part of what
457
+ * the consent covers, like the descriptor.
458
+ */
459
+ environment_manifest_id: string | null;
460
+ /**
461
+ * The engine image this plan pulls (or, for a removal, removes), by digest for this host's
462
+ * platform. Null when there is none (no descriptor, or an environment-only target). A consent
463
+ * carries over to a later plan only when this, the descriptor and the target are unchanged.
464
+ */
465
+ image_digest: Sha256Digest | null;
466
+ adopts_existing_engine: boolean;
467
+ /** System changes, shown before the OS authorization prompt. Empty when nothing changes. */
468
+ system_changes: ManagedSystemChange[];
469
+ download_bytes: number | null;
470
+ required_disk_bytes: number | null;
471
+ /**
472
+ * The path the core measured free space for when it computed this plan (task 2.22, owner ruling
473
+ * R-core-6): `DockerRootDir` from `docker info` when the daemon answered, otherwise
474
+ * `/var/lib/docker`, where Docker puts its images by default (on a clean host the space is read at
475
+ * that path's nearest existing ancestor). A client shows it next to `free_disk_bytes` and
476
+ * `required_disk_bytes`. If Docker is later set up with another root directory, the next probe
477
+ * reports that one. Null together with `free_disk_bytes` whenever the core measured nothing: the
478
+ * free-space read failed, or the plan never read the machine (a removal, or no descriptor).
479
+ *
480
+ * On Windows (change `add-tensorrt-llm-windows`, ruling core 2.1) the same two fields keep their
481
+ * meaning — "the path the core measured, and what it found there" — over the one disk that
482
+ * matters: the Windows directory of Atomic Chat's own distribution (`%LOCALAPPDATA%\AtomicChat\wsl\<name>`,
483
+ * where its `ext4.vhdx` lives or will be imported to). `free_disk_bytes` is then the free space on
484
+ * that directory's volume, and once the distribution exists the smaller of that and the free space
485
+ * at `DockerRootDir` inside the guest: the image lands in the guest's disk, which can grow only as
486
+ * far as the Windows volume lets it.
487
+ */
488
+ docker_root_dir: string | null;
489
+ /**
490
+ * Free bytes at `docker_root_dir` as of this probe — the very number an `insufficient-disk`
491
+ * blocker's `params.free` carries. Null when not measured (see `docker_root_dir`). Informational
492
+ * only: the consent (`plan_digest`) covers whether the space suffices, never this number, which
493
+ * moves on its own all the time.
494
+ */
495
+ free_disk_bytes: number | null;
496
+ requires_elevation: boolean;
497
+ may_require_relogin: boolean;
498
+ may_require_reboot: boolean;
499
+ blockers: ManagedBlocker[];
500
+ /** Warnings shown next to the plan (task 2.23, F-4); empty when there are none. Outside `plan_digest`. */
501
+ warnings: ManagedPlanWarning[];
502
+ }
503
+ /** Ask what setting this target up would involve. Probing never installs or pulls anything. */
504
+ export interface ProbeEnvironmentInput {
505
+ descriptor_id: string;
506
+ environment_id?: string;
507
+ target: ManagedOperationTarget;
508
+ }
509
+ /**
510
+ * One quantization format and the compute capability it needs, as the pinned engine release
511
+ * supports it. NVFP4 needs Blackwell; an Ampere card gets weight-only 4-bit and little else.
512
+ * Filled from measurement on real cards, never from a vendor page alone.
513
+ *
514
+ * `excluded_compute_capabilities` (design D17) lists capabilities strictly above
515
+ * `min_compute_capability` where the release does not actually support this format, because the
516
+ * engine's hardware support matrix is not monotone in compute capability (e.g. `fp8_block_scales`
517
+ * needs 9.0 but is unsupported again on 12.0/12.1). Empty when there is no such gap.
518
+ */
519
+ export interface QuantizationSupport {
520
+ format: string;
521
+ min_compute_capability: string;
522
+ excluded_compute_capabilities: string[];
523
+ }
524
+ /**
525
+ * What this engine release does for one Hugging Face `config.json` architecture class: which
526
+ * tool-call and reasoning parser names `trtllm-serve` should be started with, and whether it can
527
+ * emit structured output for that family (design D9). Data, not code — the adapter passes these
528
+ * names through at container start rather than guessing them the way the llama.cpp provider does.
529
+ * An architecture with no entry gets no tool calls and no reasoning parsing.
530
+ */
531
+ export interface ModelFamilySupport {
532
+ tool_parser: string | null;
533
+ reasoning_parser: string | null;
534
+ structured_output: boolean;
535
+ }
536
+ /** One reference image for one container platform, pinned by digest. */
537
+ export interface PlatformImage {
538
+ repository: string;
539
+ digest: Sha256Digest;
540
+ }
541
+ /** An image published for every platform this release supports. Both keys are always present. */
542
+ export interface PlatformImageMap {
543
+ 'linux/amd64': PlatformImage;
544
+ 'linux/arm64': PlatformImage;
545
+ }
546
+ /** One `os-release` distribution an install recipe has been qualified to run on. */
547
+ export interface RecipeDistribution {
548
+ id: string;
549
+ version_id: string;
550
+ arch: 'x86_64' | 'aarch64';
551
+ }
552
+ /**
553
+ * Package-manager family a Linux distribution uses, read from `/etc/os-release` `ID`/`ID_LIKE`
554
+ * (task 2.4). Arch and its derivatives (`pacman`) never check the install recipe's distribution
555
+ * list — they only ever adopt a working host or get exact manual instructions (design D2).
556
+ */
557
+ export declare const LINUX_PACKAGE_FAMILIES: readonly ["apt", "dnf", "pacman", "other"];
558
+ export type LinuxPackageFamily = (typeof LINUX_PACKAGE_FAMILIES)[number];
559
+ /**
560
+ * How Docker Engine reached this machine, as far as a read-only probe can tell (task 2.4, design
561
+ * D2). `docker-ce`/`docker.io`/`moby-engine` are alternative distro packages this integration can
562
+ * adopt or complete; `snap`, `rootless`, `docker-desktop` and `podman-docker` describe an
563
+ * installation it will never install over or adopt, because there is no safe way to layer
564
+ * `docker-ce` on top of, or automatically replace, someone else's existing setup.
565
+ */
566
+ export declare const LINUX_DOCKER_INSTALL_METHODS: readonly ["docker-ce", "docker.io", "moby-engine", "snap", "rootless", "docker-desktop", "podman-docker"];
567
+ export type LinuxDockerInstallMethod = (typeof LINUX_DOCKER_INSTALL_METHODS)[number];
568
+ /**
569
+ * One install recipe as data: an id naming argv compiled into core, and the distributions it is
570
+ * qualified for. Never a command, a shell script or code — the recipe body lives in core, not here.
571
+ */
572
+ export interface InstallRecipe {
573
+ recipe_id: string;
574
+ distributions: RecipeDistribution[];
575
+ }
576
+ /** One checkpoint this engine release has been qualified against, pinned to an exact revision. */
577
+ export interface CuratedModel {
578
+ repository: string;
579
+ revision: string;
580
+ inventory_digest: Sha256Digest;
581
+ vram_tier_bytes: number;
582
+ note: string;
583
+ }
584
+ /**
585
+ * The data about the foundation every managed engine runs on, kept apart from any engine's
586
+ * descriptor (openspec change `extract-environment-manifest`). One document per platform,
587
+ * `runtimes/environments/<platform>.json` in conf, and a core reads only its own platform's — a
588
+ * union by `platform`. Immutable per `manifest_id` (`<platform>-r<N>`), like a descriptor per
589
+ * `descriptor_id`. Data only: every recipe body and argv is compiled into core.
590
+ */
591
+ export type EnvironmentManifest = LinuxEnvironmentManifest | WindowsEnvironmentManifest;
592
+ /** The platforms an environment manifest is published for. */
593
+ export type EnvironmentPlatform = EnvironmentManifest['platform'];
594
+ /**
595
+ * Linux's manifest: which install recipes exist and on which distributions each is qualified. Shape
596
+ * matches `atomic-chat-conf/runtimes/environments/linux.schema.json`.
597
+ */
598
+ export interface LinuxEnvironmentManifest {
599
+ schema_version: 1;
600
+ manifest_id: string;
601
+ platform: 'linux';
602
+ minimum_core_version: string;
603
+ recipes: InstallRecipe[];
604
+ }
605
+ /**
606
+ * The guest root filesystem Windows core imports as Atomic Chat's own WSL distribution: an HTTPS
607
+ * `url`, the file's lowercase-hex `sha256` (checked before the file is used for anything) and what
608
+ * the guest is, in a Linux manifest's terms.
609
+ */
610
+ export interface WslRootfs {
611
+ url: string;
612
+ sha256: string;
613
+ /** `aarch64` only in the Windows on Arm manifest (`windows-arm64.json`, id `windows-arm64-r<N>`). */
614
+ distribution: {
615
+ id: string;
616
+ version_id: string;
617
+ arch: 'x86_64' | 'aarch64';
618
+ };
619
+ }
620
+ /**
621
+ * Windows' manifest (change `add-tensorrt-llm-windows`, design D13): the lowest Windows build and
622
+ * WSL package version core offers the environment on, the pinned rootfs, and the recipe compiled into
623
+ * core that prepares the guest. Shape matches `atomic-chat-conf/runtimes/environments/windows.schema.json`.
624
+ * `minimum_wsl_version` is `MAJOR.MINOR.PATCH`; `wsl --version`'s fourth part is ignored (conf ruling 1.1).
625
+ */
626
+ export interface WindowsEnvironmentManifest {
627
+ schema_version: 1;
628
+ manifest_id: string;
629
+ platform: 'windows';
630
+ minimum_core_version: string;
631
+ minimum_windows_build: number;
632
+ minimum_wsl_version: string;
633
+ rootfs: WslRootfs;
634
+ guest_recipe_id: string;
635
+ }
636
+ /**
637
+ * Immutable metadata for one engine release: which image to run, what the host needs, and what it
638
+ * can load. Fetched over HTTPS from the release catalog and pinned by digest. It carries data only:
639
+ * a descriptor can never contain a command, a shell recipe or code to load, and never an install
640
+ * recipe or a distribution list — those are the environment's (`EnvironmentManifest`). Shape matches
641
+ * `atomic-chat-conf/runtimes/schema.json`, the source of truth for what a published descriptor
642
+ * contains.
643
+ */
644
+ export interface RuntimeDescriptor {
645
+ schema_version: 1;
646
+ descriptor_id: string;
647
+ engine_id: string;
648
+ /** The compiled adapter that owns this engine's argv and readiness. Not loadable from metadata. */
649
+ adapter_id: string;
650
+ adapter_contract_version: 1;
651
+ image: PlatformImageMap;
652
+ /** Small CUDA base image used to verify GPU access before the much larger engine image is pulled. */
653
+ probe_image: PlatformImageMap;
654
+ minimum_core_version: string;
655
+ minimum_app_version: string;
656
+ /** Lowest NVIDIA display driver version the engine image and `probe_image` run on (design D16). */
657
+ minimum_driver_version: string;
658
+ minimum_compute_capability: string;
659
+ /** HF `config.json` architecture class names this release implements, e.g. `LlamaForCausalLM`. */
660
+ supported_architectures: string[];
661
+ quantization: QuantizationSupport[];
662
+ /** Keyed by HF architecture class name; an architecture absent here gets no tool calls or reasoning. */
663
+ model_families: Record<string, ModelFamilySupport>;
664
+ /** Checkpoints measured to work, offered as a shortcut. Never the limit of what may be loaded. */
665
+ curated_models: CuratedModel[];
666
+ download_bytes: number;
667
+ required_disk_bytes: number;
668
+ notices: string[];
669
+ exclusions: string[];
670
+ }
671
+ /**
672
+ * What `GET /atomic/v1/environments/descriptors/:descriptorId` answers (task 2.22, app gap G-app-2):
673
+ * the part of one cached runtime descriptor a client shows the user — the NVIDIA terms and notices
674
+ * before consent, the curated checkpoints and the architectures on the model screen. Copied from the
675
+ * descriptor as published: `notices` verbatim and in order. The core answers from its own cache,
676
+ * never the network, for the id an installation pins (`RuntimeInstallation.active_descriptor_id`) or
677
+ * a plan names (`RequirementPlan.descriptor_id`).
678
+ */
679
+ export interface RuntimeDescriptorSummary {
680
+ descriptor_id: string;
681
+ engine_id: string;
682
+ notices: string[];
683
+ curated_models: CuratedModel[];
684
+ supported_architectures: string[];
685
+ }
686
+ /**
687
+ * The verdict of `POST /atomic/v1/models/tensorrt-llm/check` (spec `tensorrt-llm-models`): what the
688
+ * core found out about a checkpoint from its `config.json`/`hf_quant_config.json` and file listing,
689
+ * without downloading a single weight or reaching the network. `architectures`, `quantization_format`
690
+ * and `weight_bytes` describe the checkpoint as submitted; `checked_gpu_id` names the GPU the
691
+ * verdict was computed against — the caller's `gpu_id`, or the one a load would pick when omitted.
692
+ *
693
+ * `quantization_format` is null when there is no recognised format to report: GGUF is always
694
+ * rejected outright (spec `tensorrt-llm-models` — "for GGUF there is llama.cpp"), and a checkpoint
695
+ * whose `config.json`/`hf_quant_config.json` the naming rule from the conf README does not
696
+ * recognise is rejected the same way, unidentified rather than guessed at.
697
+ *
698
+ * `curated` is true when the repository and revision matched a `curated_models` entry of the
699
+ * installed descriptor and its `inventory_digest` verified against the submitted file list.
700
+ * `unified_memory` is true when `checked_gpu_id` reports no VRAM of its own (e.g. GB10/DGX Spark),
701
+ * so the check compared weight bytes against host memory instead (design D13). `fits_other_gpus`
702
+ * lists every other GPU on this host the checkpoint would fit on, populated whether or not
703
+ * `checked_gpu_id` itself passed, so a caller can suggest a card switch instead of a dead end.
704
+ *
705
+ * `verdict` carries the pass/fail: `MODEL_INCOMPATIBLE` for an unsupported architecture, a
706
+ * quantization format newer than the card (or on the format's exclusion list, or not recognised at
707
+ * all, including GGUF), or weights that do not fit; `MANAGED_METADATA_INVALID` when a curated
708
+ * match's `inventory_digest` does not verify.
709
+ *
710
+ * `kv_reserve_basis` says how the KV-cache memory reserve behind `verdict` was sized (task 2.16w
711
+ * round 1, finding 6): `'config'` when `config.json` carried the architecture fields
712
+ * (`num_hidden_layers`, `num_key_value_heads`/`num_attention_heads`, `head_dim`/`hidden_size`) the
713
+ * real formula needs — `weights + KV_bytes / kv_cache_free_gpu_memory_fraction`, `KV_bytes` sized
714
+ * from those fields, the context length and the KV dtype; `'weight_fraction'` when they were
715
+ * missing and the reserve fell back to the older, cruder `weights × (1 − fraction)` rule. `undefined`
716
+ * only when the verdict never reached the memory check at all (an earlier failure — GGUF, an
717
+ * unrecognised format, an unsupported architecture, a curated digest mismatch).
718
+ */
719
+ export interface ModelCompatibility {
720
+ architectures: string[];
721
+ /** Null when the checkpoint has no recognised quantization format (GGUF, or an unrecognised naming). */
722
+ quantization_format: string | null;
723
+ weight_bytes: number;
724
+ checked_gpu_id: string;
725
+ curated: boolean;
726
+ unified_memory: boolean;
727
+ fits_other_gpus: string[];
728
+ kv_reserve_basis?: 'config' | 'weight_fraction';
729
+ verdict: {
730
+ ok: true;
731
+ } | {
732
+ ok: false;
733
+ error: ErrorBody;
734
+ };
735
+ /**
736
+ * What the caller should know that does not refuse the model (change `add-tensorrt-llm-windows`,
737
+ * design D11): `wsl-vm-memory` — on Windows the WSL VM has less memory than the weights
738
+ * (`params.vm_memory_bytes`, `params.weight_bytes`, `params.wslconfig_memory` as `.wslconfig` sets it,
739
+ * or `''` when unset), so loading streams and is slower. Absent when there is nothing to say;
740
+ * additive, a client that predates it ignores the key.
741
+ */
742
+ warnings?: ModelCheckWarning[];
743
+ }
744
+ /** One `ModelCompatibility.warnings` entry: shaped like `ManagedPlanWarning`. */
745
+ export interface ModelCheckWarning {
746
+ code: string;
747
+ message: string;
748
+ params?: Record<string, string>;
749
+ }
750
+ /**
751
+ * `DELETE /models/tensorrt-llm/:id` (task 2.24, design D12a, spec `tensorrt-llm-models` "Модель
752
+ * удаляется через core"): what the deletion removed, once the model's container stop was confirmed.
753
+ */
754
+ export interface ManagedModelDeletion {
755
+ model_id: string;
756
+ /** Whether a session or a load of the model had to be stopped first. */
757
+ was_loaded: boolean;
758
+ /** Bytes of the model folder and of every engine cache of the model, measured just before removal. */
759
+ freed_bytes: number;
760
+ /** Engine cache folders removed: one per engine release (descriptor) the model was ever loaded with. */
761
+ engine_caches_removed: number;
762
+ }
763
+ /**
764
+ * `GET /atomic/v1/models/tensorrt-llm/location` (change `add-tensorrt-llm-windows`, task 2.8, design
765
+ * D6; spec `tensorrt-llm-models` "Core сообщает расположение моделей"): the one root a client downloads
766
+ * `tensorrt-llm` models into, checks files under and writes `model.yml` in — as this machine opens it:
767
+ * `<data>/tensorrt-llm/models` on Linux, `\\wsl.localhost\<distribution>\var\lib\atomic-chat\scopes\<key>\models\tensorrt-llm`
768
+ * on Windows. `free_bytes` is the space left for new models there — on Windows the smaller of the
769
+ * guest's and the Windows volume's that holds the distribution — or null when it could not be read.
770
+ */
771
+ export interface ManagedModelLocation {
772
+ root: string;
773
+ free_bytes: number | null;
774
+ }