Skip to content

修复:避免未配置的搜索 Provider 导致深度研究不可用 - #744

Open
FlyAIBox wants to merge 2 commits into
nashsu:mainfrom
FlyAIBox:codex/fix-deep-research-provider-validation
Open

修复:避免未配置的搜索 Provider 导致深度研究不可用#744
FlyAIBox wants to merge 2 commits into
nashsu:mainfrom
FlyAIBox:codex/fix-deep-research-provider-validation

Conversation

@FlyAIBox

@FlyAIBox FlyAIBox commented Sep 10, 2026

Copy link
Copy Markdown

Problem

The External Information Sources settings allowed a Web Search provider to be marked Active even when its required API key or instance URL was missing.

For example, Tavily could be fully configured while an empty SerpApi entry remained active. Deep Research would then reject the active provider and show the generic “sources are not configured” message, making it look as though the saved Tavily configuration had been lost or ignored.

Provider switching also reused denormalized top-level fields, which could carry stale credentials from the previously active provider into the newly selected provider.

Fix

  • Validate the target provider before activation.
  • Keep the current working provider active when the target provider is incomplete.
  • Read credentials and provider options only from the selected provider's own configuration.
  • Mark previously saved active-but-incomplete providers as Needs configuration instead of Active.
  • Show actionable Deep Research errors that identify a missing provider, API key, instance URL, or AnyTXT configuration.
  • Add regression coverage for switching from a configured provider to an unconfigured provider.
  • Add the new feedback messages in English, Chinese, Italian, and Russian.

The branch also keeps manually dispatched macOS candidate builds unsigned so they can verify compilation without release signing secrets. Tag-triggered release builds remain signed and notarized.

Verification

  • npm exec vitest run src/lib/web-search.test.ts — 9 tests passed
  • npm run test:mocks — 132 test files / 1,878 tests passed
  • npm run typecheck — passed
  • npm run build — passed
  • Manually verified the corrected provider activation and Deep Research flow in the packaged app

Replaced direct checks for configured deep research sources with a new function, getDeepResearchConfigurationMessage, across multiple components. This enhances the user experience by providing more informative alerts regarding configuration issues. Updated related UI elements to reflect the new configuration checks and added corresponding translations for improved clarity.
@FlyAIBox FlyAIBox changed the title fix: validate Deep Research providers before activation fix: prevent unconfigured search providers from breaking Deep Research Sep 10, 2026
@FlyAIBox FlyAIBox changed the title fix: prevent unconfigured search providers from breaking Deep Research 修复:避免未配置的搜索 Provider 导致深度研究不可用 Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant