Skip to content

Release: v0.2.2 - #176

Merged
themightychris merged 6 commits into
mainfrom
develop
Sep 17, 2026
Merged

themightychris merged 6 commits into
mainfrom
develop

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 17, 2026 •

Copy link
Copy Markdown

Slack SSO now completes for members who have to sign in first: the IdP hands /login a site-relative return and the login page follows it back to the SAML resume endpoint.

Improvements

themightychris and others added 6 commits September 17, 2026 17:39
The spec said "encoded current URL" for /launch and a stale
`?resume=1` shape for /sso. Every consumer of `?return=` accepts only a
path with one leading slash (the laddr/Emergence convention), so pin the
contract to that and note the login page must fully navigate when the
return is an API route rather than an SPA route.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Both anonymous SAML paths handed /login an absolute URL. The login page
and the OAuth start drop anything that doesn't begin with a single `/`,
so Slack's first live "Test configuration" signed the user in and then
landed them on `/` instead of resuming the AuthnRequest.

Use the resume path itself for SP-initiated SSO and safeReturnPath of
the request URL for /launch so channel/redir survive. The absolute-URL
helpers had no other callers. Tests previously matched only the
`/login?return=` prefix and passed with the bad value; they now decode
the return and assert the exact path.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The SAML resume endpoint lives under /api, which Fastify serves — the
SPA's router has no such route and rendered NotFound when the login and
account-claim pages navigate()d there after sign-in. Only GitHub OAuth
worked, because the API redirects server-side.

One shared helper replaces three copy-pasted safeReturn functions and
the login page's weaker inline guard (which lacked the `//` check), and
uses window.location.assign for /api/ targets.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
fix: SAML sign-in returns are site-relative and reach the resume endpoint
@github-actions

Copy link
Copy Markdown
Author

Changelog

- fix: SAML sign-in returns are site-relative and reach the resume endpoint [#175] @themightychris

@themightychris
themightychris merged commit ca6af00 into main Sep 17, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant