deepseek-ai/deepseek-harness · error
sandbox-local: runnerCommand requires at least one runnerFai
Error message
sandbox-local: runnerCommand requires at least one runnerFailureSignatures entry
What it means
Error "sandbox-local: runnerCommand requires at least one runnerFailureSignatures entry" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/sandbox/sandbox-local/src/index.ts:287
* cache and outlives the provider — never revoked) and the REVOCABLE
* private-temp grant per live session/workspace pair (revoked on provider
* dispose).
*/
private readonly workspaceGrants = new Map<string, AclWriteGrant>()
private readonly tempCapabilities = new Map<string, AclTempCapability>()
constructor(ctx: Context, config: Config) {
super(ctx)
// The schema (static Config) defaults every field — the casts record
// those runtime facts. An empty runnerCommand means "not configured":
// use the platform chain.
const runner = config.runnerCommand as string[]
const runnerFailureSignatures = config.runnerFailureSignatures as string[]
if (runner.length === 0 && runnerFailureSignatures.length > 0) {
throw new Error('sandbox-local: runnerFailureSignatures requires runnerCommand')
}
if (runner.length > 0 && runnerFailureSignatures.length === 0) {
throw new Error('sandbox-local: runnerCommand requires at least one runnerFailureSignatures entry')
}
if (runnerFailureSignatures.some(signature => signature.trim().length === 0 || /[\r\n]/u.test(signature))) {
throw new Error('sandbox-local: runnerFailureSignatures entries must be non-empty single-line strings')
}
this.runnerCommand = runner.length > 0 ? runner : undefined
this.configuredRunnerFailureSignatures = runnerFailureSignatures
this.probeTimeoutMs = config.probeTimeoutMs as number
assertPositiveFinite('probeTimeoutMs', this.probeTimeoutMs)
// The temp grants are revoked with the provider: a clean server
// shutdown leaves no temp ACEs behind (workspace ACEs stand by design —
// the reuse cache; an unclean shutdown leaves them for the next
// provision's exact-ACE skip).
ctx.effect(() => () => {
this.revokeAclGrants()
})
}
/**View on GitHub (pinned to b150a551b8)
Solutions
- Add at least one runnerFailureSignatures entry, or remove runnerCommand.
When it happens
Trigger: Thrown at packages/sandbox/sandbox-local/src/index.ts:287 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24).
Data as JSON: /api/errors/4da9704ad8febc16.
Report an issue: GitHub.