@amd-gaia/gaia 0.1.1 → 0.3.0
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/CHANGELOG.md +711 -6
- package/README.md +64 -17
- package/SCORECARD.md +180 -0
- package/SKILL.md +335 -65
- package/SPEC.md +360 -20
- package/binaries.lock.json +25 -25
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +160 -23
- package/dist/cli.js.map +1 -1
- package/dist/errors.d.ts +9 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +9 -0
- package/dist/errors.js.map +1 -1
- package/dist/fetch.d.ts +5 -4
- package/dist/fetch.d.ts.map +1 -1
- package/dist/fetch.js +174 -22
- package/dist/fetch.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/lifecycle.d.ts +24 -7
- package/dist/lifecycle.d.ts.map +1 -1
- package/dist/lifecycle.js +266 -44
- package/dist/lifecycle.js.map +1 -1
- package/package.json +2 -1
package/dist/fetch.js
CHANGED
|
@@ -26,7 +26,7 @@ import path from "node:path";
|
|
|
26
26
|
import { IntegrityError, PlatformError } from "./errors.js";
|
|
27
27
|
import { createLogger } from "./logger.js";
|
|
28
28
|
import { joinUrl } from "./url.js";
|
|
29
|
-
import { componentBaseUrl, currentPlatformKey, defaultLockPath, isPlaceholderSha, loadLock, resolveEntry, } from "./platform.js";
|
|
29
|
+
import { componentBaseUrl, componentLock, currentPlatformKey, defaultLockPath, isPlaceholderSha, loadLock, resolveEntry, } from "./platform.js";
|
|
30
30
|
const log = createLogger("fetch");
|
|
31
31
|
/**
|
|
32
32
|
* Where verified binaries are cached, keyed by agent version so a version bump
|
|
@@ -35,18 +35,76 @@ const log = createLogger("fetch");
|
|
|
35
35
|
export function defaultCacheDir(agentVersion) {
|
|
36
36
|
return path.join(os.homedir(), ".gaia", "npm-cache", `gaia-${agentVersion}`);
|
|
37
37
|
}
|
|
38
|
+
/** The hub agent id this package installs the sidecar as. */
|
|
39
|
+
export const SIDECAR_AGENT_ID = "gaia";
|
|
40
|
+
/** Basename of the hub install record (`gaia.hub.installer.SENTINEL_NAME`). */
|
|
41
|
+
export const INSTALLED_SENTINEL_NAME = ".installed";
|
|
38
42
|
/**
|
|
39
43
|
* The daemon's own sidecar cache — `~/.gaia/agents/gaia/`, mirroring
|
|
40
44
|
* `gaia.daemon.sidecars.fetch.default_cache_dir("gaia")`. Staging the verified
|
|
41
45
|
* sidecar here means the daemon's own fetch is a SHA-256 cache hit instead of a
|
|
42
46
|
* second download. This path is a cross-repo contract with the daemon.
|
|
43
47
|
*/
|
|
44
|
-
export function daemonSidecarCacheDir(agentId =
|
|
48
|
+
export function daemonSidecarCacheDir(agentId = SIDECAR_AGENT_ID) {
|
|
45
49
|
return path.join(os.homedir(), ".gaia", "agents", agentId);
|
|
46
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Whether this fetch produced a runnable local install worth recording.
|
|
53
|
+
*
|
|
54
|
+
* `--platform` fetches a binary for a DIFFERENT host — a cross-compile staging
|
|
55
|
+
* step, not an install. Recording one would hand the daemon a wrong-arch
|
|
56
|
+
* executable that re-hashes correctly and then fails to exec.
|
|
57
|
+
*/
|
|
58
|
+
function installsForThisHost(component, platformKey) {
|
|
59
|
+
return component === "sidecar" && platformKey === currentPlatformKey();
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Record a completed install the way `gaia.hub.installer` does.
|
|
63
|
+
*
|
|
64
|
+
* Staging a verified binary is only half the job the CLI claims to do. Without
|
|
65
|
+
* this file the daemon's `_hub_installed_binary` sees no install, and the TUI
|
|
66
|
+
* treats `gaia-agent` as its own stdio child — spawning our REST sidecar over
|
|
67
|
+
* stdio and filling the chat with uvicorn's startup log. With it, the TUI uses
|
|
68
|
+
* daemon transport and the daemon supervises the process and mints its token.
|
|
69
|
+
*
|
|
70
|
+
* Field names and `artifact_kind`/`executable`/`artifact_sha256` are a
|
|
71
|
+
* cross-repo contract with `InstalledAgent.to_dict()`; the daemon re-hashes the
|
|
72
|
+
* binary and raises if it does not match `artifact_sha256`, so this must carry
|
|
73
|
+
* the hash we actually verified.
|
|
74
|
+
*/
|
|
75
|
+
async function writeInstalledSentinel(opts) {
|
|
76
|
+
const sentinel = path.join(opts.outDir, INSTALLED_SENTINEL_NAME);
|
|
77
|
+
const record = {
|
|
78
|
+
id: SIDECAR_AGENT_ID,
|
|
79
|
+
version: opts.version,
|
|
80
|
+
language: "python",
|
|
81
|
+
installed_at: new Date().toISOString(),
|
|
82
|
+
artifact_sha256: opts.sha256,
|
|
83
|
+
path: opts.outDir,
|
|
84
|
+
artifact_kind: "binary",
|
|
85
|
+
executable: opts.executable,
|
|
86
|
+
};
|
|
87
|
+
// Temp-then-rename: a truncated sentinel reads as a corrupt install, which
|
|
88
|
+
// looks identical to "never installed".
|
|
89
|
+
const tmp = `${sentinel}.tmp.${process.pid}`;
|
|
90
|
+
try {
|
|
91
|
+
await fsp.writeFile(tmp, `${JSON.stringify(record, null, 2)}\n`, "utf8");
|
|
92
|
+
await fsp.rename(tmp, sentinel);
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
await fsp.rm(tmp, { force: true }).catch(() => undefined);
|
|
96
|
+
throw new Error(`verified the sidecar at ${opts.outDir} but could not write its ` +
|
|
97
|
+
`${INSTALLED_SENTINEL_NAME} record: ${e.message}. Without it the ` +
|
|
98
|
+
"daemon does not see a completed install and the TUI falls back to running " +
|
|
99
|
+
`the sidecar over stdio. Check write permissions on ${opts.outDir}.`, { cause: e });
|
|
100
|
+
}
|
|
101
|
+
log.debug(`wrote ${sentinel} (v${opts.version})`);
|
|
102
|
+
}
|
|
47
103
|
function sha256Hex(buf) {
|
|
48
104
|
return crypto.createHash("sha256").update(buf).digest("hex");
|
|
49
105
|
}
|
|
106
|
+
/** Read size for incremental hashing — bounded regardless of artifact size. */
|
|
107
|
+
const HASH_CHUNK_BYTES = 1 << 20;
|
|
50
108
|
/**
|
|
51
109
|
* SHA-256 of a file on disk, or null when it is simply absent. Any other error
|
|
52
110
|
* (a permission problem, a directory in the way) is re-raised: reading it as
|
|
@@ -54,23 +112,76 @@ function sha256Hex(buf) {
|
|
|
54
112
|
* less useful message.
|
|
55
113
|
*/
|
|
56
114
|
export async function fileSha256(filePath) {
|
|
115
|
+
const unreadable = (e) => new Error(`cannot read the cached binary at ${filePath} to check its hash: ${e.message}. ` +
|
|
116
|
+
"Fix the permissions on that path, or pass a different --cache-dir / --sidecar-dir.", { cause: e });
|
|
117
|
+
let fh;
|
|
57
118
|
try {
|
|
58
|
-
|
|
119
|
+
fh = await fsp.open(filePath, "r");
|
|
59
120
|
}
|
|
60
121
|
catch (e) {
|
|
61
|
-
|
|
62
|
-
if (code === "ENOENT")
|
|
122
|
+
if (e.code === "ENOENT")
|
|
63
123
|
return null;
|
|
64
|
-
throw
|
|
65
|
-
|
|
124
|
+
throw unreadable(e);
|
|
125
|
+
}
|
|
126
|
+
// Chunked, not readFile: this runs on every cache hit, and the sidecar is
|
|
127
|
+
// ~200MB — buffering it whole is the peak the streaming download removed.
|
|
128
|
+
try {
|
|
129
|
+
const hash = crypto.createHash("sha256");
|
|
130
|
+
const buf = Buffer.allocUnsafe(HASH_CHUNK_BYTES);
|
|
131
|
+
for (;;) {
|
|
132
|
+
const { bytesRead } = await fh.read(buf, 0, buf.length, null);
|
|
133
|
+
if (bytesRead === 0)
|
|
134
|
+
break;
|
|
135
|
+
hash.update(buf.subarray(0, bytesRead));
|
|
136
|
+
}
|
|
137
|
+
return hash.digest("hex");
|
|
138
|
+
}
|
|
139
|
+
catch (e) {
|
|
140
|
+
throw unreadable(e);
|
|
141
|
+
}
|
|
142
|
+
finally {
|
|
143
|
+
await fh.close();
|
|
66
144
|
}
|
|
67
145
|
}
|
|
68
146
|
/**
|
|
69
|
-
*
|
|
70
|
-
*
|
|
147
|
+
* Stream a response body to `tmp`, hashing as it goes.
|
|
148
|
+
*
|
|
149
|
+
* Incremental on purpose: the sidecar is ~200MB and `arrayBuffer()` would peak
|
|
150
|
+
* at roughly double that. Awaiting each write applies backpressure.
|
|
71
151
|
*/
|
|
72
|
-
|
|
73
|
-
|
|
152
|
+
async function streamToFile(res, tmp, url) {
|
|
153
|
+
if (!res.body) {
|
|
154
|
+
throw new Error(`download failed: ${url} returned HTTP ${res.status} with no response body. ` +
|
|
155
|
+
"Check the base URL and that the artifact is published for this platform.");
|
|
156
|
+
}
|
|
157
|
+
const hash = crypto.createHash("sha256");
|
|
158
|
+
let bytes = 0;
|
|
159
|
+
let fh;
|
|
160
|
+
try {
|
|
161
|
+
fh = await fsp.open(tmp, "w");
|
|
162
|
+
}
|
|
163
|
+
catch (e) {
|
|
164
|
+
throw new Error(`cannot open ${tmp} to stage the download: ${e.message}. ` +
|
|
165
|
+
"Check write permissions on that directory, or pass a different " +
|
|
166
|
+
"--sidecar-dir / --cache-dir.", { cause: e });
|
|
167
|
+
}
|
|
168
|
+
try {
|
|
169
|
+
for await (const chunk of res.body) {
|
|
170
|
+
hash.update(chunk);
|
|
171
|
+
bytes += chunk.byteLength;
|
|
172
|
+
await fh.write(chunk);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
finally {
|
|
176
|
+
await fh.close();
|
|
177
|
+
}
|
|
178
|
+
return { sha256: hash.digest("hex"), bytes };
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Compare an already-computed SHA-256 with the expected one. Throws
|
|
182
|
+
* `IntegrityError` loudly on mismatch — this is the no-silent-fallback gate.
|
|
183
|
+
*/
|
|
184
|
+
function assertSha256(actual, expected, sourceLabel) {
|
|
74
185
|
if (actual.toLowerCase() !== expected.toLowerCase()) {
|
|
75
186
|
throw new IntegrityError(`SHA-256 mismatch for ${sourceLabel}:\n` +
|
|
76
187
|
` expected ${expected}\n` +
|
|
@@ -82,6 +193,10 @@ export function verifySha256(buf, expected, sourceLabel) {
|
|
|
82
193
|
}
|
|
83
194
|
return actual;
|
|
84
195
|
}
|
|
196
|
+
/** Verify an in-memory buffer against an expected SHA-256. */
|
|
197
|
+
export function verifySha256(buf, expected, sourceLabel) {
|
|
198
|
+
return assertSha256(sha256Hex(buf), expected, sourceLabel);
|
|
199
|
+
}
|
|
85
200
|
/**
|
|
86
201
|
* Fetch + verify + install one component's binary for the current platform.
|
|
87
202
|
*
|
|
@@ -126,6 +241,16 @@ export async function fetchBinary(opts) {
|
|
|
126
241
|
// can leave correct bytes that still cannot be spawned.
|
|
127
242
|
if (process.platform !== "win32")
|
|
128
243
|
await fsp.chmod(binaryPath, 0o755);
|
|
244
|
+
// Also on a cache hit: an earlier release staged a verified binary with no
|
|
245
|
+
// sentinel, and those installs would otherwise never repair themselves.
|
|
246
|
+
if (installsForThisHost(opts.component, platformKey)) {
|
|
247
|
+
await writeInstalledSentinel({
|
|
248
|
+
outDir,
|
|
249
|
+
version: componentLock(lock, "sidecar").componentVersion,
|
|
250
|
+
sha256: existing,
|
|
251
|
+
executable: entry.executable,
|
|
252
|
+
});
|
|
253
|
+
}
|
|
129
254
|
return {
|
|
130
255
|
component: opts.component,
|
|
131
256
|
binaryPath,
|
|
@@ -140,7 +265,11 @@ export async function fetchBinary(opts) {
|
|
|
140
265
|
const timeoutMs = opts.timeoutMs ?? 300_000;
|
|
141
266
|
const controller = new AbortController();
|
|
142
267
|
const timer = setTimeout(() => controller.abort(), timeoutMs);
|
|
143
|
-
|
|
268
|
+
// Streamed to a temp file while hashing incrementally: the sidecar is ~200MB
|
|
269
|
+
// and buffering it whole peaks at roughly double that in RSS.
|
|
270
|
+
const tmp = `${binaryPath}.download.${process.pid}`;
|
|
271
|
+
let actualSha;
|
|
272
|
+
let bytes;
|
|
144
273
|
try {
|
|
145
274
|
const res = await fetchImpl(url, {
|
|
146
275
|
headers: { accept: "application/octet-stream" },
|
|
@@ -150,9 +279,10 @@ export async function fetchBinary(opts) {
|
|
|
150
279
|
throw new Error(`download failed: HTTP ${res.status} ${res.statusText} for ${url}. ` +
|
|
151
280
|
"Check the base URL and that the artifact is published for this platform.");
|
|
152
281
|
}
|
|
153
|
-
|
|
282
|
+
({ sha256: actualSha, bytes } = await streamToFile(res, tmp, url));
|
|
154
283
|
}
|
|
155
284
|
catch (e) {
|
|
285
|
+
await fsp.rm(tmp, { force: true }).catch(() => undefined);
|
|
156
286
|
if (e.name === "AbortError") {
|
|
157
287
|
throw new Error(`download timed out after ${timeoutMs}ms for ${url}`);
|
|
158
288
|
}
|
|
@@ -161,21 +291,43 @@ export async function fetchBinary(opts) {
|
|
|
161
291
|
finally {
|
|
162
292
|
clearTimeout(timer);
|
|
163
293
|
}
|
|
164
|
-
log.debug(`downloaded ${
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
// half-written file that a later run would treat as a real binary.
|
|
168
|
-
const tmp = `${binaryPath}.download.${process.pid}`;
|
|
294
|
+
log.debug(`downloaded ${bytes} bytes`);
|
|
295
|
+
// Verify BEFORE the rename: unverified bytes must never reach the final path.
|
|
296
|
+
let sha;
|
|
169
297
|
try {
|
|
170
|
-
|
|
171
|
-
await fsp.rename(tmp, binaryPath);
|
|
298
|
+
sha = assertSha256(actualSha, entry.sha256, `${opts.component} ${platformKey} (${url})`);
|
|
172
299
|
}
|
|
173
300
|
catch (e) {
|
|
174
301
|
await fsp.rm(tmp, { force: true }).catch(() => undefined);
|
|
175
302
|
throw e;
|
|
176
303
|
}
|
|
177
|
-
|
|
178
|
-
await fsp.
|
|
304
|
+
try {
|
|
305
|
+
await fsp.rename(tmp, binaryPath);
|
|
306
|
+
}
|
|
307
|
+
catch (e) {
|
|
308
|
+
await fsp.rm(tmp, { force: true }).catch(() => undefined);
|
|
309
|
+
throw new Error(`downloaded and verified the ${opts.component}, but could not move it into place ` +
|
|
310
|
+
`at ${binaryPath}: ${e.message}. ` +
|
|
311
|
+
"The usual cause is that the file is in use — stop any running gaia sidecar " +
|
|
312
|
+
"or TUI (`gaia kill`) and re-run. Otherwise check write permissions on " +
|
|
313
|
+
`${outDir}, or pass a different --sidecar-dir / --cache-dir.`, { cause: e });
|
|
314
|
+
}
|
|
315
|
+
try {
|
|
316
|
+
if (process.platform !== "win32")
|
|
317
|
+
await fsp.chmod(binaryPath, 0o755);
|
|
318
|
+
}
|
|
319
|
+
catch (e) {
|
|
320
|
+
throw new Error(`installed the ${opts.component} at ${binaryPath} but could not make it ` +
|
|
321
|
+
`executable: ${e.message}. Run \`chmod +x ${binaryPath}\`, or ` +
|
|
322
|
+
"pass a --sidecar-dir / --cache-dir you own.", { cause: e });
|
|
323
|
+
}
|
|
324
|
+
if (installsForThisHost(opts.component, platformKey)) {
|
|
325
|
+
await writeInstalledSentinel({
|
|
326
|
+
outDir,
|
|
327
|
+
version: componentLock(lock, "sidecar").componentVersion,
|
|
328
|
+
sha256: sha,
|
|
329
|
+
executable: entry.executable,
|
|
330
|
+
});
|
|
179
331
|
}
|
|
180
332
|
log.info(`installed verified ${opts.component} -> ${binaryPath}`);
|
|
181
333
|
return {
|
package/dist/fetch.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
* const res = await fetch(`${proc.baseUrl}/v1/gaia/query`, { ... });
|
|
13
13
|
* await shutdown(proc);
|
|
14
14
|
*/
|
|
15
|
-
export { fetchAll, fetchBinary, verifySha256, fileSha256, binaryExists, defaultCacheDir, daemonSidecarCacheDir, } from "./fetch.js";
|
|
15
|
+
export { INSTALLED_SENTINEL_NAME, SIDECAR_AGENT_ID, fetchAll, fetchBinary, verifySha256, fileSha256, binaryExists, defaultCacheDir, daemonSidecarCacheDir, } from "./fetch.js";
|
|
16
16
|
export type { FetchOptions, FetchResult, FetchAllOptions, FetchAllResult, } from "./fetch.js";
|
|
17
17
|
export { AGENT_ID, API_VERSION, DEFAULT_HOST, DEFAULT_PORT, RESERVED_PORT, checkVersion, health, resolveSidecarPath, resolveTuiPath, runTui, shutdown, sidecarExecutableName, spawnSidecar, startSidecar, tuiExecutableName, version, waitForHealth, } from "./lifecycle.js";
|
|
18
18
|
export type { HealthResponse, ResolveOptions, RunTuiOptions, Sidecar, SpawnOptions, StartOptions, VersionCheckOptions, VersionResponse, WaitForHealthOptions, } from "./lifecycle.js";
|
|
19
19
|
export { COMPONENTS, SCHEMA_MAJOR, SUPPORTED_PLATFORMS, SUPPORTED_SIDECAR_PLATFORMS, SUPPORTED_TUI_PLATFORMS, TUI_ARTIFACT_NAMES, componentBaseUrl, componentLock, currentPlatformKey, defaultLockPath, isPlaceholderSha, loadLock, platformsFor, resolveEntry, } from "./platform.js";
|
|
20
20
|
export type { BinaryLock, BinaryLockEntry, ComponentLock, ComponentName, } from "./platform.js";
|
|
21
|
-
export { BinaryNotFoundError, GaiaError, HealthTimeoutError, HttpError, IntegrityError, PlatformError, VersionMismatchError, } from "./errors.js";
|
|
21
|
+
export { BinaryNotFoundError, GaiaError, HealthTimeoutError, HttpError, IntegrityError, MalformedResponseError, PlatformError, PortInUseError, SidecarExitedError, VersionMismatchError, } from "./errors.js";
|
|
22
22
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,aAAa,EACb,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,YAAY,EACZ,WAAW,EACX,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,cAAc,EACd,aAAa,EACb,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAC;AACvB,YAAY,EACV,UAAU,EACV,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
* const res = await fetch(`${proc.baseUrl}/v1/gaia/query`, { ... });
|
|
15
15
|
* await shutdown(proc);
|
|
16
16
|
*/
|
|
17
|
-
export { fetchAll, fetchBinary, verifySha256, fileSha256, binaryExists, defaultCacheDir, daemonSidecarCacheDir, } from "./fetch.js";
|
|
17
|
+
export { INSTALLED_SENTINEL_NAME, SIDECAR_AGENT_ID, fetchAll, fetchBinary, verifySha256, fileSha256, binaryExists, defaultCacheDir, daemonSidecarCacheDir, } from "./fetch.js";
|
|
18
18
|
export { AGENT_ID, API_VERSION, DEFAULT_HOST, DEFAULT_PORT, RESERVED_PORT, checkVersion, health, resolveSidecarPath, resolveTuiPath, runTui, shutdown, sidecarExecutableName, spawnSidecar, startSidecar, tuiExecutableName, version, waitForHealth, } from "./lifecycle.js";
|
|
19
19
|
export { COMPONENTS, SCHEMA_MAJOR, SUPPORTED_PLATFORMS, SUPPORTED_SIDECAR_PLATFORMS, SUPPORTED_TUI_PLATFORMS, TUI_ARTIFACT_NAMES, componentBaseUrl, componentLock, currentPlatformKey, defaultLockPath, isPlaceholderSha, loadLock, platformsFor, resolveEntry, } from "./platform.js";
|
|
20
|
-
export { BinaryNotFoundError, GaiaError, HealthTimeoutError, HttpError, IntegrityError, PlatformError, VersionMismatchError, } from "./errors.js";
|
|
20
|
+
export { BinaryNotFoundError, GaiaError, HealthTimeoutError, HttpError, IntegrityError, MalformedResponseError, PlatformError, PortInUseError, SidecarExitedError, VersionMismatchError, } from "./errors.js";
|
|
21
21
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+BAA+B;AAC/B;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAQpB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,aAAa,GACd,MAAM,gBAAgB,CAAC;AAaxB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAC;AAQvB,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,aAAa,EACb,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,+BAA+B;AAC/B;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,qBAAqB,GACtB,MAAM,YAAY,CAAC;AAQpB,OAAO,EACL,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,MAAM,EACN,kBAAkB,EAClB,cAAc,EACd,MAAM,EACN,QAAQ,EACR,qBAAqB,EACrB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,aAAa,GACd,MAAM,gBAAgB,CAAC;AAaxB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,mBAAmB,EACnB,2BAA2B,EAC3B,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,QAAQ,EACR,YAAY,EACZ,YAAY,GACb,MAAM,eAAe,CAAC;AAQvB,OAAO,EACL,mBAAmB,EACnB,SAAS,EACT,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,aAAa,CAAC"}
|
package/dist/lifecycle.d.ts
CHANGED
|
@@ -17,13 +17,14 @@
|
|
|
17
17
|
* REST surface without a daemon.
|
|
18
18
|
*/
|
|
19
19
|
import { type ChildProcess } from "node:child_process";
|
|
20
|
+
import { type BinaryLock } from "./platform.js";
|
|
20
21
|
export declare const DEFAULT_HOST = "127.0.0.1";
|
|
21
|
-
/** Matches `
|
|
22
|
+
/** Matches `gaia_agent.server.DEFAULT_PORT`. NEVER 4001 (repo-reserved). */
|
|
22
23
|
export declare const DEFAULT_PORT = 8141;
|
|
23
24
|
/** Repo-wide reserved port. Nothing here may ever bind it. */
|
|
24
25
|
export declare const RESERVED_PORT = 4001;
|
|
25
26
|
/** The apiVersion this package is built against (`server.py: API_VERSION`). */
|
|
26
|
-
export declare const API_VERSION = "2.
|
|
27
|
+
export declare const API_VERSION = "2.17";
|
|
27
28
|
/** The agent id in the sidecar's route prefix (`/v1/gaia/...`). */
|
|
28
29
|
export declare const AGENT_ID = "gaia";
|
|
29
30
|
/** `GET /health` response. */
|
|
@@ -49,6 +50,15 @@ export interface ResolveOptions {
|
|
|
49
50
|
resourcesDir: string;
|
|
50
51
|
/** Override the executable basename (defaults per-platform). */
|
|
51
52
|
executable?: string;
|
|
53
|
+
/**
|
|
54
|
+
* Re-verify the file's SHA-256 against `binaries.lock.json` before handing
|
|
55
|
+
* back a path that is about to be spawned. Default `true` — the cache dir is
|
|
56
|
+
* predictable, so anything that can write it could otherwise get code run.
|
|
57
|
+
* Set `false` only for a binary you built yourself, which no lock describes.
|
|
58
|
+
*/
|
|
59
|
+
verify?: boolean;
|
|
60
|
+
/** Pre-loaded lock, to avoid re-reading it per call. */
|
|
61
|
+
lock?: BinaryLock;
|
|
52
62
|
}
|
|
53
63
|
export declare function resolveSidecarPath(opts: ResolveOptions): string;
|
|
54
64
|
export declare function resolveTuiPath(opts: ResolveOptions): string;
|
|
@@ -83,7 +93,7 @@ export interface Sidecar {
|
|
|
83
93
|
*/
|
|
84
94
|
export declare function spawnSidecar(opts: SpawnOptions): Sidecar;
|
|
85
95
|
/** `GET /health` — liveness only; it does not mean a model is loaded. */
|
|
86
|
-
export declare function health(baseUrl: string, timeoutMs?: number): Promise<HealthResponse>;
|
|
96
|
+
export declare function health(baseUrl: string, timeoutMs?: number, signal?: AbortSignal): Promise<HealthResponse>;
|
|
87
97
|
/** `GET /version` — the contract probe (`{ apiVersion, agentVersion }`). */
|
|
88
98
|
export declare function version(baseUrl: string, timeoutMs?: number): Promise<VersionResponse>;
|
|
89
99
|
export interface WaitForHealthOptions {
|
|
@@ -100,7 +110,7 @@ export interface WaitForHealthOptions {
|
|
|
100
110
|
*/
|
|
101
111
|
export declare function waitForHealth(baseUrl: string, opts?: WaitForHealthOptions): Promise<void>;
|
|
102
112
|
export interface VersionCheckOptions {
|
|
103
|
-
/** apiVersion this package was built against. Default API_VERSION ("2.
|
|
113
|
+
/** apiVersion this package was built against. Default API_VERSION ("2.17"). */
|
|
104
114
|
expectedApiVersion?: string;
|
|
105
115
|
}
|
|
106
116
|
/**
|
|
@@ -123,9 +133,16 @@ export interface StartOptions extends SpawnOptions {
|
|
|
123
133
|
expectedApiVersion?: string;
|
|
124
134
|
}
|
|
125
135
|
/**
|
|
126
|
-
* Spawn → wait for health →
|
|
127
|
-
* sidecar is shut down before rethrowing, so a
|
|
128
|
-
* process.
|
|
136
|
+
* Spawn → wait for health → assert the child is still ours → (optionally)
|
|
137
|
+
* version-check. On any failure the sidecar is shut down before rethrowing, so a
|
|
138
|
+
* failed start never leaks a process.
|
|
139
|
+
*
|
|
140
|
+
* The port is checked BEFORE the spawn. Without that, the frozen sidecar spends
|
|
141
|
+
* seconds unpacking before it even attempts its bind, while an incumbent answers
|
|
142
|
+
* `/health` in milliseconds — so the health wait succeeds, the still-unpacking
|
|
143
|
+
* child looks alive, and we would hand back a handle for a server we do not own.
|
|
144
|
+
* `assertOurs` / `assertNotAForeignServer` stay as backstops for the narrower
|
|
145
|
+
* race where something binds after this check.
|
|
129
146
|
*/
|
|
130
147
|
export declare function startSidecar(opts: StartOptions): Promise<Sidecar>;
|
|
131
148
|
export interface RunTuiOptions {
|
package/dist/lifecycle.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAoB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../src/lifecycle.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAoB,MAAM,oBAAoB,CAAC;AAiBzE,OAAO,EACL,KAAK,UAAU,EAMhB,MAAM,eAAe,CAAC;AAIvB,eAAO,MAAM,YAAY,cAAc,CAAC;AAExC,4EAA4E;AAC5E,eAAO,MAAM,YAAY,OAAO,CAAC;AAEjC,8DAA8D;AAC9D,eAAO,MAAM,aAAa,OAAO,CAAC;AAElC,+EAA+E;AAC/E,eAAO,MAAM,WAAW,SAAS,CAAC;AAElC,mEAAmE;AACnE,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,8BAA8B;AAC9B,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wEAAwE;AACxE,wBAAgB,qBAAqB,CACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAER;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAER;AAED,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,wDAAwD;IACxD,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAwED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAE/D;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAE3D;AAED,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,gCAAgC;AAChC,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,YAAY,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAqHD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAmCxD;AAuCD,yEAAyE;AACzE,wBAAgB,MAAM,CACpB,OAAO,EAAE,MAAM,EACf,SAAS,SAAO,EAChB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,CAAC,CAEzB;AAED,4EAA4E;AAC5E,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAEnF;AAED,MAAM,WAAW,oBAAoB;IACnC,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAID;;;GAGG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAsCf;AAWD,MAAM,WAAW,mBAAmB;IAClC,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,eAAe,CAAC,CAe1B;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAuFhF;AAED,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAgED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CAiDvE;AAED,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,0CAA0C;IAC1C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,yCAAyC;IACzC,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CA2B3D"}
|