From f7735a3697f3822147c24c7af79b16b03de02fcb Mon Sep 17 00:00:00 2001 From: Jared Pereira Date: Thu, 23 Apr 2026 17:43:14 -0400 Subject: [PATCH] prevent creating duplicate subscription records --- app/lish/subscribeToPublication.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/lish/subscribeToPublication.ts b/app/lish/subscribeToPublication.ts index ed712efe..b1d0c2af 100644 --- a/app/lish/subscribeToPublication.ts +++ b/app/lish/subscribeToPublication.ts @@ -45,6 +45,18 @@ export async function subscribeToPublication( let agent = new AtpBaseClient( credentialSession.fetchHandler.bind(credentialSession), ); + + let { data: existingSubscription } = await supabaseServerClient + .from("publication_subscriptions") + .select("uri") + .eq("identity", credentialSession.did!) + .eq("publication", publication) + .maybeSingle(); + if (existingSubscription) { + revalidatePath("/lish/[did]/[publication]", "layout"); + return { success: true, hasFeed: true }; + } + let record = await agent.site.standard.graph.subscription.create( { repo: credentialSession.did!, rkey: TID.nextStr() }, { -- 2.51.2