@dsh-enhanced/assistant-isolation 0.1.49 → 0.1.53

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.
Files changed (71) hide show
  1. package/README.md +57 -5
  2. package/lib/audit-archive.d.ts +1 -1
  3. package/lib/audit-archive.d.ts.map +1 -1
  4. package/lib/audit-archive.js +5 -5
  5. package/lib/audit-archive.js.map +1 -1
  6. package/lib/cleanup-receipt.d.ts +2 -0
  7. package/lib/cleanup-receipt.d.ts.map +1 -1
  8. package/lib/cleanup-receipt.js +13 -7
  9. package/lib/cleanup-receipt.js.map +1 -1
  10. package/lib/cli.d.ts +2 -2
  11. package/lib/cli.d.ts.map +1 -1
  12. package/lib/cli.js +21 -14
  13. package/lib/cli.js.map +1 -1
  14. package/lib/config.d.ts +1 -0
  15. package/lib/config.d.ts.map +1 -1
  16. package/lib/config.js +6 -3
  17. package/lib/config.js.map +1 -1
  18. package/lib/diagnostics.js +2 -2
  19. package/lib/docker-socket.d.ts +10 -0
  20. package/lib/docker-socket.d.ts.map +1 -0
  21. package/lib/docker-socket.js +43 -0
  22. package/lib/docker-socket.js.map +1 -0
  23. package/lib/index.d.ts +3 -0
  24. package/lib/index.d.ts.map +1 -1
  25. package/lib/index.js +3 -0
  26. package/lib/index.js.map +1 -1
  27. package/lib/ledger.d.ts +8 -0
  28. package/lib/ledger.d.ts.map +1 -1
  29. package/lib/ledger.js +64 -9
  30. package/lib/ledger.js.map +1 -1
  31. package/lib/native-macos.d.ts +37 -0
  32. package/lib/native-macos.d.ts.map +1 -0
  33. package/lib/native-macos.js +229 -0
  34. package/lib/native-macos.js.map +1 -0
  35. package/lib/native-runtime.d.ts +28 -0
  36. package/lib/native-runtime.d.ts.map +1 -0
  37. package/lib/native-runtime.js +121 -0
  38. package/lib/native-runtime.js.map +1 -0
  39. package/lib/native-verifier-runner.d.ts +23 -0
  40. package/lib/native-verifier-runner.d.ts.map +1 -0
  41. package/lib/native-verifier-runner.js +379 -0
  42. package/lib/native-verifier-runner.js.map +1 -0
  43. package/lib/probe.d.ts +1 -1
  44. package/lib/probe.d.ts.map +1 -1
  45. package/lib/probe.js +7 -5
  46. package/lib/probe.js.map +1 -1
  47. package/lib/reconcile.d.ts +1 -1
  48. package/lib/reconcile.d.ts.map +1 -1
  49. package/lib/reconcile.js +4 -2
  50. package/lib/reconcile.js.map +1 -1
  51. package/lib/runner.d.ts.map +1 -1
  52. package/lib/runner.js +31 -5
  53. package/lib/runner.js.map +1 -1
  54. package/lib/service.d.ts.map +1 -1
  55. package/lib/service.js +6 -4
  56. package/lib/service.js.map +1 -1
  57. package/lib/state-socket-binding.d.ts +4 -0
  58. package/lib/state-socket-binding.d.ts.map +1 -0
  59. package/lib/state-socket-binding.js +64 -0
  60. package/lib/state-socket-binding.js.map +1 -0
  61. package/lib/types.d.ts +5 -0
  62. package/lib/types.d.ts.map +1 -1
  63. package/lib/verifier-runner.d.ts +1 -0
  64. package/lib/verifier-runner.d.ts.map +1 -1
  65. package/lib/verifier-runner.js +6 -3
  66. package/lib/verifier-runner.js.map +1 -1
  67. package/lib/version.d.ts +1 -1
  68. package/lib/version.js +1 -1
  69. package/package.json +4 -4
  70. package/runtime/native-macos-supervisor.mjs +51 -0
  71. package/runtime/supervisor.mjs +14 -4
package/lib/probe.js CHANGED
@@ -3,14 +3,16 @@ import { mkdtemp, rm, writeFile } from 'node:fs/promises';
3
3
  import { tmpdir } from 'node:os';
4
4
  import { join } from 'node:path';
