• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

raystack / frontier / 33429107510
50%
main: 49%

Build:
Build:
LAST BUILD BRANCH: feature/featauthenticate-separate-login-from-signup-with-an-explicit
DEFAULT BRANCH: main
Ran 31 Aug 2026 07:15PM UTC
Jobs 1
Files 305
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

31 Aug 2026 06:48PM UTC coverage: 49.524% (+0.4%) from 49.161%
33429107510

Pull #1912

github

rohanchkrabrty
feat(authenticate): separate login from signup with an explicit intent

Frontier cannot tell a signup from a login: every strategy ends at
getOrCreateUser, which returns the existing user or creates one, so a
login with an unknown address silently creates the account.

Adds a FlowIntent carried on flow metadata and both gates from the RFC's
intent by strategy table. StartFlow is the fast path, rejecting a login
with no account or a signup with one before an OTP is sent, for the
strategies that know the email that early. User creation is the gate that
matters, since every strategy reaches it and OIDC has no email until the
callback.

The intent also replaces the passkey guess: signup picks the register
ceremony, login picks the login ceremony. An unspecified intent keeps
today's create-or-get and today's guess, so existing clients and
deployments are unaffected.

Flow.Metadata is existing JSONB, so no migration. The accessors parse
rather than assert, since JSONB does not return the types it was given,
and are nil-receiver-safe so the caller without a flow needs no branch.

Error mapping at the handlers and all consent work follow separately.

Refs docs/rfcs/0002-explicit-consent-at-signup.md

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VW3nysiE4H83VQk6BroMYc
Pull Request #1912: feat(authenticate): separate login from signup with an explicit intent

115 of 119 new or added lines in 3 files covered. (96.64%)

20112 of 40611 relevant lines covered (49.52%)

15.83 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
46.88
20.46% core/authenticate/service.go
1
52.71
0.0% core/authenticate/authenticators.go
Jobs
ID Job ID Ran Files Coverage
1 33429107510.1 31 Aug 2026 07:15PM UTC 305
49.52
GitHub Action Run
Source Files on build 33429107510
  • Tree
  • List 305
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Pull Request #1912
  • PR Base - feature/featconsent-add-the-user_consents-table-with-immutability (#33429108048)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc