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
66
fork

Configure Feed

Select the types of activity you want to include in your feed.

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

Mia d6d33e21 6962a240

+14 -16
+14 -16
consumer/src/backfill/mod.rs
··· 193 193 194 194 // in theory, we can use com.atproto.identity.resolveHandle against a PDS, but that seems 195 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"); 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 + } 202 210 } 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 211 } 214 212 215 213 // now we can start actually backfilling