diff --git a/publisher.go b/publisher.go index e1244a9..245f2c5 100644 --- a/publisher.go +++ b/publisher.go @@ -550,12 +550,12 @@ func stripHTML(s string) string { // DeriveHandleFromFeed generates an AT Protocol handle from a feed URL // Format: {domain}-{category}.1440.news -// The PDS limits subdomains to 18 characters, so we prioritize meaningful parts +// AT Protocol allows up to 63 characters per label // Examples: // feeds.bbci.co.uk/news/technology/rss.xml → bbc-technology.1440.news // news.ycombinator.com/rss → ycombinator.1440.news func DeriveHandleFromFeed(feedURL string) string { - const maxSubdomainLen = 18 + const maxSubdomainLen = 63 // Ensure we have a scheme for parsing if !strings.Contains(feedURL, "://") {