Skip to main content
← Back to list
01Issue
BugShippedSwamp Club
Assigneeskeeb

Relationships

#1186 Collective invite is never claimed when the invitee registers via Google with the invited address — stays pending forever, invisible to the invitee

Opened by magistr · 7/16/2026· Shipped 7/17/2026

A collective invitation sent to an email address is never claimed when the recipient registers via Google OAuth using that same address. The invite stays pending forever on the inviter's side, and the new account has no idea it was ever invited. Nothing errors — it just silently doesn't connect.

Steps to reproduce

  1. Create a collective (in my case quest).
  2. From the collective's page, invite a person by email address — a Gmail address.
  3. The recipient opens the invitation and registers a new swamp-club account via Google / Gmail sign-in, using the same address the invitation was sent to.
  4. Registration succeeds; the account is created and can log in.

Expected

Because the address the account registers with matches the address the invitation was sent to, the pending invitation should be claimed at signup: the invitee joins the collective, and the invitation leaves the pending state.

Actual

  • Invitee's account page: no mention of the collective that invited them. No membership, no pending-invite prompt, no "you were invited to X — accept?" affordance. From their side the invitation does not exist.
  • Inviter's collective page: the invitation is still listed as pending, indefinitely.

Neither side sees an error, so there is nothing to act on. The invitee cannot self-serve (they see nothing to accept) and the inviter has no way to force the link.

Notes

The emails match exactly, so this isn't a mismatch case — which suggests the pending-invitation lookup doesn't run on the OAuth/Google registration path, or runs before the account's email is populated from the OAuth profile. An email/password signup path may reconcile correctly; I only exercised the Google one, so I can't say whether this is OAuth-specific or affects all signups.

Worth checking whether the invite is keyed to something other than the email (an invite token consumed only by a specific route), and whether the Google path drops the invite context across the OAuth redirect.

Impact

Beyond collectives being unjoinable via the invite flow, this blocks the recruit_first quest challenge ("invite someone who accepts", 1000 XP) — the invite can never reach accepted state, so the challenge cannot complete.

That challenge is load-bearing for the genesis campaign. Summing every other challenge in the pass, including both lab challenges, reaches 6400 XP against the 7000 needed for the T15 GENESIS capstone — 600 short. The heartbeat drip entries (+5 model method run, +5 workflow run) do not contribute to passXp; on my account passXp equals the sum of completed challenges exactly, across hundreds of drip events. So recruit_first is the only remaining path to the capstone, and while this bug stands, the capstone is unreachable for anyone whose invitee registers with Google.

02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED+ 1 MOREASSIGNED+ 8 MOREREVIEW+ 3 MOREPR_MERGED+ 1 MORECONTRIBUTOR_NOTIFIED

Shipped

7/17/2026, 2:07:43 AM

Click a lifecycle step above to view its details.

03Sludge Pulse
keeb assigned keeb7/17/2026, 12:33:28 AM
Editable. Press Enter to edit.

magistr commented 7/16/2026, 8:55:25 PM

Filed #1187 for the adjacent, separable half of this: /orgs renders no pending-invitation state for the invitee at all — no list, banner, or accept affordance.

Keeping them apart deliberately. This issue is the reconciliation bug on the Google signup path (invite not claimed despite a matching address). #1187 is the absence of an invitee-facing surface, which survives a fix here: if invitations require explicit acceptance, then even with the invite correctly linked and correctly pending, there is still no page on which to accept it.

Together they close the loop — an invitation currently cannot be completed by any route.

magistr commented 7/16/2026, 9:01:55 PM

Correction to my own Impact section above — it is wrong, and I would rather flag it than have it mislead triage.

I claimed this blocks the recruit_first quest challenge and makes the T15 capstone unreachable. It does not. recruit_first has since completed on my account and awarded its 1000 XP from this very invite, so that paragraph should be disregarded.

The referral credit and the collective membership appear to be separate mechanisms: the signup was credited as a referral, while the collective invite itself is still pending and the membership never formed. So the defect reported at the top stands unchanged — an invite sent to an address, whose recipient registers via Google with that same address, is never claimed — it simply does not have the quest consequence I attributed to it.

Everything else in the report is as observed. Apologies for the noise.

keeb commented 7/17/2026, 2:08:05 AM

Thanks @magistr for reporting this! The fix has been merged and a release is on its way. We appreciate your contribution to swamp.

Sign in to post a ripple.