clash-verge-rev/clash-verge-rev · error · anyhow::Error
{error:#}; configuration rollback failed: {rollback_error:#}
Error message
{error:#}; configuration rollback failed: {rollback_error:#} What it means
Error "{error:#}; configuration rollback failed: {rollback_error:#}" thrown in clash-verge-rev/clash-verge-rev.
Source
Thrown at src-tauri/src/config/port.rs:141
candidate_verge
.save_file()
.await
.context("failed to persist selected mixed proxy port")?;
Self::generate_file(ConfigType::Run)
.await
.context("failed to persist Runtime Configuration")?;
Ok::<(), anyhow::Error>(())
}
.await;
// Files are not part of the transaction, so a failed write is restored explicitly.
// The drafts are rolled back first: restoring reads the committed configuration, and
// must not see a candidate that is being abandoned.
if let Err(error) = persist_result {
transaction.rollback();
return match restore_files(&snapshots).await {
Ok(()) => Err(error),
Err(rollback_error) => Err(anyhow!("{error:#}; configuration rollback failed: {rollback_error:#}")),
};
}
transaction.commit();
record_fallback(old_port, new_port);
Handle::refresh_clash();
Handle::refresh_verge();
logging!(
warn,
Type::Config,
"Mixed proxy port {} is externally occupied; switched to {} and persisted all configuration layers",
old_port,
new_port
);
Ok(())
}
pub(crate) fn block_startup_core(error: &anyhow::Error) {View on GitHub (pinned to 5cad0f2799)
When it happens
Trigger: Thrown at src-tauri/src/config/port.rs:141 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of clash-verge-rev/clash-verge-rev@5cad0f2799 (2026-08-12).
Data as JSON: /api/errors/4164180bb4801577.
Report an issue: GitHub.