@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.
- package/README.md +22 -0
- package/dist/app-daemon.js +20 -67
- package/dist/app-daemon.js.map +1 -1
- package/dist/backend/advisor/advisor.d.ts +132 -0
- package/dist/backend/advisor/advisor.js +537 -0
- package/dist/backend/advisor/advisor.js.map +1 -0
- package/dist/backend/advisor/index.d.ts +6 -0
- package/dist/backend/advisor/index.js +7 -0
- package/dist/backend/advisor/index.js.map +1 -0
- package/dist/backend/advisor/policy.d.ts +81 -0
- package/dist/backend/advisor/policy.js +154 -0
- package/dist/backend/advisor/policy.js.map +1 -0
- package/dist/backend/catalog/archive.d.ts +21 -7
- package/dist/backend/catalog/archive.js +57 -17
- package/dist/backend/catalog/archive.js.map +1 -1
- package/dist/backend/catalog/bundled-manifest-baseline.js +42 -26
- package/dist/backend/catalog/bundled-manifest-baseline.js.map +1 -1
- package/dist/backend/catalog/cuda-family.d.ts +12 -2
- package/dist/backend/catalog/cuda-family.js +30 -7
- package/dist/backend/catalog/cuda-family.js.map +1 -1
- package/dist/backend/catalog/index.d.ts +5 -0
- package/dist/backend/catalog/index.js +5 -0
- package/dist/backend/catalog/index.js.map +1 -1
- package/dist/backend/catalog/manifest.d.ts +5 -3
- package/dist/backend/catalog/manifest.js +12 -9
- package/dist/backend/catalog/manifest.js.map +1 -1
- package/dist/backend/catalog/migrate.d.ts +8 -6
- package/dist/backend/catalog/migrate.js +26 -15
- package/dist/backend/catalog/migrate.js.map +1 -1
- package/dist/backend/catalog/prism-catalog.d.ts +42 -0
- package/dist/backend/catalog/prism-catalog.js +101 -0
- package/dist/backend/catalog/prism-catalog.js.map +1 -0
- package/dist/backend/catalog/prism-manifest-baseline.d.ts +2 -0
- package/dist/backend/catalog/prism-manifest-baseline.js +11 -0
- package/dist/backend/catalog/prism-manifest-baseline.js.map +1 -0
- package/dist/backend/catalog/prism-manifest-baseline.json +134 -0
- package/dist/backend/catalog/prism-manifest.d.ts +90 -0
- package/dist/backend/catalog/prism-manifest.js +171 -0
- package/dist/backend/catalog/prism-manifest.js.map +1 -0
- package/dist/backend/catalog/turboquant-catalog.d.ts +60 -0
- package/dist/backend/catalog/turboquant-catalog.js +162 -0
- package/dist/backend/catalog/turboquant-catalog.js.map +1 -0
- package/dist/backend/catalog/turboquant-index.d.ts +104 -0
- package/dist/backend/catalog/turboquant-index.js +260 -0
- package/dist/backend/catalog/turboquant-index.js.map +1 -0
- package/dist/backend/index.d.ts +1 -0
- package/dist/backend/index.js +1 -0
- package/dist/backend/index.js.map +1 -1
- package/dist/backend/install/runtime-backend.d.ts +6 -6
- package/dist/backend/install/runtime-backend.js +23 -20
- package/dist/backend/install/runtime-backend.js.map +1 -1
- package/dist/backend/install/service.d.ts +106 -5
- package/dist/backend/install/service.js +247 -21
- package/dist/backend/install/service.js.map +1 -1
- package/dist/backend/installed/bundled.d.ts +19 -0
- package/dist/backend/installed/bundled.js +45 -0
- package/dist/backend/installed/bundled.js.map +1 -0
- package/dist/backend/installed/index.d.ts +1 -0
- package/dist/backend/installed/index.js +1 -0
- package/dist/backend/installed/index.js.map +1 -1
- package/dist/backend/installed/installed.js +3 -0
- package/dist/backend/installed/installed.js.map +1 -1
- package/dist/backend/optimal/optimal-cache.d.ts +27 -8
- package/dist/backend/optimal/optimal-cache.js +38 -19
- package/dist/backend/optimal/optimal-cache.js.map +1 -1
- package/dist/backend/optimal/optimal-store.js +1 -1
- package/dist/backend/optimal/optimal-store.js.map +1 -1
- package/dist/backend/select/categories.d.ts +2 -1
- package/dist/backend/select/categories.js +8 -1
- package/dist/backend/select/categories.js.map +1 -1
- package/dist/backend/select/features.d.ts +13 -5
- package/dist/backend/select/features.js +36 -6
- package/dist/backend/select/features.js.map +1 -1
- package/dist/backend/select/index.d.ts +2 -0
- package/dist/backend/select/index.js +2 -0
- package/dist/backend/select/index.js.map +1 -1
- package/dist/backend/select/prism.d.ts +54 -0
- package/dist/backend/select/prism.js +212 -0
- package/dist/backend/select/prism.js.map +1 -0
- package/dist/backend/select/recovery.d.ts +4 -2
- package/dist/backend/select/recovery.js +17 -5
- package/dist/backend/select/recovery.js.map +1 -1
- package/dist/backend/select/tiers.d.ts +20 -11
- package/dist/backend/select/tiers.js +49 -11
- package/dist/backend/select/tiers.js.map +1 -1
- package/dist/backend/select/turboquant-tiers.d.ts +45 -0
- package/dist/backend/select/turboquant-tiers.js +114 -0
- package/dist/backend/select/turboquant-tiers.js.map +1 -0
- package/dist/backend/types.d.ts +6 -69
- package/dist/cli/commands/backends.d.ts +10 -0
- package/dist/cli/commands/backends.js +142 -0
- package/dist/cli/commands/backends.js.map +1 -0
- package/dist/cli/commands/hardware.d.ts +13 -0
- package/dist/cli/commands/hardware.js +71 -0
- package/dist/cli/commands/hardware.js.map +1 -0
- package/dist/cli/commands/host-step.d.ts +28 -0
- package/dist/cli/commands/host-step.js +67 -0
- package/dist/cli/commands/host-step.js.map +1 -0
- package/dist/cli/commands/index.d.ts +4 -1
- package/dist/cli/commands/index.js +4 -1
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/serve.js +4 -4
- package/dist/cli/commands/serve.js.map +1 -1
- package/dist/cli/commands/shared.d.ts +6 -1
- package/dist/cli/commands/shared.js +7 -0
- package/dist/cli/commands/shared.js.map +1 -1
- package/dist/cli/io.d.ts +11 -0
- package/dist/cli/io.js +28 -3
- package/dist/cli/io.js.map +1 -1
- package/dist/cli/launch.js +2 -2
- package/dist/cli/launch.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +11 -1
- package/dist/cli/main.js.map +1 -1
- package/dist/client/control-client.d.ts +128 -7
- package/dist/client/control-client.js +211 -12
- package/dist/client/control-client.js.map +1 -1
- package/dist/cloud/registry.js +9 -1
- package/dist/cloud/registry.js.map +1 -1
- package/dist/config/paths.d.ts +137 -0
- package/dist/config/paths.js +163 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/contracts/backend-advisor.d.ts +225 -0
- package/dist/contracts/backend-advisor.js +14 -0
- package/dist/contracts/backend-advisor.js.map +1 -0
- package/dist/contracts/control-api.d.ts +7 -1
- package/dist/contracts/control-api.js +7 -1
- package/dist/contracts/control-api.js.map +1 -1
- package/dist/contracts/decision.d.ts +394 -0
- package/dist/contracts/decision.js +69 -0
- package/dist/contracts/decision.js.map +1 -0
- package/dist/contracts/diffusion.d.ts +62 -9
- package/dist/contracts/embedding.d.ts +103 -0
- package/dist/contracts/embedding.js +24 -0
- package/dist/contracts/embedding.js.map +1 -0
- package/dist/contracts/engine-builds.d.ts +108 -0
- package/dist/contracts/engine-builds.js +11 -0
- package/dist/contracts/engine-builds.js.map +1 -0
- package/dist/contracts/engines.d.ts +157 -0
- package/dist/contracts/engines.js +50 -0
- package/dist/contracts/engines.js.map +1 -0
- package/dist/contracts/environment.d.ts +774 -0
- package/dist/contracts/environment.js +116 -0
- package/dist/contracts/environment.js.map +1 -0
- package/dist/contracts/errors.d.ts +43 -2
- package/dist/contracts/errors.js +41 -0
- package/dist/contracts/errors.js.map +1 -1
- package/dist/contracts/events.d.ts +82 -4
- package/dist/contracts/hardware.d.ts +79 -6
- package/dist/contracts/hardware.js +9 -5
- package/dist/contracts/hardware.js.map +1 -1
- package/dist/contracts/index.d.ts +8 -0
- package/dist/contracts/index.js +8 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/model-compatibility.d.ts +97 -0
- package/dist/contracts/model-compatibility.js +6 -0
- package/dist/contracts/model-compatibility.js.map +1 -0
- package/dist/contracts/model-setup.d.ts +115 -0
- package/dist/contracts/model-setup.js +33 -0
- package/dist/contracts/model-setup.js.map +1 -0
- package/dist/contracts/model-yml.d.ts +14 -0
- package/dist/contracts/model-yml.js +1 -0
- package/dist/contracts/model-yml.js.map +1 -1
- package/dist/contracts/session.d.ts +45 -2
- package/dist/contracts/session.js +14 -1
- package/dist/contracts/session.js.map +1 -1
- package/dist/contracts/settings.d.ts +44 -1
- package/dist/contracts/settings.js.map +1 -1
- package/dist/core/atomic-core.d.ts +44 -5
- package/dist/core/atomic-core.js +24 -0
- package/dist/core/atomic-core.js.map +1 -1
- package/dist/core/create.js +517 -23
- package/dist/core/create.js.map +1 -1
- package/dist/core/gpu/index.d.ts +6 -0
- package/dist/core/gpu/index.js +7 -0
- package/dist/core/gpu/index.js.map +1 -0
- package/dist/core/gpu/policy.d.ts +68 -0
- package/dist/core/gpu/policy.js +99 -0
- package/dist/core/gpu/policy.js.map +1 -0
- package/dist/core/gpu/residency.d.ts +44 -0
- package/dist/core/gpu/residency.js +101 -0
- package/dist/core/gpu/residency.js.map +1 -0
- package/dist/core/gpu-residency.d.ts +39 -0
- package/dist/core/gpu-residency.js +32 -0
- package/dist/core/gpu-residency.js.map +1 -0
- package/dist/core/index.d.ts +1 -1
- package/dist/core/managed-engines.d.ts +207 -0
- package/dist/core/managed-engines.js +579 -0
- package/dist/core/managed-engines.js.map +1 -0
- package/dist/core/managed-environment.d.ts +72 -0
- package/dist/core/managed-environment.js +218 -0
- package/dist/core/managed-environment.js.map +1 -0
- package/dist/core/model-setup/index.d.ts +4 -0
- package/dist/core/model-setup/index.js +5 -0
- package/dist/core/model-setup/index.js.map +1 -0
- package/dist/core/model-setup/plan.d.ts +56 -0
- package/dist/core/model-setup/plan.js +158 -0
- package/dist/core/model-setup/plan.js.map +1 -0
- package/dist/core/model-setup/service.d.ts +92 -0
- package/dist/core/model-setup/service.js +329 -0
- package/dist/core/model-setup/service.js.map +1 -0
- package/dist/core/model-setup/store.d.ts +29 -0
- package/dist/core/model-setup/store.js +116 -0
- package/dist/core/model-setup/store.js.map +1 -0
- package/dist/core/model-setup/wiring.d.ts +59 -0
- package/dist/core/model-setup/wiring.js +132 -0
- package/dist/core/model-setup/wiring.js.map +1 -0
- package/dist/core/prism.d.ts +36 -0
- package/dist/core/prism.js +42 -0
- package/dist/core/prism.js.map +1 -0
- package/dist/core/public-server.d.ts +7 -0
- package/dist/core/public-server.js +2 -0
- package/dist/core/public-server.js.map +1 -1
- package/dist/core/sessions.d.ts +6 -1
- package/dist/core/sessions.js +18 -14
- package/dist/core/sessions.js.map +1 -1
- package/dist/core/types.d.ts +27 -1
- package/dist/core/types.js.map +1 -1
- package/dist/decision/args.d.ts +110 -0
- package/dist/decision/args.js +126 -0
- package/dist/decision/args.js.map +1 -0
- package/dist/decision/backoff.d.ts +25 -0
- package/dist/decision/backoff.js +33 -0
- package/dist/decision/backoff.js.map +1 -0
- package/dist/decision/engine-candidates.d.ts +52 -0
- package/dist/decision/engine-candidates.js +138 -0
- package/dist/decision/engine-candidates.js.map +1 -0
- package/dist/decision/engine-fallback.d.ts +41 -0
- package/dist/decision/engine-fallback.js +57 -0
- package/dist/decision/engine-fallback.js.map +1 -0
- package/dist/decision/engine-version.d.ts +27 -0
- package/dist/decision/engine-version.js +54 -0
- package/dist/decision/engine-version.js.map +1 -0
- package/dist/decision/engine.d.ts +114 -0
- package/dist/decision/engine.js +253 -0
- package/dist/decision/engine.js.map +1 -0
- package/dist/decision/http.d.ts +36 -0
- package/dist/decision/http.js +73 -0
- package/dist/decision/http.js.map +1 -0
- package/dist/decision/index.d.ts +20 -0
- package/dist/decision/index.js +21 -0
- package/dist/decision/index.js.map +1 -0
- package/dist/decision/model-facts.d.ts +32 -0
- package/dist/decision/model-facts.js +40 -0
- package/dist/decision/model-facts.js.map +1 -0
- package/dist/decision/outcome.d.ts +35 -0
- package/dist/decision/outcome.js +105 -0
- package/dist/decision/outcome.js.map +1 -0
- package/dist/decision/process.d.ts +67 -0
- package/dist/decision/process.js +133 -0
- package/dist/decision/process.js.map +1 -0
- package/dist/decision/readiness.d.ts +74 -0
- package/dist/decision/readiness.js +165 -0
- package/dist/decision/readiness.js.map +1 -0
- package/dist/decision/request.d.ts +11 -0
- package/dist/decision/request.js +56 -0
- package/dist/decision/request.js.map +1 -0
- package/dist/decision/service.d.ts +202 -0
- package/dist/decision/service.js +711 -0
- package/dist/decision/service.js.map +1 -0
- package/dist/decision/upstream-version.d.ts +23 -0
- package/dist/decision/upstream-version.js +34 -0
- package/dist/decision/upstream-version.js.map +1 -0
- package/dist/decision/wiring.d.ts +67 -0
- package/dist/decision/wiring.js +101 -0
- package/dist/decision/wiring.js.map +1 -0
- package/dist/diffusion/args.d.ts +4 -2
- package/dist/diffusion/args.js +10 -3
- package/dist/diffusion/args.js.map +1 -1
- package/dist/diffusion/image-job.js +1 -1
- package/dist/diffusion/image-job.js.map +1 -1
- package/dist/diffusion/install.d.ts +35 -11
- package/dist/diffusion/install.js +74 -49
- package/dist/diffusion/install.js.map +1 -1
- package/dist/diffusion/job-kind.d.ts +33 -7
- package/dist/diffusion/jobs.d.ts +6 -1
- package/dist/diffusion/jobs.js +60 -18
- package/dist/diffusion/jobs.js.map +1 -1
- package/dist/diffusion/parse.d.ts +1 -2
- package/dist/diffusion/parse.js +1 -13
- package/dist/diffusion/parse.js.map +1 -1
- package/dist/diffusion/progress.js +3 -0
- package/dist/diffusion/progress.js.map +1 -1
- package/dist/diffusion/server-process.d.ts +6 -0
- package/dist/diffusion/server-process.js +3 -2
- package/dist/diffusion/server-process.js.map +1 -1
- package/dist/diffusion/service.d.ts +52 -6
- package/dist/diffusion/service.js +215 -40
- package/dist/diffusion/service.js.map +1 -1
- package/dist/diffusion/session.d.ts +27 -3
- package/dist/diffusion/session.js +108 -17
- package/dist/diffusion/session.js.map +1 -1
- package/dist/diffusion/state.d.ts +19 -1
- package/dist/diffusion/state.js +10 -0
- package/dist/diffusion/state.js.map +1 -1
- package/dist/diffusion/tracker.d.ts +15 -1
- package/dist/diffusion/tracker.js +32 -6
- package/dist/diffusion/tracker.js.map +1 -1
- package/dist/diffusion/types.d.ts +7 -0
- package/dist/diffusion/types.js +11 -0
- package/dist/diffusion/types.js.map +1 -1
- package/dist/diffusion/video-estimate.d.ts +214 -0
- package/dist/diffusion/video-estimate.js +402 -0
- package/dist/diffusion/video-estimate.js.map +1 -0
- package/dist/diffusion/video-eta.d.ts +90 -0
- package/dist/diffusion/video-eta.js +248 -0
- package/dist/diffusion/video-eta.js.map +1 -0
- package/dist/diffusion/video-history.d.ts +45 -0
- package/dist/diffusion/video-history.js +121 -0
- package/dist/diffusion/video-history.js.map +1 -0
- package/dist/diffusion/video-job.d.ts +13 -5
- package/dist/diffusion/video-job.js +42 -15
- package/dist/diffusion/video-job.js.map +1 -1
- package/dist/diffusion/video-recipe.js +3 -0
- package/dist/diffusion/video-recipe.js.map +1 -1
- package/dist/diffusion/video-tiling.d.ts +54 -0
- package/dist/diffusion/video-tiling.js +70 -0
- package/dist/diffusion/video-tiling.js.map +1 -0
- package/dist/diffusion/wiring.d.ts +14 -1
- package/dist/diffusion/wiring.js +7 -0
- package/dist/diffusion/wiring.js.map +1 -1
- package/dist/downloads/protocol.d.ts +3 -8
- package/dist/downloads/protocol.js.map +1 -1
- package/dist/embedding/args.d.ts +39 -0
- package/dist/embedding/args.js +46 -0
- package/dist/embedding/args.js.map +1 -0
- package/dist/embedding/engine.d.ts +50 -0
- package/dist/embedding/engine.js +100 -0
- package/dist/embedding/engine.js.map +1 -0
- package/dist/embedding/ffmpeg.d.ts +18 -0
- package/dist/embedding/ffmpeg.js +63 -0
- package/dist/embedding/ffmpeg.js.map +1 -0
- package/dist/embedding/index.d.ts +16 -0
- package/dist/embedding/index.js +17 -0
- package/dist/embedding/index.js.map +1 -0
- package/dist/embedding/model-facts.d.ts +51 -0
- package/dist/embedding/model-facts.js +84 -0
- package/dist/embedding/model-facts.js.map +1 -0
- package/dist/embedding/process.d.ts +66 -0
- package/dist/embedding/process.js +131 -0
- package/dist/embedding/process.js.map +1 -0
- package/dist/embedding/readiness.d.ts +56 -0
- package/dist/embedding/readiness.js +114 -0
- package/dist/embedding/readiness.js.map +1 -0
- package/dist/embedding/request.d.ts +43 -0
- package/dist/embedding/request.js +285 -0
- package/dist/embedding/request.js.map +1 -0
- package/dist/embedding/service.d.ts +152 -0
- package/dist/embedding/service.js +602 -0
- package/dist/embedding/service.js.map +1 -0
- package/dist/embedding/wiring.d.ts +51 -0
- package/dist/embedding/wiring.js +79 -0
- package/dist/embedding/wiring.js.map +1 -0
- package/dist/engine-builds/builds.d.ts +54 -0
- package/dist/engine-builds/builds.js +151 -0
- package/dist/engine-builds/builds.js.map +1 -0
- package/dist/engine-builds/index.d.ts +10 -0
- package/dist/engine-builds/index.js +11 -0
- package/dist/engine-builds/index.js.map +1 -0
- package/dist/engine-builds/install.d.ts +42 -0
- package/dist/engine-builds/install.js +100 -0
- package/dist/engine-builds/install.js.map +1 -0
- package/dist/engine-builds/manifest.d.ts +121 -0
- package/dist/engine-builds/manifest.js +254 -0
- package/dist/engine-builds/manifest.js.map +1 -0
- package/dist/engine-builds/order.d.ts +24 -0
- package/dist/engine-builds/order.js +44 -0
- package/dist/engine-builds/order.js.map +1 -0
- package/dist/engine-builds/select.d.ts +123 -0
- package/dist/engine-builds/select.js +223 -0
- package/dist/engine-builds/select.js.map +1 -0
- package/dist/engine-builds/service.d.ts +123 -0
- package/dist/engine-builds/service.js +392 -0
- package/dist/engine-builds/service.js.map +1 -0
- package/dist/engines/descriptor-order.d.ts +28 -0
- package/dist/engines/descriptor-order.js +60 -0
- package/dist/engines/descriptor-order.js.map +1 -0
- package/dist/engines/engine-build.d.ts +23 -0
- package/dist/engines/engine-build.js +58 -0
- package/dist/engines/engine-build.js.map +1 -0
- package/dist/engines/index.d.ts +10 -0
- package/dist/engines/index.js +11 -0
- package/dist/engines/index.js.map +1 -0
- package/dist/engines/llamacpp.d.ts +71 -0
- package/dist/engines/llamacpp.js +176 -0
- package/dist/engines/llamacpp.js.map +1 -0
- package/dist/engines/managed.d.ts +49 -0
- package/dist/engines/managed.js +88 -0
- package/dist/engines/managed.js.map +1 -0
- package/dist/engines/service.d.ts +46 -0
- package/dist/engines/service.js +61 -0
- package/dist/engines/service.js.map +1 -0
- package/dist/engines/versions.d.ts +65 -0
- package/dist/engines/versions.js +259 -0
- package/dist/engines/versions.js.map +1 -0
- package/dist/hardware/cpu-flags.d.ts +44 -0
- package/dist/hardware/cpu-flags.js +206 -0
- package/dist/hardware/cpu-flags.js.map +1 -0
- package/dist/hardware/drm-sysfs.d.ts +51 -0
- package/dist/hardware/drm-sysfs.js +67 -0
- package/dist/hardware/drm-sysfs.js.map +1 -0
- package/dist/hardware/facts.d.ts +42 -0
- package/dist/hardware/facts.js +92 -0
- package/dist/hardware/facts.js.map +1 -0
- package/dist/hardware/index.d.ts +19 -3
- package/dist/hardware/index.js +19 -3
- package/dist/hardware/index.js.map +1 -1
- package/dist/hardware/merge.d.ts +55 -0
- package/dist/hardware/merge.js +141 -0
- package/dist/hardware/merge.js.map +1 -0
- package/dist/hardware/nvidia-smi.d.ts +43 -0
- package/dist/hardware/nvidia-smi.js +118 -0
- package/dist/hardware/nvidia-smi.js.map +1 -0
- package/dist/hardware/probe-common.d.ts +72 -0
- package/dist/hardware/probe-common.js +106 -0
- package/dist/hardware/probe-common.js.map +1 -0
- package/dist/hardware/probe-darwin.d.ts +20 -0
- package/dist/hardware/probe-darwin.js +76 -0
- package/dist/hardware/probe-darwin.js.map +1 -0
- package/dist/hardware/probe-linux.d.ts +9 -0
- package/dist/hardware/probe-linux.js +133 -0
- package/dist/hardware/probe-linux.js.map +1 -0
- package/dist/hardware/probe-windows.d.ts +7 -0
- package/dist/hardware/probe-windows.js +50 -0
- package/dist/hardware/probe-windows.js.map +1 -0
- package/dist/hardware/probe.d.ts +16 -0
- package/dist/hardware/probe.js +65 -0
- package/dist/hardware/probe.js.map +1 -0
- package/dist/hardware/service.d.ts +60 -0
- package/dist/hardware/service.js +114 -0
- package/dist/hardware/service.js.map +1 -0
- package/dist/hardware/vulkan.d.ts +47 -0
- package/dist/hardware/vulkan.js +148 -0
- package/dist/hardware/vulkan.js.map +1 -0
- package/dist/hardware/windows-video.d.ts +97 -0
- package/dist/hardware/windows-video.js +214 -0
- package/dist/hardware/windows-video.js.map +1 -0
- package/dist/host/app-daemon.d.ts +47 -0
- package/dist/host/app-daemon.js +146 -0
- package/dist/host/app-daemon.js.map +1 -0
- package/dist/host/index.d.ts +5 -3
- package/dist/host/index.js +5 -3
- package/dist/host/index.js.map +1 -1
- package/dist/host/log-file.d.ts +74 -0
- package/dist/host/log-file.js +214 -0
- package/dist/host/log-file.js.map +1 -0
- package/dist/host/recipes/enable-wsl.d.ts +63 -0
- package/dist/host/recipes/enable-wsl.js +73 -0
- package/dist/host/recipes/enable-wsl.js.map +1 -0
- package/dist/host/recipes/executor-io-windows.d.ts +69 -0
- package/dist/host/recipes/executor-io-windows.js +235 -0
- package/dist/host/recipes/executor-io-windows.js.map +1 -0
- package/dist/host/recipes/executor-io.d.ts +80 -0
- package/dist/host/recipes/executor-io.js +211 -0
- package/dist/host/recipes/executor-io.js.map +1 -0
- package/dist/host/recipes/executor.d.ts +81 -0
- package/dist/host/recipes/executor.js +678 -0
- package/dist/host/recipes/executor.js.map +1 -0
- package/dist/host/recipes/guest-executor.d.ts +29 -0
- package/dist/host/recipes/guest-executor.js +76 -0
- package/dist/host/recipes/guest-executor.js.map +1 -0
- package/dist/host/recipes/index.d.ts +16 -0
- package/dist/host/recipes/index.js +17 -0
- package/dist/host/recipes/index.js.map +1 -0
- package/dist/host/recipes/install-container-runtime.d.ts +389 -0
- package/dist/host/recipes/install-container-runtime.js +796 -0
- package/dist/host/recipes/install-container-runtime.js.map +1 -0
- package/dist/host/recipes/openpgp.d.ts +23 -0
- package/dist/host/recipes/openpgp.js +153 -0
- package/dist/host/recipes/openpgp.js.map +1 -0
- package/dist/host/recipes/request-file.d.ts +96 -0
- package/dist/host/recipes/request-file.js +103 -0
- package/dist/host/recipes/request-file.js.map +1 -0
- package/dist/lock/process-journal.d.ts +5 -2
- package/dist/lock/process-journal.js.map +1 -1
- package/dist/models/capabilities.d.ts +7 -0
- package/dist/models/capabilities.js +17 -1
- package/dist/models/capabilities.js.map +1 -1
- package/dist/models/compatibility/index.d.ts +10 -0
- package/dist/models/compatibility/index.js +11 -0
- package/dist/models/compatibility/index.js.map +1 -0
- package/dist/models/compatibility/inspect.d.ts +19 -0
- package/dist/models/compatibility/inspect.js +59 -0
- package/dist/models/compatibility/inspect.js.map +1 -0
- package/dist/models/compatibility/resolve.d.ts +59 -0
- package/dist/models/compatibility/resolve.js +219 -0
- package/dist/models/compatibility/resolve.js.map +1 -0
- package/dist/models/compatibility/rules-baseline.d.ts +2 -0
- package/dist/models/compatibility/rules-baseline.js +10 -0
- package/dist/models/compatibility/rules-baseline.js.map +1 -0
- package/dist/models/compatibility/rules-baseline.json +292 -0
- package/dist/models/compatibility/rules-service.d.ts +36 -0
- package/dist/models/compatibility/rules-service.js +109 -0
- package/dist/models/compatibility/rules-service.js.map +1 -0
- package/dist/models/compatibility/rules.d.ts +81 -0
- package/dist/models/compatibility/rules.js +164 -0
- package/dist/models/compatibility/rules.js.map +1 -0
- package/dist/models/compatibility/service.d.ts +59 -0
- package/dist/models/compatibility/service.js +137 -0
- package/dist/models/compatibility/service.js.map +1 -0
- package/dist/models/decision-checkpoint.d.ts +22 -0
- package/dist/models/decision-checkpoint.js +33 -0
- package/dist/models/decision-checkpoint.js.map +1 -0
- package/dist/models/gguf/classify.d.ts +27 -1
- package/dist/models/gguf/classify.js +78 -2
- package/dist/models/gguf/classify.js.map +1 -1
- package/dist/models/gguf/index.d.ts +1 -0
- package/dist/models/gguf/index.js +1 -0
- package/dist/models/gguf/index.js.map +1 -1
- package/dist/models/gguf/tensors.d.ts +56 -0
- package/dist/models/gguf/tensors.js +236 -0
- package/dist/models/gguf/tensors.js.map +1 -0
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.js +2 -0
- package/dist/models/index.js.map +1 -1
- package/dist/router/resolve.d.ts +7 -1
- package/dist/router/resolve.js +14 -1
- package/dist/router/resolve.js.map +1 -1
- package/dist/runtime/container/argv.d.ts +88 -0
- package/dist/runtime/container/argv.js +406 -0
- package/dist/runtime/container/argv.js.map +1 -0
- package/dist/runtime/container/docker-binary.d.ts +4 -0
- package/dist/runtime/container/docker-binary.js +34 -0
- package/dist/runtime/container/docker-binary.js.map +1 -0
- package/dist/runtime/container/env.d.ts +17 -0
- package/dist/runtime/container/env.js +52 -0
- package/dist/runtime/container/env.js.map +1 -0
- package/dist/runtime/container/exec.d.ts +27 -0
- package/dist/runtime/container/exec.js +79 -0
- package/dist/runtime/container/exec.js.map +1 -0
- package/dist/runtime/container/execution-journal.d.ts +55 -0
- package/dist/runtime/container/execution-journal.js +167 -0
- package/dist/runtime/container/execution-journal.js.map +1 -0
- package/dist/runtime/container/heartbeat.d.ts +47 -0
- package/dist/runtime/container/heartbeat.js +78 -0
- package/dist/runtime/container/heartbeat.js.map +1 -0
- package/dist/runtime/container/index.d.ts +30 -0
- package/dist/runtime/container/index.js +31 -0
- package/dist/runtime/container/index.js.map +1 -0
- package/dist/runtime/container/operations.d.ts +40 -0
- package/dist/runtime/container/operations.js +233 -0
- package/dist/runtime/container/operations.js.map +1 -0
- package/dist/runtime/container/pull.d.ts +48 -0
- package/dist/runtime/container/pull.js +280 -0
- package/dist/runtime/container/pull.js.map +1 -0
- package/dist/runtime/container/reconcile.d.ts +34 -0
- package/dist/runtime/container/reconcile.js +79 -0
- package/dist/runtime/container/reconcile.js.map +1 -0
- package/dist/runtime/container/types.d.ts +124 -0
- package/dist/runtime/container/types.js +2 -0
- package/dist/runtime/container/types.js.map +1 -0
- package/dist/runtime/container/watchdog.d.ts +114 -0
- package/dist/runtime/container/watchdog.js +418 -0
- package/dist/runtime/container/watchdog.js.map +1 -0
- package/dist/runtime/container/wiring.d.ts +78 -0
- package/dist/runtime/container/wiring.js +92 -0
- package/dist/runtime/container/wiring.js.map +1 -0
- package/dist/runtime/container/wsl-exec.d.ts +13 -0
- package/dist/runtime/container/wsl-exec.js +18 -0
- package/dist/runtime/container/wsl-exec.js.map +1 -0
- package/dist/runtime/environment/cached-document.d.ts +128 -0
- package/dist/runtime/environment/cached-document.js +218 -0
- package/dist/runtime/environment/cached-document.js.map +1 -0
- package/dist/runtime/environment/canonical-json.d.ts +78 -0
- package/dist/runtime/environment/canonical-json.js +86 -0
- package/dist/runtime/environment/canonical-json.js.map +1 -0
- package/dist/runtime/environment/descriptor-provider.d.ts +121 -0
- package/dist/runtime/environment/descriptor-provider.js +159 -0
- package/dist/runtime/environment/descriptor-provider.js.map +1 -0
- package/dist/runtime/environment/descriptor.d.ts +35 -0
- package/dist/runtime/environment/descriptor.js +239 -0
- package/dist/runtime/environment/descriptor.js.map +1 -0
- package/dist/runtime/environment/diagnostics.d.ts +50 -0
- package/dist/runtime/environment/diagnostics.js +114 -0
- package/dist/runtime/environment/diagnostics.js.map +1 -0
- package/dist/runtime/environment/document-fields.d.ts +39 -0
- package/dist/runtime/environment/document-fields.js +96 -0
- package/dist/runtime/environment/document-fields.js.map +1 -0
- package/dist/runtime/environment/environment-manifest-provider.d.ts +65 -0
- package/dist/runtime/environment/environment-manifest-provider.js +89 -0
- package/dist/runtime/environment/environment-manifest-provider.js.map +1 -0
- package/dist/runtime/environment/environment-manifest.d.ts +35 -0
- package/dist/runtime/environment/environment-manifest.js +131 -0
- package/dist/runtime/environment/environment-manifest.js.map +1 -0
- package/dist/runtime/environment/guest-host.d.ts +43 -0
- package/dist/runtime/environment/guest-host.js +88 -0
- package/dist/runtime/environment/guest-host.js.map +1 -0
- package/dist/runtime/environment/host-exec.d.ts +38 -0
- package/dist/runtime/environment/host-exec.js +145 -0
- package/dist/runtime/environment/host-exec.js.map +1 -0
- package/dist/runtime/environment/host-step-failure.d.ts +33 -0
- package/dist/runtime/environment/host-step-failure.js +34 -0
- package/dist/runtime/environment/host-step-failure.js.map +1 -0
- package/dist/runtime/environment/index.d.ts +56 -0
- package/dist/runtime/environment/index.js +57 -0
- package/dist/runtime/environment/index.js.map +1 -0
- package/dist/runtime/environment/installations.d.ts +25 -0
- package/dist/runtime/environment/installations.js +70 -0
- package/dist/runtime/environment/installations.js.map +1 -0
- package/dist/runtime/environment/inventory.d.ts +42 -0
- package/dist/runtime/environment/inventory.js +57 -0
- package/dist/runtime/environment/inventory.js.map +1 -0
- package/dist/runtime/environment/linux-blockers.d.ts +130 -0
- package/dist/runtime/environment/linux-blockers.js +251 -0
- package/dist/runtime/environment/linux-blockers.js.map +1 -0
- package/dist/runtime/environment/linux-docker-facts.d.ts +200 -0
- package/dist/runtime/environment/linux-docker-facts.js +342 -0
- package/dist/runtime/environment/linux-docker-facts.js.map +1 -0
- package/dist/runtime/environment/linux-docker-network.d.ts +80 -0
- package/dist/runtime/environment/linux-docker-network.js +195 -0
- package/dist/runtime/environment/linux-docker-network.js.map +1 -0
- package/dist/runtime/environment/linux-host.d.ts +22 -0
- package/dist/runtime/environment/linux-host.js +98 -0
- package/dist/runtime/environment/linux-host.js.map +1 -0
- package/dist/runtime/environment/linux-plan.d.ts +126 -0
- package/dist/runtime/environment/linux-plan.js +392 -0
- package/dist/runtime/environment/linux-plan.js.map +1 -0
- package/dist/runtime/environment/linux-probe.d.ts +245 -0
- package/dist/runtime/environment/linux-probe.js +315 -0
- package/dist/runtime/environment/linux-probe.js.map +1 -0
- package/dist/runtime/environment/linux-provisioner.d.ts +102 -0
- package/dist/runtime/environment/linux-provisioner.js +734 -0
- package/dist/runtime/environment/linux-provisioner.js.map +1 -0
- package/dist/runtime/environment/provisioner-descriptors.d.ts +17 -0
- package/dist/runtime/environment/provisioner-descriptors.js +62 -0
- package/dist/runtime/environment/provisioner-descriptors.js.map +1 -0
- package/dist/runtime/environment/recovery.d.ts +74 -0
- package/dist/runtime/environment/recovery.js +121 -0
- package/dist/runtime/environment/recovery.js.map +1 -0
- package/dist/runtime/environment/rootfs-download.d.ts +2 -0
- package/dist/runtime/environment/rootfs-download.js +47 -0
- package/dist/runtime/environment/rootfs-download.js.map +1 -0
- package/dist/runtime/environment/service.d.ts +280 -0
- package/dist/runtime/environment/service.js +776 -0
- package/dist/runtime/environment/service.js.map +1 -0
- package/dist/runtime/environment/state.d.ts +163 -0
- package/dist/runtime/environment/state.js +479 -0
- package/dist/runtime/environment/state.js.map +1 -0
- package/dist/runtime/environment/store-models.d.ts +19 -0
- package/dist/runtime/environment/store-models.js +30 -0
- package/dist/runtime/environment/store-models.js.map +1 -0
- package/dist/runtime/environment/store.d.ts +210 -0
- package/dist/runtime/environment/store.js +438 -0
- package/dist/runtime/environment/store.js.map +1 -0
- package/dist/runtime/environment/windows-environment-record.d.ts +48 -0
- package/dist/runtime/environment/windows-environment-record.js +89 -0
- package/dist/runtime/environment/windows-environment-record.js.map +1 -0
- package/dist/runtime/environment/windows-forwarding.d.ts +27 -0
- package/dist/runtime/environment/windows-forwarding.js +84 -0
- package/dist/runtime/environment/windows-forwarding.js.map +1 -0
- package/dist/runtime/environment/windows-guest-setup.d.ts +48 -0
- package/dist/runtime/environment/windows-guest-setup.js +157 -0
- package/dist/runtime/environment/windows-guest-setup.js.map +1 -0
- package/dist/runtime/environment/windows-host.d.ts +46 -0
- package/dist/runtime/environment/windows-host.js +163 -0
- package/dist/runtime/environment/windows-host.js.map +1 -0
- package/dist/runtime/environment/windows-plan.d.ts +78 -0
- package/dist/runtime/environment/windows-plan.js +216 -0
- package/dist/runtime/environment/windows-plan.js.map +1 -0
- package/dist/runtime/environment/windows-probe.d.ts +135 -0
- package/dist/runtime/environment/windows-probe.js +261 -0
- package/dist/runtime/environment/windows-probe.js.map +1 -0
- package/dist/runtime/environment/windows-provisioner.d.ts +113 -0
- package/dist/runtime/environment/windows-provisioner.js +782 -0
- package/dist/runtime/environment/windows-provisioner.js.map +1 -0
- package/dist/runtime/environment/wiring.d.ts +117 -0
- package/dist/runtime/environment/wiring.js +354 -0
- package/dist/runtime/environment/wiring.js.map +1 -0
- package/dist/runtime/foundation-models/runtime.d.ts +8 -0
- package/dist/runtime/foundation-models/runtime.js +5 -2
- package/dist/runtime/foundation-models/runtime.js.map +1 -1
- package/dist/runtime/llamacpp/args.d.ts +10 -1
- package/dist/runtime/llamacpp/args.js +43 -7
- package/dist/runtime/llamacpp/args.js.map +1 -1
- package/dist/runtime/llamacpp/fit-margin.d.ts +46 -0
- package/dist/runtime/llamacpp/fit-margin.js +47 -0
- package/dist/runtime/llamacpp/fit-margin.js.map +1 -0
- package/dist/runtime/llamacpp/index.d.ts +1 -0
- package/dist/runtime/llamacpp/index.js +1 -0
- package/dist/runtime/llamacpp/index.js.map +1 -1
- package/dist/runtime/llamacpp/load-plan.d.ts +23 -1
- package/dist/runtime/llamacpp/load-plan.js +82 -1
- package/dist/runtime/llamacpp/load-plan.js.map +1 -1
- package/dist/runtime/llamacpp/policy.d.ts +16 -0
- package/dist/runtime/llamacpp/policy.js +20 -0
- package/dist/runtime/llamacpp/policy.js.map +1 -1
- package/dist/runtime/llamacpp/probe.d.ts +21 -1
- package/dist/runtime/llamacpp/probe.js +32 -6
- package/dist/runtime/llamacpp/probe.js.map +1 -1
- package/dist/runtime/llamacpp/runtime.d.ts +56 -1
- package/dist/runtime/llamacpp/runtime.js +142 -15
- package/dist/runtime/llamacpp/runtime.js.map +1 -1
- package/dist/runtime/managed-engines/index.d.ts +8 -0
- package/dist/runtime/managed-engines/index.js +9 -0
- package/dist/runtime/managed-engines/index.js.map +1 -0
- package/dist/runtime/managed-engines/runtime.d.ts +140 -0
- package/dist/runtime/managed-engines/runtime.js +402 -0
- package/dist/runtime/managed-engines/runtime.js.map +1 -0
- package/dist/runtime/managed-engines/spec.d.ts +70 -0
- package/dist/runtime/managed-engines/spec.js +39 -0
- package/dist/runtime/managed-engines/spec.js.map +1 -0
- package/dist/runtime/managed-models/check.d.ts +50 -0
- package/dist/runtime/managed-models/check.js +157 -0
- package/dist/runtime/managed-models/check.js.map +1 -0
- package/dist/runtime/managed-models/compatibility.d.ts +256 -0
- package/dist/runtime/managed-models/compatibility.js +594 -0
- package/dist/runtime/managed-models/compatibility.js.map +1 -0
- package/dist/runtime/managed-models/delete.d.ts +15 -0
- package/dist/runtime/managed-models/delete.js +60 -0
- package/dist/runtime/managed-models/delete.js.map +1 -0
- package/dist/runtime/managed-models/guest-files.d.ts +8 -0
- package/dist/runtime/managed-models/guest-files.js +49 -0
- package/dist/runtime/managed-models/guest-files.js.map +1 -0
- package/dist/runtime/managed-models/index.d.ts +17 -0
- package/dist/runtime/managed-models/index.js +18 -0
- package/dist/runtime/managed-models/index.js.map +1 -0
- package/dist/runtime/managed-models/location.d.ts +22 -0
- package/dist/runtime/managed-models/location.js +53 -0
- package/dist/runtime/managed-models/location.js.map +1 -0
- package/dist/runtime/managed-models/migrate.d.ts +30 -0
- package/dist/runtime/managed-models/migrate.js +119 -0
- package/dist/runtime/managed-models/migrate.js.map +1 -0
- package/dist/runtime/managed-models/model-dir.d.ts +36 -0
- package/dist/runtime/managed-models/model-dir.js +136 -0
- package/dist/runtime/managed-models/model-dir.js.map +1 -0
- package/dist/runtime/managed-models/quant-format.d.ts +71 -0
- package/dist/runtime/managed-models/quant-format.js +299 -0
- package/dist/runtime/managed-models/quant-format.js.map +1 -0
- package/dist/runtime/managed-models/registry.d.ts +26 -0
- package/dist/runtime/managed-models/registry.js +66 -0
- package/dist/runtime/managed-models/registry.js.map +1 -0
- package/dist/runtime/managed-text/adapter.d.ts +266 -0
- package/dist/runtime/managed-text/adapter.js +96 -0
- package/dist/runtime/managed-text/adapter.js.map +1 -0
- package/dist/runtime/managed-text/backend-target.d.ts +3 -0
- package/dist/runtime/managed-text/backend-target.js +52 -0
- package/dist/runtime/managed-text/backend-target.js.map +1 -0
- package/dist/runtime/managed-text/deployment.d.ts +14 -0
- package/dist/runtime/managed-text/deployment.js +32 -0
- package/dist/runtime/managed-text/deployment.js.map +1 -0
- package/dist/runtime/managed-text/engine-cache.d.ts +15 -0
- package/dist/runtime/managed-text/engine-cache.js +64 -0
- package/dist/runtime/managed-text/engine-cache.js.map +1 -0
- package/dist/runtime/managed-text/gateway.d.ts +158 -0
- package/dist/runtime/managed-text/gateway.js +535 -0
- package/dist/runtime/managed-text/gateway.js.map +1 -0
- package/dist/runtime/managed-text/generation-defaults.d.ts +23 -0
- package/dist/runtime/managed-text/generation-defaults.js +51 -0
- package/dist/runtime/managed-text/generation-defaults.js.map +1 -0
- package/dist/runtime/managed-text/index.d.ts +26 -0
- package/dist/runtime/managed-text/index.js +27 -0
- package/dist/runtime/managed-text/index.js.map +1 -0
- package/dist/runtime/managed-text/lifecycle.d.ts +276 -0
- package/dist/runtime/managed-text/lifecycle.js +859 -0
- package/dist/runtime/managed-text/lifecycle.js.map +1 -0
- package/dist/runtime/managed-text/load-policy.d.ts +47 -0
- package/dist/runtime/managed-text/load-policy.js +111 -0
- package/dist/runtime/managed-text/load-policy.js.map +1 -0
- package/dist/runtime/managed-text/mount-source.d.ts +14 -0
- package/dist/runtime/managed-text/mount-source.js +18 -0
- package/dist/runtime/managed-text/mount-source.js.map +1 -0
- package/dist/runtime/managed-text/readiness.d.ts +13 -0
- package/dist/runtime/managed-text/readiness.js +24 -0
- package/dist/runtime/managed-text/readiness.js.map +1 -0
- package/dist/runtime/managed-text/request-rules.d.ts +18 -0
- package/dist/runtime/managed-text/request-rules.js +62 -0
- package/dist/runtime/managed-text/request-rules.js.map +1 -0
- package/dist/runtime/managed-text/types.d.ts +88 -0
- package/dist/runtime/managed-text/types.js +12 -0
- package/dist/runtime/managed-text/types.js.map +1 -0
- package/dist/runtime/managed-text/wsl-deployment.d.ts +24 -0
- package/dist/runtime/managed-text/wsl-deployment.js +70 -0
- package/dist/runtime/managed-text/wsl-deployment.js.map +1 -0
- package/dist/runtime/mlx/errors.d.ts +6 -1
- package/dist/runtime/mlx/errors.js +7 -2
- package/dist/runtime/mlx/errors.js.map +1 -1
- package/dist/runtime/mlx/runtime.d.ts +36 -1
- package/dist/runtime/mlx/runtime.js +85 -4
- package/dist/runtime/mlx/runtime.js.map +1 -1
- package/dist/runtime/shared/backend-output.d.ts +23 -0
- package/dist/runtime/shared/backend-output.js +32 -0
- package/dist/runtime/shared/backend-output.js.map +1 -0
- package/dist/runtime/shared/bounded-output.d.ts +24 -0
- package/dist/runtime/shared/bounded-output.js +63 -0
- package/dist/runtime/shared/bounded-output.js.map +1 -0
- package/dist/runtime/shared/external-sessions.js +9 -1
- package/dist/runtime/shared/external-sessions.js.map +1 -1
- package/dist/runtime/shared/gpu-occupancy.d.ts +60 -0
- package/dist/runtime/shared/gpu-occupancy.js +10 -0
- package/dist/runtime/shared/gpu-occupancy.js.map +1 -0
- package/dist/runtime/shared/index.d.ts +4 -0
- package/dist/runtime/shared/index.js +4 -0
- package/dist/runtime/shared/index.js.map +1 -1
- package/dist/runtime/shared/local-runtime.d.ts +35 -0
- package/dist/runtime/shared/ports.d.ts +6 -0
- package/dist/runtime/shared/ports.js +12 -1
- package/dist/runtime/shared/ports.js.map +1 -1
- package/dist/runtime/shared/process.d.ts +11 -0
- package/dist/runtime/shared/process.js +20 -0
- package/dist/runtime/shared/process.js.map +1 -1
- package/dist/runtime/shared/redact-args.d.ts +7 -0
- package/dist/runtime/shared/redact-args.js +26 -0
- package/dist/runtime/shared/redact-args.js.map +1 -0
- package/dist/runtime/shared/sidecar.d.ts +15 -0
- package/dist/runtime/shared/sidecar.js +43 -8
- package/dist/runtime/shared/sidecar.js.map +1 -1
- package/dist/runtime/tensorrt-llm/adapter.d.ts +250 -0
- package/dist/runtime/tensorrt-llm/adapter.js +1011 -0
- package/dist/runtime/tensorrt-llm/adapter.js.map +1 -0
- package/dist/runtime/tensorrt-llm/check.d.ts +12 -0
- package/dist/runtime/tensorrt-llm/check.js +21 -0
- package/dist/runtime/tensorrt-llm/check.js.map +1 -0
- package/dist/runtime/tensorrt-llm/compatibility.d.ts +100 -0
- package/dist/runtime/tensorrt-llm/compatibility.js +181 -0
- package/dist/runtime/tensorrt-llm/compatibility.js.map +1 -0
- package/dist/runtime/tensorrt-llm/engine.d.ts +3 -0
- package/dist/runtime/tensorrt-llm/engine.js +24 -0
- package/dist/runtime/tensorrt-llm/engine.js.map +1 -0
- package/dist/runtime/tensorrt-llm/host-facts.d.ts +55 -0
- package/dist/runtime/tensorrt-llm/host-facts.js +87 -0
- package/dist/runtime/tensorrt-llm/host-facts.js.map +1 -0
- package/dist/runtime/tensorrt-llm/index.d.ts +30 -0
- package/dist/runtime/tensorrt-llm/index.js +31 -0
- package/dist/runtime/tensorrt-llm/index.js.map +1 -0
- package/dist/runtime/tensorrt-llm/installation.d.ts +23 -0
- package/dist/runtime/tensorrt-llm/installation.js +53 -0
- package/dist/runtime/tensorrt-llm/installation.js.map +1 -0
- package/dist/runtime/tensorrt-llm/kv-cache.d.ts +25 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js +28 -0
- package/dist/runtime/tensorrt-llm/kv-cache.js.map +1 -0
- package/dist/runtime/tensorrt-llm/prelaunch.d.ts +20 -0
- package/dist/runtime/tensorrt-llm/prelaunch.js +168 -0
- package/dist/runtime/tensorrt-llm/prelaunch.js.map +1 -0
- package/dist/runtime/tensorrt-llm/route-policy.d.ts +19 -0
- package/dist/runtime/tensorrt-llm/route-policy.js +17 -0
- package/dist/runtime/tensorrt-llm/route-policy.js.map +1 -0
- package/dist/runtime/tensorrt-llm/settings.d.ts +7 -0
- package/dist/runtime/tensorrt-llm/settings.js +48 -0
- package/dist/runtime/tensorrt-llm/settings.js.map +1 -0
- package/dist/runtime/vllm/adapter.d.ts +46 -0
- package/dist/runtime/vllm/adapter.js +425 -0
- package/dist/runtime/vllm/adapter.js.map +1 -0
- package/dist/runtime/vllm/engine.d.ts +16 -0
- package/dist/runtime/vllm/engine.js +37 -0
- package/dist/runtime/vllm/engine.js.map +1 -0
- package/dist/runtime/vllm/index.d.ts +11 -0
- package/dist/runtime/vllm/index.js +12 -0
- package/dist/runtime/vllm/index.js.map +1 -0
- package/dist/runtime/vllm/memory.d.ts +69 -0
- package/dist/runtime/vllm/memory.js +123 -0
- package/dist/runtime/vllm/memory.js.map +1 -0
- package/dist/runtime/vllm/settings.d.ts +52 -0
- package/dist/runtime/vllm/settings.js +151 -0
- package/dist/runtime/vllm/settings.js.map +1 -0
- package/dist/runtime/wsl/guest-paths.d.ts +33 -0
- package/dist/runtime/wsl/guest-paths.js +83 -0
- package/dist/runtime/wsl/guest-paths.js.map +1 -0
- package/dist/runtime/wsl/guest-scope.d.ts +14 -0
- package/dist/runtime/wsl/guest-scope.js +98 -0
- package/dist/runtime/wsl/guest-scope.js.map +1 -0
- package/dist/runtime/wsl/index.d.ts +12 -0
- package/dist/runtime/wsl/index.js +13 -0
- package/dist/runtime/wsl/index.js.map +1 -0
- package/dist/runtime/wsl/keeper.d.ts +29 -0
- package/dist/runtime/wsl/keeper.js +48 -0
- package/dist/runtime/wsl/keeper.js.map +1 -0
- package/dist/runtime/wsl/transport.d.ts +106 -0
- package/dist/runtime/wsl/transport.js +181 -0
- package/dist/runtime/wsl/transport.js.map +1 -0
- package/dist/server/control/index.d.ts +1 -1
- package/dist/server/control/router.js +15 -0
- package/dist/server/control/router.js.map +1 -1
- package/dist/server/control/routes/backends.js +26 -0
- package/dist/server/control/routes/backends.js.map +1 -1
- package/dist/server/control/routes/decision.d.ts +10 -0
- package/dist/server/control/routes/decision.js +43 -0
- package/dist/server/control/routes/decision.js.map +1 -0
- package/dist/server/control/routes/diffusion-video.js +4 -0
- package/dist/server/control/routes/diffusion-video.js.map +1 -1
- package/dist/server/control/routes/diffusion.d.ts +1 -1
- package/dist/server/control/routes/diffusion.js +4 -9
- package/dist/server/control/routes/diffusion.js.map +1 -1
- package/dist/server/control/routes/embedding.d.ts +9 -0
- package/dist/server/control/routes/embedding.js +43 -0
- package/dist/server/control/routes/embedding.js.map +1 -0
- package/dist/server/control/routes/engine-builds.d.ts +14 -0
- package/dist/server/control/routes/engine-builds.js +82 -0
- package/dist/server/control/routes/engine-builds.js.map +1 -0
- package/dist/server/control/routes/engines.d.ts +17 -0
- package/dist/server/control/routes/engines.js +152 -0
- package/dist/server/control/routes/engines.js.map +1 -0
- package/dist/server/control/routes/environments.d.ts +16 -0
- package/dist/server/control/routes/environments.js +207 -0
- package/dist/server/control/routes/environments.js.map +1 -0
- package/dist/server/control/routes/hardware.d.ts +1 -1
- package/dist/server/control/routes/hardware.js +11 -6
- package/dist/server/control/routes/hardware.js.map +1 -1
- package/dist/server/control/routes/model-setups.d.ts +11 -0
- package/dist/server/control/routes/model-setups.js +55 -0
- package/dist/server/control/routes/model-setups.js.map +1 -0
- package/dist/server/control/routes/models.d.ts +3 -2
- package/dist/server/control/routes/models.js +45 -2
- package/dist/server/control/routes/models.js.map +1 -1
- package/dist/server/control/types.d.ts +167 -9
- package/dist/server/control/types.js.map +1 -1
- package/dist/server/http.d.ts +9 -1
- package/dist/server/http.js +51 -1
- package/dist/server/http.js.map +1 -1
- package/dist/server/public/decision-preview.d.ts +17 -0
- package/dist/server/public/decision-preview.js +119 -0
- package/dist/server/public/decision-preview.js.map +1 -0
- package/dist/server/public/decision.d.ts +32 -0
- package/dist/server/public/decision.js +135 -0
- package/dist/server/public/decision.js.map +1 -0
- package/dist/server/public/embedding.d.ts +31 -0
- package/dist/server/public/embedding.js +126 -0
- package/dist/server/public/embedding.js.map +1 -0
- package/dist/server/public/errors.d.ts +2 -1
- package/dist/server/public/errors.js +5 -2
- package/dist/server/public/errors.js.map +1 -1
- package/dist/server/public/forward.js +75 -3
- package/dist/server/public/forward.js.map +1 -1
- package/dist/server/public/gates.d.ts +13 -0
- package/dist/server/public/gates.js +37 -14
- package/dist/server/public/gates.js.map +1 -1
- package/dist/server/public/index.d.ts +5 -2
- package/dist/server/public/index.js +14 -1
- package/dist/server/public/index.js.map +1 -1
- package/dist/server/public/listing.d.ts +13 -2
- package/dist/server/public/listing.js +33 -9
- package/dist/server/public/listing.js.map +1 -1
- package/dist/server/public/policy.d.ts +9 -0
- package/dist/server/public/policy.js +68 -0
- package/dist/server/public/policy.js.map +1 -0
- package/dist/server/public/responses.js +10 -0
- package/dist/server/public/responses.js.map +1 -1
- package/dist/server/public/trace.d.ts +2 -2
- package/dist/server/public/trace.js +6 -2
- package/dist/server/public/trace.js.map +1 -1
- package/dist/server/public/types.d.ts +84 -1
- package/dist/settings/decision.d.ts +15 -0
- package/dist/settings/decision.js +88 -0
- package/dist/settings/decision.js.map +1 -0
- package/dist/settings/embedding.d.ts +12 -0
- package/dist/settings/embedding.js +82 -0
- package/dist/settings/embedding.js.map +1 -0
- package/dist/settings/index.d.ts +2 -0
- package/dist/settings/index.js +2 -0
- package/dist/settings/index.js.map +1 -1
- package/dist/settings/schema/atomic-prism.json +433 -0
- package/dist/settings/schema/tensorrt-llm.json +253 -0
- package/dist/settings/schema/vllm.json +273 -0
- package/dist/settings/schema.js +58 -0
- package/dist/settings/schema.js.map +1 -1
- package/dist/settings/store.d.ts +13 -2
- package/dist/settings/store.js +44 -0
- package/dist/settings/store.js.map +1 -1
- package/dist/util/index.d.ts +1 -0
- package/dist/util/index.js +1 -0
- package/dist/util/index.js.map +1 -1
- package/dist/util/result.d.ts +19 -0
- package/dist/util/result.js +15 -0
- package/dist/util/result.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
- package/src/settings/schema/atomic-prism.json +433 -0
- package/src/settings/schema/tensorrt-llm.json +253 -0
- 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
|
+
}
|