diff --git a/warzone/crates/warzone-server/src/main.rs b/warzone/crates/warzone-server/src/main.rs index 55c07cf..554fbdc 100644 --- a/warzone/crates/warzone-server/src/main.rs +++ b/warzone/crates/warzone-server/src/main.rs @@ -82,6 +82,18 @@ async fn main() -> anyhow::Result<()> { } else { tracing::info!("BotFather already exists"); } + // Always ensure alias exists (may have been lost on data wipe) + let _ = state.db.aliases.insert(b"a:botfather", botfather_fp.as_bytes()); + let _ = state.db.aliases.insert(format!("fp:{}", botfather_fp).as_bytes(), b"botfather"); + // Store proper AliasRecord so resolve_alias works + let bf_record = serde_json::json!({ + "alias": "botfather", + "fingerprint": botfather_fp, + "recovery_key": "", + "registered_at": chrono::Utc::now().timestamp(), + "last_active": chrono::Utc::now().timestamp(), + }); + let _ = state.db.aliases.insert(b"rec:botfather", serde_json::to_vec(&bf_record).unwrap_or_default()); } // Spawn federation outgoing WS connection if enabled