@atomic-chat/core 0.17.0 → 0.18.4
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/dist/app-daemon.js +7 -0
- package/dist/app-daemon.js.map +1 -1
- package/dist/backend/advisor/advisor.d.ts +6 -1
- package/dist/backend/advisor/advisor.js +69 -7
- package/dist/backend/advisor/advisor.js.map +1 -1
- package/dist/backend/catalog/prism-manifest.d.ts +2 -0
- package/dist/backend/catalog/prism-manifest.js +3 -2
- package/dist/backend/catalog/prism-manifest.js.map +1 -1
- package/dist/cli/main.d.ts +1 -1
- package/dist/cli/main.js +5 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/client/control-client.d.ts +10 -1
- package/dist/client/control-client.js +15 -0
- package/dist/client/control-client.js.map +1 -1
- package/dist/cloud/registry.js +1 -0
- package/dist/cloud/registry.js.map +1 -1
- package/dist/config/paths.d.ts +4 -0
- package/dist/config/paths.js +11 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/contracts/backend-advisor.d.ts +12 -0
- package/dist/contracts/engine-builds.d.ts +1 -1
- package/dist/contracts/engine-builds.js +1 -1
- package/dist/contracts/engine-builds.js.map +1 -1
- package/dist/contracts/engines.d.ts +1 -1
- package/dist/contracts/engines.js +2 -0
- package/dist/contracts/engines.js.map +1 -1
- package/dist/contracts/errors.d.ts +13 -2
- package/dist/contracts/errors.js.map +1 -1
- package/dist/contracts/events.d.ts +7 -0
- package/dist/contracts/foundry-local.d.ts +77 -0
- package/dist/contracts/foundry-local.js +17 -0
- package/dist/contracts/foundry-local.js.map +1 -0
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/model-yml.d.ts +28 -0
- package/dist/contracts/model-yml.js +11 -0
- package/dist/contracts/model-yml.js.map +1 -1
- package/dist/contracts/session.d.ts +5 -1
- package/dist/contracts/session.js.map +1 -1
- package/dist/contracts/settings.d.ts +5 -1
- package/dist/contracts/settings.js.map +1 -1
- package/dist/core/atomic-core.d.ts +1 -1
- package/dist/core/create.js +106 -5
- package/dist/core/create.js.map +1 -1
- package/dist/core/types.d.ts +9 -0
- package/dist/core/types.js.map +1 -1
- package/dist/diffusion/install.d.ts +0 -4
- package/dist/diffusion/install.js +5 -2
- package/dist/diffusion/install.js.map +1 -1
- package/dist/diffusion/server-process.d.ts +5 -2
- package/dist/diffusion/server-process.js +10 -2
- package/dist/diffusion/server-process.js.map +1 -1
- package/dist/downloads/archive.d.ts +1 -1
- package/dist/downloads/archive.js +2 -2
- package/dist/downloads/archive.js.map +1 -1
- package/dist/engine-builds/engines.d.ts +83 -0
- package/dist/engine-builds/engines.js +144 -0
- package/dist/engine-builds/engines.js.map +1 -0
- package/dist/engine-builds/foundry-local.d.ts +22 -0
- package/dist/engine-builds/foundry-local.js +100 -0
- package/dist/engine-builds/foundry-local.js.map +1 -0
- package/dist/engine-builds/manifest.d.ts +57 -6
- package/dist/engine-builds/manifest.js +109 -4
- package/dist/engine-builds/manifest.js.map +1 -1
- package/dist/engine-builds/order.d.ts +2 -1
- package/dist/engine-builds/order.js +11 -4
- package/dist/engine-builds/order.js.map +1 -1
- package/dist/engine-builds/select.d.ts +27 -0
- package/dist/engine-builds/select.js +45 -0
- package/dist/engine-builds/select.js.map +1 -1
- package/dist/engine-builds/service.d.ts +14 -15
- package/dist/engine-builds/service.js +68 -126
- package/dist/engine-builds/service.js.map +1 -1
- package/dist/engines/service.d.ts +6 -3
- package/dist/engines/service.js +6 -3
- package/dist/engines/service.js.map +1 -1
- package/dist/hardware/index.d.ts +1 -0
- package/dist/hardware/index.js +1 -0
- package/dist/hardware/index.js.map +1 -1
- package/dist/hardware/npu.d.ts +14 -0
- package/dist/hardware/npu.js +29 -0
- package/dist/hardware/npu.js.map +1 -0
- package/dist/host/recipes/executor-io-windows.d.ts +11 -0
- package/dist/host/recipes/executor-io-windows.js +23 -5
- package/dist/host/recipes/executor-io-windows.js.map +1 -1
- package/dist/integrations/detect.d.ts +2 -0
- package/dist/integrations/detect.js +4 -3
- package/dist/integrations/detect.js.map +1 -1
- package/dist/lock/instance-lock.js +5 -2
- package/dist/lock/instance-lock.js.map +1 -1
- package/dist/lock/process-identity.d.ts +9 -3
- package/dist/lock/process-identity.js +75 -9
- package/dist/lock/process-identity.js.map +1 -1
- package/dist/router/resolve.d.ts +2 -2
- package/dist/router/resolve.js +2 -1
- package/dist/router/resolve.js.map +1 -1
- package/dist/runtime/foundry-local/accelerators.d.ts +42 -0
- package/dist/runtime/foundry-local/accelerators.js +153 -0
- package/dist/runtime/foundry-local/accelerators.js.map +1 -0
- package/dist/runtime/foundry-local/check.d.ts +19 -0
- package/dist/runtime/foundry-local/check.js +69 -0
- package/dist/runtime/foundry-local/check.js.map +1 -0
- package/dist/runtime/foundry-local/foundry-host.d.ts +18 -0
- package/dist/runtime/foundry-local/foundry-host.js +23 -0
- package/dist/runtime/foundry-local/foundry-host.js.map +1 -0
- package/dist/runtime/foundry-local/host/args.d.ts +44 -0
- package/dist/runtime/foundry-local/host/args.js +109 -0
- package/dist/runtime/foundry-local/host/args.js.map +1 -0
- package/dist/runtime/foundry-local/host/execution-providers.d.ts +27 -0
- package/dist/runtime/foundry-local/host/execution-providers.js +43 -0
- package/dist/runtime/foundry-local/host/execution-providers.js.map +1 -0
- package/dist/runtime/foundry-local/host/ffi-bun.d.ts +17 -0
- package/dist/runtime/foundry-local/host/ffi-bun.js +256 -0
- package/dist/runtime/foundry-local/host/ffi-bun.js.map +1 -0
- package/dist/runtime/foundry-local/host/library.d.ts +61 -0
- package/dist/runtime/foundry-local/host/library.js +17 -0
- package/dist/runtime/foundry-local/host/library.js.map +1 -0
- package/dist/runtime/foundry-local/host/run.d.ts +54 -0
- package/dist/runtime/foundry-local/host/run.js +316 -0
- package/dist/runtime/foundry-local/host/run.js.map +1 -0
- package/dist/runtime/foundry-local/host-process.d.ts +81 -0
- package/dist/runtime/foundry-local/host-process.js +185 -0
- package/dist/runtime/foundry-local/host-process.js.map +1 -0
- package/dist/runtime/foundry-local/index.d.ts +10 -0
- package/dist/runtime/foundry-local/index.js +10 -0
- package/dist/runtime/foundry-local/index.js.map +1 -0
- package/dist/runtime/foundry-local/model-yml.d.ts +8 -0
- package/dist/runtime/foundry-local/model-yml.js +63 -0
- package/dist/runtime/foundry-local/model-yml.js.map +1 -0
- package/dist/runtime/foundry-local/runtime.d.ts +88 -0
- package/dist/runtime/foundry-local/runtime.js +321 -0
- package/dist/runtime/foundry-local/runtime.js.map +1 -0
- package/dist/runtime/llamacpp/args.d.ts +5 -0
- package/dist/runtime/llamacpp/args.js +7 -1
- package/dist/runtime/llamacpp/args.js.map +1 -1
- package/dist/runtime/llamacpp/errors.d.ts +1 -0
- package/dist/runtime/llamacpp/errors.js +10 -0
- package/dist/runtime/llamacpp/errors.js.map +1 -1
- package/dist/runtime/llamacpp/load-plan.d.ts +5 -0
- package/dist/runtime/llamacpp/load-plan.js +8 -0
- package/dist/runtime/llamacpp/load-plan.js.map +1 -1
- package/dist/runtime/llamacpp/runtime-device.d.ts +8 -0
- package/dist/runtime/llamacpp/runtime-device.js +9 -3
- package/dist/runtime/llamacpp/runtime-device.js.map +1 -1
- package/dist/runtime/llamacpp/runtime.d.ts +6 -1
- package/dist/runtime/llamacpp/runtime.js +19 -3
- package/dist/runtime/llamacpp/runtime.js.map +1 -1
- package/dist/runtime/managed-text/gateway.d.ts +2 -0
- package/dist/runtime/managed-text/gateway.js +1 -1
- package/dist/runtime/managed-text/gateway.js.map +1 -1
- package/dist/runtime/shared/external-sessions.js +1 -0
- package/dist/runtime/shared/external-sessions.js.map +1 -1
- package/dist/runtime/shared/process.d.ts +13 -1
- package/dist/runtime/shared/process.js +21 -12
- package/dist/runtime/shared/process.js.map +1 -1
- package/dist/server/control/router.js +2 -0
- package/dist/server/control/router.js.map +1 -1
- package/dist/server/control/routes/foundry-local.d.ts +10 -0
- package/dist/server/control/routes/foundry-local.js +42 -0
- package/dist/server/control/routes/foundry-local.js.map +1 -0
- package/dist/server/control/routes/models.js +6 -3
- package/dist/server/control/routes/models.js.map +1 -1
- package/dist/server/control/types.d.ts +17 -1
- package/dist/server/control/types.js.map +1 -1
- package/dist/server/http.js +45 -7
- package/dist/server/http.js.map +1 -1
- package/dist/server/public/errors.d.ts +1 -0
- package/dist/server/public/errors.js +18 -0
- package/dist/server/public/errors.js.map +1 -1
- package/dist/server/public/listing.js +1 -0
- package/dist/server/public/listing.js.map +1 -1
- package/dist/settings/public.d.ts +7 -0
- package/dist/settings/public.js +8 -0
- package/dist/settings/public.js.map +1 -0
- package/dist/settings/schema/foundry-local.json +14 -0
- package/dist/settings/schema.js +8 -0
- package/dist/settings/schema.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +11 -3
- package/src/settings/schema/atomic-prism.json +0 -433
- package/src/settings/schema/foundation-models.json +0 -1
- package/src/settings/schema/llamacpp-upstream.json +0 -498
- package/src/settings/schema/llamacpp.json +0 -475
- package/src/settings/schema/mlx.json +0 -136
- package/src/settings/schema/sglang.json +0 -251
- package/src/settings/schema/tensorrt-llm.json +0 -253
- package/src/settings/schema/vllm.json +0 -273
|
@@ -23,14 +23,13 @@
|
|
|
23
23
|
*/
|
|
24
24
|
import { readdir, rm } from 'node:fs/promises';
|
|
25
25
|
import { join } from 'node:path';
|
|
26
|
-
import { AtomicCoreError } from '../contracts/index.js';
|
|
26
|
+
import { AtomicCoreError, ENGINE_BUILD_IDS } from '../contracts/index.js';
|
|
27
27
|
import { samePath } from '../diffusion/containment.js';
|
|
28
|
-
import {
|
|
29
|
-
import {
|
|
28
|
+
import { MLX_SERVER_BINARY, removeOwnedBuild } from './builds.js';
|
|
29
|
+
import { ENGINE_DESCRIPTORS } from './engines.js';
|
|
30
30
|
import { installStaged } from './install.js';
|
|
31
|
-
import { assetInstallable
|
|
31
|
+
import { assetInstallable } from './manifest.js';
|
|
32
32
|
import { compareBuilds } from './order.js';
|
|
33
|
-
import { backendKindOf, companionFor, mlxHostChoice, readFailedBackends, rememberFailedBackend, sdcppHostChoice, sdcppHostOf, } from './select.js';
|
|
34
33
|
/** The host of an engine with no runtime in this core (MLX off macOS): nothing runs, so nothing to hold. */
|
|
35
34
|
export const IDLE_ENGINE_HOST = {
|
|
36
35
|
exclusive: (fn) => fn(),
|
|
@@ -44,9 +43,11 @@ const ref = (build) => ({
|
|
|
44
43
|
origin: build.origin,
|
|
45
44
|
});
|
|
46
45
|
export function parseEngineBuildId(raw) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
const known = ENGINE_BUILD_IDS.find((id) => id === raw);
|
|
47
|
+
if (known)
|
|
48
|
+
return known;
|
|
49
|
+
const names = `${ENGINE_BUILD_IDS.slice(0, -1).join(', ')} and ${ENGINE_BUILD_IDS.at(-1)}`;
|
|
50
|
+
throw new AtomicCoreError('INVALID_ARGUMENT', `Engine builds exist for ${names}, not ${raw}.`);
|
|
50
51
|
}
|
|
51
52
|
export class EngineBuildsService {
|
|
52
53
|
deps;
|
|
@@ -66,11 +67,11 @@ export class EngineBuildsService {
|
|
|
66
67
|
const installed = [];
|
|
67
68
|
for (const build of builds)
|
|
68
69
|
installed.push(await this.describe(build, active, inUse));
|
|
69
|
-
const
|
|
70
|
-
const manifest =
|
|
70
|
+
const release = read.manifest ? this.engine(engine).release(read.manifest) : null;
|
|
71
|
+
const manifest = release && read.source && read.fetched_at !== null
|
|
71
72
|
? {
|
|
72
|
-
tag:
|
|
73
|
-
...(
|
|
73
|
+
tag: release.tag,
|
|
74
|
+
...(release.published_at !== null ? { published_at: release.published_at } : {}),
|
|
74
75
|
source: read.source,
|
|
75
76
|
fetched_at: read.fetched_at,
|
|
76
77
|
error: read.error,
|
|
@@ -93,15 +94,15 @@ export class EngineBuildsService {
|
|
|
93
94
|
const choice = await this.hostChoice(engine, read.manifest);
|
|
94
95
|
if (!active || !read.manifest || !choice.backend_id)
|
|
95
96
|
return { update_needed: false, current, target: null };
|
|
96
|
-
const candidate =
|
|
97
|
+
const candidate = this.engine(engine).release(read.manifest);
|
|
97
98
|
if (compareBuilds(engine, candidate, active) <= 0)
|
|
98
99
|
return { update_needed: false, current, target: null };
|
|
99
|
-
const archives = this.
|
|
100
|
+
const archives = this.engine(engine).archives(read.manifest, choice.backend_id);
|
|
100
101
|
return {
|
|
101
102
|
update_needed: true,
|
|
102
103
|
current,
|
|
103
104
|
target: {
|
|
104
|
-
tag:
|
|
105
|
+
tag: candidate.tag,
|
|
105
106
|
backend_id: choice.backend_id,
|
|
106
107
|
...(candidate.published_at ? { published_at: candidate.published_at } : {}),
|
|
107
108
|
download_bytes: archives.reduce((sum, archive) => sum + (archive.size ?? 0), 0),
|
|
@@ -128,8 +129,8 @@ export class EngineBuildsService {
|
|
|
128
129
|
const choice = await this.hostChoice(engine, manifest);
|
|
129
130
|
if (!choice.backend_id)
|
|
130
131
|
throw new AtomicCoreError('UNSUPPORTED_BACKEND', choice.reason ?? 'No build of this engine fits this computer.');
|
|
131
|
-
const
|
|
132
|
-
const
|
|
132
|
+
const target = this.engine(engine).release(manifest);
|
|
133
|
+
const tag = target.tag;
|
|
133
134
|
const top = { tag, backend_id: choice.backend_id, origin: 'downloaded' };
|
|
134
135
|
const builds = await this.builds(engine);
|
|
135
136
|
const active = this.activeOf(engine, builds);
|
|
@@ -149,6 +150,7 @@ export class EngineBuildsService {
|
|
|
149
150
|
retired: [],
|
|
150
151
|
kept_in_use: [],
|
|
151
152
|
};
|
|
153
|
+
const rememberFailedRung = this.engine(engine).rememberFailedRung;
|
|
152
154
|
const failed = [];
|
|
153
155
|
for (const [index, backendId] of choice.ladder.entries()) {
|
|
154
156
|
const last = index === choice.ladder.length - 1;
|
|
@@ -161,9 +163,9 @@ export class EngineBuildsService {
|
|
|
161
163
|
return { ...outcome, ...(failed.length > 0 ? { failed_backend_ids: failed } : {}) };
|
|
162
164
|
}
|
|
163
165
|
catch (error) {
|
|
164
|
-
if (
|
|
166
|
+
if (!rememberFailedRung || last || !probeFailed)
|
|
165
167
|
throw error;
|
|
166
|
-
await
|
|
168
|
+
await rememberFailedRung(this.context(engine), tag, backendId);
|
|
167
169
|
failed.push(backendId);
|
|
168
170
|
this.deps.log?.('warn', `${tag}/${backendId} does not run on this machine (${error instanceof Error ? error.message : String(error)}); trying ${choice.ladder[index + 1]}`);
|
|
169
171
|
}
|
|
@@ -172,20 +174,16 @@ export class EngineBuildsService {
|
|
|
172
174
|
throw new AtomicCoreError('INTERNAL_ERROR', 'The install ladder was empty.');
|
|
173
175
|
}
|
|
174
176
|
async installOne(engine, manifest, backendId, request, onProbeFailure) {
|
|
175
|
-
const
|
|
176
|
-
const
|
|
177
|
+
const descriptor = this.engine(engine);
|
|
178
|
+
const { tag, published_at: publishedAt, c_api_version: cApiVersion } = descriptor.release(manifest);
|
|
179
|
+
const archives = descriptor.archives(manifest, backendId);
|
|
177
180
|
const unpinned = archives.find((archive) => !assetInstallable(archive));
|
|
178
181
|
if (unpinned)
|
|
179
182
|
throw new AtomicCoreError('ENGINE_INSTALL_FAILED', 'The manifest does not pin this build with a sha256 and a size; it is not installed.', `${tag}/${unpinned.name}`);
|
|
180
183
|
const dir = join(this.deps.roots[engine], tag, backendId);
|
|
181
184
|
const sha256 = archives[0]?.sha256 ?? null;
|
|
182
|
-
const
|
|
183
|
-
|
|
184
|
-
? (staging) => prepareSdcppTree(staging, {
|
|
185
|
-
platform: this.deps.platform,
|
|
186
|
-
...(this.deps.log ? { log: this.deps.log } : {}),
|
|
187
|
-
})
|
|
188
|
-
: (staging) => probeMlxServer(staging, { platform: this.deps.platform }));
|
|
185
|
+
const context = this.context(engine);
|
|
186
|
+
const probe = this.deps.probe?.[engine] ?? ((staging) => descriptor.probe(staging, context));
|
|
189
187
|
const { replaced } = await installStaged({
|
|
190
188
|
dataFolder: this.deps.dataFolder,
|
|
191
189
|
target: dir,
|
|
@@ -195,24 +193,18 @@ export class EngineBuildsService {
|
|
|
195
193
|
downloader: this.deps.downloader,
|
|
196
194
|
availableSpace: this.deps.availableSpace,
|
|
197
195
|
now: this.now,
|
|
198
|
-
verify: (staging) =>
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
tag,
|
|
211
|
-
backendId,
|
|
212
|
-
sha256,
|
|
213
|
-
installedAtMs: this.now(),
|
|
214
|
-
publishedAt: publishedAt(manifest),
|
|
215
|
-
}),
|
|
196
|
+
verify: async (staging) => {
|
|
197
|
+
await descriptor.prepare?.(staging, context);
|
|
198
|
+
await probe(staging).catch(onProbeFailure);
|
|
199
|
+
},
|
|
200
|
+
record: (staging) => descriptor.record(staging, {
|
|
201
|
+
tag,
|
|
202
|
+
backendId,
|
|
203
|
+
sha256,
|
|
204
|
+
installedAtMs: this.now(),
|
|
205
|
+
publishedAt,
|
|
206
|
+
cApiVersion: cApiVersion ?? null,
|
|
207
|
+
}),
|
|
216
208
|
});
|
|
217
209
|
const build = { tag, backend_id: backendId, origin: 'downloaded' };
|
|
218
210
|
const host = this.deps.hosts[engine];
|
|
@@ -259,7 +251,7 @@ export class EngineBuildsService {
|
|
|
259
251
|
* disk, active or not, always stays. Under each engine's load lock.
|
|
260
252
|
*/
|
|
261
253
|
async startupCleanup() {
|
|
262
|
-
for (const engine of
|
|
254
|
+
for (const engine of ENGINE_BUILD_IDS)
|
|
263
255
|
await this.deps.hosts[engine]
|
|
264
256
|
.exclusive(() => this.removeLeftovers(engine))
|
|
265
257
|
.catch((error) => {
|
|
@@ -275,48 +267,39 @@ export class EngineBuildsService {
|
|
|
275
267
|
await rm(join(root, tag, name), { recursive: true, force: true }).catch(() => { });
|
|
276
268
|
}
|
|
277
269
|
// --- what is on disk -------------------------------------------------------------------------
|
|
270
|
+
/** The directory of the build the next load of `engine` uses; nothing installed, `undefined`. */
|
|
271
|
+
async activeDir(engine) {
|
|
272
|
+
return this.activeOf(engine, await this.builds(engine))?.dir;
|
|
273
|
+
}
|
|
278
274
|
/** The build the next MLX load starts: the newest of bundled and downloaded, bundled on a tie. */
|
|
279
275
|
async resolveMlxBinary() {
|
|
280
276
|
const active = this.activeOf('mlx', await this.builds('mlx'));
|
|
281
277
|
return active ? join(active.dir, MLX_SERVER_BINARY) : undefined;
|
|
282
278
|
}
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
return (await listInstalledBackends(this.deps.roots['sd-cpp'], this.deps.platform))
|
|
286
|
-
.filter((record) => record.engine === 'sd-cpp')
|
|
287
|
-
.map((record) => ({
|
|
288
|
-
tag: record.tag,
|
|
289
|
-
backend_id: record.backendId,
|
|
290
|
-
origin: 'downloaded',
|
|
291
|
-
dir: record.dir,
|
|
292
|
-
installed_at_ms: record.installedAtMs,
|
|
293
|
-
published_at: null,
|
|
294
|
-
}));
|
|
295
|
-
const out = (await listDownloadedMlx(this.deps.roots.mlx)).map((record) => ({
|
|
296
|
-
tag: record.tag,
|
|
297
|
-
backend_id: record.backendId,
|
|
298
|
-
origin: 'downloaded',
|
|
299
|
-
dir: record.dir,
|
|
300
|
-
installed_at_ms: record.installedAtMs,
|
|
301
|
-
published_at: record.publishedAt,
|
|
302
|
-
}));
|
|
303
|
-
const bundled = await readBundledMlx(this.deps.resourcesDir);
|
|
304
|
-
if (bundled)
|
|
305
|
-
out.unshift(bundledBuild(bundled, this.deps.resourcesDir));
|
|
306
|
-
return out;
|
|
279
|
+
builds(engine) {
|
|
280
|
+
return this.engine(engine).builds(this.context(engine));
|
|
307
281
|
}
|
|
308
|
-
/**
|
|
309
|
-
* sd.cpp: the newest install, which `selectModelInstall` hands the next load. MLX: the newest
|
|
310
|
-
* build by `published_at`, the bundled one on a tie (spec "Две точки происхождения mlx-server").
|
|
311
|
-
*/
|
|
312
282
|
activeOf(engine, builds) {
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
283
|
+
return this.engine(engine).active(builds);
|
|
284
|
+
}
|
|
285
|
+
/** The table row of `engine`; one cast, since TypeScript cannot correlate a key with its row. */
|
|
286
|
+
engine(engine) {
|
|
287
|
+
return ENGINE_DESCRIPTORS[engine];
|
|
288
|
+
}
|
|
289
|
+
context(engine) {
|
|
290
|
+
return {
|
|
291
|
+
root: this.deps.roots[engine],
|
|
292
|
+
failedBackendsFile: this.deps.failedBackendsFile,
|
|
293
|
+
resourcesDir: this.deps.resourcesDir,
|
|
294
|
+
platform: this.deps.platform,
|
|
295
|
+
hardware: this.deps.hardware,
|
|
296
|
+
log: this.deps.log,
|
|
297
|
+
foundryLocalHost: this.deps.foundryLocalHost ?? {
|
|
298
|
+
platform: null,
|
|
299
|
+
reason: 'Foundry Local does not run on this computer.',
|
|
300
|
+
},
|
|
301
|
+
foundryHostProbe: this.deps.foundryHostProbe,
|
|
302
|
+
};
|
|
320
303
|
}
|
|
321
304
|
async isUsed(build, inUse) {
|
|
322
305
|
for (const dir of inUse)
|
|
@@ -342,51 +325,10 @@ export class EngineBuildsService {
|
|
|
342
325
|
...(request.force ? { force: true } : {}),
|
|
343
326
|
...(request.proxy ? { proxy: request.proxy } : {}),
|
|
344
327
|
};
|
|
345
|
-
return engine
|
|
346
|
-
? this.deps.manifests['sd-cpp'].read(options)
|
|
347
|
-
: this.deps.manifests.mlx.read(options);
|
|
328
|
+
return this.deps.manifests[engine].read(options);
|
|
348
329
|
}
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
const host = sdcppHostOf(facts);
|
|
352
|
-
if (engine === 'mlx') {
|
|
353
|
-
const choice = mlxHostChoice(host, manifest);
|
|
354
|
-
return { ...choice, ladder: choice.backend_id ? [choice.backend_id] : [] };
|
|
355
|
-
}
|
|
356
|
-
if (!manifest)
|
|
357
|
-
return { ladder: [], backend_id: null, reason: 'The sd.cpp manifest is unavailable.' };
|
|
358
|
-
return sdcppHostChoice(host, manifest, await readFailedBackends(this.deps.failedBackendsFile));
|
|
330
|
+
hostChoice(engine, manifest) {
|
|
331
|
+
return this.engine(engine).hostChoice(this.context(engine), manifest);
|
|
359
332
|
}
|
|
360
|
-
archivesFor(engine, manifest, backendId) {
|
|
361
|
-
if (engine === 'mlx') {
|
|
362
|
-
const mlx = manifest;
|
|
363
|
-
return mlx.assets
|
|
364
|
-
.filter((asset) => asset.backend === backendId)
|
|
365
|
-
.map((asset) => ({ ...pin(asset), url: mlxAssetUrl(mlx, asset), name: asset.name }));
|
|
366
|
-
}
|
|
367
|
-
const sd = manifest;
|
|
368
|
-
const ids = [backendId, companionFor(backendId)];
|
|
369
|
-
return ids.flatMap((id) => {
|
|
370
|
-
const asset = sd.assets.find((candidate) => candidate.backend === id);
|
|
371
|
-
return asset ? [{ ...pin(asset), url: sdcppAssetUrl(sd, asset), name: asset.name }] : [];
|
|
372
|
-
});
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
const pin = (asset) => ({
|
|
376
|
-
...(asset.sha256 !== undefined ? { sha256: asset.sha256 } : {}),
|
|
377
|
-
...(asset.size !== undefined ? { size: asset.size } : {}),
|
|
378
|
-
});
|
|
379
|
-
function publishedAt(manifest) {
|
|
380
|
-
return 'published_at' in manifest ? manifest.published_at : null;
|
|
381
|
-
}
|
|
382
|
-
function bundledBuild(bundled, resourcesDir) {
|
|
383
|
-
return {
|
|
384
|
-
tag: bundled.tag ?? 'bundled',
|
|
385
|
-
backend_id: 'macos-arm64',
|
|
386
|
-
origin: 'bundled',
|
|
387
|
-
dir: resourcesDir,
|
|
388
|
-
installed_at_ms: null,
|
|
389
|
-
published_at: bundled.published_at,
|
|
390
|
-
};
|
|
391
333
|
}
|
|
392
334
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engine-builds/service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAevD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAGrG,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,qBAAqB,EACrB,eAAe,EACf,WAAW,GACZ,MAAM,aAAa,CAAA;AAkBpB,4GAA4G;AAC5G,MAAM,CAAC,MAAM,gBAAgB,GAAe;IAC1C,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;IACvB,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;IACrB,QAAQ,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;CACzB,CAAA;AA0CD,MAAM,OAAO,GAAG,CAAC,CAAiB,EAAE,CAAiB,EAAW,EAAE,CAChE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAA;AAE3E,MAAM,GAAG,GAAG,CAAC,KAAY,EAAkB,EAAE,CAAC,CAAC;IAC7C,GAAG,EAAE,KAAK,CAAC,GAAG;IACd,UAAU,EAAE,KAAK,CAAC,UAAU;IAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;CACrB,CAAC,CAAA;AAEF,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,KAAK;QAAE,OAAO,GAAG,CAAA;IACjD,MAAM,IAAI,eAAe,CAAC,kBAAkB,EAAE,+CAA+C,GAAG,GAAG,CAAC,CAAA;AACtG,CAAC;AAED,MAAM,OAAO,mBAAmB;IAID;IAHZ,UAAU,GAAG,IAAI,GAAG,EAAiB,CAAA;IACrC,GAAG,CAAc;IAElC,YAA6B,IAAsB;QAAtB,SAAI,GAAJ,IAAI,CAAkB;QACjD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAA;IACjC,CAAC;IAED,gGAAgG;IAEhG,KAAK,CAAC,OAAO,CAAC,MAAqB,EAAE,UAAqC,EAAE;QAC1E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;QACnD,MAAM,SAAS,GAA2B,EAAE,CAAA;QAC5C,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QACrF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAA;QAC3C,MAAM,QAAQ,GACZ,IAAI,CAAC,QAAQ,IAAI,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;YACnF,CAAC,CAAC;gBACE,GAAG,EAAE,WAAW;gBAChB,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxF,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;YACH,CAAC,CAAC,IAAI,CAAA;QACV,OAAO;YACL,MAAM;YACN,QAAQ;YACR,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK;YAC5C,eAAe,EAAE,MAAM,CAAC,UAAU;YAClC,WAAW,EAAE,MAAM,CAAC,MAAM;YAC1B,SAAS;YACT,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI;SACxD,CAAA;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,MAAqB,EACrB,UAAqC,EAAE;QAEvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC3C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3D,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU;YACjD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QACxD,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAA;QAC3F,IAAI,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;QACzG,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,CAAA;QAC3E,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,OAAO;YACP,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAC3B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3E,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;aAChF;SACF,CAAA;IACH,CAAC;IAED,gGAAgG;IAEhG,KAAK,CAAC,OAAO,CACX,MAAqB,EACrB,OAAkC;QAElC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;YAC7B,MAAM,IAAI,eAAe,CACvB,4BAA4B,EAC5B,OAAO,MAAM,sEAAsE,CACpF,CAAA;QACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC3B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAClD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CACzB,MAAqB,EACrB,OAAkC;QAElC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,EAAE,CAAC,CAAA;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;QAC9B,IAAI,CAAC,QAAQ;YACX,MAAM,IAAI,eAAe,CACvB,gBAAgB,EAChB,OAAO,MAAM,mDAAmD,EAChE,IAAI,CAAC,KAAK,IAAI,SAAS,CACxB,CAAA;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACtD,IAAI,CAAC,MAAM,CAAC,UAAU;YACpB,MAAM,IAAI,eAAe,CACvB,qBAAqB,EACrB,MAAM,CAAC,MAAM,IAAI,6CAA6C,CAC/D,CAAA;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAA;QAC7B,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAA;QAC3D,MAAM,GAAG,GAAmB,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,CAAA;QAExF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QAC5C,8FAA8F;QAC9F,4DAA4D;QAC5D,IAAI,MAAM,IAAI,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;YACrD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;QAClG,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CACzB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,CACxG,CAAA;QACD,mGAAmG;QACnG,kGAAkG;QAClG,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAC7B,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAClG,CAAA;QACD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW;YAC5C,OAAO;gBACL,SAAS,EAAE,KAAK;gBAChB,MAAM,EAAE,mBAAmB;gBAC3B,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,GAAG;gBACxD,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;aAChB,CAAA;QAEH,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,KAAK,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YACzD,MAAM,IAAI,GAAG,KAAK,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;YAC/C,IAAI,WAAW,GAAG,KAAK,CAAA;YACvB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBAChF,WAAW,GAAG,IAAI,CAAA;oBAClB,MAAM,CAAC,CAAA;gBACT,CAAC,CAAC,CAAA;gBACF,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;YACrF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,IAAI,CAAC,WAAW;oBAAE,MAAM,KAAK,CAAA;gBAC5D,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBACzE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;gBACtB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CACb,MAAM,EACN,GAAG,GAAG,IAAI,SAAS,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CACnJ,CAAA;YACH,CAAC;QACH,CAAC;QACD,uDAAuD;QACvD,MAAM,IAAI,eAAe,CAAC,gBAAgB,EAAE,+BAA+B,CAAC,CAAA;IAC9E,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAqB,EACrB,QAAqC,EACrC,SAAiB,EACjB,OAAkC,EAClC,cAAyC;QAEzC,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,CAAA;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;QAC9D,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;QACvE,IAAI,QAAQ;YACV,MAAM,IAAI,eAAe,CACvB,uBAAuB,EACvB,qFAAqF,EACrF,GAAG,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAC1B,CAAA;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,IAAI,CAAA;QAC1C,MAAM,KAAK,GACT,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC;YACzB,CAAC,MAAM,KAAK,QAAQ;gBAClB,CAAC,CAAC,CAAC,OAAe,EAAE,EAAE,CAClB,gBAAgB,CAAC,OAAO,EAAE;oBACxB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;oBAC5B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACjD,CAAC;gBACN,CAAC,CAAC,CAAC,OAAe,EAAE,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;QACrF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC;YACvC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAChC,MAAM,EAAE,GAAG;YACX,QAAQ,EAAE,QAA0B;YACpC,MAAM,EAAE,OAAO,CAAC,OAAO;YACvB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAChC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;YACxC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;YACzD,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAClB,MAAM,KAAK,QAAQ;gBACjB,CAAC,CAAC,kBAAkB,CAAC,OAAO,EAAE;oBAC1B,GAAG;oBACH,SAAS;oBACT,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;oBACjC,MAAM,EAAE,QAAQ;oBAChB,MAAM;oBACN,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;oBACzB,GAAG,EAAE,OAAO;iBACb,CAAC;gBACJ,CAAC,CAAC,qBAAqB,CAAC,OAAO,EAAE;oBAC7B,GAAG;oBACH,SAAS;oBACT,MAAM;oBACN,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;oBACzB,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC;iBACnC,CAAC;SACT,CAAC,CAAA;QACF,MAAM,KAAK,GAAmB,EAAE,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,CAAA;QAClF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACpC,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;QACxD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAC/B,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAA;IACjE,CAAC;IAEO,OAAO,CAAC,MAAqB,EAAE,MAAoD;QACzF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IACtD,CAAC;IAED,gGAAgG;IAEhG;;;;OAIG;IACH,KAAK,CAAC,MAAM,CACV,MAAqB,EACrB,GAAW,EACX,SAAiB,EACjB,UAAsC,EAAE;QAExC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YACxC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CACzB,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,CAC7F,CAAA;YACD,IAAI,OAAO;gBACT,MAAM,IAAI,eAAe,CACvB,iBAAiB,EACjB,sDAAsD,EACtD,SAAS,CACV,CAAA;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YAC5C,IAAI,OAAO,CAAC,YAAY,IAAI,MAAM,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;gBACzF,MAAM,IAAI,eAAe,CAAC,iBAAiB,EAAE,qCAAqC,EAAE,QAAQ,CAAC,CAAA;YAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;YACzD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,KAAK,GAAG,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,CAAA;YACrG,IAAI,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzD,MAAM,IAAI,eAAe,CACvB,gBAAgB,EAChB,8DAA8D,CAC/D,CAAA;YACH,OAAO,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3E,CAAC,CAAC,CAAA;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAA;YACpD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,CAAA;IACpB,CAAC;IAED,gGAAgG;IAEhG;;;;OAIG;IACH,KAAK,CAAC,cAAc;QAClB,KAAK,MAAM,MAAM,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAU;YAC7C,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;iBAC1B,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;iBAC7C,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACxB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,MAAM,4BAA4B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACnF,CAAC,CAAC,CAAA;IACR,CAAC;IAED,oGAAoG;IAC5F,KAAK,CAAC,eAAe,CAAC,MAAqB;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACpC,KAAK,MAAM,GAAG,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAc,CAAC;YAC/D,KAAK,MAAM,IAAI,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAc,CAAC;gBAC3E,IAAI,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACrD,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACzF,CAAC;IAED,gGAAgG;IAEhG,kGAAkG;IAClG,KAAK,CAAC,gBAAgB;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7D,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjE,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,MAAqB;QACxC,IAAI,MAAM,KAAK,QAAQ;YACrB,OAAO,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAChF,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC;iBAC9C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAChB,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,UAAU,EAAE,MAAM,CAAC,SAAS;gBAC5B,MAAM,EAAE,YAAY;gBACpB,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,eAAe,EAAE,MAAM,CAAC,aAAa;gBACrC,YAAY,EAAE,IAAI;aACnB,CAAC,CAAC,CAAA;QACP,MAAM,GAAG,GAAY,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACnF,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,MAAM,EAAE,YAAY;YACpB,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,eAAe,EAAE,MAAM,CAAC,aAAa;YACrC,YAAY,EAAE,MAAM,CAAC,WAAW;SACjC,CAAC,CAAC,CAAA;QACH,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QAC5D,IAAI,OAAO;YAAE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,YAAsB,CAAC,CAAC,CAAA;QACjF,OAAO,GAAG,CAAA;IACZ,CAAC;IAED;;;OAGG;IACK,QAAQ,CAAC,MAAqB,EAAE,MAAe;QACrD,IAAI,MAAM,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;QACzC,IAAI,IAAuB,CAAA;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM;YAAE,IAAI,CAAC,IAAI,IAAI,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;gBAAE,IAAI,GAAG,KAAK,CAAA;QAC5F,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,MAAM,CAAC,KAAY,EAAE,KAAe;QAChD,KAAK,MAAM,GAAG,IAAI,KAAK;YAAE,IAAI,MAAM,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAAE,OAAO,IAAI,CAAA;QAC5F,OAAO,KAAK,CAAA;IACd,CAAC;IAEO,KAAK,CAAC,QAAQ,CACpB,KAAY,EACZ,MAAyB,EACzB,KAAe;QAEf,OAAO;YACL,GAAG,GAAG,CAAC,KAAK,CAAC;YACb,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI;gBAC3D,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE;gBACtC,CAAC,CAAC,EAAE,CAAC;YACP,SAAS,EAAE,KAAK,CAAC,MAAM,KAAK,YAAY;YACxC,MAAM,EAAE,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC;YACvC,MAAM,EAAE,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;SACjE,CAAA;IACH,CAAC;IAED,gGAAgG;IAExF,YAAY,CAClB,MAAqB,EACrB,OAAkC;QAElC,MAAM,OAAO,GAAG;YACd,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnD,CAAA;QACD,OAAO,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;YAC7C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC3C,CAAC;IAEO,KAAK,CAAC,UAAU,CACtB,MAAqB,EACrB,QAA4C;QAE5C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAA;QACxC,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAC5C,OAAO,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAA;QAC5E,CAAC;QACD,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAA;QACrG,OAAO,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAA;IAChG,CAAC;IAEO,WAAW,CACjB,MAAqB,EACrB,QAAqC,EACrC,SAAiB;QAEjB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YACrB,MAAM,GAAG,GAAG,QAAuB,CAAA;YACnC,OAAO,GAAG,CAAC,MAAM;iBACd,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC;iBAC9C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;QACxF,CAAC;QACD,MAAM,EAAE,GAAG,QAAyB,CAAA;QACpC,MAAM,GAAG,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,CAAA;QAChD,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACxB,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,KAAK,EAAE,CAAC,CAAA;YACrE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QAC1F,CAAC,CAAC,CAAA;IACJ,CAAC;CACF;AAED,MAAM,GAAG,GAAG,CAAC,KAAyC,EAAE,EAAE,CAAC,CAAC;IAC1D,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;CAC1D,CAAC,CAAA;AAEF,SAAS,WAAW,CAAC,QAAqC;IACxD,OAAO,cAAc,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAA;AAClE,CAAC;AAED,SAAS,YAAY,CAAC,OAAmB,EAAE,YAAoB;IAC7D,OAAO;QACL,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,SAAS;QAC7B,UAAU,EAAE,aAAa;QACzB,MAAM,EAAE,SAAS;QACjB,GAAG,EAAE,YAAY;QACjB,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,OAAO,CAAC,YAAY;KACnC,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engine-builds/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,10 +23,13 @@ export interface EngineRemoveOptions {
|
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
25
25
|
* The engines registered on this host, in catalog order: the three llama.cpp providers and sd.cpp
|
|
26
|
-
* everywhere, MLX on macOS,
|
|
27
|
-
*
|
|
26
|
+
* everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
|
|
27
|
+
* `add-foundry-local` design D7), a managed engine where this core offers it (Linux, Windows with
|
|
28
|
+
* Atomic Chat's WSL distribution).
|
|
28
29
|
*/
|
|
29
|
-
export declare function hostEngines(platform: NodeJS.Platform, managed: readonly string[]
|
|
30
|
+
export declare function hostEngines(platform: NodeJS.Platform, managed: readonly string[], host?: {
|
|
31
|
+
foundryLocal?: boolean;
|
|
32
|
+
}): EngineId[];
|
|
30
33
|
export interface EnginesServiceDeps {
|
|
31
34
|
engines: readonly EngineHandle[];
|
|
32
35
|
}
|
package/dist/engines/service.js
CHANGED
|
@@ -8,13 +8,16 @@ import { AtomicCoreError, ENGINE_IDS, ENGINE_KINDS } from '../contracts/index.js
|
|
|
8
8
|
import { collectEngineVersions } from './versions.js';
|
|
9
9
|
/**
|
|
10
10
|
* The engines registered on this host, in catalog order: the three llama.cpp providers and sd.cpp
|
|
11
|
-
* everywhere, MLX on macOS,
|
|
12
|
-
*
|
|
11
|
+
* everywhere, MLX on macOS, Foundry Local where its platform rule holds (`foundryLocal`, change
|
|
12
|
+
* `add-foundry-local` design D7), a managed engine where this core offers it (Linux, Windows with
|
|
13
|
+
* Atomic Chat's WSL distribution).
|
|
13
14
|
*/
|
|
14
|
-
export function hostEngines(platform, managed) {
|
|
15
|
+
export function hostEngines(platform, managed, host = {}) {
|
|
15
16
|
return ENGINE_IDS.filter((engine) => {
|
|
16
17
|
if (engine === 'mlx')
|
|
17
18
|
return platform === 'darwin';
|
|
19
|
+
if (engine === 'foundry-local')
|
|
20
|
+
return host.foundryLocal === true;
|
|
18
21
|
if (ENGINE_KINDS[engine] === 'managed')
|
|
19
22
|
return managed.includes(engine);
|
|
20
23
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engines/service.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAajF,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAwBrD
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/engines/service.ts"],"names":[],"mappings":"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"}
|
package/dist/hardware/index.d.ts
CHANGED
package/dist/hardware/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hardware/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hardware/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,oBAAoB,CAAA;AAClC,cAAc,aAAa,CAAA;AAC3B,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether this machine has an NPU (openspec change `add-foundry-local`, task 6.5). Windows ML offers
|
|
3
|
+
* the OpenVINO accelerator on Intel machines without one (spike rulings S2), so "OpenVINO found" does
|
|
4
|
+
* not mean "NPU here": the device list does. NPUs register as PnP class `ComputeAccelerator` (Intel AI
|
|
5
|
+
* Boost, Qualcomm Hexagon, AMD's IPU). Off Windows there is no NPU this core runs variants on.
|
|
6
|
+
*/
|
|
7
|
+
import type { ProbeDeps } from './probe-common.js';
|
|
8
|
+
export interface NpuPresence {
|
|
9
|
+
/** `null`: Windows could not be asked; callers then go by the accelerators the library offers. */
|
|
10
|
+
present: boolean | null;
|
|
11
|
+
devices: string[];
|
|
12
|
+
}
|
|
13
|
+
export declare function parseNpuDevices(stdout: string): string[];
|
|
14
|
+
export declare function probeNpu(deps: Pick<ProbeDeps, 'platform' | 'run'>): Promise<NpuPresence>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether this machine has an NPU (openspec change `add-foundry-local`, task 6.5). Windows ML offers
|
|
3
|
+
* the OpenVINO accelerator on Intel machines without one (spike rulings S2), so "OpenVINO found" does
|
|
4
|
+
* not mean "NPU here": the device list does. NPUs register as PnP class `ComputeAccelerator` (Intel AI
|
|
5
|
+
* Boost, Qualcomm Hexagon, AMD's IPU). Off Windows there is no NPU this core runs variants on.
|
|
6
|
+
*/
|
|
7
|
+
import { PROBE_POWERSHELL_TIMEOUT_MS } from './probe-common.js';
|
|
8
|
+
const NPU_QUERY = "Get-CimInstance Win32_PnPEntity -Filter \"PNPClass='ComputeAccelerator'\" | Where-Object { $_.Status -eq 'OK' } | ForEach-Object { $_.Name }";
|
|
9
|
+
export function parseNpuDevices(stdout) {
|
|
10
|
+
return stdout
|
|
11
|
+
.split(/\r?\n/)
|
|
12
|
+
.map((line) => line.trim())
|
|
13
|
+
.filter(Boolean);
|
|
14
|
+
}
|
|
15
|
+
export async function probeNpu(deps) {
|
|
16
|
+
if (deps.platform !== 'win32')
|
|
17
|
+
return { present: false, devices: [] };
|
|
18
|
+
try {
|
|
19
|
+
const result = await deps.run('powershell.exe', ['-NoProfile', '-NonInteractive', '-Command', NPU_QUERY], PROBE_POWERSHELL_TIMEOUT_MS);
|
|
20
|
+
if (result.code !== 0)
|
|
21
|
+
return { present: null, devices: [] };
|
|
22
|
+
const devices = parseNpuDevices(result.stdout);
|
|
23
|
+
return { present: devices.length > 0, devices };
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return { present: null, devices: [] };
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=npu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"npu.js","sourceRoot":"","sources":["../../src/hardware/npu.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAA;AAS/D,MAAM,SAAS,GACb,8IAA8I,CAAA;AAEhJ,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,OAAO,MAAM;SACV,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC,CAAA;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAyC;IACtE,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IACrE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAC3B,gBAAgB,EAChB,CAAC,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,CAAC,EACxD,2BAA2B,CAC5B,CAAA;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;QAC5D,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9C,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,EAAE,CAAA;IACjD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;IACvC,CAAC;AACH,CAAC"}
|
|
@@ -62,6 +62,17 @@ export interface WindowsHostStepIo {
|
|
|
62
62
|
rename(from: string, to: string): Promise<void>;
|
|
63
63
|
remove(path: string): Promise<void>;
|
|
64
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* `path`'s owner, ACL (by SID, inherited rules included), whether it is a folder and whether it is a
|
|
67
|
+
* reparse point: one `Get-Acl` through PowerShell by its full path under `systemRoot` (default
|
|
68
|
+
* `%SystemRoot%`), the path in the environment, never in the script. Throws when PowerShell fails or
|
|
69
|
+
* answers without an owner. The host-step executor reads every ACL through it; `atc` checks its data
|
|
70
|
+
* folder with it (change close-cli-core-gaps, design D5).
|
|
71
|
+
*/
|
|
72
|
+
export declare function readWindowsAcl(path: string, options: {
|
|
73
|
+
exec: WindowsHostStepIo['exec'];
|
|
74
|
+
systemRoot?: string;
|
|
75
|
+
}): Promise<WindowsAcl>;
|
|
65
76
|
/**
|
|
66
77
|
* The executor's dependencies on a Windows machine. `env` gives `%SystemRoot%`, where the only
|
|
67
78
|
* command it runs — `wsl.exe` — and PowerShell live.
|
|
@@ -94,6 +94,23 @@ export function parseWindowsAcl(output) {
|
|
|
94
94
|
})),
|
|
95
95
|
};
|
|
96
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* `path`'s owner, ACL (by SID, inherited rules included), whether it is a folder and whether it is a
|
|
99
|
+
* reparse point: one `Get-Acl` through PowerShell by its full path under `systemRoot` (default
|
|
100
|
+
* `%SystemRoot%`), the path in the environment, never in the script. Throws when PowerShell fails or
|
|
101
|
+
* answers without an owner. The host-step executor reads every ACL through it; `atc` checks its data
|
|
102
|
+
* folder with it (change close-cli-core-gaps, design D5).
|
|
103
|
+
*/
|
|
104
|
+
export async function readWindowsAcl(path, options) {
|
|
105
|
+
const systemRoot = (options.systemRoot ??
|
|
106
|
+
process.env['SystemRoot'] ??
|
|
107
|
+
process.env['SYSTEMROOT'] ??
|
|
108
|
+
'C:\\Windows').replace(/[\\/]+$/, '');
|
|
109
|
+
const powershell = `${systemRoot}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`;
|
|
110
|
+
return parseWindowsAcl(await options.exec(powershell, ['-NoProfile', '-NonInteractive', '-Command', ACL_QUERY], {
|
|
111
|
+
env: { ATOMIC_HOST_STEP_PATH: path },
|
|
112
|
+
}));
|
|
113
|
+
}
|
|
97
114
|
/**
|
|
98
115
|
* Runs `command` with this process's own console (stdio inherited, window hidden), no shell, and
|
|
99
116
|
* resolves with the exit code only. The elevated executor is started by the app with `SW_HIDE`, so the
|
|
@@ -173,14 +190,15 @@ const refuse = (message) => {
|
|
|
173
190
|
* command it runs — `wsl.exe` — and PowerShell live.
|
|
174
191
|
*/
|
|
175
192
|
export function windowsHostStepDeps(env, io = nodeIo()) {
|
|
176
|
-
const
|
|
177
|
-
const
|
|
193
|
+
const systemRoot = (env['SystemRoot'] ?? env['SYSTEMROOT'] ?? 'C:\\Windows').replace(/[\\/]+$/, '');
|
|
194
|
+
const system32 = `${systemRoot}\\System32`;
|
|
178
195
|
const trust = async (path, what, expect) => {
|
|
179
196
|
let acl;
|
|
180
197
|
try {
|
|
181
|
-
acl =
|
|
182
|
-
|
|
183
|
-
|
|
198
|
+
acl = await readWindowsAcl(path, {
|
|
199
|
+
exec: (command, args, options) => io.exec(command, args, options),
|
|
200
|
+
systemRoot,
|
|
201
|
+
});
|
|
184
202
|
}
|
|
185
203
|
catch (error) {
|
|
186
204
|
return refuse(`could not read the owner and permissions of ${what}: ${error.message}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor-io-windows.js","sourceRoot":"","sources":["../../../src/host/recipes/executor-io-windows.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"executor-io-windows.js","sourceRoot":"","sources":["../../../src/host/recipes/executor-io-windows.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,8 @@ export interface DetectDeps {
|
|
|
14
14
|
home?: string;
|
|
15
15
|
/** Run the PATH probe; resolves true when the command exists. */
|
|
16
16
|
onPath?: (bin: string) => Promise<boolean>;
|
|
17
|
+
/** Budget of the default PATH probe; one that runs out reads as not on PATH. Default `PATH_PROBE_TIMEOUT_MS`. */
|
|
18
|
+
pathProbeTimeoutMs?: number;
|
|
17
19
|
/** Does this absolute path exist as a file? */
|
|
18
20
|
isFile?: (path: string) => Promise<boolean>;
|
|
19
21
|
}
|