BigPizzaV3/CodexPlusPlus · error · anyhow::Error
provider target discovery task failed: {error}
Error message
provider target discovery task failed: {error} What it means
Wrapped failure thrown by the load_provider_sync_targets Tauri command when the spawn_blocking task around codex_plus_data::load_provider_sync_targets fails at the task level (JoinError), formatted as "provider target discovery task failed: {error}". Means the blocking wrapper died (panic/cancellation); a clean domain error from the discovery itself is returned by the inner call.
Source
Thrown at apps/codex-plus-manager/src-tauri/src/commands.rs:2829
let key = key.trim();
if key.is_empty() { None } else { Some(key) }
}
fn ensure_text_newline(value: &str) -> String {
if value.trim().is_empty() {
String::new()
} else {
format!("{}\n", value.trim_end())
}
}
#[tauri::command]
pub async fn load_provider_sync_targets() -> CommandResult<Value> {
let settings = SettingsStore::default().load().unwrap_or_default();
let result =
tauri::async_runtime::spawn_blocking(|| codex_plus_data::load_provider_sync_targets(None))
.await
.map_err(|error| anyhow::anyhow!("provider target discovery task failed: {error}"));
match result {
Ok(mut targets) => {
let manual = settings
.provider_sync_manual_providers
.iter()
.chain(settings.provider_sync_saved_providers.iter())
.filter_map(|value| {
let trimmed = value.trim();
if trimmed.is_empty() {
None
} else {
Some(trimmed.to_string())
}
})
.collect::<Vec<_>>();
merge_manual_provider_sync_targets(&mut targets, &manual, &settings);
ok(
"Provider 同步目标已加载。",View on GitHub (pinned to f2074595a2)
Solutions
- 查看任务 panic 日志定位崩溃点
- 确认 settings 与本地数据文件可读
- 重试加载
- 修复 load_provider_sync_targets 内的 unwrap 路径
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at apps/codex-plus-manager/src-tauri/src/commands.rs:2829 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of BigPizzaV3/CodexPlusPlus@f2074595a2 (2026-08-23).
Data as JSON: /api/errors/bee161bc26f0d155.
Report an issue: GitHub.