From 924be71eb3a62b4e6ac8cd51ea5700edb8b8f0fb Mon Sep 17 00:00:00 2001 From: phil Date: Mon, 2 Feb 2026 17:08:25 -0500 Subject: [PATCH] normalize handles to lowercase this should probably be fixed in atrium's handle type but oh well --- slingshot/src/identity.rs | 2 +- slingshot/src/server.rs | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/slingshot/src/identity.rs b/slingshot/src/identity.rs index 5e07ce6..f84c14c 100644 --- a/slingshot/src/identity.rs +++ b/slingshot/src/identity.rs @@ -115,7 +115,7 @@ impl TryFrom for PartialMiniDoc { let Some(maybe_handle) = aka.strip_prefix("at://") else { continue; }; - let Ok(valid_handle) = Handle::new(maybe_handle.to_string()) else { + let Ok(valid_handle) = Handle::new(maybe_handle.to_lowercase()) else { continue; }; unverified_handle = Some(valid_handle); diff --git a/slingshot/src/server.rs b/slingshot/src/server.rs index 7ba28ee..b793731 100644 --- a/slingshot/src/server.rs +++ b/slingshot/src/server.rs @@ -404,7 +404,7 @@ impl Xrpc { #[oai(example = "example_handle")] Query(handle): Query, ) -> JustDidResponse { - let Ok(handle) = Handle::new(handle) else { + let Ok(handle) = Handle::new(handle.to_lowercase()) else { return JustDidResponse::BadRequest(xrpc_error("InvalidRequest", "not a valid handle")); }; @@ -482,7 +482,7 @@ impl Xrpc { let did = match Did::new(identifier.clone()) { Ok(did) => did, Err(_) => { - let Ok(alleged_handle) = Handle::new(identifier) else { + let Ok(alleged_handle) = Handle::new(identifier.to_lowercase()) else { return invalid("Identifier was not a valid DID or handle"); }; @@ -559,7 +559,7 @@ impl Xrpc { let did = match Did::new(repo.clone()) { Ok(did) => did, Err(_) => { - let Ok(handle) = Handle::new(repo) else { + let Ok(handle) = Handle::new(repo.to_lowercase()) else { return GetRecordResponse::BadRequest(xrpc_error( "InvalidRequest", "Repo was not a valid DID or handle", -- 2.51.2