@camstack/system 1.1.33 → 1.1.35
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/addon-runner.js +1 -1
- package/dist/addon-runner.mjs +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +6 -6
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +6 -6
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- package/dist/builtins/alerts/alerts.addon.js +12 -12
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +5 -5
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
- package/dist/builtins/console-logging/index.js +3 -3
- package/dist/builtins/console-logging/index.mjs +1 -1
- package/dist/builtins/device-manager/device-manager.addon.js +69 -69
- package/dist/builtins/device-manager/device-manager.addon.mjs +2 -2
- package/dist/builtins/hub-forwarder/index.js +3 -3
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/local-auth/local-auth.addon.js +7 -7
- package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
- package/dist/builtins/local-network/local-network.addon.js +7 -7
- package/dist/builtins/local-network/local-network.addon.mjs +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.js +5 -5
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
- package/dist/builtins/platform-probe/index.js +13 -13
- package/dist/builtins/platform-probe/index.mjs +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +4 -4
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/snapshot/index.js +13 -13
- package/dist/builtins/snapshot/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +4 -4
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +9 -9
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +5 -5
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- package/dist/builtins/system-config/system-config.addon.js +5 -5
- package/dist/builtins/system-config/system-config.addon.mjs +1 -1
- package/dist/builtins/winston-logging/index.js +3 -3
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/dist-DlGZpWo8.mjs +24597 -0
- package/dist/dist-DriXJoVg.js +25070 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +113 -126
- package/dist/index.mjs +73 -63
- package/dist/{manifest-python-deps-u-AQBQY6.mjs → manifest-python-deps-MUu1e33G.mjs} +27 -27
- package/dist/{manifest-python-deps-CAnO1wPx.js → manifest-python-deps-jZA_Qorz.js} +3 -3
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { $ as errMsg$1, A as isVoidInput, Ct as resolveCapMount, F as looseSchema, M as lifecycleJobSchema, O as isArrayOutputSchema, St as readinessKey, V as procedureAuthKey, _t as expandCapMethods, bt as parseJsonObject, ct as ReadinessRegistry, dt as asJsonObject$1, ft as asNumber, ht as emitDownForOwnedCaps, j as kebabToCamel, k as isObjectInput, lt as ReadinessTimeoutError, mt as createEvent, nt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, o as METHOD_ACCESS_MAP, p as addonSettingsCapability, pt as asString$1, rt as DEVICE_STATUS_METHOD, s as RUNTIME_DEFAULTS, st as EventCategory$1, t as ALL_CAPABILITY_DEFINITIONS, tt as DATAPLANE_SECRET_HEADER$1, wt as scopeKey, xt as parseJsonUnknown$1 } from "./dist-DlGZpWo8.mjs";
|
|
1
2
|
import { a as downloadModel, c as getModelFilePath, d as contentTypeFor, f as createAuthenticatedFileServer, h as resolveFilePath, i as downloadFile, l as isModelDownloaded, m as parseTokenizedUrl, n as collectModelFiles, o as ensureModel, p as parseRangeHeader, r as deleteModelFromDisk, s as fetchJson, t as ModelDownloadService, u as createFileDataPlaneHandler } from "./model-download-service-C-IHWnXx.mjs";
|
|
2
3
|
import { n as getSinglePidStats, t as getPidStats } from "./resource-monitor-Le3l0qS2.mjs";
|
|
3
4
|
import { FilesystemStorageAddon, t as FilesystemStorageProvider } from "./builtins/sqlite-storage/filesystem-storage.addon.mjs";
|
|
@@ -18,15 +19,15 @@ import { LocalAuthAddon, a as require_ms, c as __esmMin, d as __toCommonJS, f as
|
|
|
18
19
|
import "./builtins/local-auth/index.mjs";
|
|
19
20
|
import { DeviceManagerAddon } from "./builtins/device-manager/device-manager.addon.mjs";
|
|
20
21
|
import "./builtins/device-manager/index.mjs";
|
|
21
|
-
import { $ as buildUdsNativeCapProxy, A as createParentUnownedCallHandler, B as AGENT_CAP_FWD_SERVICE, C as buildLinkChain, D as HUB_CAP_FWD_ACTION, E as localProviderLink, F as createUdsLoggerWithControl, G as createLocalTransport, H as CapRouteError, I as LocalChildClient, J as SocketChannel, K as UdsLocalTransportClient, L as LocalChildRegistry, M as createUdsEventBus, N as udsChildLogToWorkerEntry, O as HUB_CAP_FWD_SERVICE, P as createUdsLogger, Q as buildNativeCapProxy, R as UDS_NO_ROUTE_PREFIX, S as brokerTransportLink, T as ipcParentLink, U as classifyCapRoute, V as CapRouteResolver, W as callWithServiceDiscovery, X as FrameDecoder, Y as localEndpointPath, Z as encodeFrame, _ as resolveHwAccel, _t as CapabilityUnavailableError, a as getWorkerDeviceRegistry, at as createAddonService, b as getCapUsageRegistry, c as setHubConnected, ct as capActionName, d as getMoleculerEventStats, dt as capServiceName, et as createBrokerDeviceManagerApi, f as registerEventBusService, ft as parseCapAction, g as createKernelHwAccel, gt as CapabilityHandle, h as AddonDepsManager, ht as DeviceRegistry, i as createUdsAddonContext, j as createUdsEventBridge, k as createHubCapForwardService, l as EVENT_TOPIC_PREFIX, lt as capActionSuffix, m as subscribePassthrough, mt as serializeTypedArrays, n as adaptBrokerToCluster, o as getOrInitReadinessRegistry, ot as validateProviderRegistrations, p as setNodeEventInterest, pt as deserializeTypedArrays, q as UdsLocalTransportServer, r as createAddonContext, rt as mountNativeCapService, s as getOrInitReadinessRegistryForClient, st as NATIVE_PROVIDER_SERVICE_INFIX, t as installManifestPythonDeps, u as getBrokerEventBus, ut as capBareAction, v as CapUsageRegistry, vt as installManifestNativeDeps, w as ipcChildLink, x as brokerCallForCap, y as __resetCapUsageRegistryForTests, yt as resolveAddonClass, z as AGENT_CAP_FWD_ACTION } from "./manifest-python-deps-
|
|
22
|
+
import { $ as buildUdsNativeCapProxy, A as createParentUnownedCallHandler, B as AGENT_CAP_FWD_SERVICE, C as buildLinkChain, D as HUB_CAP_FWD_ACTION, E as localProviderLink, F as createUdsLoggerWithControl, G as createLocalTransport, H as CapRouteError, I as LocalChildClient, J as SocketChannel, K as UdsLocalTransportClient, L as LocalChildRegistry, M as createUdsEventBus, N as udsChildLogToWorkerEntry, O as HUB_CAP_FWD_SERVICE, P as createUdsLogger, Q as buildNativeCapProxy, R as UDS_NO_ROUTE_PREFIX, S as brokerTransportLink, T as ipcParentLink, U as classifyCapRoute, V as CapRouteResolver, W as callWithServiceDiscovery, X as FrameDecoder, Y as localEndpointPath, Z as encodeFrame, _ as resolveHwAccel, _t as CapabilityUnavailableError, a as getWorkerDeviceRegistry, at as createAddonService, b as getCapUsageRegistry, c as setHubConnected, ct as capActionName, d as getMoleculerEventStats, dt as capServiceName, et as createBrokerDeviceManagerApi, f as registerEventBusService, ft as parseCapAction, g as createKernelHwAccel, gt as CapabilityHandle, h as AddonDepsManager, ht as DeviceRegistry, i as createUdsAddonContext, j as createUdsEventBridge, k as createHubCapForwardService, l as EVENT_TOPIC_PREFIX, lt as capActionSuffix, m as subscribePassthrough, mt as serializeTypedArrays, n as adaptBrokerToCluster, o as getOrInitReadinessRegistry, ot as validateProviderRegistrations, p as setNodeEventInterest, pt as deserializeTypedArrays, q as UdsLocalTransportServer, r as createAddonContext, rt as mountNativeCapService, s as getOrInitReadinessRegistryForClient, st as NATIVE_PROVIDER_SERVICE_INFIX, t as installManifestPythonDeps, u as getBrokerEventBus, ut as capBareAction, v as CapUsageRegistry, vt as installManifestNativeDeps, w as ipcChildLink, x as brokerCallForCap, y as __resetCapUsageRegistryForTests, yt as resolveAddonClass, z as AGENT_CAP_FWD_ACTION } from "./manifest-python-deps-MUu1e33G.mjs";
|
|
22
23
|
import { t as CustomActionRegistry } from "./custom-action-registry-BEXwC-oo.mjs";
|
|
23
24
|
import { PYTHON_VERSION, buildBinaryPath, downloadBinary, ensureBinary, ensureFfmpeg, ensurePython, findInPath, getFfmpegDownloadUrl, getPlatformInfo, getPythonDownloadUrl, installPythonPackages, installPythonRequirements } from "@camstack/types/node";
|
|
25
|
+
import { z } from "zod";
|
|
24
26
|
import { request } from "node:http";
|
|
25
27
|
import * as fs$17 from "node:fs";
|
|
26
28
|
import { accessSync, constants, existsSync, mkdirSync, readFileSync } from "node:fs";
|
|
27
29
|
import * as path$39 from "node:path";
|
|
28
30
|
import { dirname, isAbsolute, join, posix, resolve, win32 } from "node:path";
|
|
29
|
-
import { ALL_CAPABILITY_DEFINITIONS, DATAPLANE_SECRET_HEADER, EventCategory, RUNTIME_DEFAULTS, ReadinessRegistry, ReadinessTimeoutError, asJsonObject, asNumber, asString, createEvent, emitDownForOwnedCaps, errMsg, expandCapMethods, isObjectInput, isVoidInput, kebabToCamel, lifecycleJobSchema, looseSchema, parseJsonObject, parseJsonUnknown, procedureAuthKey, readinessKey, resolveCapMount, scopeKey } from "@camstack/types";
|
|
30
31
|
import { X509Certificate, createHash, randomUUID, timingSafeEqual } from "node:crypto";
|
|
31
32
|
import { execFile, spawn } from "node:child_process";
|
|
32
33
|
import * as util$10 from "node:util";
|
|
@@ -34,8 +35,7 @@ import { promisify } from "node:util";
|
|
|
34
35
|
import * as vm from "node:vm";
|
|
35
36
|
import * as os$18 from "node:os";
|
|
36
37
|
import { lstat, readdir, readlink, realpath } from "node:fs/promises";
|
|
37
|
-
import {
|
|
38
|
-
import { asJsonObject as asJsonObject$1, parseJsonUnknown as parseJsonUnknown$1 } from "@camstack/types/addon";
|
|
38
|
+
import { asJsonObject, parseJsonUnknown } from "@camstack/types/addon";
|
|
39
39
|
import { EventEmitter } from "node:events";
|
|
40
40
|
import As from "node:stream";
|
|
41
41
|
import { StringDecoder } from "node:string_decoder";
|
|
@@ -150,7 +150,7 @@ function proxyToUpstream(opts) {
|
|
|
150
150
|
delete headers.host;
|
|
151
151
|
delete headers.connection;
|
|
152
152
|
delete headers["content-length"];
|
|
153
|
-
headers[DATAPLANE_SECRET_HEADER] = secret;
|
|
153
|
+
headers[DATAPLANE_SECRET_HEADER$1] = secret;
|
|
154
154
|
const upstream = request({
|
|
155
155
|
protocol: base.protocol,
|
|
156
156
|
hostname: base.hostname,
|
|
@@ -320,7 +320,7 @@ var PipelineRunner = class {
|
|
|
320
320
|
}
|
|
321
321
|
} catch (error) {
|
|
322
322
|
const stepMs = performance.now() - stepStart;
|
|
323
|
-
const message = errMsg(error);
|
|
323
|
+
const message = errMsg$1(error);
|
|
324
324
|
results.push({
|
|
325
325
|
addon: node.addon,
|
|
326
326
|
slot: "detector",
|
|
@@ -1562,7 +1562,7 @@ var NotificationService = class {
|
|
|
1562
1562
|
this.logger.error("Notification target failed", { meta: {
|
|
1563
1563
|
addonId: ref.addonId,
|
|
1564
1564
|
targetId: ref.targetId,
|
|
1565
|
-
error: errMsg(err)
|
|
1565
|
+
error: errMsg$1(err)
|
|
1566
1566
|
} });
|
|
1567
1567
|
}
|
|
1568
1568
|
}));
|
|
@@ -2338,7 +2338,7 @@ var AddonLoader = class {
|
|
|
2338
2338
|
/** Load addon from a specific directory (package.json + dist/) */
|
|
2339
2339
|
async loadFromAddonDir(addonDir) {
|
|
2340
2340
|
const pkgJsonPath = path$39.join(addonDir, "package.json");
|
|
2341
|
-
const pkgJson = asJsonObject(parseJsonUnknown(fs$17.readFileSync(pkgJsonPath, "utf-8"))) ?? {};
|
|
2341
|
+
const pkgJson = asJsonObject$1(parseJsonUnknown$1(fs$17.readFileSync(pkgJsonPath, "utf-8"))) ?? {};
|
|
2342
2342
|
const packageNameRaw = pkgJson["name"];
|
|
2343
2343
|
const packageName = typeof packageNameRaw === "string" ? packageNameRaw : "";
|
|
2344
2344
|
const packageVersionRaw = pkgJson["version"];
|
|
@@ -2704,7 +2704,7 @@ async function installPackageFromNpm(packageName, targetDir) {
|
|
|
2704
2704
|
const distSrc = path$39.join(srcPkgJsonDir, "dist");
|
|
2705
2705
|
if (fs$17.existsSync(distSrc)) await copyDirRecursive(distSrc, path$39.join(targetDir, "dist"));
|
|
2706
2706
|
try {
|
|
2707
|
-
const npmPkg = asJsonObject(parseJsonUnknown(await fs$17.promises.readFile(path$39.join(srcPkgJsonDir, "package.json"), "utf-8")));
|
|
2707
|
+
const npmPkg = asJsonObject$1(parseJsonUnknown$1(await fs$17.promises.readFile(path$39.join(srcPkgJsonDir, "package.json"), "utf-8")));
|
|
2708
2708
|
if (npmPkg) await copyExtraFileDirs(npmPkg, srcPkgJsonDir, targetDir);
|
|
2709
2709
|
} catch {}
|
|
2710
2710
|
} finally {
|
|
@@ -2936,15 +2936,15 @@ function parseInstallSource(value) {
|
|
|
2936
2936
|
function readPackageJson(pkgJsonPath) {
|
|
2937
2937
|
let raw;
|
|
2938
2938
|
try {
|
|
2939
|
-
raw = asJsonObject(parseJsonUnknown(fs$17.readFileSync(pkgJsonPath, "utf-8")));
|
|
2939
|
+
raw = asJsonObject$1(parseJsonUnknown$1(fs$17.readFileSync(pkgJsonPath, "utf-8")));
|
|
2940
2940
|
} catch {
|
|
2941
2941
|
return null;
|
|
2942
2942
|
}
|
|
2943
2943
|
if (!raw) return null;
|
|
2944
|
-
const name = asString(raw["name"]);
|
|
2945
|
-
const version = asString(raw["version"]);
|
|
2944
|
+
const name = asString$1(raw["name"]);
|
|
2945
|
+
const version = asString$1(raw["version"]);
|
|
2946
2946
|
if (!name || !version) return null;
|
|
2947
|
-
const camstack = asJsonObject(raw["camstack"]);
|
|
2947
|
+
const camstack = asJsonObject$1(raw["camstack"]);
|
|
2948
2948
|
const addonsField = camstack ? camstack["addons"] : void 0;
|
|
2949
2949
|
return {
|
|
2950
2950
|
name,
|
|
@@ -3064,7 +3064,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3064
3064
|
}
|
|
3065
3065
|
await this.installFromNpm(packageName);
|
|
3066
3066
|
} catch (err) {
|
|
3067
|
-
const msg = errMsg(err);
|
|
3067
|
+
const msg = errMsg$1(err);
|
|
3068
3068
|
if (packageName === "@camstack/system") throw new Error(`Required package ${packageName} failed to install: ${msg}`, { cause: err });
|
|
3069
3069
|
this.logger.error(`Failed to install ${packageName}`, { meta: { error: msg } });
|
|
3070
3070
|
}
|
|
@@ -3117,7 +3117,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3117
3117
|
if (this.installSource === "symlink") try {
|
|
3118
3118
|
return await this.installSymlink(packageName, sourceDir, pkgView.raw, targetDir);
|
|
3119
3119
|
} catch (err) {
|
|
3120
|
-
this.logger.warn(`${packageName} — symlink failed, falling back to copy: ${errMsg(err)}`);
|
|
3120
|
+
this.logger.warn(`${packageName} — symlink failed, falling back to copy: ${errMsg$1(err)}`);
|
|
3121
3121
|
}
|
|
3122
3122
|
return this.installCopy(packageName, sourceDir, pkgView.raw, targetDir);
|
|
3123
3123
|
}
|
|
@@ -3145,13 +3145,13 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3145
3145
|
ensureDir(path$39.dirname(targetDir));
|
|
3146
3146
|
fs$17.symlinkSync(sourceDir, targetDir, "dir");
|
|
3147
3147
|
this.manifest.upsert(packageName, {
|
|
3148
|
-
version: asString(pkgData.version, "0.0.0"),
|
|
3148
|
+
version: asString$1(pkgData.version, "0.0.0"),
|
|
3149
3149
|
source: "local"
|
|
3150
3150
|
});
|
|
3151
3151
|
this.logger.info(`${packageName} — symlinked → ${sourceDir}`);
|
|
3152
3152
|
return {
|
|
3153
|
-
name: asString(pkgData.name, packageName),
|
|
3154
|
-
version: asString(pkgData.version, "0.0.0")
|
|
3153
|
+
name: asString$1(pkgData.name, packageName),
|
|
3154
|
+
version: asString$1(pkgData.version, "0.0.0")
|
|
3155
3155
|
};
|
|
3156
3156
|
}
|
|
3157
3157
|
async installCopy(packageName, sourceDir, pkgData, targetDir) {
|
|
@@ -3167,7 +3167,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3167
3167
|
await copyDirRecursive(distDir, path$39.join(targetDir, "dist"));
|
|
3168
3168
|
await copyExtraFileDirs(pkgData, sourceDir, targetDir);
|
|
3169
3169
|
await fs$17.promises.writeFile(path$39.join(targetDir, ".install-source"), "local");
|
|
3170
|
-
const localPkgVersion = asString(pkgData.version, "0.0.0");
|
|
3170
|
+
const localPkgVersion = asString$1(pkgData.version, "0.0.0");
|
|
3171
3171
|
this.manifest.upsert(packageName, {
|
|
3172
3172
|
version: localPkgVersion,
|
|
3173
3173
|
source: "local"
|
|
@@ -3186,7 +3186,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3186
3186
|
try {
|
|
3187
3187
|
await installManifestNativeDeps(targetDir, pkgData, this.logger, this.registry);
|
|
3188
3188
|
} catch (err) {
|
|
3189
|
-
this.logger.warn(`${packageName} — native deps install failed (continuing)`, { meta: { error: errMsg(err) } });
|
|
3189
|
+
this.logger.warn(`${packageName} — native deps install failed (continuing)`, { meta: { error: errMsg$1(err) } });
|
|
3190
3190
|
}
|
|
3191
3191
|
this.logger.info(`${packageName} — copied from ${sourceDir}`);
|
|
3192
3192
|
return {
|
|
@@ -3312,7 +3312,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3312
3312
|
}).catch((cleanupErr) => {
|
|
3313
3313
|
this.logger.debug("evictInstallDir: aside cleanup deferred (likely held open)", { meta: {
|
|
3314
3314
|
asideDir,
|
|
3315
|
-
error: errMsg(cleanupErr)
|
|
3315
|
+
error: errMsg$1(cleanupErr)
|
|
3316
3316
|
} });
|
|
3317
3317
|
});
|
|
3318
3318
|
}
|
|
@@ -3375,7 +3375,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3375
3375
|
try {
|
|
3376
3376
|
await installManifestNativeDeps(pkgDir, pkgView.raw, this.logger, this.registry);
|
|
3377
3377
|
} catch (nativeErr) {
|
|
3378
|
-
throw new Error(`${pkgView.name} — native deps install failed: ${errMsg(nativeErr)}`, { cause: nativeErr });
|
|
3378
|
+
throw new Error(`${pkgView.name} — native deps install failed: ${errMsg$1(nativeErr)}`, { cause: nativeErr });
|
|
3379
3379
|
}
|
|
3380
3380
|
await this.evictInstallDir(targetDir);
|
|
3381
3381
|
ensureDir(path$39.dirname(targetDir));
|
|
@@ -3434,7 +3434,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3434
3434
|
};
|
|
3435
3435
|
} else result = await this.installFromNpm(packageName, version);
|
|
3436
3436
|
} catch (installErr) {
|
|
3437
|
-
this.logger.error(`${packageName} — install failed, restoring backup`, { meta: { error: errMsg(installErr) } });
|
|
3437
|
+
this.logger.error(`${packageName} — install failed, restoring backup`, { meta: { error: errMsg$1(installErr) } });
|
|
3438
3438
|
try {
|
|
3439
3439
|
if (fs$17.existsSync(addonDir)) fs$17.rmSync(addonDir, {
|
|
3440
3440
|
recursive: true,
|
|
@@ -3449,7 +3449,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3449
3449
|
} catch (restoreErr) {
|
|
3450
3450
|
this.logger.error(`${packageName} — backup restore ALSO failed; manual recovery needed`, { meta: {
|
|
3451
3451
|
backupDir,
|
|
3452
|
-
error: errMsg(restoreErr)
|
|
3452
|
+
error: errMsg$1(restoreErr)
|
|
3453
3453
|
} });
|
|
3454
3454
|
}
|
|
3455
3455
|
throw installErr;
|
|
@@ -3504,7 +3504,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3504
3504
|
} else throw renameErr;
|
|
3505
3505
|
}
|
|
3506
3506
|
} catch (swapErr) {
|
|
3507
|
-
this.logger.error(`${packageName} — staged swap failed, restoring backup`, { meta: { error: errMsg(swapErr) } });
|
|
3507
|
+
this.logger.error(`${packageName} — staged swap failed, restoring backup`, { meta: { error: errMsg$1(swapErr) } });
|
|
3508
3508
|
try {
|
|
3509
3509
|
if (fs$17.existsSync(addonDir)) fs$17.rmSync(addonDir, {
|
|
3510
3510
|
recursive: true,
|
|
@@ -3519,7 +3519,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3519
3519
|
} catch (restoreErr) {
|
|
3520
3520
|
this.logger.error(`${packageName} — backup restore ALSO failed; manual recovery needed`, { meta: {
|
|
3521
3521
|
backupDir,
|
|
3522
|
-
error: errMsg(restoreErr)
|
|
3522
|
+
error: errMsg$1(restoreErr)
|
|
3523
3523
|
} });
|
|
3524
3524
|
}
|
|
3525
3525
|
throw swapErr;
|
|
@@ -3663,8 +3663,8 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3663
3663
|
]) {
|
|
3664
3664
|
const candidate = path$39.join(this.workspaceDir, dirName);
|
|
3665
3665
|
try {
|
|
3666
|
-
const pkg = asJsonObject(parseJsonUnknown(fs$17.readFileSync(path$39.join(candidate, "package.json"), "utf-8")));
|
|
3667
|
-
if (pkg && asString(pkg["name"]) === packageName) return candidate;
|
|
3666
|
+
const pkg = asJsonObject$1(parseJsonUnknown$1(fs$17.readFileSync(path$39.join(candidate, "package.json"), "utf-8")));
|
|
3667
|
+
if (pkg && asString$1(pkg["name"]) === packageName) return candidate;
|
|
3668
3668
|
} catch {}
|
|
3669
3669
|
}
|
|
3670
3670
|
return null;
|
|
@@ -3680,7 +3680,7 @@ var AddonInstaller = class AddonInstaller {
|
|
|
3680
3680
|
timeout: 18e4
|
|
3681
3681
|
});
|
|
3682
3682
|
} catch (err) {
|
|
3683
|
-
const msg = errMsg(err);
|
|
3683
|
+
const msg = errMsg$1(err);
|
|
3684
3684
|
this.logger.warn(`${packageName} auto-build failed`, { meta: { error: msg } });
|
|
3685
3685
|
}
|
|
3686
3686
|
}
|
|
@@ -3800,7 +3800,7 @@ function readPendingRestart(dataDir) {
|
|
|
3800
3800
|
}
|
|
3801
3801
|
let parsed;
|
|
3802
3802
|
try {
|
|
3803
|
-
parsed = asJsonObject(parseJsonUnknown(raw));
|
|
3803
|
+
parsed = asJsonObject$1(parseJsonUnknown$1(raw));
|
|
3804
3804
|
} catch (err) {
|
|
3805
3805
|
console.error("[restart-coordinator] Marker JSON invalid — clearing:", err);
|
|
3806
3806
|
clearPendingRestart(dataDir);
|
|
@@ -3811,7 +3811,7 @@ function readPendingRestart(dataDir) {
|
|
|
3811
3811
|
clearPendingRestart(dataDir);
|
|
3812
3812
|
return null;
|
|
3813
3813
|
}
|
|
3814
|
-
const kindRaw = asString(parsed["kind"]);
|
|
3814
|
+
const kindRaw = asString$1(parsed["kind"]);
|
|
3815
3815
|
const requestedAt = asNumber(parsed["requestedAt"]);
|
|
3816
3816
|
if (!isRestartKind(kindRaw) || requestedAt <= 0) {
|
|
3817
3817
|
console.error("[restart-coordinator] Marker missing kind/requestedAt — clearing");
|
|
@@ -4909,13 +4909,24 @@ var CapabilityRegistry = class CapabilityRegistry {
|
|
|
4909
4909
|
* this builder's output to that static type at the single documented
|
|
4910
4910
|
* boundary, so the SDK keeps full procedure inference.
|
|
4911
4911
|
*
|
|
4912
|
-
*
|
|
4913
|
-
*
|
|
4914
|
-
*
|
|
4915
|
-
*
|
|
4916
|
-
*
|
|
4917
|
-
*
|
|
4918
|
-
*
|
|
4912
|
+
* The per-method procedure shape is mechanically derived from each
|
|
4913
|
+
* `cap.methods.*` (input zod schema + kind) + the auto-injected
|
|
4914
|
+
* `getStatus` / 3 settings-contribution methods (via `expandCapMethods`).
|
|
4915
|
+
* Provider resolution is derived from the declarative `mount` hint
|
|
4916
|
+
* (`resolveCapMount`) — the same decision the codegen
|
|
4917
|
+
* `generate-cap-mounts.ts` baked in.
|
|
4918
|
+
*
|
|
4919
|
+
* OUTPUT PASS-THROUGH (2026-07-11): unlike the historical codegen, the
|
|
4920
|
+
* builder deliberately does NOT apply `.output(schema)`. Re-validating an
|
|
4921
|
+
* output the hub does not own against the hub's OWN (framework-versioned,
|
|
4922
|
+
* therefore potentially stale) copy of the cap def silently STRIPS fields
|
|
4923
|
+
* a fresher addon added (a self-contained addon bundles its own newer
|
|
4924
|
+
* `@camstack/types`; the hub-closure copy lags). That is exactly how
|
|
4925
|
+
* `models[].group.resolution` vanished from `pipelineExecutor.getSchema`.
|
|
4926
|
+
* Cap dispatch is structural (CLAUDE.md invariant): the owning provider is
|
|
4927
|
+
* typed to return a complete `z.infer<output>` and is the SOLE authority
|
|
4928
|
+
* for the payload shape, so the hub forwards it verbatim. Input validation
|
|
4929
|
+
* is retained (`.input(...)`) — the hub still guards the client boundary.
|
|
4919
4930
|
*
|
|
4920
4931
|
* This module owns NO tRPC primitives of its own: `@camstack/system`
|
|
4921
4932
|
* cannot import the server's `TrpcContext`-bound procedures. The server
|
|
@@ -4988,7 +4999,6 @@ function buildOneCapRouter(def, primitives, services) {
|
|
|
4988
4999
|
for (const method of methodsFor(def)) {
|
|
4989
5000
|
const base = primitives.procedures[procedureAuthKey(method.auth)];
|
|
4990
5001
|
const inputSchema = method.schema.input;
|
|
4991
|
-
const outputSchema = method.schema.output;
|
|
4992
5002
|
if (method.kind === "subscription") {
|
|
4993
5003
|
procedures[method.name] = base.input(inputSchema).subscription(({ input, ctx }) => {
|
|
4994
5004
|
const provider = requireLocal(capName, () => getLocal(ctx), services);
|
|
@@ -5006,7 +5016,7 @@ function buildOneCapRouter(def, primitives, services) {
|
|
|
5006
5016
|
nodeId: z.string().optional(),
|
|
5007
5017
|
addonId: z.string().optional()
|
|
5008
5018
|
}).optional() : z.object({ nodeId: z.string().optional() }).optional();
|
|
5009
|
-
procedures[method.name] = base.input(voidSelector)
|
|
5019
|
+
procedures[method.name] = base.input(voidSelector)[procKind](({ input, ctx }) => {
|
|
5010
5020
|
const sel = input ?? {};
|
|
5011
5021
|
return (nodeIdData ? requireLocal(capName, () => getLocal(ctx, isCollection ? sel.addonId : void 0), services) : resolveProviderForCall(capName, sel.nodeId, () => getLocal(ctx, isCollection ? sel.addonId : void 0), services))[method.name]?.();
|
|
5012
5022
|
});
|
|
@@ -5014,7 +5024,7 @@ function buildOneCapRouter(def, primitives, services) {
|
|
|
5014
5024
|
}
|
|
5015
5025
|
if (method.isObject) {
|
|
5016
5026
|
const schema = nodeIdData ? inputSchema : looseSchema(inputSchema);
|
|
5017
|
-
procedures[method.name] = base.input(schema)
|
|
5027
|
+
procedures[method.name] = base.input(schema)[procKind](({ input, ctx }) => {
|
|
5018
5028
|
if (nodeIdData) return requireLocal(capName, () => getLocal(ctx), services)[method.name]?.(input);
|
|
5019
5029
|
if (isCollection) {
|
|
5020
5030
|
const { rest, picked } = stripKeys(input, ["nodeId", "addonId"]);
|
|
@@ -5027,7 +5037,7 @@ function buildOneCapRouter(def, primitives, services) {
|
|
|
5027
5037
|
});
|
|
5028
5038
|
continue;
|
|
5029
5039
|
}
|
|
5030
|
-
procedures[method.name] = base.input(inputSchema)
|
|
5040
|
+
procedures[method.name] = base.input(inputSchema)[procKind](({ input, ctx }) => {
|
|
5031
5041
|
return requireLocal(capName, () => getLocal(ctx), services)[method.name]?.(input);
|
|
5032
5042
|
});
|
|
5033
5043
|
}
|
|
@@ -7598,7 +7608,7 @@ var ConfigManager = class ConfigManager {
|
|
|
7598
7608
|
constructor(configPath) {
|
|
7599
7609
|
this.configPath = configPath;
|
|
7600
7610
|
const rawYaml = this.loadYaml();
|
|
7601
|
-
const merged = this.applyEnvOverrides(asJsonObject
|
|
7611
|
+
const merged = this.applyEnvOverrides(asJsonObject(rawYaml) ?? {});
|
|
7602
7612
|
this.bootstrapConfig = bootstrapSchema.parse(merged);
|
|
7603
7613
|
this.warnDefaultCredentials();
|
|
7604
7614
|
const dataPath = this.bootstrapConfig.server.dataPath ?? "camstack-data";
|
|
@@ -7653,9 +7663,9 @@ var ConfigManager = class ConfigManager {
|
|
|
7653
7663
|
*/
|
|
7654
7664
|
getSection(section) {
|
|
7655
7665
|
const merged = {};
|
|
7656
|
-
const defaults = asJsonObject
|
|
7666
|
+
const defaults = asJsonObject(this.getFromRuntimeDefaults(section));
|
|
7657
7667
|
if (defaults) Object.assign(merged, defaults);
|
|
7658
|
-
const bootstrapSection = asJsonObject
|
|
7668
|
+
const bootstrapSection = asJsonObject({ ...this.bootstrapConfig }[section]);
|
|
7659
7669
|
if (bootstrapSection) Object.assign(merged, bootstrapSection);
|
|
7660
7670
|
if (this.settingsStore !== null) {
|
|
7661
7671
|
const nested = this.getNestedFromSystemSettings(section);
|
|
@@ -7674,7 +7684,7 @@ var ConfigManager = class ConfigManager {
|
|
|
7674
7684
|
/** Read all config for an addon from addon_settings. */
|
|
7675
7685
|
getAddonConfig(addonId) {
|
|
7676
7686
|
if (this.settingsStore !== null) return this.settingsStore.getAllAddon(addonId);
|
|
7677
|
-
return asJsonObject
|
|
7687
|
+
return asJsonObject(this.getFromBootstrap(`addons.${addonId}`)) ?? {};
|
|
7678
7688
|
}
|
|
7679
7689
|
/** Write (bulk-replace) config for an addon to addon_settings. */
|
|
7680
7690
|
setAddonConfig(addonId, config) {
|
|
@@ -7912,8 +7922,8 @@ var ConfigManager = class ConfigManager {
|
|
|
7912
7922
|
update(section, data) {
|
|
7913
7923
|
if (!ConfigManager.BOOTSTRAP_SECTIONS.has(section)) throw new Error(`[ConfigManager] Section "${section}" is a runtime setting — use setSection() to persist via the settings-store, not update() which writes to config.yaml`);
|
|
7914
7924
|
let raw = {};
|
|
7915
|
-
if (fs$17.existsSync(this.configPath)) raw = asJsonObject
|
|
7916
|
-
const existing = asJsonObject
|
|
7925
|
+
if (fs$17.existsSync(this.configPath)) raw = asJsonObject(load$1(fs$17.readFileSync(this.configPath, "utf-8"))) ?? {};
|
|
7926
|
+
const existing = asJsonObject(raw[section]) ?? {};
|
|
7917
7927
|
raw[section] = {
|
|
7918
7928
|
...existing,
|
|
7919
7929
|
...data
|
|
@@ -8014,13 +8024,13 @@ var ConfigManager = class ConfigManager {
|
|
|
8014
8024
|
loadRuntimeState() {
|
|
8015
8025
|
if (!fs$17.existsSync(this.runtimeStatePath)) return EMPTY_RUNTIME_STATE;
|
|
8016
8026
|
try {
|
|
8017
|
-
const parsed = asJsonObject
|
|
8027
|
+
const parsed = asJsonObject(parseJsonUnknown(fs$17.readFileSync(this.runtimeStatePath, "utf-8")));
|
|
8018
8028
|
if (parsed === null) return EMPTY_RUNTIME_STATE;
|
|
8019
|
-
const systemActivation = asJsonObject
|
|
8020
|
-
const deviceActivationRaw = asJsonObject
|
|
8029
|
+
const systemActivation = asJsonObject(parsed.systemActivation) ?? {};
|
|
8030
|
+
const deviceActivationRaw = asJsonObject(parsed.deviceActivation) ?? {};
|
|
8021
8031
|
const deviceActivation = {};
|
|
8022
8032
|
for (const [deviceId, entry] of Object.entries(deviceActivationRaw)) {
|
|
8023
|
-
const nested = asJsonObject
|
|
8033
|
+
const nested = asJsonObject(entry);
|
|
8024
8034
|
if (nested === null) continue;
|
|
8025
8035
|
const bools = {};
|
|
8026
8036
|
for (const [k, v] of Object.entries(nested)) if (typeof v === "boolean") bools[k] = v;
|
|
@@ -91652,7 +91662,7 @@ var HubLogForwarder = class {
|
|
|
91652
91662
|
tags: mergedTags,
|
|
91653
91663
|
...entry.meta !== void 0 ? { meta: entry.meta } : {}
|
|
91654
91664
|
}).catch((err) => {
|
|
91655
|
-
console.error(`[HubLogForwarder] $hub.log call failed: ${errMsg(err)}`);
|
|
91665
|
+
console.error(`[HubLogForwarder] $hub.log call failed: ${errMsg$1(err)}`);
|
|
91656
91666
|
});
|
|
91657
91667
|
}
|
|
91658
91668
|
async shutdown() {
|
|
@@ -92029,7 +92039,7 @@ var AddonHealthMonitor = class {
|
|
|
92029
92039
|
alertEmitted: false,
|
|
92030
92040
|
retrying: false
|
|
92031
92041
|
});
|
|
92032
|
-
if (wasAlerting) this.emit(EventCategory.AddonLoadRecovered, {
|
|
92042
|
+
if (wasAlerting) this.emit(EventCategory$1.AddonLoadRecovered, {
|
|
92033
92043
|
packageName,
|
|
92034
92044
|
addonId: addonId ?? existing?.addonId,
|
|
92035
92045
|
retryCount: existing.retryCount
|
|
@@ -92047,7 +92057,7 @@ var AddonHealthMonitor = class {
|
|
|
92047
92057
|
const intervalIdx = Math.min(retryCount - 1, this.retryIntervalsMs.length - 1);
|
|
92048
92058
|
const nextRetryAt = t + this.retryIntervalsMs[intervalIdx];
|
|
92049
92059
|
const errPayload = {
|
|
92050
|
-
message: errMsg(err),
|
|
92060
|
+
message: errMsg$1(err),
|
|
92051
92061
|
...err instanceof Error && err.stack ? { stack: err.stack } : {}
|
|
92052
92062
|
};
|
|
92053
92063
|
const next = {
|
|
@@ -92071,7 +92081,7 @@ var AddonHealthMonitor = class {
|
|
|
92071
92081
|
inGrace: this.inGracePeriod(),
|
|
92072
92082
|
error: errPayload.message
|
|
92073
92083
|
} });
|
|
92074
|
-
this.emit(EventCategory.AddonRetryScheduled, {
|
|
92084
|
+
this.emit(EventCategory$1.AddonRetryScheduled, {
|
|
92075
92085
|
packageName,
|
|
92076
92086
|
addonId: next.addonId,
|
|
92077
92087
|
retryCount,
|
|
@@ -92079,7 +92089,7 @@ var AddonHealthMonitor = class {
|
|
|
92079
92089
|
});
|
|
92080
92090
|
if (!this.inGracePeriod() && !next.alertEmitted) {
|
|
92081
92091
|
next.alertEmitted = true;
|
|
92082
|
-
this.emit(EventCategory.AddonLoadFailed, {
|
|
92092
|
+
this.emit(EventCategory$1.AddonLoadFailed, {
|
|
92083
92093
|
packageName,
|
|
92084
92094
|
addonId: next.addonId,
|
|
92085
92095
|
error: errPayload,
|
|
@@ -92167,7 +92177,7 @@ var AddonHealthMonitor = class {
|
|
|
92167
92177
|
this.graceEmittedFor = true;
|
|
92168
92178
|
for (const s of this.state.values()) if (s.phase === "failed" && !s.alertEmitted && s.lastError) {
|
|
92169
92179
|
s.alertEmitted = true;
|
|
92170
|
-
this.emit(EventCategory.AddonLoadFailed, {
|
|
92180
|
+
this.emit(EventCategory$1.AddonLoadFailed, {
|
|
92171
92181
|
packageName: s.packageName,
|
|
92172
92182
|
addonId: s.addonId,
|
|
92173
92183
|
error: s.lastError,
|
|
@@ -92184,7 +92194,7 @@ var AddonHealthMonitor = class {
|
|
|
92184
92194
|
const existing = this.state.get(packageName);
|
|
92185
92195
|
if (!existing) return;
|
|
92186
92196
|
existing.retrying = true;
|
|
92187
|
-
this.emit(EventCategory.AddonRetryAttempting, {
|
|
92197
|
+
this.emit(EventCategory$1.AddonRetryAttempting, {
|
|
92188
92198
|
packageName,
|
|
92189
92199
|
addonId: existing.addonId,
|
|
92190
92200
|
retryCount: existing.retryCount
|
|
@@ -92498,7 +92508,7 @@ function createProcessService(parentNodeId, dataDir, deps, parentTcpPort, parent
|
|
|
92498
92508
|
entry.state = "crashed";
|
|
92499
92509
|
capturedBroker?.logger.error(`[${runnerId}] Process exited (code=${code}, signal=${signal})`);
|
|
92500
92510
|
const decision = crashSupervisor.recordCrash(runnerId);
|
|
92501
|
-
emitRunnerEvent(EventCategory.ProcessCrashed, runnerId, {
|
|
92511
|
+
emitRunnerEvent(EventCategory$1.ProcessCrashed, runnerId, {
|
|
92502
92512
|
processId: runnerId,
|
|
92503
92513
|
exitCode: code ?? void 0,
|
|
92504
92514
|
signal: signal ?? void 0
|
|
@@ -92508,14 +92518,14 @@ function createProcessService(parentNodeId, dataDir, deps, parentTcpPort, parent
|
|
|
92508
92518
|
capturedBroker?.logger.error(`[${runnerId}] Crash circuit-breaker tripped — ${decision.crashesInWindow} crashes in ${CRASH_WINDOW_MS}ms. Not respawning.`);
|
|
92509
92519
|
processes.set(runnerId, entry);
|
|
92510
92520
|
if (capturedBroker) forceMoleculerDisconnect(capturedBroker, entry.nodeId);
|
|
92511
|
-
for (const addon of entry.runnerAddons) emitRunnerEvent(EventCategory.AddonCrashed, addon.addonId, {
|
|
92521
|
+
for (const addon of entry.runnerAddons) emitRunnerEvent(EventCategory$1.AddonCrashed, addon.addonId, {
|
|
92512
92522
|
addonId: addon.addonId,
|
|
92513
92523
|
error: `Crash circuit-breaker tripped after ${decision.crashesInWindow} crashes in ${CRASH_WINDOW_MS}ms`
|
|
92514
92524
|
});
|
|
92515
92525
|
return;
|
|
92516
92526
|
}
|
|
92517
92527
|
capturedBroker?.logger.warn(`[${runnerId}] Restart scheduled (attempt #${decision.crashesInWindow}, backoff ${decision.backoffMs}ms)...`);
|
|
92518
|
-
emitRunnerEvent(EventCategory.ProcessRestartScheduled, runnerId, {
|
|
92528
|
+
emitRunnerEvent(EventCategory$1.ProcessRestartScheduled, runnerId, {
|
|
92519
92529
|
processId: runnerId,
|
|
92520
92530
|
delayMs: decision.backoffMs
|
|
92521
92531
|
});
|
|
@@ -93231,4 +93241,4 @@ async function stageFrameworkLockstep(input) {
|
|
|
93231
93241
|
return results;
|
|
93232
93242
|
}
|
|
93233
93243
|
//#endregion
|
|
93234
|
-
export { AGENT_CAP_FWD_ACTION, AGENT_CAP_FWD_SERVICE, AddonApiFactory, AddonDepsManager, AddonEngineManager, AddonHealthMonitor, AddonInstaller, AddonLoader, AddonManifest, AddonRouteRegistry, AlertCenterAddon, ApiKeyManager, AuthManager, CLUSTER_SECRET_MISMATCH_TYPE, CLUSTER_SECRET_REJECTED_EXIT_CODE, CORE_CAP_SERVICE_NAME, CapRouteError, CapRouteResolver, CapUsageRegistry, CapabilityHandle, CapabilityRegistry, CapabilityUnavailableError, ConfigManager, ConfigStore, ConsoleDestination, ConsoleLoggingAddon, CustomActionRegistry, DEFAULT_DATA_PATH, DataPlaneRegistry, DeviceManagerAddon, DeviceRegistry, DeviceStore, EVENT_TOPIC_PREFIX, EngineManagerResolver, EventBus, FRAMEWORK_LOCKSTEP, FeatureManager, FilesystemStorageAddon, FilesystemStorageProvider, FrameDecoder, FsStorageBackend, HEALTH_MONITOR_GRACE_PERIOD_MS, HEALTH_MONITOR_RETRY_INTERVALS_MS, HEALTH_MONITOR_TICK_MS, HUB_CAP_FWD_ACTION, HUB_CAP_FWD_SERVICE, HubForwarderAddon, HubForwarderDestination, HubLogForwarder, HubNodeRegistry, INFRA_CAPABILITIES, IntegrationRegistry, JobJournal, LifecycleJobEngine, LifecycleStateMachine, LocalAuthAddon, LocalChildClient, LocalChildRegistry, LogManager, LogRingBuffer, ModelDownloadService, NATIVE_PROVIDER_SERVICE_INFIX, NativeMetricsAddon, NativeMetricsProvider, NetworkQualityTracker, NotificationService, PYTHON_VERSION, PipelineRunner, PipelineValidator, PythonEnvManager, RESTART_MARKER_FILE, RUNTIME_DEFAULTS, ReadinessRegistry, ReadinessTimeoutError, ReplEngine, RingBuffer, ScopedLogger, ScopedTokenManager, SocketChannel, SqliteSettingsAddon, SqliteSettingsBackend, StagingArea, StorageLocationManager, StorageManager, StorageOrchestratorAddon, StorageOrchestratorService, SystemConfigAddon, SystemEventBus, ToastService, UDS_NO_ROUTE_PREFIX, UdsLocalTransportClient, UdsLocalTransportServer, UserManager, WinstonDestination, WinstonLoggingAddon, __resetCapUsageRegistryForTests, adaptBrokerToCluster, bootstrapSchema, brokerCallForCap, brokerTransportLink, buildBinaryPath, buildCapRouters, buildLinkChain, buildNativeCapProxy, buildNodeManifest, buildStorageLocationRegistry, buildUdsNativeCapProxy, builderMountedCapNames, callRegisterNodeWithRetry, callWithServiceDiscovery, capActionName, capActionSuffix, capBareAction, capServiceName, classifyCapRoute, clearPendingRestart, clusterSecretMatches, collectModelFiles, contentTypeFor, copyDirRecursive, copyExtraFileDirs, createAddonContext, createAddonService, createAuthenticatedFileServer, createBroker, createBrokerDeviceManagerApi, createCoreCapService, createFileDataPlaneHandler, createHubCapForwardService, createHubService, createKernelHwAccel, createLocalTransport, createParentUnownedCallHandler, createProcessService, createReadinessService, createReadinessServiceForRegistry, createScopedProcessManager, createStreamProbeBrokerService, createUdsAddonContext, createUdsEventBridge, createUdsEventBus, createUdsLogger, createUdsLoggerWithControl, deleteModelFromDisk, deriveAgentListenPort, describeProviderKindDrift, detectWorkspacePackagesDir, downloadBinary, downloadFile, downloadModel, emitDownForOwnedCaps, encodeFrame, ensureBinary, ensureDir, ensureFfmpeg, ensureLibraryBuilt, ensureModel, ensurePython, ensureTlsCert, fetchJson, findInPath, formatLogLine, getBrokerEventBus, getCapUsageRegistry, getFfmpegDownloadUrl, getModelFilePath, getMoleculerEventStats, getOrInitReadinessRegistry, getOrInitReadinessRegistryForClient, getPidStats, getPlatformInfo, getPythonDownloadUrl, getRestartMarkerPath, getSinglePidStats, getWorkerDeviceRegistry, hashClusterSecret, installManifestNativeDeps, installManifestPythonDeps, installPackageFromNpm, installPythonPackages, installPythonRequirements, ipcChildLink, ipcParentLink, isAddonDeploySource, isClusterSecretMismatchError, isInfraCapability, isModelDownloaded, isSourceNewer, loadTlsCert, localEndpointPath, localProviderLink, mountNativeCapService, parseCapAction, parseRangeHeader, parseTokenizedUrl, proxyToUpstream, readPendingRestart, readinessKey, registerEventBusService, resolveFilePath, resolveHwAccel, scheduleSelfRestart, scopeKey, scopesAllowDeviceCap, serializeTypedArrays, setHubConnected, setNodeEventInterest, stageFrameworkLockstep, stripCamstackDeps, subscribePassthrough, udsChildLogToWorkerEntry, validateProviderRegistrations, writePendingRestart };
|
|
93244
|
+
export { AGENT_CAP_FWD_ACTION, AGENT_CAP_FWD_SERVICE, ALL_CAPABILITY_DEFINITIONS, AddonApiFactory, AddonDepsManager, AddonEngineManager, AddonHealthMonitor, AddonInstaller, AddonLoader, AddonManifest, AddonRouteRegistry, AlertCenterAddon, ApiKeyManager, AuthManager, CLUSTER_SECRET_MISMATCH_TYPE, CLUSTER_SECRET_REJECTED_EXIT_CODE, CORE_CAP_SERVICE_NAME, CapRouteError, CapRouteResolver, CapUsageRegistry, CapabilityHandle, CapabilityRegistry, CapabilityUnavailableError, ConfigManager, ConfigStore, ConsoleDestination, ConsoleLoggingAddon, CustomActionRegistry, DEFAULT_DATA_PATH, DEVICE_SETTINGS_CONTRIBUTION_METHODS, DEVICE_STATUS_METHOD, DataPlaneRegistry, DeviceManagerAddon, DeviceRegistry, DeviceStore, EVENT_TOPIC_PREFIX, EngineManagerResolver, EventBus, FRAMEWORK_LOCKSTEP, FeatureManager, FilesystemStorageAddon, FilesystemStorageProvider, FrameDecoder, FsStorageBackend, HEALTH_MONITOR_GRACE_PERIOD_MS, HEALTH_MONITOR_RETRY_INTERVALS_MS, HEALTH_MONITOR_TICK_MS, HUB_CAP_FWD_ACTION, HUB_CAP_FWD_SERVICE, HubForwarderAddon, HubForwarderDestination, HubLogForwarder, HubNodeRegistry, INFRA_CAPABILITIES, IntegrationRegistry, JobJournal, LifecycleJobEngine, LifecycleStateMachine, LocalAuthAddon, LocalChildClient, LocalChildRegistry, LogManager, LogRingBuffer, METHOD_ACCESS_MAP, ModelDownloadService, NATIVE_PROVIDER_SERVICE_INFIX, NativeMetricsAddon, NativeMetricsProvider, NetworkQualityTracker, NotificationService, PYTHON_VERSION, PipelineRunner, PipelineValidator, PythonEnvManager, RESTART_MARKER_FILE, RUNTIME_DEFAULTS, ReadinessRegistry, ReadinessTimeoutError, ReplEngine, RingBuffer, ScopedLogger, ScopedTokenManager, SocketChannel, SqliteSettingsAddon, SqliteSettingsBackend, StagingArea, StorageLocationManager, StorageManager, StorageOrchestratorAddon, StorageOrchestratorService, SystemConfigAddon, SystemEventBus, ToastService, UDS_NO_ROUTE_PREFIX, UdsLocalTransportClient, UdsLocalTransportServer, UserManager, WinstonDestination, WinstonLoggingAddon, __resetCapUsageRegistryForTests, adaptBrokerToCluster, addonSettingsCapability, bootstrapSchema, brokerCallForCap, brokerTransportLink, buildBinaryPath, buildCapRouters, buildLinkChain, buildNativeCapProxy, buildNodeManifest, buildStorageLocationRegistry, buildUdsNativeCapProxy, builderMountedCapNames, callRegisterNodeWithRetry, callWithServiceDiscovery, capActionName, capActionSuffix, capBareAction, capServiceName, classifyCapRoute, clearPendingRestart, clusterSecretMatches, collectModelFiles, contentTypeFor, copyDirRecursive, copyExtraFileDirs, createAddonContext, createAddonService, createAuthenticatedFileServer, createBroker, createBrokerDeviceManagerApi, createCoreCapService, createFileDataPlaneHandler, createHubCapForwardService, createHubService, createKernelHwAccel, createLocalTransport, createParentUnownedCallHandler, createProcessService, createReadinessService, createReadinessServiceForRegistry, createScopedProcessManager, createStreamProbeBrokerService, createUdsAddonContext, createUdsEventBridge, createUdsEventBus, createUdsLogger, createUdsLoggerWithControl, deleteModelFromDisk, deriveAgentListenPort, describeProviderKindDrift, detectWorkspacePackagesDir, downloadBinary, downloadFile, downloadModel, emitDownForOwnedCaps, encodeFrame, ensureBinary, ensureDir, ensureFfmpeg, ensureLibraryBuilt, ensureModel, ensurePython, ensureTlsCert, expandCapMethods, fetchJson, findInPath, formatLogLine, getBrokerEventBus, getCapUsageRegistry, getFfmpegDownloadUrl, getModelFilePath, getMoleculerEventStats, getOrInitReadinessRegistry, getOrInitReadinessRegistryForClient, getPidStats, getPlatformInfo, getPythonDownloadUrl, getRestartMarkerPath, getSinglePidStats, getWorkerDeviceRegistry, hashClusterSecret, installManifestNativeDeps, installManifestPythonDeps, installPackageFromNpm, installPythonPackages, installPythonRequirements, ipcChildLink, ipcParentLink, isAddonDeploySource, isArrayOutputSchema, isClusterSecretMismatchError, isInfraCapability, isModelDownloaded, isSourceNewer, loadTlsCert, localEndpointPath, localProviderLink, mountNativeCapService, parseCapAction, parseRangeHeader, parseTokenizedUrl, proxyToUpstream, readPendingRestart, readinessKey, registerEventBusService, resolveFilePath, resolveHwAccel, scheduleSelfRestart, scopeKey, scopesAllowDeviceCap, serializeTypedArrays, setHubConnected, setNodeEventInterest, stageFrameworkLockstep, stripCamstackDeps, subscribePassthrough, udsChildLogToWorkerEntry, validateProviderRegistrations, writePendingRestart };
|