@hy-sde-org/dsh-code-runtime-kernels 0.2.0-rc.2.2 → 0.2.1-alpha.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/core/kernel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/core/kernel.ts"],"names":[],"mappings":"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"}
@@ -10,11 +10,12 @@
10
10
  * @module @hy-sde-org/dsh-code-runtime-kernels/src/core/kernel
11
11
  */
12
12
  import { spawn } from 'node:child_process';
13
- import { mkdirSync, rmSync, writeFileSync } from 'node:fs';
14
- import { tmpdir } from 'node:os';
13
+ import { rmSync, writeFileSync } from 'node:fs';
15
14
  import { join } from 'node:path';
16
15
  import { fileURLToPath } from 'node:url';
17
16
  import { snapshotJsonValue } from '@deepseek-ai/dsh-util-values';
17
+ import { LineSplitter } from "./lines.js";
18
+ import { resolveRunnerStagingDir } from "./staging.js";
18
19
  /** The Node.js runner shipped as a package file (raw source in development, compiled ESM in the output). */
19
20
  const RUNNER_PATH = fileURLToPath(new URL(new URL(import.meta.url).pathname.endsWith('.ts') ? '../nodejs/runner.ts' : '../nodejs/runner.js', import.meta.url));
20
21
  /** Profile for the JavaScript kernel; `command` is the resolved node executable. */
@@ -29,8 +30,8 @@ export function nodejsKernelProfile(command) {
29
30
  label: 'nodejs kernel',
30
31
  };
31
32
  }
32
- /** Shared scratch root for staged runner scripts (inside the OS temp dir). */
33
- const runnerDir = join(tmpdir(), 'dsh-kernels');
33
+ /** Base name of the runner staging directory under the OS temp dir (the resolver adds the per-uid suffix). */
34
+ const RUNNER_DIR_NAME = 'dsh-kernels';
34
35
  /** Render an unknown thrown value as a string, Error or not. */
