Skip to content

chore(auth): pause sign-up + sign-in for 1.5.0 - #67

Merged
InstaZDLL merged 1 commit into
mainfrom
chore/disable-signup-signin-for-1.5.0
Jun 19, 2026
Merged

chore(auth): pause sign-up + sign-in for 1.5.0#67
InstaZDLL merged 1 commit into
mainfrom
chore/disable-signup-signin-for-1.5.0

Conversation

@InstaZDLL

@InstaZDLL InstaZDLL commented Jun 19, 2026

Copy link
Copy Markdown
Owner

Summary

Companion to InstaZDLL/WaveFlow#262 which defers multi-device sync to 1.6.0. With no desktop client able to bind, the web account creation + login flow has nothing to point at. Replace both forms with paused-account notices so anyone landing on /sign-up or /sign-in via bookmark or stale desktop OAuth-loopback URL sees an honest "coming with 1.6.0" message instead of a Better-Auth form whose successful submit dead-ends.

What changes

  • sign-up.tsx — form (name + email + password + OAuth divider) replaced with a notice + Back-to-home link. No call to authClient.signUp.email(), no provider availability loader.
  • sign-in.tsx — same notice shape. Keep safeContinueTarget exported — the open-redirect gate's tests in -sign-in.test.ts still pass, locking the hardened path-prefix + origin-equality invariants for the 1.6.0 restoration. The route's validateSearch still accepts ?continue=... so a stale desktop loopback URL doesn't 404.
  • sign-up.test.tsx — form-validation suite (8 cases) replaced with a single test asserting the paused notice renders + the form fields are absent. The original cases come back with the form.

Verification

  • bun run typecheck clean
  • bun run test 230/230 pass (vs 230/230 on main — safeContinueTarget test count holds; sign-up suite drops from 8 to 1, picked up by gate tests staying intact)

Test plan

  • Navigate to /sign-up — see paused notice + Back-to-home link
  • Navigate to /sign-in — see paused notice
  • Navigate to /sign-in?continue=/desktop-login?cb=... — page still renders (validateSearch still accepts the param) but no form appears

Summary by CodeRabbit

Notes de Sortie

  • Chores
    • Les fonctionnalités de connexion et d'inscription sont désormais indisponibles. Les pages affichent un message informatif expliquant cette indisponibilité temporaire.
    • Tous les formulaires d'authentification, champs de mot de passe, et boutons de connexion OAuth ont été supprimés des écrans correspondants.

The desktop 1.5.0 release ships with multi-device sync deferred (see WaveFlow
PR `chore/defer-sync-to-1.6.0`). With no desktop client able to bind, the
web account creation + login flow has nothing to point at. Replace both forms
with paused-account notices so anyone landing on /sign-up or /sign-in via a
bookmark sees an honest "coming with 1.6.0" message instead of a Better-Auth
form whose successful submit then dead-ends.

- `sign-up.tsx`: replace the form (name + email + password + OAuth divider)
  with a notice + Back-to-home link. No call to `authClient.signUp.email()`,
  no provider availability loader (the desktop OAuth-loopback handshake is
  paused so we don't need the OAuth buttons either).
- `sign-in.tsx`: replace the form with the same notice shape. KEEP the
  `safeContinueTarget` open-redirect gate as an exported function — its tests
  in `-sign-in.test.ts` still pass, locking the hardened path-prefix +
  origin-equality invariants for the 1.6.0 restoration. The route's
  `validateSearch` still accepts `?continue=...` so a stale desktop
  loopback URL doesn't 404.
- `sign-up.test.tsx`: form-validation suite replaced with a single test
  asserting the paused notice renders + the form fields are absent. The
  original 8 cases come back with the form.

Verification: `bun run typecheck` clean + `bun run test` 230/230 (vs 230/230
on main before — the sign-up suite count drops 7, picked up by the gate
tests staying intact).
@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: aaeafd7d-9034-476e-9c92-3f649196bf6a

📥 Commits

Reviewing files that changed from the base of the PR and between 4f9f6c2 and 9e1a56b.

📒 Files selected for processing (3)
  • web/src/routes/sign-in.tsx
  • web/src/routes/sign-up.test.tsx
  • web/src/routes/sign-up.tsx

📝 Walkthrough

Walkthrough

Les routes /sign-in et /sign-up remplacent leurs formulaires complets (OAuth, email/mot de passe, validation, navigation) par des pages statiques indiquant que la fonctionnalité est temporairement désactivée. Les loaders SSR sont supprimés. La logique safeContinueTarget de /sign-in est conservée. Les tests de sign-up sont réduits à un seul cas couvrant l'état "paused".

Changes

Mise en pause des routes d'authentification

Layer / File(s) Summary
Route sign-in : safeContinueTarget conservée, UI remplacée
web/src/routes/sign-in.tsx
safeContinueTarget garde sa logique anti open-redirect. validateSearch retourne {} si continue n'est pas une chaîne. Le composant SignIn affiche désormais un écran statique "Sign-in paused" avec un lien vers l'accueil ; tout le formulaire, l'état React, les boutons OAuth et la navigation sont supprimés.
Route sign-up : loader supprimé, composant remplacé par un stub
web/src/routes/sign-up.tsx
Le loader SSR des providers OAuth est retiré de Route. SignUp est remplacé par un rendu statique "Account creation paused", sans formulaire, état local, validation ni appel réseau.
Tests sign-up réduits au cas "paused"
web/src/routes/sign-up.test.tsx
Les tests de validation/submit sont supprimés. Un unique test vérifie l'affichage du message de désactivation et l'absence du champ mot de passe, avec un mock minimaliste de @tanstack/react-router.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • InstaZDLL/waveflow-server#62 : Modifie également web/src/routes/sign-up.test.tsx en faisant évoluer les attentes du composant SignUp, directement en lien avec la transition vers l'état "paused".

Suggested labels

scope: web, scope: routes, size: m

Poem

🚧 Plus de formulaires, plus de passwords à saisir,
Le sign-in et le sign-up ont décidé de dormir.
Un stub tout propre, un message clair affiché,
"Revenez plus tard" — l'accueil vous est ouvert.
Les tests suivent le rythme, épurés et sereins. 🛌

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed Le titre décrit précisément le changement principal : pause des fonctionnalités sign-up et sign-in pour la version 1.5.0, ce qui correspond exactement aux modifications du changeset.
Description check ✅ Passed La description couvre les sections clés (Summary, Changes) avec contexte et justification. Les tests sont documentés et vérifiés. La checklist de test plan est partiellement complétée (3 vérifiés, 1 non coché).
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/disable-signup-signin-for-1.5.0

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added ignore-for-release Excluded from release notes scope: web Embedded web player (React) scope: auth Authentication, tokens, sessions scope: routes Web routes size: m 50-200 lines and removed ignore-for-release Excluded from release notes labels Jun 19, 2026
@InstaZDLL InstaZDLL self-assigned this Jun 19, 2026
@github-actions github-actions Bot added ignore-for-release Excluded from release notes and removed ignore-for-release Excluded from release notes labels Jun 19, 2026
@InstaZDLL
InstaZDLL merged commit 0b48d41 into main Jun 19, 2026
11 of 16 checks passed
@InstaZDLL
InstaZDLL deleted the chore/disable-signup-signin-for-1.5.0 branch June 19, 2026 01:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ignore-for-release Excluded from release notes scope: auth Authentication, tokens, sessions scope: routes Web routes scope: web Embedded web player (React) size: m 50-200 lines

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant