deepseek-ai/deepseek-harness · error · Error
web-fetch-http: timeoutMs must be no greater than ${MAX_NODE
Error message
web-fetch-http: timeoutMs must be no greater than ${MAX_NODE_TIMER_DELAY_MS} What it means
Error "web-fetch-http: timeoutMs must be no greater than ${MAX_NODE_TIMER_DELAY_MS}" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/web/web-fetch-http/src/index.ts:72
maxRedirects: z.number().default(5),
userAgent: z.string().default(DEFAULT_USER_AGENT),
})
/** Complete config after schemastery applies every field default. */
type ResolvedConfig = Required<Config>
/** A resource limit (byte/char/length/timeout cap) must be a positive finite number. */
function assertPositiveFinite(name: string, value: number): void {
if (!Number.isFinite(value) || value <= 0) {
throw new Error(`web-fetch-http: ${name} must be a positive finite number`)
}
}
/** Node coerces larger timer delays to 1 ms, so reject them at configuration time. */
function assertTimeoutMs(value: number): void {
assertPositiveFinite('timeoutMs', value)
if (value > MAX_NODE_TIMER_DELAY_MS) {
throw new Error(`web-fetch-http: timeoutMs must be no greater than ${MAX_NODE_TIMER_DELAY_MS}`)
}
}
/** The redirect hop cap must be a non-negative integer (0 follows no redirects). */
function assertNonNegativeInteger(name: string, value: number): void {
if (!Number.isInteger(value) || value < 0) {
throw new Error(`web-fetch-http: ${name} must be a non-negative integer`)
}
}
/** Register the local HTTP(S) fetch provider with `ctx.web`. */
export function apply(ctx: Context, config: Config): void {
// schemastery (Config) has already filled every defaulted field.
const resolved = config as ResolvedConfig
assertPositiveFinite('maxUrlLength', resolved.maxUrlLength)
assertPositiveFinite('maxResponseBytes', resolved.maxResponseBytes)
assertPositiveFinite('maxBodyChars', resolved.maxBodyChars)
assertTimeoutMs(resolved.timeoutMs)View on GitHub (pinned to b150a551b8)
Solutions
- Lower timeoutMs to at most the maximum Node timer delay.
When it happens
Trigger: Thrown at packages/web/web-fetch-http/src/index.ts:72 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Timeouts: ETIMEDOUT, deadlines, and hung requests — what actually expires when a request times out.
AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24).
Data as JSON: /api/errors/6c7693f3582e151f.
Report an issue: GitHub.