@deepseek-ai/dsh-ssh 0.1.6-alpha.2 → 0.1.7-alpha.2
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/lib/helper.js +10 -2
- package/lib/types/helper-processes.d.ts +2 -0
- package/package.json +30 -30
package/lib/helper.js
CHANGED
|
@@ -17,7 +17,7 @@ import { LocalSandboxProvider } from "@deepseek-ai/dsh-sandbox-local";
|
|
|
17
17
|
import { SandboxPolicyService } from "@deepseek-ai/dsh-sandbox-policy";
|
|
18
18
|
import { SessionProjectionRegistry } from "@deepseek-ai/dsh-session-projection";
|
|
19
19
|
import { finished, pipeline } from "node:stream/promises";
|
|
20
|
-
import { OutputCollector, prepareManagedProcessBinding } from "@deepseek-ai/dsh-subprocess-local/output";
|
|
20
|
+
import { OutputCollector, logSpillFailure, prepareManagedProcessBinding } from "@deepseek-ai/dsh-subprocess-local/output";
|
|
21
21
|
//#region lib/types/helper-processes.js
|
|
22
22
|
/** Remote process ownership and separately forwarded byte streams. */
|
|
23
23
|
/** Join TLS, underlying socket, and listener closure before removing their directory. */
|
|
@@ -90,11 +90,14 @@ var RemoteProcesses = class {
|
|
|
90
90
|
completed = /* @__PURE__ */ new Map();
|
|
91
91
|
cleanups = /* @__PURE__ */ new Set();
|
|
92
92
|
closing = false;
|
|
93
|
+
/** Spill failures reach the helper's logger; the remote caller then receives the tail without a spill path. */
|
|
94
|
+
reportSpillFailure;
|
|
93
95
|
constructor(ctx, root, limit, preparationMs) {
|
|
94
96
|
this.ctx = ctx;
|
|
95
97
|
this.root = root;
|
|
96
98
|
this.limit = limit;
|
|
97
99
|
this.preparationMs = preparationMs;
|
|
100
|
+
this.reportSpillFailure = logSpillFailure(ctx.logger, "ssh helper");
|
|
98
101
|
}
|
|
99
102
|
/**
|
|
100
103
|
* Allocate private stream listeners; no target executes until start().
|
|
@@ -242,7 +245,12 @@ var RemoteProcesses = class {
|
|
|
242
245
|
const mode = stdio[name];
|
|
243
246
|
const socket = await record.endpoints[name].connected;
|
|
244
247
|
if (typeof mode === "object") {
|
|
245
|
-
const
|
|
248
|
+
const binding = prepareManagedProcessBinding({ onSpillFailure: this.reportSpillFailure });
|
|
249
|
+
const collector = new OutputCollector(mode.maxBytes, name, mode.spill === void 0 ? void 0 : {
|
|
250
|
+
maxBytes: mode.spill.maxBytes,
|
|
251
|
+
dir: binding.spillDir,
|
|
252
|
+
onFailure: binding.onSpillFailure
|
|
253
|
+
});
|
|
246
254
|
collectors[name] = collector;
|
|
247
255
|
const forwarder = new CollectedOutputForwarder(socket, collector, mode.maxBytes);
|
|
248
256
|
forwarders.push(forwarder);
|
|
@@ -11,6 +11,8 @@ export declare class RemoteProcesses {
|
|
|
11
11
|
private readonly completed;
|
|
12
12
|
private readonly cleanups;
|
|
13
13
|
private closing;
|
|
14
|
+
/** Spill failures reach the helper's logger; the remote caller then receives the tail without a spill path. */
|
|
15
|
+
private readonly reportSpillFailure;
|
|
14
16
|
constructor(ctx: Context, root: string, limit: number, preparationMs: number);
|
|
15
17
|
/**
|
|
16
18
|
* Allocate private stream listeners; no target executes until start().
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepseek-ai/dsh-ssh",
|
|
3
3
|
"description": "Shared OpenSSH connection and versioned POSIX remote helper",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.7-alpha.2",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -45,39 +45,39 @@
|
|
|
45
45
|
],
|
|
46
46
|
"license": "MIT",
|
|
47
47
|
"peerDependencies": {
|
|
48
|
-
"@deepseek-ai/
|
|
49
|
-
"@deepseek-ai/dsh-fs
|
|
50
|
-
"@deepseek-ai/dsh-
|
|
51
|
-
"@deepseek-ai/
|
|
52
|
-
"@deepseek-ai/dsh-subprocess
|
|
53
|
-
"@deepseek-ai/dsh-
|
|
54
|
-
"@deepseek-ai/dsh-sandbox": "
|
|
55
|
-
"@deepseek-ai/dsh-sandbox-
|
|
56
|
-
"@deepseek-ai/dsh-sandbox-
|
|
57
|
-
"@deepseek-ai/dsh-brand": "
|
|
58
|
-
"@deepseek-ai/dsh-session-projection": "
|
|
48
|
+
"@deepseek-ai/cordis": "~4.0.4",
|
|
49
|
+
"@deepseek-ai/dsh-fs": "0.1.7-alpha.2",
|
|
50
|
+
"@deepseek-ai/dsh-fs-local": "0.1.7-alpha.2",
|
|
51
|
+
"@deepseek-ai/dsh-fs-sandbox": "0.1.7-alpha.2",
|
|
52
|
+
"@deepseek-ai/dsh-subprocess": "0.1.7-alpha.2",
|
|
53
|
+
"@deepseek-ai/dsh-subprocess-local": "0.1.7-alpha.2",
|
|
54
|
+
"@deepseek-ai/dsh-sandbox": "0.1.7-alpha.2",
|
|
55
|
+
"@deepseek-ai/dsh-sandbox-local": "0.1.7-alpha.2",
|
|
56
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.1.7-alpha.2",
|
|
57
|
+
"@deepseek-ai/dsh-brand": "0.1.7-alpha.2",
|
|
58
|
+
"@deepseek-ai/dsh-session-projection": "0.1.7-alpha.2"
|
|
59
59
|
},
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"zod": "^4.4.3",
|
|
62
|
-
"@deepseek-ai/schemastery": "
|
|
62
|
+
"@deepseek-ai/schemastery": "~3.18.4"
|
|
63
63
|
},
|
|
64
64
|
"devDependencies": {
|
|
65
|
-
"@deepseek-ai/cordis": "
|
|
66
|
-
"@deepseek-ai/dsh-fs": "
|
|
67
|
-
"@deepseek-ai/dsh-fs
|
|
68
|
-
"@deepseek-ai/dsh-
|
|
69
|
-
"@deepseek-ai/dsh-
|
|
70
|
-
"@deepseek-ai/dsh-subprocess-local": "
|
|
71
|
-
"@deepseek-ai/dsh-sandbox": "
|
|
72
|
-
"@deepseek-ai/dsh-sandbox-local": "
|
|
73
|
-
"@deepseek-ai/dsh-sandbox-policy": "
|
|
74
|
-
"@deepseek-ai/dsh-session-projection": "
|
|
75
|
-
"@deepseek-ai/dsh-ptc-runtime-node": "
|
|
76
|
-
"@deepseek-ai/dsh-
|
|
77
|
-
"@deepseek-ai/dsh-
|
|
78
|
-
"@deepseek-ai/dsh-
|
|
79
|
-
"@deepseek-ai/dsh-
|
|
80
|
-
"@deepseek-ai/dsh-
|
|
81
|
-
"@deepseek-ai/dsh-
|
|
65
|
+
"@deepseek-ai/cordis": "~4.0.4",
|
|
66
|
+
"@deepseek-ai/dsh-fs-local": "0.1.7-alpha.2",
|
|
67
|
+
"@deepseek-ai/dsh-fs": "0.1.7-alpha.2",
|
|
68
|
+
"@deepseek-ai/dsh-fs-sandbox": "0.1.7-alpha.2",
|
|
69
|
+
"@deepseek-ai/dsh-subprocess": "0.1.7-alpha.2",
|
|
70
|
+
"@deepseek-ai/dsh-subprocess-local": "0.1.7-alpha.2",
|
|
71
|
+
"@deepseek-ai/dsh-sandbox": "0.1.7-alpha.2",
|
|
72
|
+
"@deepseek-ai/dsh-sandbox-local": "0.1.7-alpha.2",
|
|
73
|
+
"@deepseek-ai/dsh-sandbox-policy": "0.1.7-alpha.2",
|
|
74
|
+
"@deepseek-ai/dsh-session-projection": "0.1.7-alpha.2",
|
|
75
|
+
"@deepseek-ai/dsh-ptc-runtime-node": "0.1.7-alpha.2",
|
|
76
|
+
"@deepseek-ai/dsh-subprocess-ssh": "0.1.7-alpha.2",
|
|
77
|
+
"@deepseek-ai/dsh-sandbox-ssh": "0.1.7-alpha.2",
|
|
78
|
+
"@deepseek-ai/dsh-lsp": "0.1.7-alpha.2",
|
|
79
|
+
"@deepseek-ai/dsh-fs-ssh": "0.1.7-alpha.2",
|
|
80
|
+
"@deepseek-ai/dsh-lsp-stdio": "0.1.7-alpha.2",
|
|
81
|
+
"@deepseek-ai/dsh-brand": "0.1.7-alpha.2"
|
|
82
82
|
}
|
|
83
83
|
}
|