@camstack/system 1.1.63 → 1.1.64
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 +2 -2
- package/dist/addon-runner.mjs +2 -2
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- package/dist/builtins/alerts/alerts.addon.js +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
- package/dist/builtins/console-logging/index.js +1 -1
- package/dist/builtins/console-logging/index.mjs +1 -1
- package/dist/builtins/device-manager/device-manager.addon.js +1 -1
- package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
- package/dist/builtins/doorbell/virtual-doorbell.addon.js +1 -1
- package/dist/builtins/doorbell/virtual-doorbell.addon.mjs +1 -1
- package/dist/builtins/hub-forwarder/index.js +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/local-auth/local-auth.addon.js +1 -1
- package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
- package/dist/builtins/local-network/local-network.addon.js +1 -1
- package/dist/builtins/local-network/local-network.addon.mjs +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +1 -1
- package/dist/builtins/platform-probe/index.js +1 -1
- package/dist/builtins/platform-probe/index.mjs +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/snapshot/index.js +1 -1
- package/dist/builtins/snapshot/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- package/dist/builtins/system-config/system-config.addon.js +1 -1
- package/dist/builtins/system-config/system-config.addon.mjs +1 -1
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/{dist-lZmvymPa.js → dist-C0Pf5ShP.js} +139 -51
- package/dist/{dist-BilBS8T_.mjs → dist-Dycu89sF.mjs} +139 -51
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/dist/{manifest-python-deps-0seVlhMM.js → manifest-python-deps-BRFns0U-.js} +1 -1
- package/dist/{manifest-python-deps-Dydd-bKS.mjs → manifest-python-deps-BiM1uDhe.mjs} +1 -1
- package/package.json +1 -1
package/dist/addon-runner.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
const require_chunk = require("./chunk-Cek0wNdY.js");
|
|
2
|
-
const require_dist = require("./dist-
|
|
3
|
-
const require_manifest_python_deps = require("./manifest-python-deps-
|
|
2
|
+
const require_dist = require("./dist-C0Pf5ShP.js");
|
|
3
|
+
const require_manifest_python_deps = require("./manifest-python-deps-BRFns0U-.js");
|
|
4
4
|
const require_custom_action_registry = require("./custom-action-registry-vLYEFTtv.js");
|
|
5
5
|
let node_fs = require("node:fs");
|
|
6
6
|
node_fs = require_chunk.__toESM(node_fs);
|
package/dist/addon-runner.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { M as isCollectionArrayMethod, t as ALL_CAPABILITY_DEFINITIONS } from "./dist-
|
|
2
|
-
import { F as createUdsLoggerWithControl, I as LocalChildClient, bt as resolveAddonClass, i as createUdsAddonContext, it as setWorkerNativeCapsChangeListener, nt as getWorkerNativeCapSnapshot, ot as validateProviderRegistrations, t as installManifestPythonDeps, tt as getWorkerNativeCapProvider, vt as installManifestNativeDeps } from "./manifest-python-deps-
|
|
1
|
+
import { M as isCollectionArrayMethod, t as ALL_CAPABILITY_DEFINITIONS } from "./dist-Dycu89sF.mjs";
|
|
2
|
+
import { F as createUdsLoggerWithControl, I as LocalChildClient, bt as resolveAddonClass, i as createUdsAddonContext, it as setWorkerNativeCapsChangeListener, nt as getWorkerNativeCapSnapshot, ot as validateProviderRegistrations, t as installManifestPythonDeps, tt as getWorkerNativeCapProvider, vt as installManifestNativeDeps } from "./manifest-python-deps-BiM1uDhe.mjs";
|
|
3
3
|
import { t as CustomActionRegistry } from "./custom-action-registry-BEXwC-oo.mjs";
|
|
4
4
|
import { register } from "node:module";
|
|
5
5
|
import * as fs from "node:fs";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
|
|
8
8
|
let node_fs = require("node:fs");
|
|
9
9
|
node_fs = require_chunk.__toESM(node_fs);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, at as BaseAddon, f as addonPagesCapability, it as errMsg } from "../../dist-
|
|
1
|
+
import { At as EventCategory, at as BaseAddon, f as addonPagesCapability, it as errMsg } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
|
|
3
3
|
import * as fs from "node:fs";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
|
|
8
8
|
let node_fs = require("node:fs");
|
|
9
9
|
node_fs = require_chunk.__toESM(node_fs);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, at as BaseAddon, it as errMsg, m as addonWidgetsCapability } from "../../dist-
|
|
1
|
+
import { At as EventCategory, at as BaseAddon, it as errMsg, m as addonWidgetsCapability } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
|
|
3
3
|
import * as fs from "node:fs";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
//#region src/builtins/alerts/alerts.addon.ts
|
|
8
8
|
var CATEGORY_MAPPINGS = {
|
|
9
9
|
"addon.crashed": {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, at as BaseAddon, h as alertsCapability, it as errMsg, n as AlertSchema, vt as createEvent } from "../../dist-
|
|
1
|
+
import { At as EventCategory, at as BaseAddon, h as alertsCapability, it as errMsg, n as AlertSchema, vt as createEvent } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
//#region src/builtins/alerts/alerts.addon.ts
|
|
3
3
|
var CATEGORY_MAPPINGS = {
|
|
4
4
|
"addon.crashed": {
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_fs = require("node:fs");
|
|
8
8
|
let node_fs$1 = require_chunk.__toESM(node_fs, 1);
|
|
9
9
|
node_fs = require_chunk.__toESM(node_fs);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, at as BaseAddon, v as backupCapability } from "../../dist-
|
|
1
|
+
import { At as EventCategory, at as BaseAddon, v as backupCapability } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as fs from "node:fs";
|
|
3
3
|
import Kt from "node:fs";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
//#region src/builtins/console-logging/console-destination.ts
|
|
9
9
|
var LEVEL_RANK = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-
|
|
1
|
+
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
//#region src/builtins/console-logging/console-destination.ts
|
|
4
4
|
var LEVEL_RANK = {
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let _camstack_types_node = require("@camstack/types/node");
|
|
8
8
|
let zod = require("zod");
|
|
9
9
|
let node_crypto = require("node:crypto");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as getByPath, At as EventCategory, Ct as isDeviceConfigCap, D as evaluateLinkExpression, E as enumerateSchemaFields, H as normalizeUnit, S as deviceStatusCapability, T as enumerateItemArrayFields, W as parseStreamParamsFormPatch, Y as setByPath, a as DeviceStatusSchema, at as BaseAddon, b as deviceManagerCapability, c as STREAM_PROFILE_META, dt as DeviceType, g as applyTransform, i as CAP_NAMES_WITH_STATUS, it as errMsg, kt as sleep, lt as DeviceFeature, mt as WELL_KNOWN_TAB_MAP, rt as validateExpressionSource, t as ALL_CAPABILITY_DEFINITIONS, tt as toExpressionValue, ut as DeviceRole, x as deviceStateCapability, y as buildStreamParamsConfigSchema } from "../../dist-
|
|
1
|
+
import { A as getByPath, At as EventCategory, Ct as isDeviceConfigCap, D as evaluateLinkExpression, E as enumerateSchemaFields, H as normalizeUnit, S as deviceStatusCapability, T as enumerateItemArrayFields, W as parseStreamParamsFormPatch, Y as setByPath, a as DeviceStatusSchema, at as BaseAddon, b as deviceManagerCapability, c as STREAM_PROFILE_META, dt as DeviceType, g as applyTransform, i as CAP_NAMES_WITH_STATUS, it as errMsg, kt as sleep, lt as DeviceFeature, mt as WELL_KNOWN_TAB_MAP, rt as validateExpressionSource, t as ALL_CAPABILITY_DEFINITIONS, tt as toExpressionValue, ut as DeviceRole, x as deviceStateCapability, y as buildStreamParamsConfigSchema } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { canonicalDeviceFingerprint } from "@camstack/types/node";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
//#region src/builtins/doorbell/trigger-engine.ts
|
|
8
8
|
/**
|
|
9
9
|
* Pure trigger logic for the virtual-doorbell builtin — edge detection over
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, C as doorbellCapability, at as BaseAddon, dt as DeviceType, it as errMsg, vt as createEvent } from "../../dist-
|
|
1
|
+
import { At as EventCategory, C as doorbellCapability, at as BaseAddon, dt as DeviceType, it as errMsg, vt as createEvent } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
//#region src/builtins/doorbell/trigger-engine.ts
|
|
3
3
|
/**
|
|
4
4
|
* Pure trigger logic for the virtual-doorbell builtin — edge detection over
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
//#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
|
|
9
9
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-
|
|
1
|
+
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
//#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
|
|
4
4
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
node_crypto = require_chunk.__toESM(node_crypto);
|
|
9
9
|
let crypto$1 = require("crypto");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as authProviderCapability, at as BaseAddon, d as UserRecordSchema, l as ScopedTokenSchema, nt as userManagementCapability, r as ApiKeyRecordSchema } from "../../dist-
|
|
1
|
+
import { _ as authProviderCapability, at as BaseAddon, d as UserRecordSchema, l as ScopedTokenSchema, nt as userManagementCapability, r as ApiKeyRecordSchema } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import * as crypto$1 from "node:crypto";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
3
|
-
const require_dist = require("../../dist-
|
|
3
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
4
4
|
let node_os = require("node:os");
|
|
5
5
|
node_os = require_chunk.__toESM(node_os);
|
|
6
6
|
//#region src/builtins/local-network/local-network.addon.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, L as localNetworkCapability, at as BaseAddon } from "../../dist-
|
|
1
|
+
import { At as EventCategory, L as localNetworkCapability, at as BaseAddon } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as os from "node:os";
|
|
3
3
|
//#region src/builtins/local-network/local-network.addon.ts
|
|
4
4
|
/**
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_fs = require("node:fs");
|
|
8
8
|
node_fs = require_chunk.__toESM(node_fs);
|
|
9
9
|
let node_child_process = require("node:child_process");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, B as metricsProviderCapability, at as BaseAddon, vt as createEvent } from "../../dist-
|
|
1
|
+
import { At as EventCategory, B as metricsProviderCapability, at as BaseAddon, vt as createEvent } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as fs from "node:fs";
|
|
3
3
|
import { execFile, execFileSync } from "node:child_process";
|
|
4
4
|
import { promisify } from "node:util";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_fs = require("node:fs");
|
|
8
8
|
node_fs = require_chunk.__toESM(node_fs);
|
|
9
9
|
let node_child_process = require("node:child_process");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, G as platformProbeCapability, J as scoreRuntimes, at as BaseAddon, bt as emitReadiness, it as errMsg, w as enumerateInferenceDevices } from "../../dist-
|
|
1
|
+
import { At as EventCategory, G as platformProbeCapability, J as scoreRuntimes, at as BaseAddon, bt as emitReadiness, it as errMsg, w as enumerateInferenceDevices } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as fs from "node:fs";
|
|
3
3
|
import { execFile } from "node:child_process";
|
|
4
4
|
import { promisify } from "node:util";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
//#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
|
|
8
8
|
/**
|
|
9
9
|
* Reconcile the durable `enabledProviders` set against authoritative
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as EventCategory, at as BaseAddon } from "../../dist-
|
|
1
|
+
import { At as EventCategory, at as BaseAddon } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
//#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
|
|
3
3
|
/**
|
|
4
4
|
* Reconcile the durable `enabledProviders` set against authoritative
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_child_process = require("node:child_process");
|
|
8
8
|
//#region src/builtins/snapshot/snapshot-coalescing.ts
|
|
9
9
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { V as nodePin, Z as snapshotCapability, at as BaseAddon, dt as DeviceType, et as streamQualityLabel, it as errMsg, lt as DeviceFeature } from "../../dist-
|
|
1
|
+
import { V as nodePin, Z as snapshotCapability, at as BaseAddon, dt as DeviceType, et as streamQualityLabel, it as errMsg, lt as DeviceFeature } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { execFile } from "node:child_process";
|
|
3
3
|
//#region src/builtins/snapshot/snapshot-coalescing.ts
|
|
4
4
|
/**
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_fs = require("node:fs");
|
|
8
8
|
node_fs = require_chunk.__toESM(node_fs);
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as storageProviderCapability, at as BaseAddon, k as filesystemBrowseCapability } from "../../dist-
|
|
1
|
+
import { $ as storageProviderCapability, at as BaseAddon, k as filesystemBrowseCapability } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as fs from "node:fs";
|
|
3
3
|
import * as path$1 from "node:path";
|
|
4
4
|
import { basename, dirname, join, resolve, sep } from "node:path";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
let better_sqlite3 = require("better-sqlite3");
|
|
9
9
|
better_sqlite3 = require_chunk.__toESM(better_sqlite3);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Tt as parseJsonUnknown, X as settingsStoreCapability, at as BaseAddon, ht as asJsonObject, it as errMsg, s as RUNTIME_DEFAULTS } from "../../dist-
|
|
1
|
+
import { Tt as parseJsonUnknown, X as settingsStoreCapability, at as BaseAddon, ht as asJsonObject, it as errMsg, s as RUNTIME_DEFAULTS } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import Database from "better-sqlite3";
|
|
4
4
|
//#region src/builtins/sqlite-storage/sqlite-settings-backend.ts
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
let node_path = require("node:path");
|
|
8
8
|
node_path = require_chunk.__toESM(node_path);
|
|
9
9
|
let node_fs_promises = require("node:fs/promises");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Q as storageCapability, at as BaseAddon, u as StorageLocationTypeSchema, wt as parseJsonObject } from "../../dist-
|
|
1
|
+
import { Q as storageCapability, at as BaseAddon, u as StorageLocationTypeSchema, wt as parseJsonObject } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import * as path$1 from "node:path";
|
|
3
3
|
import * as fs from "node:fs/promises";
|
|
4
4
|
import { buildStorageLocationRegistry } from "@camstack/system";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
//#region src/builtins/system-config/system-config.addon.ts
|
|
8
8
|
/**
|
|
9
9
|
* Built-in `system-config` addon — Phase 4 of the settings redesign.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { St as hydrateSchema, at as BaseAddon, it as errMsg } from "../../dist-
|
|
1
|
+
import { St as hydrateSchema, at as BaseAddon, it as errMsg } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
//#region src/builtins/system-config/system-config.addon.ts
|
|
3
3
|
/**
|
|
4
4
|
* Built-in `system-config` addon — Phase 4 of the settings redesign.
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-C0Pf5ShP.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
let node_path = require("node:path");
|
|
9
9
|
node_path = require_chunk.__toESM(node_path);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-
|
|
1
|
+
import { R as logDestinationCapability, at as BaseAddon } from "../../dist-Dycu89sF.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
import * as path$1 from "node:path";
|
|
4
4
|
import path from "node:path";
|
|
@@ -8594,20 +8594,6 @@ var pipelineExecutorCapability = {
|
|
|
8594
8594
|
getSelectedEngine: method(zod.z.void(), PipelineEngineChoiceSchema),
|
|
8595
8595
|
getDefaultSteps: method(PipelineEngineChoiceSchema, zod.z.array(PipelineDefaultStepSchema)),
|
|
8596
8596
|
/**
|
|
8597
|
-
* Re-run the platform probe for the inference engine and write the
|
|
8598
|
-
* detected runtime / backend / device back into the addon's own
|
|
8599
|
-
* global settings store. Returns the engine that was picked so the
|
|
8600
|
-
* UI can confirm without a second round-trip. Triggers the standard
|
|
8601
|
-
* `requiresRestart` auto-restart flow because all three fields are
|
|
8602
|
-
* marked restart-required. Replaces the legacy per-agent
|
|
8603
|
-
* `pipeline-orchestrator.reprobeAgentHwAccel` surface for the
|
|
8604
|
-
* engine dimension — each addon now owns its own probe.
|
|
8605
|
-
*/
|
|
8606
|
-
reprobeEngine: method(zod.z.void(), PipelineEngineChoiceSchema, {
|
|
8607
|
-
kind: "mutation",
|
|
8608
|
-
auth: "admin"
|
|
8609
|
-
}),
|
|
8610
|
-
/**
|
|
8611
8597
|
* Per-node detection-engine provisioning snapshot. Returns the live
|
|
8612
8598
|
* state of the lazy runtime-provisioning machine on `nodeId`
|
|
8613
8599
|
* (idle / installing / verifying / ready / failed). The UI pairs this
|
|
@@ -9271,6 +9257,19 @@ var RunnerLocalLoadSchema = zod.z.object({
|
|
|
9271
9257
|
avgInferenceTimeMs: zod.z.number(),
|
|
9272
9258
|
/** Total queue depth across motion + detection queues. */
|
|
9273
9259
|
queueDepthTotal: zod.z.number(),
|
|
9260
|
+
/**
|
|
9261
|
+
* Per-inference-device live load (multi-device C4). One entry per deviceKey
|
|
9262
|
+
* this runner currently has attached cameras on, so the orchestrator's second
|
|
9263
|
+
* `balance()` pass (over a node's devices) weights on real per-pool session
|
|
9264
|
+
* counts. Empty on single-device / pre-multi-device runners. `queueDepthTotal`
|
|
9265
|
+
* per device is 0 until the pool backlog gets a public accessor (follow-up).
|
|
9266
|
+
*/
|
|
9267
|
+
devices: zod.z.array(zod.z.object({
|
|
9268
|
+
deviceKey: zod.z.string(),
|
|
9269
|
+
backend: zod.z.string(),
|
|
9270
|
+
attachedCameras: zod.z.number(),
|
|
9271
|
+
queueDepthTotal: zod.z.number()
|
|
9272
|
+
})).default([]),
|
|
9274
9273
|
/** Hardware capability flags reported by this node. */
|
|
9275
9274
|
hardware: zod.z.object({
|
|
9276
9275
|
hasGpu: zod.z.boolean(),
|
|
@@ -16925,13 +16924,11 @@ var PipelineTemplateSchema = zod.z.object({
|
|
|
16925
16924
|
createdAt: zod.z.string(),
|
|
16926
16925
|
updatedAt: zod.z.string()
|
|
16927
16926
|
});
|
|
16928
|
-
var
|
|
16929
|
-
enabled: zod.z.boolean(),
|
|
16927
|
+
var DeviceStepConfigSchema = zod.z.object({
|
|
16930
16928
|
modelId: zod.z.string().optional(),
|
|
16931
|
-
settings: zod.z.record(zod.z.string(), zod.z.unknown()).
|
|
16929
|
+
settings: zod.z.record(zod.z.string(), zod.z.unknown()).optional()
|
|
16932
16930
|
});
|
|
16933
16931
|
var AgentPipelineSettingsSchema = zod.z.object({
|
|
16934
|
-
addonDefaults: zod.z.record(zod.z.string(), AgentAddonConfigSchema).readonly(),
|
|
16935
16932
|
maxCameras: zod.z.number().int().nonnegative().nullable().default(null),
|
|
16936
16933
|
/** Per-node detection weight (relative share for the quota balancer). */
|
|
16937
16934
|
detectWeight: zod.z.number().positive().optional(),
|
|
@@ -16958,13 +16955,18 @@ var AgentPipelineSettingsSchema = zod.z.object({
|
|
|
16958
16955
|
reachableHost: zod.z.string().optional(),
|
|
16959
16956
|
/**
|
|
16960
16957
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
16961
|
-
* weight}. Absent / all-disabled ⇒ the node's single default
|
|
16962
|
-
* (safe default); two+ enabled ⇒ the dispatcher balances
|
|
16963
|
-
* across them so they run CONCURRENTLY.
|
|
16958
|
+
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
16959
|
+
* accelerator (safe default); two+ enabled ⇒ the dispatcher balances
|
|
16960
|
+
* detection sessions across them so they run CONCURRENTLY. `steps` is the
|
|
16961
|
+
* per-(node,device) BASE provisioning (`stepId → {modelId?, settings?}`) —
|
|
16962
|
+
* the default model/settings for every camera landing on that accelerator;
|
|
16963
|
+
* a stepId absent ⇒ the step uses that device's format default.
|
|
16964
16964
|
*/
|
|
16965
16965
|
inferenceDevices: zod.z.record(zod.z.string(), zod.z.object({
|
|
16966
16966
|
enabled: zod.z.boolean(),
|
|
16967
|
-
weight: zod.z.number().positive().optional()
|
|
16967
|
+
weight: zod.z.number().positive().optional(),
|
|
16968
|
+
maxSessions: zod.z.number().int().positive().optional(),
|
|
16969
|
+
steps: zod.z.record(zod.z.string(), DeviceStepConfigSchema).optional()
|
|
16968
16970
|
})).optional()
|
|
16969
16971
|
});
|
|
16970
16972
|
var CameraPipelineForAgentSchema = zod.z.object({
|
|
@@ -16975,14 +16977,13 @@ var CameraPipelineForAgentSchema = zod.z.object({
|
|
|
16975
16977
|
}).nullable()
|
|
16976
16978
|
});
|
|
16977
16979
|
var CameraStepOverridePatchSchema = zod.z.object({
|
|
16978
|
-
enabled: zod.z.boolean().optional(),
|
|
16979
16980
|
modelId: zod.z.string().optional(),
|
|
16980
16981
|
settings: zod.z.record(zod.z.string(), zod.z.unknown()).readonly().optional()
|
|
16981
16982
|
});
|
|
16982
16983
|
var CameraPipelineSettingsSchema = zod.z.object({
|
|
16983
16984
|
pinnedAgentNodeId: zod.z.string().optional(),
|
|
16984
16985
|
stepToggles: zod.z.record(zod.z.string(), zod.z.boolean()).optional(),
|
|
16985
|
-
|
|
16986
|
+
stepOverridesByDevice: zod.z.record(zod.z.string(), zod.z.record(zod.z.string(), zod.z.record(zod.z.string(), CameraStepOverridePatchSchema))).optional(),
|
|
16986
16987
|
pipelineByAgent: zod.z.record(zod.z.string(), CameraPipelineForAgentSchema).optional()
|
|
16987
16988
|
});
|
|
16988
16989
|
/**
|
|
@@ -17204,6 +17205,44 @@ var CameraStatusSchema = zod.z.object({
|
|
|
17204
17205
|
/** Unix timestamp (ms) when this snapshot was composed server-side. */
|
|
17205
17206
|
fetchedAt: zod.z.number()
|
|
17206
17207
|
});
|
|
17208
|
+
var NodeInferenceDeviceSchema = zod.z.object({
|
|
17209
|
+
/** Stable per-node device key, e.g. `openvino:npu`, `edgetpu:usb`, `cpu`. */
|
|
17210
|
+
key: zod.z.string(),
|
|
17211
|
+
backend: zod.z.string(),
|
|
17212
|
+
device: zod.z.string(),
|
|
17213
|
+
format: zod.z.enum(MODEL_FORMATS),
|
|
17214
|
+
/** Whether the node's live probe reports the device as usable right now. */
|
|
17215
|
+
available: zod.z.boolean(),
|
|
17216
|
+
/**
|
|
17217
|
+
* Whether this device participates in dispatch. AUTO default (spec C2):
|
|
17218
|
+
* accelerators are opt-OUT (a discovered NPU/iGPU/Coral/ANE with no stored
|
|
17219
|
+
* entry is `true`); CPU is opt-IN (`false` by default — the fallback pool,
|
|
17220
|
+
* not a balanced target). An explicit stored value always wins; a stored-only
|
|
17221
|
+
* (unavailable) key keeps its stored value.
|
|
17222
|
+
*/
|
|
17223
|
+
enabled: zod.z.boolean(),
|
|
17224
|
+
/** Relative balancer weight for the enabled device (default 1). */
|
|
17225
|
+
weight: zod.z.number(),
|
|
17226
|
+
/** Per-device concurrent-session cap; null = unlimited (multi-device C4). */
|
|
17227
|
+
maxSessions: zod.z.number().nullable(),
|
|
17228
|
+
/** Object-detection model the executor defaults to for this deviceKey. */
|
|
17229
|
+
defaultModelId: zod.z.string(),
|
|
17230
|
+
/**
|
|
17231
|
+
* Per-(node,device) BASE provisioning (C7.2/C7.4) — the RAW stored
|
|
17232
|
+
* `stepId → {modelId?, settings?}` map from `inferenceDevices[key].steps`.
|
|
17233
|
+
* Absent/empty ⇒ no base (every step uses its device format default). The
|
|
17234
|
+
* UI cross-references `pipelineExecutor.getSchema` for the models actually
|
|
17235
|
+
* available per format; this is the stored selection that becomes the
|
|
17236
|
+
* default for EVERY camera landing on this accelerator.
|
|
17237
|
+
*/
|
|
17238
|
+
steps: zod.z.record(zod.z.string(), DeviceStepConfigSchema).optional()
|
|
17239
|
+
});
|
|
17240
|
+
var NodeInferenceDevicesSchema = zod.z.object({
|
|
17241
|
+
nodeId: zod.z.string(),
|
|
17242
|
+
/** False when the node's platform-probe was unreachable (no live device set). */
|
|
17243
|
+
reachable: zod.z.boolean(),
|
|
17244
|
+
devices: zod.z.array(NodeInferenceDeviceSchema).readonly()
|
|
17245
|
+
});
|
|
17207
17246
|
/**
|
|
17208
17247
|
* Pipeline Orchestrator capability — global load balancer + camera dispatcher.
|
|
17209
17248
|
*
|
|
@@ -17253,6 +17292,34 @@ var pipelineOrchestratorCapability = {
|
|
|
17253
17292
|
auth: "admin"
|
|
17254
17293
|
}),
|
|
17255
17294
|
/**
|
|
17295
|
+
* Pin a camera's detection to a specific INFERENCE DEVICE (accelerator)
|
|
17296
|
+
* within its node — a SOFT L1 device affinity honoured by the per-session
|
|
17297
|
+
* device `balance()` pass (sibling of the node-level `pipelineNodeId` pin;
|
|
17298
|
+
* persisted as `pipelineDeviceKey` in the device store, read by
|
|
17299
|
+
* `readPipelineDevicePin`). `deviceKey` is a concrete key
|
|
17300
|
+
* (`openvino:npu` / `edgetpu:usb` / `cpu`), or the `'auto'` sentinel /
|
|
17301
|
+
* empty string to CLEAR the pin and let the balancer pick the device.
|
|
17302
|
+
*
|
|
17303
|
+
* Applies promptly: the device is chosen per-session at dispatch, so any
|
|
17304
|
+
* running detection session is closed and re-dispatched onto the new pin
|
|
17305
|
+
* (the camera stays on the SAME node — a device pin never moves the camera).
|
|
17306
|
+
* Cameras with no active session pick it up on their next dispatch.
|
|
17307
|
+
*/
|
|
17308
|
+
setPipelineDevicePin: method(zod.z.object({
|
|
17309
|
+
deviceId: zod.z.number(),
|
|
17310
|
+
deviceKey: zod.z.string()
|
|
17311
|
+
}), zod.z.object({ success: zod.z.literal(true) }), {
|
|
17312
|
+
kind: "mutation",
|
|
17313
|
+
auth: "admin"
|
|
17314
|
+
}),
|
|
17315
|
+
/**
|
|
17316
|
+
* Read a camera's persisted inference-device pin (`pipelineDeviceKey`).
|
|
17317
|
+
* Returns the concrete device key, or `null` when unpinned (auto). Lets the
|
|
17318
|
+
* UI show the current pin alongside the node pin (parity with the node-pin
|
|
17319
|
+
* value carried on the assignment record).
|
|
17320
|
+
*/
|
|
17321
|
+
getPipelineDevicePin: method(zod.z.object({ deviceId: zod.z.number() }), zod.z.object({ deviceKey: zod.z.string().nullable() })),
|
|
17322
|
+
/**
|
|
17256
17323
|
* Trigger a full rebalance pass. Iterates over all assigned cameras,
|
|
17257
17324
|
* recomputes the optimal agent for each one based on current load +
|
|
17258
17325
|
* hardware affinity, and migrates cameras whose current agent is no
|
|
@@ -17337,14 +17404,6 @@ var pipelineOrchestratorCapability = {
|
|
|
17337
17404
|
nodeId: zod.z.string(),
|
|
17338
17405
|
settings: AgentPipelineSettingsSchema
|
|
17339
17406
|
})).readonly()),
|
|
17340
|
-
/** Bulk-replace ALL addon configs on one agent. Used by the agent-level PipelineEditor which emits the full map per edit. Merges on top of existing entries — omitted addonIds are left alone. */
|
|
17341
|
-
setAgentAddonDefaults: method(zod.z.object({
|
|
17342
|
-
agentNodeId: zod.z.string(),
|
|
17343
|
-
defaults: zod.z.record(zod.z.string(), AgentAddonConfigSchema)
|
|
17344
|
-
}), zod.z.object({ success: zod.z.literal(true) }), {
|
|
17345
|
-
kind: "mutation",
|
|
17346
|
-
auth: "admin"
|
|
17347
|
-
}),
|
|
17348
17407
|
/**
|
|
17349
17408
|
* Drop a single agent's persisted settings. Used by the cluster
|
|
17350
17409
|
* "Offline agents" panel to evict stale entries left behind when an
|
|
@@ -17437,21 +17496,40 @@ var pipelineOrchestratorCapability = {
|
|
|
17437
17496
|
* The map REPLACES the node's stored `inferenceDevices` wholesale (pass the
|
|
17438
17497
|
* complete desired set; an empty map clears the opt-in → the node reverts to
|
|
17439
17498
|
* its single DEFAULT accelerator). `weight` is optional and defaults to 1.
|
|
17499
|
+
* `models` is the optional per-device model override (`stepId → modelId`,
|
|
17500
|
+
* C7.2/C7.4) — a stepId absent ⇒ the step uses that device's default model.
|
|
17440
17501
|
* Creates the node's settings entry if absent. Changes take effect on the
|
|
17441
17502
|
* next dispatch/rebalance cycle — the dispatcher reads the enabled set via
|
|
17442
|
-
* `PipelineSettingsStore.buildNodeInferenceDevices` when placing sessions
|
|
17503
|
+
* `PipelineSettingsStore.buildNodeInferenceDevices` when placing sessions
|
|
17504
|
+
* and the per-(node,device) base provisioning via
|
|
17505
|
+
* `buildNodeInferenceDeviceSteps`.
|
|
17443
17506
|
*/
|
|
17444
17507
|
setAgentInferenceDevices: method(zod.z.object({
|
|
17445
17508
|
agentNodeId: zod.z.string(),
|
|
17446
17509
|
inferenceDevices: zod.z.record(zod.z.string(), zod.z.object({
|
|
17447
17510
|
enabled: zod.z.boolean(),
|
|
17448
|
-
weight: zod.z.number().positive().optional()
|
|
17511
|
+
weight: zod.z.number().positive().optional(),
|
|
17512
|
+
maxSessions: zod.z.number().int().positive().optional(),
|
|
17513
|
+
steps: zod.z.record(zod.z.string(), DeviceStepConfigSchema).optional()
|
|
17449
17514
|
}))
|
|
17450
17515
|
}), zod.z.object({ success: zod.z.literal(true) }), {
|
|
17451
17516
|
kind: "mutation",
|
|
17452
17517
|
auth: "admin"
|
|
17453
17518
|
}),
|
|
17454
17519
|
/**
|
|
17520
|
+
* DEVICE-AWARE merged view of ONE node's inference accelerators. Joins each
|
|
17521
|
+
* physical device the node HAS — probed live via a node-pinned
|
|
17522
|
+
* `platformProbe.getCapabilities` (the platform-probe singleton is targeted
|
|
17523
|
+
* by the `nodeId` cap INPUT, since a `nodePin` context is ignored by a
|
|
17524
|
+
* singleton mount) — with its stored opt-in (`enabled`/`weight`) and the
|
|
17525
|
+
* object-detection `defaultModelId` the executor would run for that
|
|
17526
|
+
* deviceKey. Disabled-but-configured keys still appear. An unreachable node
|
|
17527
|
+
* returns `reachable:false` + best-effort stored-only devices (never
|
|
17528
|
+
* throws). Read surface for the cluster/agent multi-device UI — hence a
|
|
17529
|
+
* default (read-level) auth, matching the other `getAgent*` reads.
|
|
17530
|
+
*/
|
|
17531
|
+
getNodeInferenceDevices: method(zod.z.object({ nodeId: zod.z.string() }), NodeInferenceDevicesSchema),
|
|
17532
|
+
/**
|
|
17455
17533
|
* Reset one node's pipeline to its hardware-aware defaults — the HONEST
|
|
17456
17534
|
* reset (replaces the executor's legacy `resetToDefault`, which cleared a
|
|
17457
17535
|
* dead persisted step-tree seed nothing in the live path read):
|
|
@@ -17490,15 +17568,18 @@ var pipelineOrchestratorCapability = {
|
|
|
17490
17568
|
kind: "mutation",
|
|
17491
17569
|
auth: "admin"
|
|
17492
17570
|
}),
|
|
17493
|
-
/** Read every
|
|
17494
|
-
getCameraStepOverrides: method(zod.z.object({ deviceId: zod.z.number() }), zod.z.record(zod.z.string(), zod.z.record(zod.z.string(), CameraStepOverridePatchSchema)).nullable()),
|
|
17571
|
+
/** Read every per-(node,device) override map for a device. Null when device has no overrides. */
|
|
17572
|
+
getCameraStepOverrides: method(zod.z.object({ deviceId: zod.z.number() }), zod.z.record(zod.z.string(), zod.z.record(zod.z.string(), zod.z.record(zod.z.string(), CameraStepOverridePatchSchema))).nullable()),
|
|
17495
17573
|
/**
|
|
17496
|
-
* Write or clear the
|
|
17497
|
-
* `patch: null` clears the entry entirely for that (
|
|
17574
|
+
* Write or clear the per-(camera,node,device) override for one addonId.
|
|
17575
|
+
* `patch: null` clears the entry entirely for that (node, deviceKey, addon)
|
|
17576
|
+
* triple (empty parents are pruned). Model/settings only — enablement is
|
|
17577
|
+
* the per-camera `stepToggles` authority.
|
|
17498
17578
|
*/
|
|
17499
17579
|
setCameraStepOverride: method(zod.z.object({
|
|
17500
17580
|
deviceId: zod.z.number(),
|
|
17501
17581
|
agentNodeId: zod.z.string(),
|
|
17582
|
+
deviceKey: zod.z.string(),
|
|
17502
17583
|
addonId: zod.z.string(),
|
|
17503
17584
|
patch: CameraStepOverridePatchSchema.nullable()
|
|
17504
17585
|
}), zod.z.object({ success: zod.z.literal(true) }), {
|
|
@@ -17694,7 +17775,8 @@ var serverManagementCapability = {
|
|
|
17694
17775
|
/** Explicit target version; omitted = latest from the registry. */
|
|
17695
17776
|
version: zod.z.string().optional() }), ServerUpdateActionResultSchema, {
|
|
17696
17777
|
kind: "mutation",
|
|
17697
|
-
auth: "admin"
|
|
17778
|
+
auth: "admin",
|
|
17779
|
+
timeoutMs: 16 * 6e4
|
|
17698
17780
|
}),
|
|
17699
17781
|
rollbackServerUpdate: method(zod.z.void(), ServerUpdateActionResultSchema, {
|
|
17700
17782
|
kind: "mutation",
|
|
@@ -25508,12 +25590,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25508
25590
|
addonId: null,
|
|
25509
25591
|
access: "view"
|
|
25510
25592
|
},
|
|
25511
|
-
"pipelineExecutor.reprobeEngine": {
|
|
25512
|
-
capName: "pipeline-executor",
|
|
25513
|
-
capScope: "system",
|
|
25514
|
-
addonId: null,
|
|
25515
|
-
access: "create"
|
|
25516
|
-
},
|
|
25517
25593
|
"pipelineExecutor.runAudioTest": {
|
|
25518
25594
|
capName: "pipeline-executor",
|
|
25519
25595
|
capScope: "system",
|
|
@@ -25664,6 +25740,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25664
25740
|
addonId: null,
|
|
25665
25741
|
access: "view"
|
|
25666
25742
|
},
|
|
25743
|
+
"pipelineOrchestrator.getNodeInferenceDevices": {
|
|
25744
|
+
capName: "pipeline-orchestrator",
|
|
25745
|
+
capScope: "system",
|
|
25746
|
+
addonId: null,
|
|
25747
|
+
access: "view"
|
|
25748
|
+
},
|
|
25667
25749
|
"pipelineOrchestrator.getPipelineAssignment": {
|
|
25668
25750
|
capName: "pipeline-orchestrator",
|
|
25669
25751
|
capScope: "system",
|
|
@@ -25676,6 +25758,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25676
25758
|
addonId: null,
|
|
25677
25759
|
access: "view"
|
|
25678
25760
|
},
|
|
25761
|
+
"pipelineOrchestrator.getPipelineDevicePin": {
|
|
25762
|
+
capName: "pipeline-orchestrator",
|
|
25763
|
+
capScope: "system",
|
|
25764
|
+
addonId: null,
|
|
25765
|
+
access: "view"
|
|
25766
|
+
},
|
|
25679
25767
|
"pipelineOrchestrator.listAgentSettings": {
|
|
25680
25768
|
capName: "pipeline-orchestrator",
|
|
25681
25769
|
capScope: "system",
|
|
@@ -25718,12 +25806,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25718
25806
|
addonId: null,
|
|
25719
25807
|
access: "create"
|
|
25720
25808
|
},
|
|
25721
|
-
"pipelineOrchestrator.setAgentAddonDefaults": {
|
|
25722
|
-
capName: "pipeline-orchestrator",
|
|
25723
|
-
capScope: "system",
|
|
25724
|
-
addonId: null,
|
|
25725
|
-
access: "create"
|
|
25726
|
-
},
|
|
25727
25809
|
"pipelineOrchestrator.setAgentCapabilities": {
|
|
25728
25810
|
capName: "pipeline-orchestrator",
|
|
25729
25811
|
capScope: "system",
|
|
@@ -25778,6 +25860,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25778
25860
|
addonId: null,
|
|
25779
25861
|
access: "create"
|
|
25780
25862
|
},
|
|
25863
|
+
"pipelineOrchestrator.setPipelineDevicePin": {
|
|
25864
|
+
capName: "pipeline-orchestrator",
|
|
25865
|
+
capScope: "system",
|
|
25866
|
+
addonId: null,
|
|
25867
|
+
access: "create"
|
|
25868
|
+
},
|
|
25781
25869
|
"pipelineOrchestrator.unassignAudio": {
|
|
25782
25870
|
capName: "pipeline-orchestrator",
|
|
25783
25871
|
capScope: "system",
|
|
@@ -8594,20 +8594,6 @@ var pipelineExecutorCapability = {
|
|
|
8594
8594
|
getSelectedEngine: method(z.void(), PipelineEngineChoiceSchema),
|
|
8595
8595
|
getDefaultSteps: method(PipelineEngineChoiceSchema, z.array(PipelineDefaultStepSchema)),
|
|
8596
8596
|
/**
|
|
8597
|
-
* Re-run the platform probe for the inference engine and write the
|
|
8598
|
-
* detected runtime / backend / device back into the addon's own
|
|
8599
|
-
* global settings store. Returns the engine that was picked so the
|
|
8600
|
-
* UI can confirm without a second round-trip. Triggers the standard
|
|
8601
|
-
* `requiresRestart` auto-restart flow because all three fields are
|
|
8602
|
-
* marked restart-required. Replaces the legacy per-agent
|
|
8603
|
-
* `pipeline-orchestrator.reprobeAgentHwAccel` surface for the
|
|
8604
|
-
* engine dimension — each addon now owns its own probe.
|
|
8605
|
-
*/
|
|
8606
|
-
reprobeEngine: method(z.void(), PipelineEngineChoiceSchema, {
|
|
8607
|
-
kind: "mutation",
|
|
8608
|
-
auth: "admin"
|
|
8609
|
-
}),
|
|
8610
|
-
/**
|
|
8611
8597
|
* Per-node detection-engine provisioning snapshot. Returns the live
|
|
8612
8598
|
* state of the lazy runtime-provisioning machine on `nodeId`
|
|
8613
8599
|
* (idle / installing / verifying / ready / failed). The UI pairs this
|
|
@@ -9271,6 +9257,19 @@ var RunnerLocalLoadSchema = z.object({
|
|
|
9271
9257
|
avgInferenceTimeMs: z.number(),
|
|
9272
9258
|
/** Total queue depth across motion + detection queues. */
|
|
9273
9259
|
queueDepthTotal: z.number(),
|
|
9260
|
+
/**
|
|
9261
|
+
* Per-inference-device live load (multi-device C4). One entry per deviceKey
|
|
9262
|
+
* this runner currently has attached cameras on, so the orchestrator's second
|
|
9263
|
+
* `balance()` pass (over a node's devices) weights on real per-pool session
|
|
9264
|
+
* counts. Empty on single-device / pre-multi-device runners. `queueDepthTotal`
|
|
9265
|
+
* per device is 0 until the pool backlog gets a public accessor (follow-up).
|
|
9266
|
+
*/
|
|
9267
|
+
devices: z.array(z.object({
|
|
9268
|
+
deviceKey: z.string(),
|
|
9269
|
+
backend: z.string(),
|
|
9270
|
+
attachedCameras: z.number(),
|
|
9271
|
+
queueDepthTotal: z.number()
|
|
9272
|
+
})).default([]),
|
|
9274
9273
|
/** Hardware capability flags reported by this node. */
|
|
9275
9274
|
hardware: z.object({
|
|
9276
9275
|
hasGpu: z.boolean(),
|
|
@@ -16925,13 +16924,11 @@ var PipelineTemplateSchema = z.object({
|
|
|
16925
16924
|
createdAt: z.string(),
|
|
16926
16925
|
updatedAt: z.string()
|
|
16927
16926
|
});
|
|
16928
|
-
var
|
|
16929
|
-
enabled: z.boolean(),
|
|
16927
|
+
var DeviceStepConfigSchema = z.object({
|
|
16930
16928
|
modelId: z.string().optional(),
|
|
16931
|
-
settings: z.record(z.string(), z.unknown()).
|
|
16929
|
+
settings: z.record(z.string(), z.unknown()).optional()
|
|
16932
16930
|
});
|
|
16933
16931
|
var AgentPipelineSettingsSchema = z.object({
|
|
16934
|
-
addonDefaults: z.record(z.string(), AgentAddonConfigSchema).readonly(),
|
|
16935
16932
|
maxCameras: z.number().int().nonnegative().nullable().default(null),
|
|
16936
16933
|
/** Per-node detection weight (relative share for the quota balancer). */
|
|
16937
16934
|
detectWeight: z.number().positive().optional(),
|
|
@@ -16958,13 +16955,18 @@ var AgentPipelineSettingsSchema = z.object({
|
|
|
16958
16955
|
reachableHost: z.string().optional(),
|
|
16959
16956
|
/**
|
|
16960
16957
|
* Multi-device inference opt-in (Phase 4). Per-node map deviceKey → {enabled,
|
|
16961
|
-
* weight}. Absent / all-disabled ⇒ the node's single default
|
|
16962
|
-
* (safe default); two+ enabled ⇒ the dispatcher balances
|
|
16963
|
-
* across them so they run CONCURRENTLY.
|
|
16958
|
+
* weight, steps}. Absent / all-disabled ⇒ the node's single default
|
|
16959
|
+
* accelerator (safe default); two+ enabled ⇒ the dispatcher balances
|
|
16960
|
+
* detection sessions across them so they run CONCURRENTLY. `steps` is the
|
|
16961
|
+
* per-(node,device) BASE provisioning (`stepId → {modelId?, settings?}`) —
|
|
16962
|
+
* the default model/settings for every camera landing on that accelerator;
|
|
16963
|
+
* a stepId absent ⇒ the step uses that device's format default.
|
|
16964
16964
|
*/
|
|
16965
16965
|
inferenceDevices: z.record(z.string(), z.object({
|
|
16966
16966
|
enabled: z.boolean(),
|
|
16967
|
-
weight: z.number().positive().optional()
|
|
16967
|
+
weight: z.number().positive().optional(),
|
|
16968
|
+
maxSessions: z.number().int().positive().optional(),
|
|
16969
|
+
steps: z.record(z.string(), DeviceStepConfigSchema).optional()
|
|
16968
16970
|
})).optional()
|
|
16969
16971
|
});
|
|
16970
16972
|
var CameraPipelineForAgentSchema = z.object({
|
|
@@ -16975,14 +16977,13 @@ var CameraPipelineForAgentSchema = z.object({
|
|
|
16975
16977
|
}).nullable()
|
|
16976
16978
|
});
|
|
16977
16979
|
var CameraStepOverridePatchSchema = z.object({
|
|
16978
|
-
enabled: z.boolean().optional(),
|
|
16979
16980
|
modelId: z.string().optional(),
|
|
16980
16981
|
settings: z.record(z.string(), z.unknown()).readonly().optional()
|
|
16981
16982
|
});
|
|
16982
16983
|
var CameraPipelineSettingsSchema = z.object({
|
|
16983
16984
|
pinnedAgentNodeId: z.string().optional(),
|
|
16984
16985
|
stepToggles: z.record(z.string(), z.boolean()).optional(),
|
|
16985
|
-
|
|
16986
|
+
stepOverridesByDevice: z.record(z.string(), z.record(z.string(), z.record(z.string(), CameraStepOverridePatchSchema))).optional(),
|
|
16986
16987
|
pipelineByAgent: z.record(z.string(), CameraPipelineForAgentSchema).optional()
|
|
16987
16988
|
});
|
|
16988
16989
|
/**
|
|
@@ -17204,6 +17205,44 @@ var CameraStatusSchema = z.object({
|
|
|
17204
17205
|
/** Unix timestamp (ms) when this snapshot was composed server-side. */
|
|
17205
17206
|
fetchedAt: z.number()
|
|
17206
17207
|
});
|
|
17208
|
+
var NodeInferenceDeviceSchema = z.object({
|
|
17209
|
+
/** Stable per-node device key, e.g. `openvino:npu`, `edgetpu:usb`, `cpu`. */
|
|
17210
|
+
key: z.string(),
|
|
17211
|
+
backend: z.string(),
|
|
17212
|
+
device: z.string(),
|
|
17213
|
+
format: z.enum(MODEL_FORMATS),
|
|
17214
|
+
/** Whether the node's live probe reports the device as usable right now. */
|
|
17215
|
+
available: z.boolean(),
|
|
17216
|
+
/**
|
|
17217
|
+
* Whether this device participates in dispatch. AUTO default (spec C2):
|
|
17218
|
+
* accelerators are opt-OUT (a discovered NPU/iGPU/Coral/ANE with no stored
|
|
17219
|
+
* entry is `true`); CPU is opt-IN (`false` by default — the fallback pool,
|
|
17220
|
+
* not a balanced target). An explicit stored value always wins; a stored-only
|
|
17221
|
+
* (unavailable) key keeps its stored value.
|
|
17222
|
+
*/
|
|
17223
|
+
enabled: z.boolean(),
|
|
17224
|
+
/** Relative balancer weight for the enabled device (default 1). */
|
|
17225
|
+
weight: z.number(),
|
|
17226
|
+
/** Per-device concurrent-session cap; null = unlimited (multi-device C4). */
|
|
17227
|
+
maxSessions: z.number().nullable(),
|
|
17228
|
+
/** Object-detection model the executor defaults to for this deviceKey. */
|
|
17229
|
+
defaultModelId: z.string(),
|
|
17230
|
+
/**
|
|
17231
|
+
* Per-(node,device) BASE provisioning (C7.2/C7.4) — the RAW stored
|
|
17232
|
+
* `stepId → {modelId?, settings?}` map from `inferenceDevices[key].steps`.
|
|
17233
|
+
* Absent/empty ⇒ no base (every step uses its device format default). The
|
|
17234
|
+
* UI cross-references `pipelineExecutor.getSchema` for the models actually
|
|
17235
|
+
* available per format; this is the stored selection that becomes the
|
|
17236
|
+
* default for EVERY camera landing on this accelerator.
|
|
17237
|
+
*/
|
|
17238
|
+
steps: z.record(z.string(), DeviceStepConfigSchema).optional()
|
|
17239
|
+
});
|
|
17240
|
+
var NodeInferenceDevicesSchema = z.object({
|
|
17241
|
+
nodeId: z.string(),
|
|
17242
|
+
/** False when the node's platform-probe was unreachable (no live device set). */
|
|
17243
|
+
reachable: z.boolean(),
|
|
17244
|
+
devices: z.array(NodeInferenceDeviceSchema).readonly()
|
|
17245
|
+
});
|
|
17207
17246
|
/**
|
|
17208
17247
|
* Pipeline Orchestrator capability — global load balancer + camera dispatcher.
|
|
17209
17248
|
*
|
|
@@ -17253,6 +17292,34 @@ var pipelineOrchestratorCapability = {
|
|
|
17253
17292
|
auth: "admin"
|
|
17254
17293
|
}),
|
|
17255
17294
|
/**
|
|
17295
|
+
* Pin a camera's detection to a specific INFERENCE DEVICE (accelerator)
|
|
17296
|
+
* within its node — a SOFT L1 device affinity honoured by the per-session
|
|
17297
|
+
* device `balance()` pass (sibling of the node-level `pipelineNodeId` pin;
|
|
17298
|
+
* persisted as `pipelineDeviceKey` in the device store, read by
|
|
17299
|
+
* `readPipelineDevicePin`). `deviceKey` is a concrete key
|
|
17300
|
+
* (`openvino:npu` / `edgetpu:usb` / `cpu`), or the `'auto'` sentinel /
|
|
17301
|
+
* empty string to CLEAR the pin and let the balancer pick the device.
|
|
17302
|
+
*
|
|
17303
|
+
* Applies promptly: the device is chosen per-session at dispatch, so any
|
|
17304
|
+
* running detection session is closed and re-dispatched onto the new pin
|
|
17305
|
+
* (the camera stays on the SAME node — a device pin never moves the camera).
|
|
17306
|
+
* Cameras with no active session pick it up on their next dispatch.
|
|
17307
|
+
*/
|
|
17308
|
+
setPipelineDevicePin: method(z.object({
|
|
17309
|
+
deviceId: z.number(),
|
|
17310
|
+
deviceKey: z.string()
|
|
17311
|
+
}), z.object({ success: z.literal(true) }), {
|
|
17312
|
+
kind: "mutation",
|
|
17313
|
+
auth: "admin"
|
|
17314
|
+
}),
|
|
17315
|
+
/**
|
|
17316
|
+
* Read a camera's persisted inference-device pin (`pipelineDeviceKey`).
|
|
17317
|
+
* Returns the concrete device key, or `null` when unpinned (auto). Lets the
|
|
17318
|
+
* UI show the current pin alongside the node pin (parity with the node-pin
|
|
17319
|
+
* value carried on the assignment record).
|
|
17320
|
+
*/
|
|
17321
|
+
getPipelineDevicePin: method(z.object({ deviceId: z.number() }), z.object({ deviceKey: z.string().nullable() })),
|
|
17322
|
+
/**
|
|
17256
17323
|
* Trigger a full rebalance pass. Iterates over all assigned cameras,
|
|
17257
17324
|
* recomputes the optimal agent for each one based on current load +
|
|
17258
17325
|
* hardware affinity, and migrates cameras whose current agent is no
|
|
@@ -17337,14 +17404,6 @@ var pipelineOrchestratorCapability = {
|
|
|
17337
17404
|
nodeId: z.string(),
|
|
17338
17405
|
settings: AgentPipelineSettingsSchema
|
|
17339
17406
|
})).readonly()),
|
|
17340
|
-
/** Bulk-replace ALL addon configs on one agent. Used by the agent-level PipelineEditor which emits the full map per edit. Merges on top of existing entries — omitted addonIds are left alone. */
|
|
17341
|
-
setAgentAddonDefaults: method(z.object({
|
|
17342
|
-
agentNodeId: z.string(),
|
|
17343
|
-
defaults: z.record(z.string(), AgentAddonConfigSchema)
|
|
17344
|
-
}), z.object({ success: z.literal(true) }), {
|
|
17345
|
-
kind: "mutation",
|
|
17346
|
-
auth: "admin"
|
|
17347
|
-
}),
|
|
17348
17407
|
/**
|
|
17349
17408
|
* Drop a single agent's persisted settings. Used by the cluster
|
|
17350
17409
|
* "Offline agents" panel to evict stale entries left behind when an
|
|
@@ -17437,21 +17496,40 @@ var pipelineOrchestratorCapability = {
|
|
|
17437
17496
|
* The map REPLACES the node's stored `inferenceDevices` wholesale (pass the
|
|
17438
17497
|
* complete desired set; an empty map clears the opt-in → the node reverts to
|
|
17439
17498
|
* its single DEFAULT accelerator). `weight` is optional and defaults to 1.
|
|
17499
|
+
* `models` is the optional per-device model override (`stepId → modelId`,
|
|
17500
|
+
* C7.2/C7.4) — a stepId absent ⇒ the step uses that device's default model.
|
|
17440
17501
|
* Creates the node's settings entry if absent. Changes take effect on the
|
|
17441
17502
|
* next dispatch/rebalance cycle — the dispatcher reads the enabled set via
|
|
17442
|
-
* `PipelineSettingsStore.buildNodeInferenceDevices` when placing sessions
|
|
17503
|
+
* `PipelineSettingsStore.buildNodeInferenceDevices` when placing sessions
|
|
17504
|
+
* and the per-(node,device) base provisioning via
|
|
17505
|
+
* `buildNodeInferenceDeviceSteps`.
|
|
17443
17506
|
*/
|
|
17444
17507
|
setAgentInferenceDevices: method(z.object({
|
|
17445
17508
|
agentNodeId: z.string(),
|
|
17446
17509
|
inferenceDevices: z.record(z.string(), z.object({
|
|
17447
17510
|
enabled: z.boolean(),
|
|
17448
|
-
weight: z.number().positive().optional()
|
|
17511
|
+
weight: z.number().positive().optional(),
|
|
17512
|
+
maxSessions: z.number().int().positive().optional(),
|
|
17513
|
+
steps: z.record(z.string(), DeviceStepConfigSchema).optional()
|
|
17449
17514
|
}))
|
|
17450
17515
|
}), z.object({ success: z.literal(true) }), {
|
|
17451
17516
|
kind: "mutation",
|
|
17452
17517
|
auth: "admin"
|
|
17453
17518
|
}),
|
|
17454
17519
|
/**
|
|
17520
|
+
* DEVICE-AWARE merged view of ONE node's inference accelerators. Joins each
|
|
17521
|
+
* physical device the node HAS — probed live via a node-pinned
|
|
17522
|
+
* `platformProbe.getCapabilities` (the platform-probe singleton is targeted
|
|
17523
|
+
* by the `nodeId` cap INPUT, since a `nodePin` context is ignored by a
|
|
17524
|
+
* singleton mount) — with its stored opt-in (`enabled`/`weight`) and the
|
|
17525
|
+
* object-detection `defaultModelId` the executor would run for that
|
|
17526
|
+
* deviceKey. Disabled-but-configured keys still appear. An unreachable node
|
|
17527
|
+
* returns `reachable:false` + best-effort stored-only devices (never
|
|
17528
|
+
* throws). Read surface for the cluster/agent multi-device UI — hence a
|
|
17529
|
+
* default (read-level) auth, matching the other `getAgent*` reads.
|
|
17530
|
+
*/
|
|
17531
|
+
getNodeInferenceDevices: method(z.object({ nodeId: z.string() }), NodeInferenceDevicesSchema),
|
|
17532
|
+
/**
|
|
17455
17533
|
* Reset one node's pipeline to its hardware-aware defaults — the HONEST
|
|
17456
17534
|
* reset (replaces the executor's legacy `resetToDefault`, which cleared a
|
|
17457
17535
|
* dead persisted step-tree seed nothing in the live path read):
|
|
@@ -17490,15 +17568,18 @@ var pipelineOrchestratorCapability = {
|
|
|
17490
17568
|
kind: "mutation",
|
|
17491
17569
|
auth: "admin"
|
|
17492
17570
|
}),
|
|
17493
|
-
/** Read every
|
|
17494
|
-
getCameraStepOverrides: method(z.object({ deviceId: z.number() }), z.record(z.string(), z.record(z.string(), CameraStepOverridePatchSchema)).nullable()),
|
|
17571
|
+
/** Read every per-(node,device) override map for a device. Null when device has no overrides. */
|
|
17572
|
+
getCameraStepOverrides: method(z.object({ deviceId: z.number() }), z.record(z.string(), z.record(z.string(), z.record(z.string(), CameraStepOverridePatchSchema))).nullable()),
|
|
17495
17573
|
/**
|
|
17496
|
-
* Write or clear the
|
|
17497
|
-
* `patch: null` clears the entry entirely for that (
|
|
17574
|
+
* Write or clear the per-(camera,node,device) override for one addonId.
|
|
17575
|
+
* `patch: null` clears the entry entirely for that (node, deviceKey, addon)
|
|
17576
|
+
* triple (empty parents are pruned). Model/settings only — enablement is
|
|
17577
|
+
* the per-camera `stepToggles` authority.
|
|
17498
17578
|
*/
|
|
17499
17579
|
setCameraStepOverride: method(z.object({
|
|
17500
17580
|
deviceId: z.number(),
|
|
17501
17581
|
agentNodeId: z.string(),
|
|
17582
|
+
deviceKey: z.string(),
|
|
17502
17583
|
addonId: z.string(),
|
|
17503
17584
|
patch: CameraStepOverridePatchSchema.nullable()
|
|
17504
17585
|
}), z.object({ success: z.literal(true) }), {
|
|
@@ -17694,7 +17775,8 @@ var serverManagementCapability = {
|
|
|
17694
17775
|
/** Explicit target version; omitted = latest from the registry. */
|
|
17695
17776
|
version: z.string().optional() }), ServerUpdateActionResultSchema, {
|
|
17696
17777
|
kind: "mutation",
|
|
17697
|
-
auth: "admin"
|
|
17778
|
+
auth: "admin",
|
|
17779
|
+
timeoutMs: 16 * 6e4
|
|
17698
17780
|
}),
|
|
17699
17781
|
rollbackServerUpdate: method(z.void(), ServerUpdateActionResultSchema, {
|
|
17700
17782
|
kind: "mutation",
|
|
@@ -25508,12 +25590,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25508
25590
|
addonId: null,
|
|
25509
25591
|
access: "view"
|
|
25510
25592
|
},
|
|
25511
|
-
"pipelineExecutor.reprobeEngine": {
|
|
25512
|
-
capName: "pipeline-executor",
|
|
25513
|
-
capScope: "system",
|
|
25514
|
-
addonId: null,
|
|
25515
|
-
access: "create"
|
|
25516
|
-
},
|
|
25517
25593
|
"pipelineExecutor.runAudioTest": {
|
|
25518
25594
|
capName: "pipeline-executor",
|
|
25519
25595
|
capScope: "system",
|
|
@@ -25664,6 +25740,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25664
25740
|
addonId: null,
|
|
25665
25741
|
access: "view"
|
|
25666
25742
|
},
|
|
25743
|
+
"pipelineOrchestrator.getNodeInferenceDevices": {
|
|
25744
|
+
capName: "pipeline-orchestrator",
|
|
25745
|
+
capScope: "system",
|
|
25746
|
+
addonId: null,
|
|
25747
|
+
access: "view"
|
|
25748
|
+
},
|
|
25667
25749
|
"pipelineOrchestrator.getPipelineAssignment": {
|
|
25668
25750
|
capName: "pipeline-orchestrator",
|
|
25669
25751
|
capScope: "system",
|
|
@@ -25676,6 +25758,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25676
25758
|
addonId: null,
|
|
25677
25759
|
access: "view"
|
|
25678
25760
|
},
|
|
25761
|
+
"pipelineOrchestrator.getPipelineDevicePin": {
|
|
25762
|
+
capName: "pipeline-orchestrator",
|
|
25763
|
+
capScope: "system",
|
|
25764
|
+
addonId: null,
|
|
25765
|
+
access: "view"
|
|
25766
|
+
},
|
|
25679
25767
|
"pipelineOrchestrator.listAgentSettings": {
|
|
25680
25768
|
capName: "pipeline-orchestrator",
|
|
25681
25769
|
capScope: "system",
|
|
@@ -25718,12 +25806,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25718
25806
|
addonId: null,
|
|
25719
25807
|
access: "create"
|
|
25720
25808
|
},
|
|
25721
|
-
"pipelineOrchestrator.setAgentAddonDefaults": {
|
|
25722
|
-
capName: "pipeline-orchestrator",
|
|
25723
|
-
capScope: "system",
|
|
25724
|
-
addonId: null,
|
|
25725
|
-
access: "create"
|
|
25726
|
-
},
|
|
25727
25809
|
"pipelineOrchestrator.setAgentCapabilities": {
|
|
25728
25810
|
capName: "pipeline-orchestrator",
|
|
25729
25811
|
capScope: "system",
|
|
@@ -25778,6 +25860,12 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
25778
25860
|
addonId: null,
|
|
25779
25861
|
access: "create"
|
|
25780
25862
|
},
|
|
25863
|
+
"pipelineOrchestrator.setPipelineDevicePin": {
|
|
25864
|
+
capName: "pipeline-orchestrator",
|
|
25865
|
+
capScope: "system",
|
|
25866
|
+
addonId: null,
|
|
25867
|
+
access: "create"
|
|
25868
|
+
},
|
|
25781
25869
|
"pipelineOrchestrator.unassignAudio": {
|
|
25782
25870
|
capName: "pipeline-orchestrator",
|
|
25783
25871
|
capScope: "system",
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_chunk = require("./chunk-Cek0wNdY.js");
|
|
3
|
-
const require_dist = require("./dist-
|
|
3
|
+
const require_dist = require("./dist-C0Pf5ShP.js");
|
|
4
4
|
const require_model_download_service = require("./model-download-service-hf0ookyy.js");
|
|
5
|
-
const require_manifest_python_deps = require("./manifest-python-deps-
|
|
5
|
+
const require_manifest_python_deps = require("./manifest-python-deps-BRFns0U-.js");
|
|
6
6
|
const require_resource_monitor = require("./resource-monitor-DNNomR-i.js");
|
|
7
7
|
const require_builtins_sqlite_storage_filesystem_storage_addon = require("./builtins/sqlite-storage/filesystem-storage.addon.js");
|
|
8
8
|
const require_builtins_sqlite_storage_sqlite_settings_addon = require("./builtins/sqlite-storage/sqlite-settings.addon.js");
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { At as EventCategory$1, Dt as resolveCapMount, Et as readinessKey, F as kebabToCamel, I as lifecycleJobSchema, K as procedureAuthKey, M as isCollectionArrayMethod, N as isObjectInput, O as extractNestedAddonId, Ot as scopeKey, P as isVoidInput, Tt as parseJsonUnknown$1, U as objectInputDeclaresAddonId, _t as asString$1, ct as DEVICE_STATUS_METHOD, ft as ReadinessRegistry, gt as asNumber, ht as asJsonObject$1, it as errMsg$1, j as isArrayOutputSchema, o as METHOD_ACCESS_MAP, ot as DATAPLANE_SECRET_HEADER$1, p as addonSettingsCapability, pt as ReadinessTimeoutError, s as RUNTIME_DEFAULTS, st as DEVICE_SETTINGS_CONTRIBUTION_METHODS, t as ALL_CAPABILITY_DEFINITIONS, vt as createEvent, wt as parseJsonObject, xt as expandCapMethods, yt as emitDownForOwnedCaps, z as looseSchema } from "./dist-
|
|
1
|
+
import { At as EventCategory$1, Dt as resolveCapMount, Et as readinessKey, F as kebabToCamel, I as lifecycleJobSchema, K as procedureAuthKey, M as isCollectionArrayMethod, N as isObjectInput, O as extractNestedAddonId, Ot as scopeKey, P as isVoidInput, Tt as parseJsonUnknown$1, U as objectInputDeclaresAddonId, _t as asString$1, ct as DEVICE_STATUS_METHOD, ft as ReadinessRegistry, gt as asNumber, ht as asJsonObject$1, it as errMsg$1, j as isArrayOutputSchema, o as METHOD_ACCESS_MAP, ot as DATAPLANE_SECRET_HEADER$1, p as addonSettingsCapability, pt as ReadinessTimeoutError, s as RUNTIME_DEFAULTS, st as DEVICE_SETTINGS_CONTRIBUTION_METHODS, t as ALL_CAPABILITY_DEFINITIONS, vt as createEvent, wt as parseJsonObject, xt as expandCapMethods, yt as emitDownForOwnedCaps, z as looseSchema } from "./dist-Dycu89sF.mjs";
|
|
2
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-Cp9f4dk6.mjs";
|
|
3
|
-
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, bt as resolveAddonClass, 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, xt as createAddonDataPlaneFacility, y as __resetCapUsageRegistryForTests, yt as runNpm, z as AGENT_CAP_FWD_ACTION } from "./manifest-python-deps-
|
|
3
|
+
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, bt as resolveAddonClass, 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, xt as createAddonDataPlaneFacility, y as __resetCapUsageRegistryForTests, yt as runNpm, z as AGENT_CAP_FWD_ACTION } from "./manifest-python-deps-BiM1uDhe.mjs";
|
|
4
4
|
import { n as getSinglePidStats, t as getPidStats } from "./resource-monitor-Le3l0qS2.mjs";
|
|
5
5
|
import { FilesystemStorageAddon, t as FilesystemStorageProvider } from "./builtins/sqlite-storage/filesystem-storage.addon.mjs";
|
|
6
6
|
import { SqliteSettingsAddon, t as SqliteSettingsBackend } from "./builtins/sqlite-storage/sqlite-settings.addon.mjs";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_chunk = require("./chunk-Cek0wNdY.js");
|
|
2
|
-
const require_dist = require("./dist-
|
|
2
|
+
const require_dist = require("./dist-C0Pf5ShP.js");
|
|
3
3
|
let _camstack_types_node = require("@camstack/types/node");
|
|
4
4
|
let node_http = require("node:http");
|
|
5
5
|
let node_fs = require("node:fs");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { q as readNodePin } from "./dist-
|
|
1
|
+
import { q as readNodePin } from "./dist-Dycu89sF.mjs";
|
|
2
2
|
import { ensureBinary, ensureFfmpeg, ensurePython, installPythonPackages, installPythonRequirements } from "@camstack/types/node";
|
|
3
3
|
import { createServer } from "node:http";
|
|
4
4
|
import * as fs from "node:fs";
|