{"record":{"id":"948afab024329446","repo":"conductor-oss/conductor","slug":"provider-native-web-search-requires-an-openai-or-a","errorCode":null,"errorMessage":"Provider-native web search requires an OpenAI or Anthropic model; got '{}'","messagePattern":"Provider-native web search requires an OpenAI or Anthropic model; got '(.+?)'","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"agentspan/src/main/java/org/conductoross/conductor/ai/agentspan/runtime/compiler/AgentCompiler.java","lineNumber":1342,"sourceCode":"    WorkflowTask buildLlmTask(\n            AgentConfig config,\n            ParsedModel parsed,\n            String llmRef,\n            List<Map<String, Object>> toolSpecs,\n            List<PrefillRef> prefillRefs) {\n        WorkflowTask llm = new WorkflowTask();\n        llm.setName(\"LLM_CHAT_COMPLETE\");\n        llm.setTaskReferenceName(llmRef);\n        llm.setType(\"LLM_CHAT_COMPLETE\");\n\n        Map<String, Object> inputs = new LinkedHashMap<>();\n        inputs.put(\"llmProvider\", parsed.getProvider());\n        inputs.put(\"model\", parsed.getModel());\n\n        if (usesProviderNativeWebSearch(config)) {\n            String provider = parsed.getProvider().toLowerCase(Locale.ROOT);\n            if (!Set.of(\"openai\", \"anthropic\").contains(provider)) {\n                throw new IllegalArgumentException(\n                        \"Provider-native web search requires an OpenAI or Anthropic model; got '\"\n                                + parsed.getProvider()\n                                + \"'\");\n            }\n            inputs.put(\"webSearch\", true);\n        }\n\n        // Per-agent base URL override\n        if (config.getBaseUrl() != null && !config.getBaseUrl().isBlank()) {\n            inputs.put(\"baseUrl\", config.getBaseUrl());\n        }\n\n        // Build messages\n        List<Object> messages = new ArrayList<>();\n\n        // Handle instructions\n        Object instructions = config.getInstructions();\n        boolean useTemplate =","sourceCodeStart":1324,"sourceCodeEnd":1360,"githubUrl":"https://github.com/conductor-oss/conductor/blob/cf7c3e4a8adfb158be778ab1ec525323c363cd3a/agentspan/src/main/java/org/conductoross/conductor/ai/agentspan/runtime/compiler/AgentCompiler.java#L1324-L1360","documentation":"Error \"Provider-native web search requires an OpenAI or Anthropic model; got '{}'\" thrown in conductor-oss/conductor.","triggerScenarios":"Thrown at agentspan/src/main/java/org/conductoross/conductor/ai/agentspan/runtime/compiler/AgentCompiler.java:1342 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Switch the agent's model to an OpenAI or Anthropic model when using provider-native web search.","Or remove the web-search tool and use a provider-agnostic search tool instead."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"cf7c3e4a8adfb158be778ab1ec525323c363cd3a","analyzedAt":"2026-08-14T03:33:19.897Z","schemaVersion":2},"datasetVersion":"2026-08-14T05:17:29.042Z"}