{"record":{"id":"a491c3ac53d4881e","repo":"deepseek-ai/deepseek-harness","slug":"web-provider-ambiguous","errorCode":"WEB_PROVIDER_AMBIGUOUS","errorMessage":"multiple usable web providers are registered (${ids}); configure one explicitly","messagePattern":"multiple usable web providers are registered \\((.+?)\\); configure one explicitly","errorType":"exception","errorClass":"WebError","httpStatus":null,"severity":"error","filePath":"packages/web/web/src/index.ts","lineNumber":191,"sourceCode":"  const { configuredId, providers } = selection\n  if (configuredId !== undefined) {\n    const provider = providers.get(configuredId)\n    if (!provider) {\n      throw new WebError(`configured web provider \"${configuredId}\" is not registered`, 'WEB_PROVIDER_CONFIGURED_MISSING')\n    }\n    if (!provider.available()) {\n      throw new WebError(`configured web provider \"${configuredId}\" is registered but unavailable`, 'WEB_PROVIDER_CONFIGURED_UNAVAILABLE')\n    }\n    return provider\n  }\n  const usable = [...providers.values()].filter(provider => provider.available())\n  const [single] = usable\n  if (single === undefined) {\n    throw new WebError('no usable web provider is registered', 'WEB_PROVIDER_UNAVAILABLE')\n  }\n  if (usable.length > 1) {\n    const ids = usable.map(provider => provider.id).join(', ')\n    throw new WebError(`multiple usable web providers are registered (${ids}); configure one explicitly`, 'WEB_PROVIDER_AMBIGUOUS')\n  }\n  return single\n}\n\n/** Enforce `maxResults` on a search result: truncate `sources[]` and flag it. */\nfunction capSources(result: WebSearchResult, maxResults: number | undefined): WebSearchResult {\n  if (maxResults === undefined || result.sources.length <= maxResults) return result\n  return { ...result, sources: result.sources.slice(0, maxResults), truncated: true }\n}\n\nexport default WebRuntime\n","sourceCodeStart":173,"sourceCodeEnd":203,"githubUrl":"https://github.com/deepseek-ai/deepseek-harness/blob/b150a551b8d465e31e418e1b2eaf5e79bbb7d28e/packages/web/web/src/index.ts#L173-L203","documentation":"Error \"multiple usable web providers are registered (${ids}); configure one explicitly\" thrown in deepseek-ai/deepseek-harness.","triggerScenarios":"Thrown at packages/web/web/src/index.ts:191 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set the web provider explicitly in cordis.yml to one of the listed ids, or remove/disable the extra providers until exactly one is usable."],"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"}