5
5
  import { defaultLimits } from './config.js';
6
+ import { configuredDockerSocketPath } from './docker-socket.js';
6
7
  import { runIsolatedProcess } from './runner.js';
7
8
  import { stageWorkspace } from './workspace.js';
8
9
  /** Operator-only readiness probe using the same supervisor and work-volume path as jobs. */
9
- export async function probeIsolationRuntime(image, dockerPath = '/usr/bin/docker') {
10
+ export async function probeIsolationRuntime(image, dockerPath = process.platform === 'darwin' ? '/usr/local/bin/docker' : '/usr/bin/docker', socketPath) {
10
11
  if (!/^sha256:[0-9a-f]{64}$/.test(image) || !dockerPath.startsWith('/'))
11
12
  throw new Error('isolation readiness requires an immutable local image and absolute Docker path');
12
- if (process.platform !== 'linux' || process.getuid?.() === undefined || process.getuid() === 0)
13
- throw new Error('isolation readiness requires a non-root Linux Host and Docker access');
13
+ if (!['linux', 'darwin'].includes(process.platform) || process.getuid?.() === undefined || process.getuid() === 0)
14
+ throw new Error('isolation readiness requires a non-root Unix Host and Docker access');
15
+ socketPath = configuredDockerSocketPath(socketPath);
14
16
  const stateRoot = await mkdtemp(join(tmpdir(), 'dsh-isolation-probe-'));
15
17
  const jobId = randomUUID();
16
18
  const containerName = `dsh-isolation-${jobId}`;
@@ -19,9 +21,9 @@ export async function probeIsolationRuntime(image, dockerPath = '/usr/bin/docker
19
21
  const marker = randomUUID();
20
22
  const command = `test "$(id -u)" != 0 && test ! -w /etc && printf '%s' '${marker}' > readiness.txt && printf '%s' '${marker}'`;
21
23
  const workspacePath = await stageWorkspace(stateRoot, jobId, { grantId: 'readiness', idempotencyKey: jobId, command });
22
- await writeFile(join(stateRoot, 'probe.json'), JSON.stringify({ jobId, containerName, image, dockerPath }), { mode: 0o600, flag: 'wx' });
24
+ await writeFile(join(stateRoot, 'probe.json'), JSON.stringify({ jobId, containerName, image, dockerPath, socketPath }), { mode: 0o600, flag: 'wx' });
23
25
  safeToRemove = false;
24
- const result = await runIsolatedProcess({ jobId, containerName, image, dockerPath, workspacePath,
26
+ const result = await runIsolatedProcess({ jobId, containerName, image, dockerPath, socketPath, workspacePath,
25
27
  command, artifacts: ['readiness.txt'], deadline: Date.now() + 20_000,
26
28
  limits: { ...defaultLimits, maxDurationMs: 20_000, memoryMiB: 64, workspaceMiB: 4, workspaceInodes: 64 },
27
29
  signal: AbortSignal.timeout(20_000), authorizeStart: () => true });
package/lib/probe.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"probe.js","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"probe.js","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { IsolationControllerAuthority, IsolationLedger } from './ledger.js';
2
2
  import type { IsolationJob } from './types.js';
3
3
  /** Host-only reconciliation. Lost mutation receipts never acquire release authority. */
4
- export declare function reconcileUnknownJob(ledger: IsolationLedger, authority: IsolationControllerAuthority, job: IsolationJob, dockerPath: string, signal: AbortSignal): Promise<boolean>;
4
+ export declare function reconcileUnknownJob(ledger: IsolationLedger, authority: IsolationControllerAuthority, job: IsolationJob, dockerPath: string, signal: AbortSignal, socketPath?: string): Promise<boolean>;
5
5
  //# sourceMappingURL=reconcile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../src/reconcile.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAEhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,wFAAwF;AACxF,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,4BAA4B,EACxG,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAe9E"}
1
+ {"version":3,"file":"reconcile.d.ts","sourceRoot":"","sources":["../src/reconcile.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAGhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,wFAAwF;AACxF,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,eAAe,EAAE,SAAS,EAAE,4BAA4B,EACxG,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBnG"}
package/lib/reconcile.js CHANGED
@@ -1,14 +1,16 @@
1
1
  import { realpath } from 'node:fs/promises';
2
2
  import { cleanupIsolationResources } from './cleanup-receipt.js';
3
3
  import { captureDaemonWitness, processExited, sameDaemonWitness } from './runtime-witness.js';
4
+ import { configuredDockerSocketPath, resolveLocalDockerSocket } from './docker-socket.js';
4
5
  /** Host-only reconciliation. Lost mutation receipts never acquire release authority. */
5
- export async function reconcileUnknownJob(ledger, authority, job, dockerPath, signal) {
6
+ export async function reconcileUnknownJob(ledger, authority, job, dockerPath, signal, socketPath) {
6
7
  const original = job.creationWitness;
7
8
  if (signal.aborted || job.status !== 'unknown' || job.result?.quiescent !== false
8
9
  || original?.requestsSettled !== true || !processExited(original.supervisor))
9
10
  return false;
10
11
  try {
11
- if (!ledger.hasController(authority) || await realpath(dockerPath) !== original.daemon.dockerPath)
12
+ if (!ledger.hasController(authority) || await realpath(dockerPath) !== original.daemon.dockerPath
13
+ || resolveLocalDockerSocket(configuredDockerSocketPath(socketPath)).path !== original.daemon.socketPath)
12
14
  return false;
13
15
  const before = await captureDaemonWitness(original.daemon);
14
16
  if (!before || !sameDaemonWitness(original.daemon, before) || signal.aborted)
@@ -1 +1 @@
1
- {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../src/reconcile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAA;AAEhE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAG7F,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,MAAuB,EAAE,SAAuC,EACxG,GAAiB,EAAE,UAAkB,EAAE,MAAmB;IAC1D,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAA;IACpC,IAAI,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,KAAK;WAC5E,QAAQ,EAAE,eAAe,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAA;IAC5F,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,MAAM,QAAQ,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO,KAAK,CAAA;QAC/G,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1F,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;QAChI,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC5C,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QACnF,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;QACrH,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAA;IAAC,CAAC;AAC1B,CAAC"}
1
+ {"version":3,"file":"reconcile.js","sourceRoot":"","sources":["../src/reconcile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAA;AAEhE,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7F,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAGzF,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,MAAuB,EAAE,SAAuC,EACxG,GAAiB,EAAE,UAAkB,EAAE,MAAmB,EAAE,UAAmB;IAC/E,MAAM,QAAQ,GAAG,GAAG,CAAC,eAAe,CAAA;IACpC,IAAI,MAAM,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,KAAK;WAC5E,QAAQ,EAAE,eAAe,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAA;IAC5F,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,MAAM,QAAQ,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU;eAC5F,wBAAwB,CAAC,0BAA0B,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO,KAAK,CAAA;QACvH,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC1F,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;QAChI,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QAC5C,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAClD,IAAI,CAAC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,KAAK,CAAA;QACnF,MAAM,CAAC,uBAAuB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;QACrH,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,KAAK,CAAA;IAAC,CAAC;AAC1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAmB,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AA6D5F;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA+GlG;AAED,wFAAwF;AACxF,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAE7J"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAmB,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AA+D5F;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAwHlG;AAED,wFAAwF;AACxF,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAI7J"}
package/lib/runner.js CHANGED
@@ -2,6 +2,7 @@ import { fork } from 'node:child_process';
2
2
  import { cleanupIsolationResources } from './cleanup-receipt.js';
3
3
  import { captureSystemdBinding } from './daemon-binding.js';
4
4
  import { captureDaemonWitness, processWitness, sameDaemonWitness } from './runtime-witness.js';
5
+ import { configuredDockerSocketPath, resolveLocalDockerSocket, sameLocalDockerSocket } from './docker-socket.js';
5
6
  const NAME = /^dsh-isolation-[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/;
6
7
  const IMAGE = /^sha256:[0-9a-f]{64}$/;
7
8
  const CLEANUP_GRACE_MS = 45_000;
@@ -40,8 +41,14 @@ function validate(input) {
40
41
  return 'deadline-expired';
41
42
  if (!validLimits(input.limits))
42
43
  return 'invalid-limits';
43
- if (process.platform !== 'linux' || typeof process.getuid !== 'function' || process.getuid() === 0)
44
- return 'non-root-linux-host-required';
44
+ if (!['linux', 'darwin'].includes(process.platform) || typeof process.getuid !== 'function' || process.getuid() === 0)
45
+ return 'non-root-unix-host-required';
46
+ try {
47
+ configuredDockerSocketPath(input.socketPath);
48
+ }
49
+ catch {
50
+ return 'invalid-local-docker-socket';
51
+ }
45
52
  return undefined;
46
53
  }
47
54
  function send(child, message) {
@@ -64,7 +71,14 @@ export async function runIsolatedProcess(input) {
64
71
  return failure(invalid);
65
72
  if (input.signal.aborted)
66
73
  return { status: 'cancelled', quiescent: true, stdout: '', stderr: '', reason: 'aborted-before-create' };
67
- const daemonBefore = await captureDaemonWitness({ dockerPath: input.dockerPath });
74
+ let socket;
75
+ try {
76
+ socket = resolveLocalDockerSocket(configuredDockerSocketPath(input.socketPath));
77
+ }
78
+ catch {
79
+ return failure('local-docker-socket-unavailable');
80
+ }
81
+ const daemonBefore = process.platform === 'linux' ? await captureDaemonWitness({ dockerPath: input.dockerPath, socketPath: socket.path }) : undefined;
68
82
  const bindingBefore = daemonBefore ? await captureSystemdBinding(daemonBefore) : undefined;
69
83
  if (input.signal.aborted)
70
84
  return { status: 'cancelled', quiescent: true, stdout: '', stderr: '', reason: 'aborted-before-create' };
@@ -72,6 +86,7 @@ export async function runIsolatedProcess(input) {
72
86
  return failure('deadline-expired-before-create');
73
87
  const config = {
74
88
  dockerPath: input.dockerPath,
89
+ socket,
75
90
  containerName: input.containerName,
76
91
  image: input.image,
77
92
  workspacePath: input.workspacePath,
@@ -143,10 +158,14 @@ export async function runIsolatedProcess(input) {
143
158
  if (finalReceipt)
144
159
  return;
145
160
  finalReceipt = true;
161
+ if (!sameLocalDockerSocket(socket)) {
162
+ settle({ ...message.result, status: 'unknown', quiescent: false, artifacts: [], reason: 'docker-socket-changed' });
163
+ return;
164
+ }
146
165
  // Only the supervisor's final receipt brackets the create operations.
147
166
  // This is private diagnostic evidence, never by itself a release permit.
148
167
  const daemonAfter = message.result.status === 'unknown' && daemonBefore && supervisorWitness
149
- ? await captureDaemonWitness({ dockerPath: input.dockerPath }) : undefined;
168
+ ? await captureDaemonWitness({ dockerPath: input.dockerPath, socketPath: socket.path }) : undefined;
150
169
  if (daemonBefore && daemonAfter && supervisorWitness && sameDaemonWitness(daemonBefore, daemonAfter)
151
170
  && supervisorWitness.bootId === daemonBefore.process.bootId) {
152
171
  const bindingAfter = bindingBefore ? await captureSystemdBinding(daemonAfter) : undefined;
@@ -196,6 +215,13 @@ export async function runIsolatedProcess(input) {
196
215
  }
197
216
  /** Removes only names generated by this plugin; arbitrary Docker names are rejected. */
198
217
  export async function removeIsolatedContainer(dockerPath, name, options = {}) {
199
- return await cleanupIsolationResources(dockerPath, name, options) !== undefined;
218
+ let socket;
219
+ try {
220
+ socket = resolveLocalDockerSocket(configuredDockerSocketPath(options.socketPath));
221
+ }
222
+ catch {
223
+ return false;
224
+ }
225
+ return await cleanupIsolationResources(dockerPath, name, { ...options, socketPath: socket.path, socket }) !== undefined;
200
226
  }
201
227
  //# sourceMappingURL=runner.js.map
package/lib/runner.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/K,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AASnD,OAAO,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAA;AAQpD,OAAO,KAAK,EAAmC,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAGpG,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB,eAAO,MAAM,wBAAwB,GAAI,WAAW,MAAM,KAAG,MAA8D,CAAA;AAC3H,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACrH,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChJ;AAmBD,OAAO,QAAQ,qBAAqB,CAAC;IAAE,UAAU,OAAO;QAAG,kBAAkB,EAAE,yBAAyB,CAAA;KAAE;CAAE;AAE5G,gGAAgG;AAChG,qBAAa,yBAA0B,SAAQ,OAAO;;IAEpD,MAAM,CAAC,MAAM,qDAAS;gBAcV,GAAG,EAAE,OAAO,EAAE,KAAK,GAAE,MAAW;IA2B5C,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAuB;IAE3C,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IA+FrC,sGAAsG;IACtG,QAAQ,GAAU,OAAO,KAAK,GAAG,SAAS,KAAG,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC,CAiBvF;IAwBD,+EAA+E;IAC/E,oBAAoB,GAAI,OAAO,sBAAsB,EAAE,MAAM,MAAM;;;;;;;OAelE;IAED,mFAAmF;IACnF,YAAY,GAAI,WAAW,aAAa,KAAG,OAAO,CAWjD;IAED;;;;OAIG;IACH,qBAAqB,GAAI,WAAW,aAAa,KAAG,OAAO,CAU1D;IAED,GAAG,GAAU,OAAO,KAAK,GAAG,SAAS,EAAE,OAAO,gBAAgB,EAAE,QAAQ,WAAW,KAAG,OAAO,CAAC,eAAe,CAAC,CA0C7G;CAkDF"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiE,KAAK,qBAAqB,EAAE,KAAK,sBAAsB,EAAE,MAAM,wCAAwC,CAAA;AAC/K,OAAO,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AASnD,OAAO,EAAE,MAAM,EAAkB,MAAM,aAAa,CAAA;AAQpD,OAAO,KAAK,EAAmC,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAIpG,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB,eAAO,MAAM,wBAAwB,GAAI,WAAW,MAAM,KAAG,MAA8D,CAAA;AAC3H,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAA;IACrH,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAChJ;AAmBD,OAAO,QAAQ,qBAAqB,CAAC;IAAE,UAAU,OAAO;QAAG,kBAAkB,EAAE,yBAAyB,CAAA;KAAE;CAAE;AAE5G,gGAAgG;AAChG,qBAAa,yBAA0B,SAAQ,OAAO;;IAEpD,MAAM,CAAC,MAAM,qDAAS;gBAcV,GAAG,EAAE,OAAO,EAAE,KAAK,GAAE,MAAW;IA4B5C,IAAI,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAuB;IAE3C,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;IA+FrC,sGAAsG;IACtG,QAAQ,GAAU,OAAO,KAAK,GAAG,SAAS,KAAG,OAAO,CAAC,SAAS,uBAAuB,EAAE,CAAC,CAiBvF;IAwBD,+EAA+E;IAC/E,oBAAoB,GAAI,OAAO,sBAAsB,EAAE,MAAM,MAAM;;;;;;;OAelE;IAED,mFAAmF;IACnF,YAAY,GAAI,WAAW,aAAa,KAAG,OAAO,CAWjD;IAED;;;;OAIG;IACH,qBAAqB,GAAI,WAAW,aAAa,KAAG,OAAO,CAU1D;IAED,GAAG,GAAU,OAAO,KAAK,GAAG,SAAS,EAAE,OAAO,gBAAgB,EAAE,QAAQ,WAAW,KAAG,OAAO,CAAC,eAAe,CAAC,CA0C7G;CAkDF"}
package/lib/service.js CHANGED
@@ -13,6 +13,7 @@ import { registerIsolationTools } from './tools.js';
13
13
  import { plannedStorageBytes } from './storage-policy.js';
14
14
  import { maintainIsolationStorage, observeStorage } from './storage.js';
15
15
  import { inspectIsolationGrant } from './diagnostics.js';
16
+ import { bindIsolationStateSocket } from './state-socket-binding.js';
16
17
  export { Config };
17
18
  export const isolationPrincipalDigest = (principal) => createHash('sha256').update(principal).digest('hex');
18
19
  const digest = (value) => createHash('sha256').update(JSON.stringify(value)).digest('hex');
@@ -59,6 +60,7 @@ export class AssistantIsolationService extends Service {
59
60
  if (realpathSync(root) !== root || !lstatSync(root).isDirectory() || lstatSync(root).uid !== process.getuid?.())
60
61
  throw new Error('assistant-isolation: private owned state root required');
61
62
  chmodSync(root, 0o700);
63
+ bindIsolationStateSocket(root, this.#config.socketPath);
62
64
  this.#ledger = new IsolationLedger(join(root, 'ledger.sqlite'));
63
65
  ctx.on('internal/plugin', fiber => { if (fiber === ctx.fiber && fiber.uid === null)
64
66
  this.#abortStartup(); });
@@ -160,7 +162,7 @@ export class AssistantIsolationService extends Service {
160
162
  if (this.#jobs.has(job.id))
161
163
  continue;
162
164
  const signal = AbortSignal.any([this.#recoveryAbort.signal, AbortSignal.timeout(30_000)]);
163
- if (await reconcileUnknownJob(this.#ledger, this.#controller(), job, this.#config.dockerPath, signal)) {
165
+ if (await reconcileUnknownJob(this.#ledger, this.#controller(), job, this.#config.dockerPath, signal, this.#config.socketPath)) {
164
166
  await rm(join(this.#config.stateRoot, 'workspaces', job.id), { recursive: true, force: true });
165
167
  }
166
168
  }
@@ -235,7 +237,7 @@ export class AssistantIsolationService extends Service {
235
237
  for (const job of page) {
236
238
  if (!this.#active)
237
239
  return;
238
- const removed = await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { signal: this.#recoveryAbort.signal });
240
+ const removed = await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { socketPath: this.#config.socketPath, signal: this.#recoveryAbort.signal });
239
241
  if (!this.#active)
240
242
  return;
241
243
  // An absent object does not prove a timed-out daemon create request
@@ -389,7 +391,7 @@ export class AssistantIsolationService extends Service {
389
391
  job = this.#ledger.markDispatched(job.id, job.version, this.#controller());
390
392
  mayHaveCreated = true;
391
393
  const processResult = await runIsolatedProcess({ jobId: job.id, containerName: job.containerName, image: this.#config.image,
392
- dockerPath: this.#config.dockerPath, workspacePath, artifacts: request.artifacts ?? [], command: request.command, deadline: job.deadline,
394
+ dockerPath: this.#config.dockerPath, socketPath: this.#config.socketPath, workspacePath, artifacts: request.artifacts ?? [], command: request.command, deadline: job.deadline,
393
395
  limits: this.#config.limits, signal: AbortSignal.any([signal, abort.signal]),
394
396
  authorizeStart: () => {
395
397
  if (!authorized())
@@ -405,7 +407,7 @@ export class AssistantIsolationService extends Service {
405
407
  }
406
408
  catch {
407
409
  if (mayHaveCreated) {
408
- await removeIsolatedContainer(this.#config.dockerPath, job.containerName);
410
+ await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { socketPath: this.#config.socketPath });
409
411
  result = { ...result, status: 'unknown', quiescent: false, reason: 'runner-exception-no-replay' };
410
412
  }
411
413
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /** Legacy state roots were Linux-only and always used the default socket. */
2
+ export declare function stateSocketBindingMatches(stateRoot: string, socketPath: string): boolean;
3
+ export declare function bindIsolationStateSocket(stateRoot: string, socketPath: string): void;
4
+ //# sourceMappingURL=state-socket-binding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-socket-binding.d.ts","sourceRoot":"","sources":["../src/state-socket-binding.ts"],"names":[],"mappings":"AAoBA,6EAA6E;AAC7E,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAMxF;AAED,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAuBpF"}
@@ -0,0 +1,64 @@
1
+ import { closeSync, constants, existsSync, fstatSync, fsyncSync, lstatSync, openSync, readFileSync, writeSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import { configuredDockerSocketPath } from './docker-socket.js';
4
+ const filename = 'docker-socket-path';
5
+ function readBinding(stateRoot) {
6
+ const file = join(stateRoot, filename);
7
+ if (!existsSync(file))
8
+ return undefined;
9
+ const info = lstatSync(file);
10
+ if (!info.isFile() || info.isSymbolicLink() || info.nlink !== 1 || info.uid !== process.getuid?.() || (info.mode & 0o077) !== 0 || info.size > 4096) {
11
+ throw new Error('assistant-isolation: invalid state Docker socket binding');
12
+ }
13
+ const value = readFileSync(file, 'utf8');
14
+ if (!value.endsWith('\n') || value.slice(0, -1) !== configuredDockerSocketPath(value.slice(0, -1))) {
15
+ throw new Error('assistant-isolation: invalid state Docker socket binding');
16
+ }
17
+ return value.slice(0, -1);
18
+ }
19
+ /** Legacy state roots were Linux-only and always used the default socket. */
20
+ export function stateSocketBindingMatches(stateRoot, socketPath) {
21
+ try {
22
+ if (existsSync(join(stateRoot, 'native-backend')))
23
+ return false;
24
+ const existing = readBinding(stateRoot);
25
+ return existing === undefined ? process.platform === 'linux' && socketPath === '/var/run/docker.sock' : existing === socketPath;
26
+ }
27
+ catch {
28
+ return false;
29
+ }
30
+ }
31
+ export function bindIsolationStateSocket(stateRoot, socketPath) {
32
+ configuredDockerSocketPath(socketPath);
33
+ if (existsSync(join(stateRoot, 'native-backend')))
34
+ throw new Error('assistant-isolation: state root is native-bound');
35
+ const existing = readBinding(stateRoot);
36
+ if (existing !== undefined) {
37
+ if (existing !== socketPath)
38
+ throw new Error('assistant-isolation: state root is bound to a different Docker socket');
39
+ return;
40
+ }
41
+ if (existsSync(join(stateRoot, 'ledger.sqlite')) && !stateSocketBindingMatches(stateRoot, socketPath)) {
42
+ throw new Error('assistant-isolation: legacy state root requires its original Linux Docker socket');
43
+ }
44
+ const file = join(stateRoot, filename);
45
+ let handle;
46
+ try {
47
+ handle = openSync(file, constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL | constants.O_NOFOLLOW, 0o600);
48
+ }
49
+ catch (error) {
50
+ if (error && typeof error === 'object' && 'code' in error && error.code === 'EEXIST' && stateSocketBindingMatches(stateRoot, socketPath))
51
+ return;
52
+ throw error;
53
+ }
54
+ try {
55
+ const bytes = Buffer.from(`${socketPath}\n`);
56
+ if (writeSync(handle, bytes) !== bytes.length || !fstatSync(handle).isFile())
57
+ throw new Error('assistant-isolation: cannot persist Docker socket binding');
58
+ fsyncSync(handle);
59
+ }
60
+ finally {
61
+ closeSync(handle);
62
+ }
63
+ }
64
+ //# sourceMappingURL=state-socket-binding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-socket-binding.js","sourceRoot":"","sources":["../src/state-socket-binding.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -97,7 +97,11 @@ export interface IsolationJob {
97
97
  sessionId: string;
98
98
  idempotencyKey: string;
99
99
  requestDigest: string;
100
+ /** Explicit backend identity; legacy v6 rows migrate to docker. */
101
+ backend: 'docker' | 'macos-seatbelt';
100
102
  containerName: string;
103
+ nativeResourceId?: string;
104
+ nativeNonce?: string;
101
105
  deadline: number;
102
106
  reservedDurationMs: number;
103
107
  /** Conservative worker + workspace + keeper reservation; zero denotes legacy work. */
@@ -120,6 +124,7 @@ export interface IsolationRunInput {
120
124
  containerName: string;
121
125
  image: string;
122
126
  dockerPath: string;
127
+ socketPath?: string;
123
128
  workspacePath: string;
124
129
  artifacts?: string[];
125
130
  command: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export interface IsolatedVerifierRunnerConfig {
3
3
  stateRoot: string;
4
4
  image: string;
5
5
  dockerPath: string;
6
+ socketPath?: string;
6
7
  authorityDigest: string;
7
8
  command: string;
8
9
  expiresAt: number;
@@ -1 +1 @@
1
- {"version":3,"file":"verifier-runner.d.ts","sourceRoot":"","sources":["../src/verifier-runner.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAkC,eAAe,EAAE,MAAM,YAAY,CAAA;AAGjF,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,qFAAqF;AACrF,qBAAa,sBAAsB;;gBAWrB,KAAK,EAAE,4BAA4B;IAuD/C,GAAG,GAAU,KAAK,MAAM,EAAE,UAAU,MAAM,EAAE,OAAO,MAAM,EAAE,QAAQ,WAAW,KAAG,OAAO,CAAC,eAAe,CAAC,CAsBxG;IAwBD,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAS9B;CACF"}
1
+ {"version":3,"file":"verifier-runner.d.ts","sourceRoot":"","sources":["../src/verifier-runner.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAkC,eAAe,EAAE,MAAM,YAAY,CAAA;AAIjF,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,qFAAqF;AACrF,qBAAa,sBAAsB;;gBAWrB,KAAK,EAAE,4BAA4B;IAyD/C,GAAG,GAAU,KAAK,MAAM,EAAE,UAAU,MAAM,EAAE,OAAO,MAAM,EAAE,QAAQ,WAAW,KAAG,OAAO,CAAC,eAAe,CAAC,CAsBxG;IAwBD,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAS9B;CACF"}
@@ -8,6 +8,7 @@ import { runIsolatedProcess, removeIsolatedContainer } from './runner.js';
8
8
  import { normalizeRequest, stageWorkspace } from './workspace.js';
9
9
  import { observeStorage } from './storage.js';
10
10
  import { plannedStorageBytes } from './storage-policy.js';
11
+ import { bindIsolationStateSocket } from './state-socket-binding.js';
11
12
  /** Operator-owned verification jobs. No Agent or model tool receives this runner. */
12
13
  export class IsolatedVerifierRunner {
13
14
  #input;
@@ -31,6 +32,7 @@ export class IsolatedVerifierRunner {
31
32
  throw new Error('invalid isolated verifier authority');
32
33
  this.#input = Object.freeze({ ...input });
33
34
  this.#config = validateConfig({ stateRoot: this.#input.stateRoot, image: this.#input.image, dockerPath: this.#input.dockerPath,
35
+ ...(this.#input.socketPath === undefined ? {} : { socketPath: this.#input.socketPath }),
34
36
  limits: { ...defaultLimits, maxDurationMs: this.#input.maxDurationMs, maxOutputBytes: this.#input.maxOutputBytes },
35
37
  grants: [{ id: 'verification', revision: 1, principalDigest: this.#input.authorityDigest,
36
38
  principalRecordId: `verification:${this.#input.authorityDigest}`, principalVersion: 1,
@@ -41,6 +43,7 @@ export class IsolatedVerifierRunner {
41
43
  if (realpathSync(root) !== root || !lstatSync(root).isDirectory() || lstatSync(root).uid !== process.getuid?.())
42
44
  throw new Error('isolated verifier requires a private owned state root');
43
45
  chmodSync(root, 0o700);
46
+ bindIsolationStateSocket(root, this.#config.socketPath);
44
47
  this.#ledger = new IsolationLedger(join(root, 'ledger.sqlite'));
45
48
  try {
46
49
  this.#controller = this.#ledger.claimController(randomUUID(), 30_000);
@@ -73,7 +76,7 @@ export class IsolatedVerifierRunner {
73
76
  for (const job of jobs) {
74
77
  if (!this.#active)
75
78
  return;
76
- const removed = await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { signal: this.#abort.signal });
79
+ const removed = await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { socketPath: this.#config.socketPath, signal: this.#abort.signal });
77
80
  const quiescent = removed && !job.dispatchAttempted;
78
81
  // Preserve any durable process evidence. Recovery only changes the
79
82
  // lifecycle conclusion; it must never erase a previous receipt body.
@@ -145,7 +148,7 @@ export class IsolatedVerifierRunner {
145
148
  job = this.#ledger.markDispatched(job.id, job.version, this.#controller);
146
149
  dispatched = true;
147
150
  const observed = await runIsolatedProcess({ jobId: job.id, containerName: job.containerName, image: this.#config.image,
148
- dockerPath: this.#config.dockerPath, workspacePath, command: request.command, artifacts: [], deadline: job.deadline,
151
+ dockerPath: this.#config.dockerPath, socketPath: this.#config.socketPath, workspacePath, command: request.command, artifacts: [], deadline: job.deadline,
149
152
  limits: this.#config.limits, signal: AbortSignal.any([signal, abort.signal]),
150
153
  authorizeStart: () => { if (!current())
151
154
  return false; job = this.#ledger.start(job.id, job.version, this.#controller); return true; } });
@@ -155,7 +158,7 @@ export class IsolatedVerifierRunner {
155
158
  }
156
159
  catch {
157
160
  if (dispatched) {
158
- await removeIsolatedContainer(this.#config.dockerPath, job.containerName);
161
+ await removeIsolatedContainer(this.#config.dockerPath, job.containerName, { socketPath: this.#config.socketPath });
159
162
  result = { ...result, status: 'unknown', quiescent: false, reason: 'verification-dispatch-unconfirmed' };
160
163
  }
161
164
  }