{"record":{"id":"cf80b55635f3778f","repo":"deepseek-ai/deepseek-harness","slug":"invalid-argv-expected-a-non-empty-program-name-at","errorCode":null,"errorMessage":"invalid argv: expected a non-empty program name at argv[0]","messagePattern":"invalid argv: expected a non-empty program name at argv\\[0\\]","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/e2b/subprocess-e2b/src/index.ts","lineNumber":144,"sourceCode":"    const result = await sandbox.commands.run(\n      `${prefix}command -v -- ${quoteE2BShellArg(command)}`,\n      { cwd: this.ctx.e2b.cwd, envs: e2bControlEnvs(), ...signalOpts(signal) },\n    )\n    signal?.throwIfAborted()\n    const executable = result.stdout.trim()\n    if (executable.includes('\\n') || (!posix.isAbsolute(executable) && !executable.includes('/'))) {\n      throw new Error(`subprocess-e2b: executable ${JSON.stringify(command)} did not resolve to one absolute path`)\n    }\n    // A relative result comes from a relative PATH entry; the lookup ran with the shared cwd.\n    return posix.resolve(this.ctx.e2b.cwd, executable)\n  }\n\n  /** @inheritdoc */\n  spawn(spec: SubprocessSpawnSpec): SubprocessHandle {\n    if (this.disposing) throw new Error('subprocess-e2b: service is disposing')\n    const program = spec.argv[0]\n    if (program === undefined || program.length === 0) {\n      throw new Error('invalid argv: expected a non-empty program name at argv[0]')\n    }\n    requireRepresentableGrace(spec.graceMs)\n    if (spec.signal?.aborted === true) {\n      throw new Error(`aborted before spawn: ${String(spec.signal.reason)}`)\n    }\n    const stateDir = posix.join(this.ctx.e2b.runtimeRoot, 'processes', randomUUID())\n    const handle = new E2BSubprocessHandle(this.ctx.e2b, spec, stateDir, this.pollMs)\n    this.live.add(handle)\n    const release = async (): Promise<void> => {\n      await handle.waitForExit()\n      this.live.delete(handle)\n    }\n    void handle.done.then(release, release).catch((_automaticReleaseFailure: unknown) => {\n      // Retain the handle so service disposal can retry its cleanup transaction.\n    })\n    return handle\n  }\n","sourceCodeStart":126,"sourceCodeEnd":162,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/e2b/subprocess-e2b/src/index.ts#L126-L162","documentation":"Error \"invalid argv: expected a non-empty program name at argv[0]\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/e2b/subprocess-e2b/src/index.ts:144 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b150a551b8d465e31e418e1b2eaf5e79bbb7d28e","analyzedAt":"2026-08-24T18:12:29.105Z","schemaVersion":2},"datasetVersion":"2026-08-24T22:17:12.610Z"}