camstack 1.2.80 → 1.2.81
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.
|
@@ -22458,18 +22458,6 @@ var ContainerMemoryPointSchema = external_exports.object({
|
|
|
22458
22458
|
*/
|
|
22459
22459
|
gpuShmemBytes: external_exports.number().nullable()
|
|
22460
22460
|
}).extend({ atMs: external_exports.number() });
|
|
22461
|
-
var DumpHeapSnapshotInputSchema = external_exports.object({
|
|
22462
|
-
/** The addon whose runner should dump a heap snapshot. */
|
|
22463
|
-
addonId: external_exports.string()
|
|
22464
|
-
});
|
|
22465
|
-
var DumpHeapSnapshotResultSchema = external_exports.object({
|
|
22466
|
-
success: external_exports.boolean(),
|
|
22467
|
-
/** Path of the written .heapsnapshot inside the runner's container/host. */
|
|
22468
|
-
path: external_exports.string().optional(),
|
|
22469
|
-
/** Process pid that was signalled. */
|
|
22470
|
-
pid: external_exports.number().optional(),
|
|
22471
|
-
reason: external_exports.string().optional()
|
|
22472
|
-
});
|
|
22473
22461
|
var LoadPointSchema = external_exports.object({
|
|
22474
22462
|
/** Bucket START, or the snapshot's own timestamp when unreduced. */
|
|
22475
22463
|
atMs: external_exports.number(),
|
|
@@ -22643,19 +22631,7 @@ var metricsProviderCapability = {
|
|
|
22643
22631
|
* agent's ring alone (`durable: false`). Empty is a legitimate answer: a
|
|
22644
22632
|
* node nobody has heard from has no series, and saying so is the truth.
|
|
22645
22633
|
*/
|
|
22646
|
-
getLoadSeries: method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
22647
|
-
/**
|
|
22648
|
-
* Tell the addon's forked runner to write a V8 heap snapshot to disk (via
|
|
22649
|
-
* SIGUSR2 — the runner's diagnostic handler). Also logs its
|
|
22650
|
-
* `process.memoryUsage()` + heap-space breakdown. Resolves the pid from
|
|
22651
|
-
* `$process.list`, so it can only reach a runner this node spawned. Use
|
|
22652
|
-
* for deep per-addon memory attribution; copy the returned path off the
|
|
22653
|
-
* node to analyze.
|
|
22654
|
-
*/
|
|
22655
|
-
dumpHeapSnapshot: method(DumpHeapSnapshotInputSchema, DumpHeapSnapshotResultSchema, {
|
|
22656
|
-
kind: "mutation",
|
|
22657
|
-
auth: "admin"
|
|
22658
|
-
})
|
|
22634
|
+
getLoadSeries: method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
22659
22635
|
}
|
|
22660
22636
|
};
|
|
22661
22637
|
var ModelConvertInputSchema = external_exports.object({
|
|
@@ -26301,7 +26277,8 @@ var MediaFileKindEnum = external_exports.enum([
|
|
|
26301
26277
|
"plateCrop",
|
|
26302
26278
|
"keyFrame",
|
|
26303
26279
|
"keyFrameSmall",
|
|
26304
|
-
"thumbnailSmall"
|
|
26280
|
+
"thumbnailSmall",
|
|
26281
|
+
"sceneFrame"
|
|
26305
26282
|
]);
|
|
26306
26283
|
var MediaFileRefSchema = external_exports.object({
|
|
26307
26284
|
key: external_exports.string(),
|
|
@@ -41802,12 +41779,6 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
41802
41779
|
addonId: null,
|
|
41803
41780
|
access: "view"
|
|
41804
41781
|
},
|
|
41805
|
-
"metricsProvider.dumpHeapSnapshot": {
|
|
41806
|
-
capName: "metrics-provider",
|
|
41807
|
-
capScope: "system",
|
|
41808
|
-
addonId: null,
|
|
41809
|
-
access: "create"
|
|
41810
|
-
},
|
|
41811
41782
|
"metricsProvider.getAddonStats": {
|
|
41812
41783
|
capName: "metrics-provider",
|
|
41813
41784
|
capScope: "system",
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
runDiscover
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-QSGSW74H.js";
|
|
5
5
|
import "./chunk-LMMQX4CK.js";
|
|
6
6
|
|
|
7
7
|
// src/cli.ts
|
|
@@ -38,7 +38,7 @@ async function runServe(args) {
|
|
|
38
38
|
...typeof values.data === "string" ? { data: values.data } : {}
|
|
39
39
|
};
|
|
40
40
|
Object.assign(process.env, buildServeEnv(opts));
|
|
41
|
-
await import("./launcher-
|
|
41
|
+
await import("./launcher-RKRQJIVN.js");
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
// src/commands/agent.ts
|
|
@@ -83,7 +83,7 @@ async function runAgent(args) {
|
|
|
83
83
|
...typeof values.port === "string" ? { port: values.port } : {}
|
|
84
84
|
};
|
|
85
85
|
Object.assign(process.env, buildAgentEnv(opts));
|
|
86
|
-
await import("./launcher-
|
|
86
|
+
await import("./launcher-RKRQJIVN.js");
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
// src/commands/setup.ts
|
|
@@ -1130,7 +1130,7 @@ function isUnknown(_value) {
|
|
|
1130
1130
|
return true;
|
|
1131
1131
|
}
|
|
1132
1132
|
async function resolveServerInteractive(presetNamespace) {
|
|
1133
|
-
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-
|
|
1133
|
+
const { discoverNodes, resolveHubFromDiscovered, filterHubNodes, DEFAULT_HUB_HTTPS_PORT } = await import("./discover-JG76SRMM.js");
|
|
1134
1134
|
if (presetNamespace) {
|
|
1135
1135
|
const spinner4 = clack.spinner();
|
|
1136
1136
|
spinner4.start(`Discovering hub on LAN (namespace "${presetNamespace}")`);
|
|
@@ -23633,9 +23633,9 @@ var require_zod = __commonJS({
|
|
|
23633
23633
|
}
|
|
23634
23634
|
});
|
|
23635
23635
|
|
|
23636
|
-
// ../system/dist/dist-
|
|
23637
|
-
var
|
|
23638
|
-
"../system/dist/dist-
|
|
23636
|
+
// ../system/dist/dist-DkVaJ5vG.js
|
|
23637
|
+
var require_dist_DkVaJ5vG = __commonJS({
|
|
23638
|
+
"../system/dist/dist-DkVaJ5vG.js"(exports) {
|
|
23639
23639
|
"use strict";
|
|
23640
23640
|
var zod = require_zod();
|
|
23641
23641
|
var EventCategory = /* @__PURE__ */ (function(EventCategory2) {
|
|
@@ -33168,18 +33168,6 @@ var require_dist_KItAWyKG = __commonJS({
|
|
|
33168
33168
|
*/
|
|
33169
33169
|
gpuShmemBytes: zod.z.number().nullable()
|
|
33170
33170
|
}).extend({ atMs: zod.z.number() });
|
|
33171
|
-
var DumpHeapSnapshotInputSchema = zod.z.object({
|
|
33172
|
-
/** The addon whose runner should dump a heap snapshot. */
|
|
33173
|
-
addonId: zod.z.string()
|
|
33174
|
-
});
|
|
33175
|
-
var DumpHeapSnapshotResultSchema = zod.z.object({
|
|
33176
|
-
success: zod.z.boolean(),
|
|
33177
|
-
/** Path of the written .heapsnapshot inside the runner's container/host. */
|
|
33178
|
-
path: zod.z.string().optional(),
|
|
33179
|
-
/** Process pid that was signalled. */
|
|
33180
|
-
pid: zod.z.number().optional(),
|
|
33181
|
-
reason: zod.z.string().optional()
|
|
33182
|
-
});
|
|
33183
33171
|
var LoadPointSchema = zod.z.object({
|
|
33184
33172
|
/** Bucket START, or the snapshot's own timestamp when unreduced. */
|
|
33185
33173
|
atMs: zod.z.number(),
|
|
@@ -33353,19 +33341,7 @@ var require_dist_KItAWyKG = __commonJS({
|
|
|
33353
33341
|
* agent's ring alone (`durable: false`). Empty is a legitimate answer: a
|
|
33354
33342
|
* node nobody has heard from has no series, and saying so is the truth.
|
|
33355
33343
|
*/
|
|
33356
|
-
getLoadSeries: method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
33357
|
-
/**
|
|
33358
|
-
* Tell the addon's forked runner to write a V8 heap snapshot to disk (via
|
|
33359
|
-
* SIGUSR2 — the runner's diagnostic handler). Also logs its
|
|
33360
|
-
* `process.memoryUsage()` + heap-space breakdown. Resolves the pid from
|
|
33361
|
-
* `$process.list`, so it can only reach a runner this node spawned. Use
|
|
33362
|
-
* for deep per-addon memory attribution; copy the returned path off the
|
|
33363
|
-
* node to analyze.
|
|
33364
|
-
*/
|
|
33365
|
-
dumpHeapSnapshot: method(DumpHeapSnapshotInputSchema, DumpHeapSnapshotResultSchema, {
|
|
33366
|
-
kind: "mutation",
|
|
33367
|
-
auth: "admin"
|
|
33368
|
-
})
|
|
33344
|
+
getLoadSeries: method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
33369
33345
|
}
|
|
33370
33346
|
};
|
|
33371
33347
|
var modelConvertCapability = {
|
|
@@ -37007,7 +36983,8 @@ var require_dist_KItAWyKG = __commonJS({
|
|
|
37007
36983
|
"plateCrop",
|
|
37008
36984
|
"keyFrame",
|
|
37009
36985
|
"keyFrameSmall",
|
|
37010
|
-
"thumbnailSmall"
|
|
36986
|
+
"thumbnailSmall",
|
|
36987
|
+
"sceneFrame"
|
|
37011
36988
|
]);
|
|
37012
36989
|
var MediaFileSchema = zod.z.object({
|
|
37013
36990
|
key: zod.z.string(),
|
|
@@ -53128,12 +53105,6 @@ var require_dist_KItAWyKG = __commonJS({
|
|
|
53128
53105
|
addonId: null,
|
|
53129
53106
|
access: "view"
|
|
53130
53107
|
},
|
|
53131
|
-
"metricsProvider.dumpHeapSnapshot": {
|
|
53132
|
-
capName: "metrics-provider",
|
|
53133
|
-
capScope: "system",
|
|
53134
|
-
addonId: null,
|
|
53135
|
-
access: "create"
|
|
53136
|
-
},
|
|
53137
53108
|
"metricsProvider.getAddonStats": {
|
|
53138
53109
|
capName: "metrics-provider",
|
|
53139
53110
|
capScope: "system",
|
|
@@ -59798,7 +59769,7 @@ var require_alerts_addon = __commonJS({
|
|
|
59798
59769
|
[Symbol.toStringTag]: { value: "Module" }
|
|
59799
59770
|
});
|
|
59800
59771
|
require_chunk_Cek0wNdY();
|
|
59801
|
-
var require_dist10 =
|
|
59772
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
59802
59773
|
function selectExpired(alerts, cutoffMs) {
|
|
59803
59774
|
return alerts.filter((a) => a.createdAt < cutoffMs).sort((a, b) => a.createdAt - b.createdAt).map((a) => a.id);
|
|
59804
59775
|
}
|
|
@@ -60617,7 +60588,7 @@ var require_console_logging = __commonJS({
|
|
|
60617
60588
|
[Symbol.toStringTag]: { value: "Module" }
|
|
60618
60589
|
});
|
|
60619
60590
|
require_chunk_Cek0wNdY();
|
|
60620
|
-
var require_dist10 =
|
|
60591
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
60621
60592
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
60622
60593
|
var LEVEL_RANK = {
|
|
60623
60594
|
debug: 0,
|
|
@@ -60711,7 +60682,7 @@ var require_core_blocks_addon = __commonJS({
|
|
|
60711
60682
|
"use strict";
|
|
60712
60683
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
60713
60684
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
60714
|
-
var require_dist10 =
|
|
60685
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
60715
60686
|
var node_crypto = __require("crypto");
|
|
60716
60687
|
var node_fs_promises = __require("fs/promises");
|
|
60717
60688
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
@@ -61608,11 +61579,11 @@ var require_core_blocks = __commonJS({
|
|
|
61608
61579
|
}
|
|
61609
61580
|
});
|
|
61610
61581
|
|
|
61611
|
-
// ../system/dist/retired-settings-keys-
|
|
61612
|
-
var
|
|
61613
|
-
"../system/dist/retired-settings-keys-
|
|
61582
|
+
// ../system/dist/retired-settings-keys-B1ij-xtH.js
|
|
61583
|
+
var require_retired_settings_keys_B1ij_xtH = __commonJS({
|
|
61584
|
+
"../system/dist/retired-settings-keys-B1ij-xtH.js"(exports) {
|
|
61614
61585
|
"use strict";
|
|
61615
|
-
var require_dist10 =
|
|
61586
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
61616
61587
|
function settingsStoreIsAuthoritativeHere(env) {
|
|
61617
61588
|
const raw = (env["CAMSTACK_ROLE"] ?? "").trim().toLowerCase();
|
|
61618
61589
|
return raw === "" || raw === "hub";
|
|
@@ -63826,8 +63797,8 @@ var require_device_manager_addon = __commonJS({
|
|
|
63826
63797
|
[Symbol.toStringTag]: { value: "Module" }
|
|
63827
63798
|
});
|
|
63828
63799
|
require_chunk_Cek0wNdY();
|
|
63829
|
-
var require_dist10 =
|
|
63830
|
-
var require_retired_settings_keys =
|
|
63800
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
63801
|
+
var require_retired_settings_keys = require_retired_settings_keys_B1ij_xtH();
|
|
63831
63802
|
var node_crypto = __require("crypto");
|
|
63832
63803
|
var _camstack_types_node = require_node();
|
|
63833
63804
|
var JOB_HISTORY = 20;
|
|
@@ -68863,7 +68834,7 @@ var require_hub_forwarder = __commonJS({
|
|
|
68863
68834
|
[Symbol.toStringTag]: { value: "Module" }
|
|
68864
68835
|
});
|
|
68865
68836
|
require_chunk_Cek0wNdY();
|
|
68866
|
-
var require_dist10 =
|
|
68837
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
68867
68838
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
68868
68839
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
68869
68840
|
var HubForwarderDestination = class {
|
|
@@ -69000,7 +68971,7 @@ var require_liveness_monitor_addon = __commonJS({
|
|
|
69000
68971
|
"use strict";
|
|
69001
68972
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
69002
68973
|
require_chunk_Cek0wNdY();
|
|
69003
|
-
var require_dist10 =
|
|
68974
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
69004
68975
|
var NO_DEVICES = "liveness:no-devices";
|
|
69005
68976
|
var ALL_OFFLINE = "liveness:all-devices-offline";
|
|
69006
68977
|
var NO_FOOTAGE_PREFIX = "liveness:no-footage:";
|
|
@@ -69190,7 +69161,7 @@ var require_local_auth_addon = __commonJS({
|
|
|
69190
69161
|
[Symbol.toStringTag]: { value: "Module" }
|
|
69191
69162
|
});
|
|
69192
69163
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
69193
|
-
var require_dist10 =
|
|
69164
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
69194
69165
|
var node_crypto = __require("crypto");
|
|
69195
69166
|
node_crypto = require_chunk.__toESM(node_crypto);
|
|
69196
69167
|
var crypto$1 = __require("crypto");
|
|
@@ -77003,7 +76974,7 @@ var require_loki_logging = __commonJS({
|
|
|
77003
76974
|
[Symbol.toStringTag]: { value: "Module" }
|
|
77004
76975
|
});
|
|
77005
76976
|
require_chunk_Cek0wNdY();
|
|
77006
|
-
var require_dist10 =
|
|
76977
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
77007
76978
|
function sanitizeLabelName(raw) {
|
|
77008
76979
|
const replaced = raw.replaceAll(/[^a-zA-Z0-9_]/g, "_");
|
|
77009
76980
|
return /^[a-zA-Z_]/.test(replaced) ? replaced : `_${replaced}`;
|
|
@@ -77568,7 +77539,7 @@ var require_native_metrics_addon = __commonJS({
|
|
|
77568
77539
|
[Symbol.toStringTag]: { value: "Module" }
|
|
77569
77540
|
});
|
|
77570
77541
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
77571
|
-
var require_dist10 =
|
|
77542
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
77572
77543
|
var node_fs_promises = __require("fs/promises");
|
|
77573
77544
|
var node_child_process = __require("child_process");
|
|
77574
77545
|
var node_util = __require("util");
|
|
@@ -79677,8 +79648,7 @@ var require_native_metrics_addon = __commonJS({
|
|
|
79677
79648
|
listAddonInstances: () => this.listAddonInstances(),
|
|
79678
79649
|
getAddonStats: (params) => this.getAddonStats(params.addonId),
|
|
79679
79650
|
listNodeProcesses: () => this.listNodeProcesses(),
|
|
79680
|
-
getLoadSeries: (params) => this.readLoadSeries(params)
|
|
79681
|
-
dumpHeapSnapshot: (params) => this.dumpHeapSnapshot(params)
|
|
79651
|
+
getLoadSeries: (params) => this.readLoadSeries(params)
|
|
79682
79652
|
};
|
|
79683
79653
|
this.applyLoadSeriesConfig();
|
|
79684
79654
|
if (this.isHub) {
|
|
@@ -80012,43 +79982,6 @@ var require_native_metrics_addon = __commonJS({
|
|
|
80012
79982
|
* and signals it; the runner writes `/tmp/heap-<sanitized nodeId>.heapsnapshot`
|
|
80013
79983
|
* and logs its memoryUsage + heap-space breakdown. '$hub' targets this process.
|
|
80014
79984
|
*/
|
|
80015
|
-
async dumpHeapSnapshot(input) {
|
|
80016
|
-
const sanitize = (nodeId2) => nodeId2.replace(/[^\w.-]/g, "_");
|
|
80017
|
-
let pid;
|
|
80018
|
-
let nodeId;
|
|
80019
|
-
if (input.addonId === "$hub") {
|
|
80020
|
-
pid = process.pid;
|
|
80021
|
-
nodeId = this.ctx.kernel.cluster?.broker?.nodeID ?? "$hub";
|
|
80022
|
-
} else {
|
|
80023
|
-
const target = (await this.listWorkerInstances()).find((w) => w.addonId === input.addonId);
|
|
80024
|
-
if (!target) return {
|
|
80025
|
-
success: false,
|
|
80026
|
-
reason: `no runner process for addon '${input.addonId}'`
|
|
80027
|
-
};
|
|
80028
|
-
pid = target.pid;
|
|
80029
|
-
nodeId = target.nodeId;
|
|
80030
|
-
}
|
|
80031
|
-
const path = `/tmp/heap-${sanitize(nodeId)}.heapsnapshot`;
|
|
80032
|
-
try {
|
|
80033
|
-
process.kill(pid, "SIGUSR2");
|
|
80034
|
-
this.ctx.logger.info("Requested heap snapshot from runner", { meta: {
|
|
80035
|
-
addonId: input.addonId,
|
|
80036
|
-
pid,
|
|
80037
|
-
path
|
|
80038
|
-
} });
|
|
80039
|
-
return {
|
|
80040
|
-
success: true,
|
|
80041
|
-
pid,
|
|
80042
|
-
path
|
|
80043
|
-
};
|
|
80044
|
-
} catch (err) {
|
|
80045
|
-
return {
|
|
80046
|
-
success: false,
|
|
80047
|
-
reason: err instanceof Error ? err.message : String(err),
|
|
80048
|
-
pid
|
|
80049
|
-
};
|
|
80050
|
-
}
|
|
80051
|
-
}
|
|
80052
79985
|
/** Raw `ps` scan returning every pid + command + resource stats. */
|
|
80053
79986
|
async runPs() {
|
|
80054
79987
|
try {
|
|
@@ -80190,7 +80123,7 @@ var require_filesystem_storage_addon = __commonJS({
|
|
|
80190
80123
|
[Symbol.toStringTag]: { value: "Module" }
|
|
80191
80124
|
});
|
|
80192
80125
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
80193
|
-
var require_dist10 =
|
|
80126
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
80194
80127
|
var node_crypto = __require("crypto");
|
|
80195
80128
|
var node_fs_promises = __require("fs/promises");
|
|
80196
80129
|
var node_path = __require("path");
|
|
@@ -81306,8 +81239,8 @@ var require_sqlite_settings_addon = __commonJS({
|
|
|
81306
81239
|
[Symbol.toStringTag]: { value: "Module" }
|
|
81307
81240
|
});
|
|
81308
81241
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
81309
|
-
var require_dist10 =
|
|
81310
|
-
var require_retired_settings_keys =
|
|
81242
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
81243
|
+
var require_retired_settings_keys = require_retired_settings_keys_B1ij_xtH();
|
|
81311
81244
|
var node_crypto = __require("crypto");
|
|
81312
81245
|
var node_fs = __require("fs");
|
|
81313
81246
|
var node_module = __require("module");
|
|
@@ -83789,7 +83722,7 @@ var require_storage_orchestrator_addon = __commonJS({
|
|
|
83789
83722
|
[Symbol.toStringTag]: { value: "Module" }
|
|
83790
83723
|
});
|
|
83791
83724
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
83792
|
-
var require_dist10 =
|
|
83725
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
83793
83726
|
var require_hub_cap_forward = require_hub_cap_forward_DmHNjbB0();
|
|
83794
83727
|
var zod = require_zod();
|
|
83795
83728
|
var node_crypto = __require("crypto");
|
|
@@ -86740,7 +86673,7 @@ var require_system_config_addon = __commonJS({
|
|
|
86740
86673
|
[Symbol.toStringTag]: { value: "Module" }
|
|
86741
86674
|
});
|
|
86742
86675
|
require_chunk_Cek0wNdY();
|
|
86743
|
-
var require_dist10 =
|
|
86676
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
86744
86677
|
var SECTION_TITLES = {
|
|
86745
86678
|
server: "Server",
|
|
86746
86679
|
auth: "Authentication"
|
|
@@ -104801,7 +104734,7 @@ var require_winston_logging = __commonJS({
|
|
|
104801
104734
|
[Symbol.toStringTag]: { value: "Module" }
|
|
104802
104735
|
});
|
|
104803
104736
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
104804
|
-
var require_dist10 =
|
|
104737
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
104805
104738
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
104806
104739
|
var node_path = __require("path");
|
|
104807
104740
|
node_path = require_chunk.__toESM(node_path);
|
|
@@ -117301,12 +117234,12 @@ var require_dist2 = __commonJS({
|
|
|
117301
117234
|
}
|
|
117302
117235
|
});
|
|
117303
117236
|
|
|
117304
|
-
// ../system/dist/manifest-system-deps-
|
|
117305
|
-
var
|
|
117306
|
-
"../system/dist/manifest-system-deps-
|
|
117237
|
+
// ../system/dist/manifest-system-deps-BbB94ozU.js
|
|
117238
|
+
var require_manifest_system_deps_BbB94ozU = __commonJS({
|
|
117239
|
+
"../system/dist/manifest-system-deps-BbB94ozU.js"(exports) {
|
|
117307
117240
|
"use strict";
|
|
117308
117241
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
117309
|
-
|
|
117242
|
+
require_dist_DkVaJ5vG();
|
|
117310
117243
|
require_hub_cap_forward_DmHNjbB0();
|
|
117311
117244
|
var node_crypto = __require("crypto");
|
|
117312
117245
|
node_crypto = require_chunk.__toESM(node_crypto);
|
|
@@ -117591,16 +117524,9 @@ var require_manifest_system_deps_DU0BvqV = __commonJS({
|
|
|
117591
117524
|
if (selected.length === 0) return "";
|
|
117592
117525
|
return ` ${selected.map((s) => `${heapSpaceField(s.name)}=${mb(s.usedBytes)}MB`).join(" ")}`;
|
|
117593
117526
|
}
|
|
117594
|
-
var RUNNER_HEAP_SNAPSHOT_ENV = "CAMSTACK_RUNNER_HEAP_SNAPSHOT";
|
|
117595
|
-
function heapSnapshotAuthorised(env = process.env) {
|
|
117596
|
-
return env[RUNNER_HEAP_SNAPSHOT_ENV] === "on";
|
|
117597
|
-
}
|
|
117598
117527
|
var defaultDeps = {
|
|
117599
117528
|
readMemory: () => process.memoryUsage(),
|
|
117600
117529
|
readSpaces: readHeapSpaces,
|
|
117601
|
-
writeSnapshot: (path) => {
|
|
117602
|
-
node_v8.writeHeapSnapshot(path);
|
|
117603
|
-
},
|
|
117604
117530
|
env: process.env
|
|
117605
117531
|
};
|
|
117606
117532
|
function emitHeapDiagnosticReport(request, deps = defaultDeps) {
|
|
@@ -117611,16 +117537,6 @@ var require_manifest_system_deps_DU0BvqV = __commonJS({
|
|
|
117611
117537
|
} catch (error) {
|
|
117612
117538
|
request.sink.warn(`[mem] node="${request.label}" space report failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
117613
117539
|
}
|
|
117614
|
-
if (!heapSnapshotAuthorised(deps.env)) {
|
|
117615
|
-
request.sink.info(`[mem] node="${request.label}" heap snapshot NOT taken \u2014 it is an admin mutation (a multi-GB write and a stop-the-world walk of the heap). The per-space breakdown above is the free half and needs no authorisation. Set ${RUNNER_HEAP_SNAPSHOT_ENV}=on for this runner and signal again to take one.`);
|
|
117616
|
-
return;
|
|
117617
|
-
}
|
|
117618
|
-
try {
|
|
117619
|
-
deps.writeSnapshot(request.snapshotPath);
|
|
117620
|
-
request.sink.info(`[mem] node="${request.label}" heap snapshot written -> ${request.snapshotPath}`);
|
|
117621
|
-
} catch (error) {
|
|
117622
|
-
request.sink.warn(`[mem] node="${request.label}" snapshot failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
117623
|
-
}
|
|
117624
117540
|
}
|
|
117625
117541
|
var HUB_MAIN_HEAP_WATCH_LABEL = "hub-main";
|
|
117626
117542
|
var HEAP_WATCH_INTERVAL_MS = 6e4;
|
|
@@ -125006,12 +124922,6 @@ var require_manifest_system_deps_DU0BvqV = __commonJS({
|
|
|
125006
124922
|
return RSS_BUDGET_RELEASE_RATIO;
|
|
125007
124923
|
}
|
|
125008
124924
|
});
|
|
125009
|
-
Object.defineProperty(exports, "RUNNER_HEAP_SNAPSHOT_ENV", {
|
|
125010
|
-
enumerable: true,
|
|
125011
|
-
get: function() {
|
|
125012
|
-
return RUNNER_HEAP_SNAPSHOT_ENV;
|
|
125013
|
-
}
|
|
125014
|
-
});
|
|
125015
124925
|
Object.defineProperty(exports, "RUNNER_HEAP_WATCH_INTERVAL_MS", {
|
|
125016
124926
|
enumerable: true,
|
|
125017
124927
|
get: function() {
|
|
@@ -125378,12 +125288,6 @@ var require_manifest_system_deps_DU0BvqV = __commonJS({
|
|
|
125378
125288
|
return getWorkerNativeCapSnapshot;
|
|
125379
125289
|
}
|
|
125380
125290
|
});
|
|
125381
|
-
Object.defineProperty(exports, "heapSnapshotAuthorised", {
|
|
125382
|
-
enumerable: true,
|
|
125383
|
-
get: function() {
|
|
125384
|
-
return heapSnapshotAuthorised;
|
|
125385
|
-
}
|
|
125386
|
-
});
|
|
125387
125291
|
Object.defineProperty(exports, "heapSpaceField", {
|
|
125388
125292
|
enumerable: true,
|
|
125389
125293
|
get: function() {
|
|
@@ -129402,7 +129306,7 @@ var require_dist3 = __commonJS({
|
|
|
129402
129306
|
"use strict";
|
|
129403
129307
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
129404
129308
|
var require_chunk = require_chunk_Cek0wNdY();
|
|
129405
|
-
var require_dist10 =
|
|
129309
|
+
var require_dist10 = require_dist_DkVaJ5vG();
|
|
129406
129310
|
var require_builtins_alerts_alerts_addon = require_alerts_addon();
|
|
129407
129311
|
require_alerts();
|
|
129408
129312
|
var require_formatter = require_formatter_DqAKDlvN();
|
|
@@ -129429,7 +129333,7 @@ var require_dist3 = __commonJS({
|
|
|
129429
129333
|
var require_builtins_winston_logging_index = require_winston_logging();
|
|
129430
129334
|
var require_file_data_plane = require_file_data_plane_DO8KbxCe();
|
|
129431
129335
|
var require_tls$1 = require_tls_BxQlomxd();
|
|
129432
|
-
var require_manifest_system_deps =
|
|
129336
|
+
var require_manifest_system_deps = require_manifest_system_deps_BbB94ozU();
|
|
129433
129337
|
var require_resource_monitor = require_resource_monitor_CdnzxBLP();
|
|
129434
129338
|
var require_custom_action_registry = require_custom_action_registry_jY0NOZK8();
|
|
129435
129339
|
var zod = require_zod();
|
|
@@ -209786,7 +209690,6 @@ globstar while`, t, d, e, f, m), this.matchOne(t.slice(d), e.slice(f), s)) retur
|
|
|
209786
209690
|
exports.RESTART_MARKER_FILE = RESTART_MARKER_FILE;
|
|
209787
209691
|
exports.RSS_BUDGET_REANNOUNCE_MIN_MS = require_manifest_system_deps.RSS_BUDGET_REANNOUNCE_MIN_MS;
|
|
209788
209692
|
exports.RSS_BUDGET_RELEASE_RATIO = require_manifest_system_deps.RSS_BUDGET_RELEASE_RATIO;
|
|
209789
|
-
exports.RUNNER_HEAP_SNAPSHOT_ENV = require_manifest_system_deps.RUNNER_HEAP_SNAPSHOT_ENV;
|
|
209790
209693
|
exports.RUNNER_HEAP_WATCH_INTERVAL_MS = require_manifest_system_deps.RUNNER_HEAP_WATCH_INTERVAL_MS;
|
|
209791
209694
|
exports.RUNNER_RSS_BUDGET_ENV = require_manifest_system_deps.RUNNER_RSS_BUDGET_ENV;
|
|
209792
209695
|
exports.RUNTIME_DEFAULTS = require_dist10.RUNTIME_DEFAULTS;
|
|
@@ -209977,7 +209880,6 @@ globstar while`, t, d, e, f, m), this.matchOne(t.slice(d), e.slice(f), s)) retur
|
|
|
209977
209880
|
exports.getWorkerDeviceRegistry = require_manifest_system_deps.getWorkerDeviceRegistry;
|
|
209978
209881
|
exports.hasDotNode = hasDotNode;
|
|
209979
209882
|
exports.hashClusterSecret = hashClusterSecret;
|
|
209980
|
-
exports.heapSnapshotAuthorised = require_manifest_system_deps.heapSnapshotAuthorised;
|
|
209981
209883
|
exports.heapSpaceField = require_manifest_system_deps.heapSpaceField;
|
|
209982
209884
|
exports.hubMainRssBudget = require_manifest_system_deps.hubMainRssBudget;
|
|
209983
209885
|
exports.installManifestNativeDeps = require_manifest_system_deps.installManifestNativeDeps;
|
|
@@ -219498,18 +219400,6 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
219498
219400
|
*/
|
|
219499
219401
|
gpuShmemBytes: zod.z.number().nullable()
|
|
219500
219402
|
}).extend({ atMs: zod.z.number() });
|
|
219501
|
-
var DumpHeapSnapshotInputSchema = zod.z.object({
|
|
219502
|
-
/** The addon whose runner should dump a heap snapshot. */
|
|
219503
|
-
addonId: zod.z.string()
|
|
219504
|
-
});
|
|
219505
|
-
var DumpHeapSnapshotResultSchema = zod.z.object({
|
|
219506
|
-
success: zod.z.boolean(),
|
|
219507
|
-
/** Path of the written .heapsnapshot inside the runner's container/host. */
|
|
219508
|
-
path: zod.z.string().optional(),
|
|
219509
|
-
/** Process pid that was signalled. */
|
|
219510
|
-
pid: zod.z.number().optional(),
|
|
219511
|
-
reason: zod.z.string().optional()
|
|
219512
|
-
});
|
|
219513
219403
|
var LoadPointSchema = zod.z.object({
|
|
219514
219404
|
/** Bucket START, or the snapshot's own timestamp when unreduced. */
|
|
219515
219405
|
atMs: zod.z.number(),
|
|
@@ -219683,19 +219573,7 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
219683
219573
|
* agent's ring alone (`durable: false`). Empty is a legitimate answer: a
|
|
219684
219574
|
* node nobody has heard from has no series, and saying so is the truth.
|
|
219685
219575
|
*/
|
|
219686
|
-
getLoadSeries: require_sleep.method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
219687
|
-
/**
|
|
219688
|
-
* Tell the addon's forked runner to write a V8 heap snapshot to disk (via
|
|
219689
|
-
* SIGUSR2 — the runner's diagnostic handler). Also logs its
|
|
219690
|
-
* `process.memoryUsage()` + heap-space breakdown. Resolves the pid from
|
|
219691
|
-
* `$process.list`, so it can only reach a runner this node spawned. Use
|
|
219692
|
-
* for deep per-addon memory attribution; copy the returned path off the
|
|
219693
|
-
* node to analyze.
|
|
219694
|
-
*/
|
|
219695
|
-
dumpHeapSnapshot: require_sleep.method(DumpHeapSnapshotInputSchema, DumpHeapSnapshotResultSchema, {
|
|
219696
|
-
kind: "mutation",
|
|
219697
|
-
auth: "admin"
|
|
219698
|
-
})
|
|
219576
|
+
getLoadSeries: require_sleep.method(GetLoadSeriesInputSchema, NodeLoadSeriesSchema)
|
|
219699
219577
|
}
|
|
219700
219578
|
};
|
|
219701
219579
|
var ModelConvertInputSchema = zod.z.object({
|
|
@@ -224140,7 +224018,8 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
224140
224018
|
"plateCrop",
|
|
224141
224019
|
"keyFrame",
|
|
224142
224020
|
"keyFrameSmall",
|
|
224143
|
-
"thumbnailSmall"
|
|
224021
|
+
"thumbnailSmall",
|
|
224022
|
+
"sceneFrame"
|
|
224144
224023
|
]);
|
|
224145
224024
|
var MediaFileRefSchema = zod.z.object({
|
|
224146
224025
|
key: zod.z.string(),
|
|
@@ -243373,12 +243252,6 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
243373
243252
|
addonId: null,
|
|
243374
243253
|
access: "view"
|
|
243375
243254
|
},
|
|
243376
|
-
"metricsProvider.dumpHeapSnapshot": {
|
|
243377
|
-
capName: "metrics-provider",
|
|
243378
|
-
capScope: "system",
|
|
243379
|
-
addonId: null,
|
|
243380
|
-
access: "create"
|
|
243381
|
-
},
|
|
243382
243255
|
"metricsProvider.getAddonStats": {
|
|
243383
243256
|
capName: "metrics-provider",
|
|
243384
243257
|
capScope: "system",
|
|
@@ -249743,8 +249616,7 @@ ${recipe.triggers.map((t, i) => emitTrigger(t, i)).join("\n\n")}
|
|
|
249743
249616
|
listAddonInstances: (input) => dispatch("metricsProvider", "listAddonInstances", "query", input),
|
|
249744
249617
|
getAddonStats: (input) => dispatch("metricsProvider", "getAddonStats", "query", input),
|
|
249745
249618
|
listNodeProcesses: (input) => dispatch("metricsProvider", "listNodeProcesses", "query", input),
|
|
249746
|
-
getLoadSeries: (input) => dispatch("metricsProvider", "getLoadSeries", "query", input)
|
|
249747
|
-
dumpHeapSnapshot: (input) => dispatch("metricsProvider", "dumpHeapSnapshot", "mutation", input)
|
|
249619
|
+
getLoadSeries: (input) => dispatch("metricsProvider", "getLoadSeries", "query", input)
|
|
249748
249620
|
},
|
|
249749
249621
|
mqttBroker: {
|
|
249750
249622
|
listBrokers: (input) => dispatch("mqttBroker", "listBrokers", "query", input),
|