modelstat 0.10.1 → 0.10.3
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/cli.mjs +44 -24
- package/dist/cli.mjs.map +1 -1
- package/package.json +1 -1
- package/scripts/postinstall.mjs +57 -35
package/dist/cli.mjs
CHANGED
|
@@ -37315,7 +37315,7 @@ var init_scan = __esm({
|
|
|
37315
37315
|
init_api();
|
|
37316
37316
|
init_config2();
|
|
37317
37317
|
init_pipeline2();
|
|
37318
|
-
DAEMON_VERSION = true ? "daemon-0.10.
|
|
37318
|
+
DAEMON_VERSION = true ? "daemon-0.10.3" : "daemon-dev";
|
|
37319
37319
|
BATCH_MAX_EVENTS = INGEST_BATCH_MAX_EVENTS;
|
|
37320
37320
|
BATCH_MAX_TOOL_CALLS = 2e4;
|
|
37321
37321
|
BATCH_BUFFER_HARD_CAP = BATCH_MAX_EVENTS * 2;
|
|
@@ -40262,7 +40262,7 @@ var init_daemon = __esm({
|
|
|
40262
40262
|
init_scan();
|
|
40263
40263
|
init_single_flight();
|
|
40264
40264
|
init_update();
|
|
40265
|
-
DAEMON_VERSION2 = true ? "daemon-0.10.
|
|
40265
|
+
DAEMON_VERSION2 = true ? "daemon-0.10.3" : "daemon-dev";
|
|
40266
40266
|
HEARTBEAT_INTERVAL_MS = 1e4;
|
|
40267
40267
|
SCAN_INTERVAL_MS = 5 * 60 * 1e3;
|
|
40268
40268
|
DISCOVERY_INTERVAL_MS = 6e4;
|
|
@@ -40467,21 +40467,21 @@ function sourcePkgVersion(sourceCli, pkgName) {
|
|
|
40467
40467
|
}
|
|
40468
40468
|
return null;
|
|
40469
40469
|
}
|
|
40470
|
-
function
|
|
40471
|
-
const version = sourcePkgVersion(sourceCli, pkgName) ?? fallbackVersion;
|
|
40472
|
-
const dest = binDir();
|
|
40473
|
-
const pkgJson = join8(dest, "node_modules", ...pkgName.split("/"), "package.json");
|
|
40470
|
+
function stagedVersion(pkgName) {
|
|
40474
40471
|
try {
|
|
40475
|
-
const
|
|
40476
|
-
|
|
40472
|
+
const pj = join8(binDir(), "node_modules", ...pkgName.split("/"), "package.json");
|
|
40473
|
+
return JSON.parse(readFileSync5(pj, "utf8")).version ?? null;
|
|
40477
40474
|
} catch {
|
|
40475
|
+
return null;
|
|
40478
40476
|
}
|
|
40477
|
+
}
|
|
40478
|
+
function stageNativePkgs(specs) {
|
|
40479
|
+
const dest = binDir();
|
|
40479
40480
|
mkdirSync4(dest, { recursive: true });
|
|
40480
40481
|
const childEnv = { ...process.env };
|
|
40481
40482
|
delete childEnv.npm_config_global;
|
|
40482
40483
|
delete childEnv.npm_config_prefix;
|
|
40483
|
-
|
|
40484
|
-
process.stderr.write(` \xB7 staging ${label} (${pkgName}@${version})\u2026
|
|
40484
|
+
process.stderr.write(` \xB7 staging native runtime (${specs.join(", ")})\u2026
|
|
40485
40485
|
`);
|
|
40486
40486
|
const r = spawnSync2(
|
|
40487
40487
|
"npm",
|
|
@@ -40501,31 +40501,46 @@ function stageNativePkg(sourceCli, pkgName, fallbackVersion, critical) {
|
|
|
40501
40501
|
"--prefer-offline",
|
|
40502
40502
|
"--fetch-timeout=60000",
|
|
40503
40503
|
"--loglevel=error",
|
|
40504
|
-
|
|
40504
|
+
...specs
|
|
40505
40505
|
],
|
|
40506
40506
|
{ encoding: "utf8", stdio: "pipe", env: childEnv }
|
|
40507
40507
|
);
|
|
40508
40508
|
if (r.status !== 0) {
|
|
40509
40509
|
process.stderr.write(
|
|
40510
|
-
|
|
40510
|
+
`[modelstat] npm couldn't stage [${specs.join(", ")}] into ~/.modelstat/bin:
|
|
40511
40511
|
${(r.stderr || r.stdout || "").trim()}
|
|
40512
|
-
` : `[modelstat] couldn't stage the on-device embedder/redactor (${pkgName}@${version}); the daemon falls back to server-side embedding + regex/LLM redaction (non-fatal).
|
|
40513
40512
|
`
|
|
40514
40513
|
);
|
|
40515
|
-
return
|
|
40514
|
+
return false;
|
|
40516
40515
|
}
|
|
40517
|
-
return
|
|
40516
|
+
return true;
|
|
40518
40517
|
}
|
|
40519
40518
|
function installNativeRuntime(sourceCli) {
|
|
40520
|
-
|
|
40521
|
-
|
|
40522
|
-
|
|
40523
|
-
sourceCli,
|
|
40524
|
-
|
|
40525
|
-
|
|
40526
|
-
|
|
40527
|
-
|
|
40519
|
+
const pkgs = [
|
|
40520
|
+
{
|
|
40521
|
+
name: "node-llama-cpp",
|
|
40522
|
+
version: sourcePkgVersion(sourceCli, "node-llama-cpp") ?? NODE_LLAMA_CPP_FALLBACK_VERSION
|
|
40523
|
+
},
|
|
40524
|
+
{
|
|
40525
|
+
name: "@huggingface/transformers",
|
|
40526
|
+
version: sourcePkgVersion(sourceCli, "@huggingface/transformers") ?? HF_TRANSFORMERS_FALLBACK_VERSION
|
|
40527
|
+
}
|
|
40528
40528
|
];
|
|
40529
|
+
if (pkgs.every((p) => stagedVersion(p.name) === p.version)) {
|
|
40530
|
+
return pkgs.map((p) => `${p.name}@${p.version} (cached)`);
|
|
40531
|
+
}
|
|
40532
|
+
const specs = pkgs.map((p) => `${p.name}@${p.version}`);
|
|
40533
|
+
if (stageNativePkgs(specs)) return specs;
|
|
40534
|
+
process.stderr.write(
|
|
40535
|
+
"[modelstat] retrying with just the summariser runtime; the embedder/redactor will fall back\u2026\n"
|
|
40536
|
+
);
|
|
40537
|
+
const llamaSpec = `node-llama-cpp@${pkgs[0].version}`;
|
|
40538
|
+
if (stageNativePkgs([llamaSpec])) return [llamaSpec];
|
|
40539
|
+
process.stderr.write(
|
|
40540
|
+
`[modelstat] couldn't stage the summariser runtime (${llamaSpec}); the daemon uses the extractive fallback until this is resolved.
|
|
40541
|
+
`
|
|
40542
|
+
);
|
|
40543
|
+
return [];
|
|
40529
40544
|
}
|
|
40530
40545
|
function nodeBinary() {
|
|
40531
40546
|
return process.execPath;
|
|
@@ -40879,7 +40894,7 @@ function tryOpenBrowser(url) {
|
|
|
40879
40894
|
return false;
|
|
40880
40895
|
}
|
|
40881
40896
|
}
|
|
40882
|
-
var DAEMON_VERSION3 = true ? "daemon-0.10.
|
|
40897
|
+
var DAEMON_VERSION3 = true ? "daemon-0.10.3" : "daemon-dev";
|
|
40883
40898
|
function osFamily() {
|
|
40884
40899
|
const p = platform6();
|
|
40885
40900
|
if (p === "darwin") return "macos";
|
|
@@ -41564,6 +41579,11 @@ async function main() {
|
|
|
41564
41579
|
console.log(`\u2713 runtime staged at ${dest}`);
|
|
41565
41580
|
return;
|
|
41566
41581
|
}
|
|
41582
|
+
case "_install-service": {
|
|
41583
|
+
const svc = installService();
|
|
41584
|
+
console.log(`\u2713 managed background service installed + started (${svc.path})`);
|
|
41585
|
+
return;
|
|
41586
|
+
}
|
|
41567
41587
|
case "_daemon-health": {
|
|
41568
41588
|
try {
|
|
41569
41589
|
console.log(JSON.stringify(daemonHealth({ myDaemonVersion: DAEMON_VERSION3 })));
|