2026-07-28 10:05:30 +08:00
|
|
|
{
|
|
|
|
|
"name": "@deepseek-ai/dsh-subprocess-e2b",
|
|
|
|
|
"description": "E2B subprocess implementation for DeepSeek Harness",
|
|
|
|
|
"version": "0.0.1",
|
|
|
|
|
"private": true,
|
|
|
|
|
"type": "module",
|
|
|
|
|
"main": "lib/index.js",
|
|
|
|
|
"types": "lib/types/index.d.ts",
|
|
|
|
|
"exports": {
|
|
|
|
|
".": {
|
|
|
|
|
"types": "./lib/types/index.d.ts",
|
|
|
|
|
"default": "./lib/index.js"
|
|
|
|
|
},
|
|
|
|
|
"./invariant": {
|
|
|
|
|
"types": "./lib/types/invariant.d.ts",
|
|
|
|
|
"default": "./lib/invariant.js"
|
|
|
|
|
},
|
|
|
|
|
"./src/*": "./src/*",
|
|
|
|
|
"./package.json": "./package.json"
|
|
|
|
|
},
|
|
|
|
|
"files": [
|
|
|
|
|
"lib/index.js",
|
|
|
|
|
"lib/invariant.js",
|
2026-08-07 21:11:31 +08:00
|
|
|
"lib/types/**/*.d.ts"
|
2026-07-28 10:05:30 +08:00
|
|
|
],
|
|
|
|
|
"license": "BSD-3-Clause",
|
|
|
|
|
"peerDependencies": {
|
|
|
|
|
"@deepseek-ai/dsh-e2b": "^0.0.1",
|
|
|
|
|
"@deepseek-ai/dsh-invariants": "^0.0.1",
|
|
|
|
|
"@deepseek-ai/dsh-subprocess": "^0.0.1",
|
|
|
|
|
"cordis": "^4.0.0-rc.7"
|
|
|
|
|
},
|
fix(e2b): address review round on cadence config, disposal, and SDK edge cases
- subprocess-e2b: the 20 ms remote poll cadence becomes a validated pollMs
Config field (each tick is one control-plane request); the README documents
the latency-versus-request-count trade.
- subprocess-e2b: extract src/remote.ts owning asError, signalOpts,
commandOpts, delay, waitTick, and one tolerant signalRemoteGroups shared by
the pgid-keyed process ladder and sid-keyed terminal ladder, so the two
teardown paths keep identical error tolerance.
- subprocess-e2b: service disposal aggregates sibling cleanup failures into
one AggregateError instead of discarding all but the first.
- subprocess-e2b: waitForProcessGroupId refuses published group ids <= 1, so
a same-UID rewrite of the pid file cannot aim termination at kill -- -1;
README documents the same-UID control-state limitation.
- subprocess-e2b: drain-grace expiry now releases an inherited-output E2B
callback blocked on host backpressure before disconnecting, so the SDK
settlement cannot stay pinned behind an unread host stream.
- subprocess-e2b: spawn/spawnTerminal stop validating typed spec fields
(trust-TypeScript rule; pty-local validates its config before specs exist);
resolveExecutable rejects separator-containing relative paths per the seam
contract; terminal setups tracked as a Set of records.
- subprocess-e2b: PTY output push-without-backpressure is a documented
contract (flowing consumer folds bytes; paused consumer buffers).
- fs-e2b: streamText normalizes the pinned SDK's empty-file '' return into an
empty stream instead of throwing on getReader().
- e2b overlays: comment the one-world cwd invariant across e2b.cwd,
workspaceRoot, and bash-local's implicit default workdir.
2026-08-02 15:38:00 +08:00
|
|
|
"dependencies": {
|
|
|
|
|
"schemastery": "^3.18.0"
|
|
|
|
|
},
|
2026-07-28 10:05:30 +08:00
|
|
|
"devDependencies": {
|
|
|
|
|
"@deepseek-ai/dsh-e2b": "workspace:^",
|
|
|
|
|
"@deepseek-ai/dsh-invariants": "workspace:^",
|
|
|
|
|
"@deepseek-ai/dsh-subprocess": "workspace:^",
|
|
|
|
|
"cordis": "^4.0.0-rc.7"
|
|
|
|
|
}
|
|
|
|
|
}
|