fix: address remaining PR review comments (clippy, TODO, secrets backend ordering)

- Fix empty line after doc comment (clippy: empty_line_after_doc_comments)
- Collapse nested if in optional_env overlay check (clippy: collapsible_if)
- Remove dangling TODO(#XX) placeholder issue ref in channels.rs
- Fix init_secrets_context to respect selected database_backend when both
  postgres and libsql features are compiled, preventing wrong-backend
  secrets storage when DATABASE_URL is set but libsql was chosen

Co-Authored-By: Claude Opus 4.6 <[email protected]>
This commit is contained in:
Illia Polosukhin
2026-02-14 17:19:30 -08:00
co-authored by Claude Opus 4.6
parent aa808ca94e
commit 0aae66c9dc
3 changed files with 36 additions and 10 deletions
+33 -4
View File
@@ -1116,17 +1116,46 @@ impl SetupWizard {
crypto
};
// Create backend-appropriate secrets store
#[cfg(feature = "postgres")]
// Create backend-appropriate secrets store.
// Respect the user's selected backend when both features are compiled,
// so we don't accidentally use a postgres pool from DATABASE_URL when
// libsql was chosen (or vice versa).
let selected_backend = self
.settings
.database_backend
.as_deref()
.unwrap_or("postgres");
#[cfg(all(feature = "libsql", feature = "postgres"))]
{
// Try postgres path first when postgres feature is available
if selected_backend == "libsql" {
if let Some(store) = self.create_libsql_secrets_store(&crypto)? {
return Ok(SecretsContext::from_store(store, "default"));
}
if let Some(store) = self.create_postgres_secrets_store(&crypto).await? {
return Ok(SecretsContext::from_store(store, "default"));
}
} else {
if let Some(store) = self.create_postgres_secrets_store(&crypto).await? {
return Ok(SecretsContext::from_store(store, "default"));
}
if let Some(store) = self.create_libsql_secrets_store(&crypto)? {
return Ok(SecretsContext::from_store(store, "default"));
}
}
}
#[cfg(all(feature = "postgres", not(feature = "libsql")))]
{
let _ = selected_backend;
if let Some(store) = self.create_postgres_secrets_store(&crypto).await? {
return Ok(SecretsContext::from_store(store, "default"));
}
}
#[cfg(feature = "libsql")]
#[cfg(all(feature = "libsql", not(feature = "postgres")))]
{
let _ = selected_backend;
if let Some(store) = self.create_libsql_secrets_store(&crypto)? {
return Ok(SecretsContext::from_store(store, "default"));
}