deepseek-ai/deepseek-harness · error · WebError
WEB_ABORTED
WEB_ABORTED
Error message
web fetch aborted
What it means
Error "web fetch aborted" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/web/web-fetch-http/src/provider.ts:47
userAgent: string
}
/** Stable id this provider registers under. */
export const LOCAL_FETCH_PROVIDER_ID = 'http'
/** The anonymous public HTTP(S) fetch provider. */
export class HttpFetchProvider implements WebFetchProvider {
readonly id = LOCAL_FETCH_PROVIDER_ID
constructor(private readonly limits: HttpFetchLimits) {}
/** No credentials to check — an anonymous public fetcher is always usable. */
available(): boolean {
return true
}
async fetch(request: WebFetchRequest, signal?: AbortSignal): Promise<WebFetchResult> {
if (signal?.aborted) throw new WebError('web fetch aborted', 'WEB_ABORTED')
// One signal stops both the request and body read. The deadline's TimeoutReason later
// distinguishes this provider's timeout from caller or outer-deadline cancellation.
using d = deadline(signal, this.limits.timeoutMs, 'WEB_FETCH_TIMEOUT')
return await this.followAndRead(request.url, d.signal)
}
/** Follow same-origin redirects up to the hop cap, then read the final response. */
private async followAndRead(initialUrl: string, signal: AbortSignal): Promise<WebFetchResult> {
let currentUrl = validateFetchUrl(initialUrl, this.limits.maxUrlLength)
let redirectsFollowed = 0
for (;;) {
const response = await this.requestOnce(currentUrl, signal)
if (isRedirectStatus(response.status)) {
// Enforce the redirect budget before resolving or validating the next hop.
if (redirectsFollowed >= this.limits.maxRedirects) {View on GitHub (pinned to b150a551b8)
Solutions
- Retry the fetch without aborting, or treat the abort as a cancelled request.
When it happens
Trigger: Thrown at packages/web/web-fetch-http/src/provider.ts:47 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/5fa43c9c4186f3d6.
Report an issue: GitHub.