35
36
  function messageOf(error) {
36
37
  return error instanceof Error ? error.message : String(error);
@@ -172,7 +173,7 @@ export class KernelHost {
172
173
  #proc;
173
174
  #stagedPath;
174
175
  #writeChain = Promise.resolve();
175
- #readBuffer = '';
176
+ #splitter = new LineSplitter();
176
177
  #runs = new Map();
177
178
  #ready;
178
179
  #settleReady;
@@ -192,11 +193,11 @@ export class KernelHost {
192
193
  const argv = [...profile.argvPrefix];
193
194
  // A runner may be a shipped file, or embedded source staged to a scratch
194
195
  // file per spawn (tempdirs are shared host state; the embedded code may
195
- // change between versions). Only the staged variant touches the disk.
196
+ // change between versions). Only the staged variant touches the disk, in
197
+ // an owner-private per-uid dir re-validated on every spawn.
196
198
  let stagedPath;
197
199
  if (profile.stagedSource !== undefined) {
198
- mkdirSync(runnerDir, { recursive: true });
199
- stagedPath = join(runnerDir, `runner-${process.pid}-${Math.random().toString(36).slice(2, 10)}${profile.stagedSuffix ?? ''}`);
200
+ stagedPath = join(resolveRunnerStagingDir(RUNNER_DIR_NAME), `runner-${process.pid}-${Math.random().toString(36).slice(2, 10)}${profile.stagedSuffix ?? ''}`);
200
201
  try {
201
202
  writeFileSync(stagedPath, profile.stagedSource, 'utf8');
202
203
  }
@@ -265,9 +266,11 @@ export class KernelHost {
265
266
  this.#stagedPath = stagedPath;
266
267
  this.#interruptEscalationMs = config.interruptEscalationMs;
267
268
  this.#shutdownGraceMs = config.shutdownGraceMs;
268
- proc.stdout?.setEncoding('utf8');
269
269
  proc.stderr?.setEncoding('utf8');
270
+ // stdout stays raw bytes: frames are split at the byte level (lines.ts),
271
+ // decoded per complete line — multibyte-safe across chunk boundaries.
270
272
  proc.stdout?.on('data', (chunk) => { this.#ingest(chunk); });
273
+ proc.stdout?.on('end', () => { this.#ingestEnd(); });
271
274
  proc.stderr?.on('data', (chunk) => { this.#ingestStray(chunk); });
272
275
  // A failed write to a dead kernel's stdin surfaces twice: through the
273
276
  // write callback (the failing call owns that rejection) and as an 'error'
@@ -537,27 +540,30 @@ export class KernelHost {
537
540
  }
538
541
  }
539
542
  #ingest(chunk) {
540
- this.#readBuffer += chunk;
541
- for (;;) {
542
- const nl = this.#readBuffer.indexOf('\n');
543
- if (nl < 0)
544
- break;
545
- const line = this.#readBuffer.slice(0, nl);
546
- this.#readBuffer = this.#readBuffer.slice(nl + 1);
547
- if (!line.trim())
548
- continue;
549
- let raw;
550
- try {
551
- raw = JSON.parse(line);
552
- }
553
- catch {
554
- continue;
555
- }
556
- const frame = parseKernelFrame(raw);
557
- if (frame === undefined)
558
- continue;
559
- this.#handleFrame(frame);
543
+ for (const line of this.#splitter.push(chunk))
544
+ this.#handleFrameLine(line);
545
+ }
546
+ /** The kernel's stdout ended: a trailing unterminated line is still a frame. */
547
+ #ingestEnd() {
548
+ const line = this.#splitter.flush();
549
+ if (line !== undefined)
550
+ this.#handleFrameLine(line);
551
+ }
552
+ #handleFrameLine(line) {
553
+ if (!line.trim())
554
+ return;
555
+ let raw;
556
+ try {
557
+ raw = JSON.parse(line);
560
558
  }
559
+ catch (error) {
560
+ console.warn(`dsh-code-runtime-kernels: ${this.profile.label} emitted invalid JSON (first 200 chars): ${JSON.stringify(line.slice(0, 200))} (${messageOf(error)})`);
561
+ return;
562
+ }
563
+ const frame = parseKernelFrame(raw);
564
+ if (frame === undefined)
565
+ return;
566
+ this.#handleFrame(frame);
561
567
  }
562
568
  #handleFrame(frame) {
563
569
  switch (frame.type) {
@@ -1 +1 @@
1
- {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/core/kernel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kernel.js","sourceRoot":"","sources":["../../src/core/kernel.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Byte-level LF splitter for kernel frame streams — the perf port of omp
3
+ * 69580d44c0 (#14704). The old readers accumulated decoded strings and
4
+ * tail-joined the buffer on every chunk, re-copying the whole buffered prefix
5
+ * per chunk; this splitter scans each chunk for 0x0A and appends only the
6
+ * trailing suffix, so appending N chunks costs O(total bytes) instead of
7
+ * O(chunks × buffered bytes). Lines are decoded only once complete — a UTF-8
8
+ * sequence never contains a line break, so per-line decode is multibyte-safe
9
+ * across chunk boundaries — and each line is its own string, aliasing neither
10
+ * the input chunk nor the internal buffer.
11
+ * @module @hy-sde-org/dsh-code-runtime-kernels/src/core/lines
12
+ */
13
+ /**
14
+ * Splits a kernel frame stream into decoded lines, pushed chunk by chunk.
15
+ * Blank lines are yielded; callers skip them before JSON parsing.
16
+ */
17
+ export declare class LineSplitter {
18
+ #private;
19
+ /**
20
+ * Split one chunk, returning every complete line it ends, decoded UTF-8 and
21
+ * excluding the terminators. A chunk boundary inside a line keeps the
22
+ * partial bytes buffered until their terminator arrives.
23
+ * @param chunk - Next bytes from the frame stream.
24
+ * @returns The chunk's complete lines, in order.
25
+ */
26
+ push(chunk: Uint8Array): string[];
27
+ /**
28
+ * The trailing unterminated line at end of stream, or `undefined`; the
29
+ * buffer is empty afterwards either way.
30
+ * @returns The final partial line, when one was buffered.
31
+ */
32
+ flush(): string | undefined;
33
+ }
34
+ //# sourceMappingURL=lines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lines.d.ts","sourceRoot":"","sources":["../../src/core/lines.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AASH;;;GAGG;AACH,qBAAa,YAAY;;IAKvB;;;;;;OAMG;IACH,IAAI,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAqBjC;;;;OAIG;IACH,KAAK,IAAI,MAAM,GAAG,SAAS;CAgC5B"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Byte-level LF splitter for kernel frame streams — the perf port of omp
3
+ * 69580d44c0 (#14704). The old readers accumulated decoded strings and
4
+ * tail-joined the buffer on every chunk, re-copying the whole buffered prefix
5
+ * per chunk; this splitter scans each chunk for 0x0A and appends only the
6
+ * trailing suffix, so appending N chunks costs O(total bytes) instead of
7
+ * O(chunks × buffered bytes). Lines are decoded only once complete — a UTF-8
8
+ * sequence never contains a line break, so per-line decode is multibyte-safe
9
+ * across chunk boundaries — and each line is its own string, aliasing neither
10
+ * the input chunk nor the internal buffer.
11
+ * @module @hy-sde-org/dsh-code-runtime-kernels/src/core/lines
12
+ */
13
+ import { Buffer } from 'node:buffer';
14
+ /** Capacity above this is released once drained, so one oversized frame does not pin its peak buffer for the stream's life. */
15
+ const RETAIN_BYTES = 1024 * 1024;
16
+ const LF = 0x0a;
17
+ /**
18
+ * Splits a kernel frame stream into decoded lines, pushed chunk by chunk.
19
+ * Blank lines are yielded; callers skip them before JSON parsing.
20
+ */
21
+ export class LineSplitter {
22
+ #buffer = Buffer.allocUnsafe(0);
23
+ #length = 0;
24
+ #decoder = new TextDecoder();
25
+ /**
26
+ * Split one chunk, returning every complete line it ends, decoded UTF-8 and
27
+ * excluding the terminators. A chunk boundary inside a line keeps the
28
+ * partial bytes buffered until their terminator arrives.
29
+ * @param chunk - Next bytes from the frame stream.
30
+ * @returns The chunk's complete lines, in order.
31
+ */
32
+ push(chunk) {
33
+ const lines = [];
34
+ let position = 0;
35
+ while (position < chunk.length) {
36
+ const nl = chunk.indexOf(LF, position);
37
+ if (nl === -1) {
38
+ this.#append(chunk.subarray(position));
39
+ return lines;
40
+ }
41
+ const suffix = chunk.subarray(position, nl);
42
+ position = nl + 1;
43
+ if (this.#length === 0) {
44
+ lines.push(this.#decoder.decode(suffix));
45
+ }
46
+ else {
47
+ this.#append(suffix);
48
+ lines.push(this.#drain());
49
+ }
50
+ }
51
+ return lines;
52
+ }
53
+ /**
54
+ * The trailing unterminated line at end of stream, or `undefined`; the
55
+ * buffer is empty afterwards either way.
56
+ * @returns The final partial line, when one was buffered.
57
+ */
58
+ flush() {
59
+ if (this.#length === 0)
60
+ return undefined;
61
+ return this.#drain();
62
+ }
63
+ #append(bytes) {
64
+ const size = bytes.length;
65
+ if (size === 0)
66
+ return;
67
+ if (this.#length + size > this.#buffer.length) {
68
+ const next = Buffer.allocUnsafe(Math.max(this.#length + size, this.#buffer.length * 2));
69
+ this.#buffer.copy(next, 0, 0, this.#length);
70
+ this.#buffer = next;
71
+ }
72
+ this.#buffer.set(bytes, this.#length);
73
+ this.#length += size;
74
+ }
75
+ #drain() {
76
+ const line = this.#decoder.decode(this.#buffer.subarray(0, this.#length));
77
+ const drained = this.#length;
78
+ this.#length = 0;
79
+ this.#releaseCapacity(drained);
80
+ return line;
81
+ }
82
+ #releaseCapacity(drained) {
83
+ if (this.#buffer.length <= RETAIN_BYTES)
84
+ return;
85
+ // The just-drained line still filled ≥25% of the buffer: a stream of
86
+ // oversized frames would re-grow per line.
87
+ if (drained * 4 > this.#buffer.length)
88
+ return;
89
+ this.#buffer = Buffer.allocUnsafe(0);
90
+ }
91
+ }
92
+ //# sourceMappingURL=lines.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lines.js","sourceRoot":"","sources":["../../src/core/lines.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Owner-private staging for kernel runner scripts (omp 3664bbf684 +
3
+ * 4bd3dc5637). Runner sources are staged under the OS temp dir so the
4
+ * interpreter can load them as normal files. The temp dir is shared between
5
+ * accounts: a fixed directory name is owned by whichever account creates it
6
+ * first, and every other account's runner write then fails with EACCES. The
7
+ * per-uid name that fixes that is still predictable, so another account can
8
+ * squat it as a symlink, a plain file, or a foreign-owned directory — either
9
+ * to block staging or to plant a runner file for us to execute. Staging
10
+ * therefore resolves a per-uid directory created 0700, validates it through a
11
+ * pinned fd, and falls back to a fresh private mkdtemp dir when the name is
12
+ * not ours.
13
+ * @module @hy-sde-org/dsh-code-runtime-kernels/src/core/staging
14
+ */
15
+ /** What a reused staging directory must look like; `null` from the checker when it is safe. */
16
+ export interface OwnerPrivateDirStat {
17
+ isSymlink: boolean;
18
+ isDir: boolean;
19
+ uid: number;
20
+ mode: number;
21
+ }
22
+ /**
23
+ * Rejection reason for a staging directory reused from the shared temp base,
24
+ * or `null` when it is a real directory owned by `expectedUid` with no
25
+ * group/other access. Pure so the rejection matrix is testable without root.
26
+ * @param stat - Observed directory facts (from `fstat` through a pinned fd, or synthetic in tests).
27
+ * @param expectedUid - The current account's uid, or `undefined` when the platform has none.
28
+ * @returns The reason the directory must be refused, or `null`.
29
+ */
30
+ export declare function ownerPrivateDirError(stat: OwnerPrivateDirStat, expectedUid: number | undefined): string | null;
31
+ /**
32
+ * Validate a directory pulled from the shared temp base, where another local
33
+ * user may have created the path first.
34
+ *
35
+ * Opens the final path component with `O_NOFOLLOW | O_DIRECTORY` so a symlink
36
+ * or non-directory is refused atomically at open time, then inspects and
37
+ * normalizes that one pinned inode through the fd (`fstat`/`fchmod`) — never a
38
+ * second pathname lookup. This closes the swap window where another local user
39
+ * could replace the entry with a symlink between two `stat`s and slip a
40
+ * victim-owned 0700 target past the checks (omp #9070). POSIX only: Windows
41
+ * lacks `O_NOFOLLOW`/`O_DIRECTORY`, so callers on it keep a plain `mkdir`
42
+ * (the per-user temp dir already isolates accounts there).
43
+ * @param dir - Directory to validate.
44
+ * @param label - Human-readable directory role prefixed to the thrown message.
45
+ * @throws When the directory is a symlink, not a directory, foreign-owned, or
46
+ * still not owner-private after normalization.
47
+ */
48
+ export declare function assertOwnerPrivateDir(dir: string, label: string): void;
49
+ /**
50
+ * Resolve the staging directory for runner scripts: `<dirName>-<uid>` under
51
+ * the OS temp dir, created 0700 and validated with
52
+ * {@link assertOwnerPrivateDir}; a squatted name falls back to a fresh private
53
+ * mkdtemp dir for this process. Called once per spawn (the fork stages per
54
+ * spawn instead of memoizing), so an existing dir is re-validated every time.
55
+ * @param dirName - Base directory name (unique per purpose).
56
+ * @returns A writable directory owned by the current account.
57
+ */
58
+ export declare function resolveRunnerStagingDir(dirName: string): string;
59
+ //# sourceMappingURL=staging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staging.d.ts","sourceRoot":"","sources":["../../src/core/staging.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,+FAA+F;AAC/F,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,OAAO,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;CACb;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAQ9G;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CA2CtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAmB/D"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Owner-private staging for kernel runner scripts (omp 3664bbf684 +
3
+ * 4bd3dc5637). Runner sources are staged under the OS temp dir so the
4
+ * interpreter can load them as normal files. The temp dir is shared between
5
+ * accounts: a fixed directory name is owned by whichever account creates it
6
+ * first, and every other account's runner write then fails with EACCES. The
7
+ * per-uid name that fixes that is still predictable, so another account can
8
+ * squat it as a symlink, a plain file, or a foreign-owned directory — either
9
+ * to block staging or to plant a runner file for us to execute. Staging
10
+ * therefore resolves a per-uid directory created 0700, validates it through a
11
+ * pinned fd, and falls back to a fresh private mkdtemp dir when the name is
12
+ * not ours.
13
+ * @module @hy-sde-org/dsh-code-runtime-kernels/src/core/staging
14
+ */
15
+ import { closeSync, constants, fchmodSync, fstatSync, lstatSync, mkdirSync, mkdtempSync, openSync } from 'node:fs';
16
+ import { tmpdir } from 'node:os';
17
+ import { join } from 'node:path';
18
+ /**
19
+ * Rejection reason for a staging directory reused from the shared temp base,
20
+ * or `null` when it is a real directory owned by `expectedUid` with no
21
+ * group/other access. Pure so the rejection matrix is testable without root.
22
+ * @param stat - Observed directory facts (from `fstat` through a pinned fd, or synthetic in tests).
23
+ * @param expectedUid - The current account's uid, or `undefined` when the platform has none.
24
+ * @returns The reason the directory must be refused, or `null`.
25
+ */
26
+ export function ownerPrivateDirError(stat, expectedUid) {
27
+ if (stat.isSymlink)
28
+ return 'is a symlink';
29
+ if (!stat.isDir)
30
+ return 'is not a directory';
31
+ if (expectedUid !== undefined && stat.uid !== expectedUid) {
32
+ return `is owned by uid ${stat.uid}, not ${expectedUid}`;
33
+ }
34
+ if ((stat.mode & 0o777) !== 0o700)
35
+ return `must be mode 0700, got ${(stat.mode & 0o777).toString(8)}`;
36
+ return null;
37
+ }
38
+ /**
39
+ * Validate a directory pulled from the shared temp base, where another local
40
+ * user may have created the path first.
41
+ *
42
+ * Opens the final path component with `O_NOFOLLOW | O_DIRECTORY` so a symlink
43
+ * or non-directory is refused atomically at open time, then inspects and
44
+ * normalizes that one pinned inode through the fd (`fstat`/`fchmod`) — never a
45
+ * second pathname lookup. This closes the swap window where another local user
46
+ * could replace the entry with a symlink between two `stat`s and slip a
47
+ * victim-owned 0700 target past the checks (omp #9070). POSIX only: Windows
48
+ * lacks `O_NOFOLLOW`/`O_DIRECTORY`, so callers on it keep a plain `mkdir`
49
+ * (the per-user temp dir already isolates accounts there).
50
+ * @param dir - Directory to validate.
51
+ * @param label - Human-readable directory role prefixed to the thrown message.
52
+ * @throws When the directory is a symlink, not a directory, foreign-owned, or
53
+ * still not owner-private after normalization.
54
+ */
55
+ export function assertOwnerPrivateDir(dir, label) {
56
+ const uid = process.getuid?.();
57
+ let fd;
58
+ try {
59
+ fd = openSync(dir, constants.O_RDONLY | constants.O_NOFOLLOW | constants.O_DIRECTORY);
60
+ }
61
+ catch (error) {
62
+ const code = error.code;
63
+ // O_NOFOLLOW rejects a symlinked final component; kernels report it as
64
+ // ELOOP or (with O_DIRECTORY) ENOTDIR. The entry is already refused —
65
+ // lstat only labels the failure precisely, so a swap after this point
66
+ // cannot weaken the (already-final) rejection.
67
+ if (code === 'ELOOP' || code === 'ENOTDIR') {
68
+ let isSymlink = false;
69
+ try {
70
+ isSymlink = lstatSync(dir).isSymbolicLink();
71
+ }
72
+ catch {
73
+ // The open rejection stands on its own; the label is best-effort.
74
+ }
75
+ throw new Error(`${label} ${dir} ${isSymlink ? 'is a symlink' : 'is not a directory'}`);
76
+ }
77
+ throw error;
78
+ }
79
+ try {
80
+ let stat = fstatSync(fd);
81
+ // Normalize perms on the pinned inode only when it is ours; never fchmod
82
+ // a directory another user owns.
83
+ if ((uid === undefined || stat.uid === uid) && (stat.mode & 0o777) !== 0o700) {
84
+ try {
85
+ fchmodSync(fd, 0o700);
86
+ stat = fstatSync(fd);
87
+ }
88
+ catch {
89
+ // The post-chmod stat below still decides; a failed chmod cannot
90
+ // manufacture access the checks would reject.
91
+ }
92
+ }
93
+ const reason = ownerPrivateDirError({ isSymlink: false, isDir: stat.isDirectory(), uid: stat.uid, mode: stat.mode }, uid);
94
+ if (reason !== null)
95
+ throw new Error(`${label} ${dir} ${reason}`);
96
+ }
97
+ finally {
98
+ closeSync(fd);
99
+ }
100
+ }
101
+ /**
102
+ * Resolve the staging directory for runner scripts: `<dirName>-<uid>` under
103
+ * the OS temp dir, created 0700 and validated with
104
+ * {@link assertOwnerPrivateDir}; a squatted name falls back to a fresh private
105
+ * mkdtemp dir for this process. Called once per spawn (the fork stages per
106
+ * spawn instead of memoizing), so an existing dir is re-validated every time.
107
+ * @param dirName - Base directory name (unique per purpose).
108
+ * @returns A writable directory owned by the current account.
109
+ */
110
+ export function resolveRunnerStagingDir(dirName) {
111
+ const uid = process.getuid?.();
112
+ // No uid (Windows): the temp dir is already per-user, and O_NOFOLLOW is
113
+ // unavailable, so the name keeps its plain form with no guard.
114
+ if (uid === undefined) {
115
+ const dir = join(tmpdir(), dirName);
116
+ mkdirSync(dir, { recursive: true });
117
+ return dir;
118
+ }
119
+ const dir = join(tmpdir(), `${dirName}-${uid}`);
120
+ try {
121
+ mkdirSync(dir, { recursive: true, mode: 0o700 });
122
+ assertOwnerPrivateDir(dir, 'Runner staging directory');
123
+ return dir;
124
+ }
125
+ catch (error) {
126
+ const message = error instanceof Error ? error.message : String(error);
127
+ console.warn(`dsh-code-runtime-kernels: runner staging dir ${JSON.stringify(dir)} is unusable (${message}); staging in a fresh private dir`);
128
+ return mkdtempSync(`${dir}-`);
129
+ }
130
+ }
131
+ //# sourceMappingURL=staging.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staging.js","sourceRoot":"","sources":["../../src/core/staging.ts"],"names":[],"mappings":"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"}
@@ -345,16 +345,61 @@ async function runCell(code, run, namespaces) {
345
345
  }
346
346
  }
347
347
  // --- wire loop ---------------------------------------------------------------
348
- let readBuffer = '';
349
- process.stdin.setEncoding('utf8');
348
+ /* jscpd:ignore-start — the runner must stay self-contained (no imports of
349
+ other package sources), so this mirrors src/core/lines.ts in reduced,
350
+ push-only form: scan each chunk for 0x0A, buffer only the trailing suffix,
351
+ and decode per complete line (a UTF-8 sequence never contains a line
352
+ break, so per-line decode is multibyte-safe across chunk boundaries). No
353
+ trailing-line flush at stdin end, mirroring upstream's runner-side
354
+ readers: the host only closes the pipe at shutdown. */
355
+ const FRAME_LF = 0x0a;
356
+ class FrameLineSplitter {
357
+ #buffer = Buffer.allocUnsafe(0);
358
+ #length = 0;
359
+ #decoder = new TextDecoder();
360
+ push(chunk) {
361
+ const lines = [];
362
+ let position = 0;
363
+ while (position < chunk.length) {
364
+ const nl = chunk.indexOf(FRAME_LF, position);
365
+ if (nl === -1) {
366
+ this.#append(chunk.subarray(position));
367
+ return lines;
368
+ }
369
+ const suffix = chunk.subarray(position, nl);
370
+ position = nl + 1;
371
+ if (this.#length === 0) {
372
+ lines.push(this.#decoder.decode(suffix));
373
+ }
374
+ else {
375
+ this.#append(suffix);
376
+ lines.push(this.#drain());
377
+ }
378
+ }
379
+ return lines;
380
+ }
381
+ #append(bytes) {
382
+ const size = bytes.length;
383
+ if (size === 0)
384
+ return;
385
+ if (this.#length + size > this.#buffer.length) {
386
+ const next = Buffer.allocUnsafe(Math.max(this.#length + size, this.#buffer.length * 2));
387
+ this.#buffer.copy(next, 0, 0, this.#length);
388
+ this.#buffer = next;
389
+ }
390
+ this.#buffer.set(bytes, this.#length);
391
+ this.#length += size;
392
+ }
393
+ #drain() {
394
+ const line = this.#decoder.decode(this.#buffer.subarray(0, this.#length));
395
+ this.#length = 0;
396
+ return line;
397
+ }
398
+ }
399
+ /* jscpd:ignore-end */
400
+ const frameSplitter = new FrameLineSplitter();
350
401
  process.stdin.on('data', (chunk) => {
351
- readBuffer += chunk;
352
- for (;;) {
353
- const nl = readBuffer.indexOf('\n');
354
- if (nl < 0)
355
- break;
356
- const line = readBuffer.slice(0, nl);
357
- readBuffer = readBuffer.slice(nl + 1);
402
+ for (const line of frameSplitter.push(chunk)) {
358
403
  if (!line.trim())
359
404
  continue;
360
405
  let message;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/nodejs/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/nodejs/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/python/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,eAAO,MAAM,aAAa,QA07BzB,CAAA"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/python/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,eAAO,MAAM,aAAa,QAy8BzB,CAAA"}
@@ -66,6 +66,21 @@ except (AttributeError, OSError, ValueError, io.UnsupportedOperation):
66
66
 
67
67
  _OUT_LOCK = threading.Lock()
68
68
 
69
+ # Requests likewise arrive on a private dup of the original stdin, and fd 0
70
+ # itself is repointed at os.devnull: user code, and every process it spawns
71
+ # without an explicit stdin, then reads immediate EOF instead of blocking on
72
+ # (or stealing frames from) a control channel that stays open for the
73
+ # kernel's whole life. The host still writes NDJSON requests to the
74
+ # subprocess stdin.
75
+ try:
76
+ _CONTROL_FD = os.dup(sys.__stdin__.fileno())
77
+ _CONTROL_IN = os.fdopen(_CONTROL_FD, "r", encoding="utf-8")
78
+ _devnull_fd = os.open(os.devnull, os.O_RDONLY)
79
+ os.dup2(_devnull_fd, sys.__stdin__.fileno())
80
+ os.close(_devnull_fd)
81
+ except (AttributeError, OSError, ValueError, io.UnsupportedOperation):
82
+ _CONTROL_IN = sys.__stdin__
83
+
69
84
 
70
85
  def _json_default(value: Any) -> Any:
71
86
  try:
@@ -924,7 +939,7 @@ async def _main_async() -> None:
924
939
  _maybe_init_ipython()
925
940
  _start_capture_drain()
926
941
 
927
- stdin = sys.__stdin__
942
+ stdin = _CONTROL_IN
928
943
  if stdin is None:
929
944
  return
930
945
  loop = asyncio.get_running_loop()
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/python/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA07BtC,CAAA"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/python/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAy8BtC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hy-sde-org/dsh-code-runtime-kernels",
3
- "version": "0.2.0-rc.2.2",
3
+ "version": "0.2.1-alpha.4",
4
4
  "description": "The run_kernel_code tool for DeepSeek Harness: persistent Python and JavaScript kernels (a long-lived python3/node subprocess per session, sharing a core host driver) — a standalone plugin with no upstream harness changes required.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -10,10 +10,6 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "default": "./dist/index.js"
12
12
  },
13
- "./invariant": {
14
- "types": "./dist/core/invariant.d.ts",
15
- "default": "./dist/core/invariant.js"
16
- },
17
13
  "./cordis.patch.yml": "./cordis.patch.yml",
18
14
  "./package.json": "./package.json"
19
15
  },
@@ -45,30 +41,28 @@
45
41
  "@deepseek-ai/schemastery": "~3.18.4"
46
42
  },
47
43
  "peerDependencies": {
48
- "@deepseek-ai/cordis": "~4.0.4",
49
- "@deepseek-ai/dsh-invariants": "^0.2.0-rc.2",
50
- "@deepseek-ai/dsh-session": "^0.2.0-rc.2",
51
- "@deepseek-ai/dsh-spill": "^0.2.0-rc.2",
52
- "@deepseek-ai/dsh-timeout": "^0.2.0-rc.2",
53
- "@deepseek-ai/dsh-tools": "^0.2.0-rc.2",
54
- "@deepseek-ai/dsh-util-values": "^0.2.0-rc.2",
55
- "@deepseek-ai/dsh-ptc-runtime": "^0.2.0-rc.2"
44
+ "@deepseek-ai/cordis": "~4.0.5-alpha.2",
45
+ "@deepseek-ai/dsh-ptc-runtime": "^0.2.1-alpha.4",
46
+ "@deepseek-ai/dsh-session": "^0.2.1-alpha.4",
47
+ "@deepseek-ai/dsh-spill": "^0.2.1-alpha.4",
48
+ "@deepseek-ai/dsh-timeout": "^0.2.1-alpha.4",
49
+ "@deepseek-ai/dsh-tools": "^0.2.1-alpha.4",
50
+ "@deepseek-ai/dsh-util-values": "^0.2.1-alpha.4"
56
51
  },
57
52
  "devDependencies": {
58
- "@deepseek-ai/cordis": "~4.0.4",
59
- "@deepseek-ai/dsh-invariants": "^0.2.0-rc.2",
60
- "@deepseek-ai/dsh-session": "^0.2.0-rc.2",
61
- "@deepseek-ai/dsh-spill": "^0.2.0-rc.2",
62
- "@deepseek-ai/dsh-system-prompt": "^0.2.0-rc.2",
63
- "@deepseek-ai/dsh-timeout": "^0.2.0-rc.2",
64
- "@deepseek-ai/dsh-tools": "^0.2.0-rc.2",
53
+ "@deepseek-ai/cordis": "~4.0.5-alpha.2",
54
+ "@deepseek-ai/dsh-llm": "^0.2.1-alpha.4",
55
+ "@deepseek-ai/dsh-ptc-runtime": "^0.2.1-alpha.4",
56
+ "@deepseek-ai/dsh-session": "^0.2.1-alpha.4",
57
+ "@deepseek-ai/dsh-spill": "^0.2.1-alpha.4",
58
+ "@deepseek-ai/dsh-system-prompt": "^0.2.1-alpha.4",
59
+ "@deepseek-ai/dsh-timeout": "^0.2.1-alpha.4",
60
+ "@deepseek-ai/dsh-tools": "^0.2.1-alpha.4",
61
+ "@deepseek-ai/dsh-util-values": "^0.2.1-alpha.4",
65
62
  "@deepseek-ai/schemastery": "~3.18.4",
66
63
  "@types/node": "^24.13.3",
67
64
  "typescript": "^5.9.3",
68
- "vitest": "^3.2.7",
69
- "@deepseek-ai/dsh-llm": "^0.2.0-rc.2",
70
- "@deepseek-ai/dsh-util-values": "^0.2.0-rc.2",
71
- "@deepseek-ai/dsh-ptc-runtime": "^0.2.0-rc.2"
65
+ "vitest": "^3.2.7"
72
66
  },
73
67
  "keywords": [
74
68
  "deepseek",
@@ -1,16 +0,0 @@
1
- /**
2
- * Package-owned invariant companion for `@hy-sde-org/dsh-code-runtime-kernels`.
3
- * @module @hy-sde-org/dsh-code-runtime-kernels/invariant
4
- */
5
- import type { Context } from '@deepseek-ai/cordis';
6
- /** Cordis companion plugin name. */
7
- export declare const name = "code-runtime-kernels-invariant";
8
- /** Service required before the companion can reserve package ownership. */
9
- export declare const inject: string[];
10
- /**
11
- * Register this package's invariant companion.
12
- * @param ctx - Cordis context carrying the invariant service.
13
- * @returns the installed registration's disposer after setup succeeds.
14
- */
15
- export declare const apply: (ctx: Context) => Promise<() => void>;
16
- //# sourceMappingURL=invariant.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"invariant.d.ts","sourceRoot":"","sources":["../../src/core/invariant.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAKlD,oCAAoC;AACpC,eAAO,MAAM,IAAI,mCAAmC,CAAA;AACpD,2EAA2E;AAC3E,eAAO,MAAM,MAAM,UAAiB,CAAA;AASpC;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,KAAK,OAAO,KAAG,OAAO,CAAC,MAAM,IAAI,CACU,CAAA"}
@@ -1,23 +0,0 @@
1
- /**
2
- * Package-owned invariant companion for `@hy-sde-org/dsh-code-runtime-kernels`.
3
- * @module @hy-sde-org/dsh-code-runtime-kernels/invariant
4
- */
5
- const PACKAGE_NAME = '@hy-sde-org/dsh-code-runtime-kernels';
6
- /** Cordis companion plugin name. */
7
- export const name = 'code-runtime-kernels-invariant';
8
- /** Service required before the companion can reserve package ownership. */
9
- export const inject = ['invariants'];
10
- /**
11
- * No runtime invariant: this process-boundary implementation exposes no
12
- * same-process event relation; kernel protocol tests and provider integration
13
- * tests cover it.
14
- */
15
- const install = () => { };
16
- /**
17
- * Register this package's invariant companion.
18
- * @param ctx - Cordis context carrying the invariant service.
19
- * @returns the installed registration's disposer after setup succeeds.
20
- */
21
- export const apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
22
- /* jscpd:ignore-end */
23
- //# sourceMappingURL=invariant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"invariant.js","sourceRoot":"","sources":["../../src/core/invariant.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,YAAY,GAAG,sCAAsC,CAAA;AAE3D,oCAAoC;AACpC,MAAM,CAAC,MAAM,IAAI,GAAG,gCAAgC,CAAA;AACpD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,YAAY,CAAC,CAAA;AAEpC;;;;GAIG;AACH,MAAM,OAAO,GAAuB,GAAG,EAAE,GAAE,CAAC,CAAA;AAE5C;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAY,EAAuB,EAAE,CACzD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAA;AACjE,sBAAsB"}