Parakeet is a Rust-based Bluesky AppServer aiming to implement most of the functionality required to support the Bluesky client
appview atproto bluesky rust appserver

fix(consumer): don't error out on backfill when handle validation fails

+14 -16
+14 -16
consumer/src/backfill/mod.rs
··· 193 194 // in theory, we can use com.atproto.identity.resolveHandle against a PDS, but that seems 195 // like a way to end up with really sus handles. 196 - let Some(handle_did) = inner.resolver.resolve_handle(&handle).await? else { 197 - eyre::bail!("Failed to resolve did for handle {handle}"); 198 - }; 199 - 200 - if handle_did != did { 201 - eyre::bail!("requested DID doesn't match handle"); 202 } 203 - 204 - // set the handle from above 205 - db::actor_upsert_handle( 206 - conn, 207 - did, 208 - ActorSyncState::Processing, 209 - Some(handle), 210 - Utc::now(), 211 - ) 212 - .await?; 213 } 214 215 // now we can start actually backfilling
··· 193 194 // in theory, we can use com.atproto.identity.resolveHandle against a PDS, but that seems 195 // like a way to end up with really sus handles. 196 + if let Some(handle_did) = inner.resolver.resolve_handle(&handle).await? { 197 + if handle_did != did { 198 + tracing::warn!("requested DID doesn't match handle"); 199 + } else { 200 + // set the handle from above 201 + db::actor_upsert_handle( 202 + conn, 203 + did, 204 + ActorSyncState::Processing, 205 + Some(handle), 206 + Utc::now(), 207 + ) 208 + .await?; 209 + } 210 } 211 } 212 213 // now we can start actually backfilling