@openscout/scout 0.2.109 → 0.2.110
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/README.md +206 -122
- package/bin/scoutd +0 -0
- package/dist/build-manifest.json +3 -3
- package/dist/chat.mjs +211 -30
- package/dist/client/assets/{conversation-motion-features-PYM3Yx_M.js → conversation-motion-features-BeAplMGv.js} +1 -1
- package/dist/client/assets/index-CMbTY75G.js +91 -0
- package/dist/client/assets/index-DYfh8pn_.css +1 -0
- package/dist/client/index.html +2 -2
- package/dist/main.mjs +7628 -3047
- package/dist/node/main.mjs +671 -115
- package/dist/openscout-terminal-relay.mjs +12 -3
- package/dist/pairing-runtime-controller.mjs +17539 -6059
- package/dist/runtime/base-daemon.mjs +410 -54
- package/dist/runtime/broker-daemon.mjs +67463 -52744
- package/dist/runtime/broker-process-manager.mjs +41 -14
- package/dist/runtime/mesh-discover.mjs +39 -13
- package/dist/scout-control-plane-web.mjs +80047 -58867
- package/dist/statusline.mjs +10 -3
- package/dist/update-helper.mjs +1105 -69
- package/package.json +2 -2
- package/server.json +2 -2
- package/dist/client/assets/index-DGR8nSEY.js +0 -88
- package/dist/client/assets/index-rA7f7Rt0.css +0 -1
|
@@ -2752,6 +2752,7 @@ async function readTmuxPaneLocal(key, ctx) {
|
|
|
2752
2752
|
try {
|
|
2753
2753
|
if (parsed.kind === "detail") {
|
|
2754
2754
|
const { stdout: stdout2 } = await execProbeFile(ctx, tmuxBin(), [
|
|
2755
|
+
"-u",
|
|
2755
2756
|
...tmuxSocketArgs(parsed.socketPath),
|
|
2756
2757
|
"display-message",
|
|
2757
2758
|
"-p",
|
|
@@ -3920,7 +3921,10 @@ var pty = (() => {
|
|
|
3920
3921
|
return require3("node-pty");
|
|
3921
3922
|
}
|
|
3922
3923
|
})();
|
|
3923
|
-
|
|
3924
|
+
function defaultOrphanTtlMs() {
|
|
3925
|
+
const raw = Number(process.env.OPENSCOUT_RELAY_ORPHAN_TTL_MS || 0);
|
|
3926
|
+
return Number.isFinite(raw) && raw > 0 ? raw : 0;
|
|
3927
|
+
}
|
|
3924
3928
|
var MAX_BUFFER_SIZE = 512 * 1024;
|
|
3925
3929
|
var SAFE_TRUNCATION_WINDOW = 4096;
|
|
3926
3930
|
var sessions2 = new Map;
|
|
@@ -4460,7 +4464,7 @@ async function createSession(ws, msg) {
|
|
|
4460
4464
|
send(ws, { type: "session:error", error: `Failed to spawn terminal: ${message}` });
|
|
4461
4465
|
return null;
|
|
4462
4466
|
}
|
|
4463
|
-
const orphanTTL = msg.orphanTTL && msg.orphanTTL > 0 ? msg.orphanTTL :
|
|
4467
|
+
const orphanTTL = msg.orphanTTL && msg.orphanTTL > 0 ? msg.orphanTTL : defaultOrphanTtlMs();
|
|
4464
4468
|
const session = {
|
|
4465
4469
|
id,
|
|
4466
4470
|
pty: ptyProcess,
|
|
@@ -4554,9 +4558,14 @@ function detachSession(session) {
|
|
|
4554
4558
|
session.ws = null;
|
|
4555
4559
|
if (session.exited) {
|
|
4556
4560
|
scheduleReap(session, 5000);
|
|
4557
|
-
} else {
|
|
4561
|
+
} else if (session.orphanTTL > 0) {
|
|
4558
4562
|
scheduleReap(session, session.orphanTTL);
|
|
4559
4563
|
console.log(`[relay] Session ${session.id} detached (orphaned for ${session.orphanTTL / 1000}s)`);
|
|
4564
|
+
} else {
|
|
4565
|
+
if (session.reapTimer)
|
|
4566
|
+
clearTimeout(session.reapTimer);
|
|
4567
|
+
session.reapTimer = null;
|
|
4568
|
+
console.log(`[relay] Session ${session.id} detached (kept until exit)`);
|
|
4560
4569
|
}
|
|
4561
4570
|
}
|
|
4562
4571
|
function scheduleReap(session, delay) {
|