- Shipped
- August 28, 2026 at 12:25 AM UTC
- Author
- Kamo
- Commit
- eb04d0e
Two halves of the same problem: the login page was a one-way street. It validated any existing *** cookie on load and, when the session was still good, redirected straight into the workspace it belonged to. That made the form unreachable for anyone already signed in — a member of several organizations could not open a second one, because every attempt to come back here bounced them into the first, and someone signed in as the wrong account had no way to reach a form to correct it. The cookie is now left alone rather than consulted or cleared: the tab already using it keeps working, and signing in here simply issues a new session, which is what makes several organizations open at once work at all. Nothing is lost by not redirecting. `?next=` and the paid-signup checkout hand-off are both applied on the normal sign-in path, so those journeys still end where they should — they just ask who you are first. planCheckoutUrl() in particular must not be called on load, because reading it consumes the one-shot cookie it is built from; a branch that read it and then did not redirect would silently eat a buyer's plan selection. The workspace picker gains a way out, for the same reason: it is the first screen that shows which account you actually authenticated as, so signing in as the wrong one is noticed there or not at all. Escape does the same thing. Both are inert while a selection is in flight, whose token is already being spent. Backing out discards that token rather than carrying it to the next attempt — it is single-use and belongs to the authentication just abandoned. Also drops the "Checking session…" spinner and its state, which would otherwise have sat there claiming to check a session the page no longer looks at.