Block new user signups for service shutdown#410
Conversation
Return 403 + SIGNUP_DISABLED from /tss/v1/keygen and /tss/v2/keygen and preserve the original handler bodies in block comments for rollback. Existing users continue to sign in, and /tss/v2/keygen_ed25519 stays open so secp256k1-only users can still add ed25519. SDK surfaces a new signup_disabled error type, and user_dashboard/demo_web/mobile host render a "signups are closed" message instead of the generic failure.
The email sign-in path wraps err.type in a "sign in fail, err: ..." prefix before throwing, so an exact string match skipped it and the widget fell back to the generic "Login failed" message. Switch to a substring check so both the plain and wrapped forms surface the service-shutdown copy.
The email sign-in path wraps err.type in a "sign in fail, err: ..." prefix before throwing, so an exact string match skipped it and the widget fell back to the generic "Login failed" message. Switch to a substring check so both the plain and wrapped forms surface the service-shutdown copy.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6c7284c953
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 744fd55741
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
piatoss3612
left a comment
There was a problem hiding this comment.
LGTM. Some dead code remains but doesn't affect the shutdown behavior.
Non-blocking notes:
- New-user flow registers shares on KSN before /keygen returns 403, so exists=false attempts can still leave KSN-side rows. Worth a follow-up client-side short-circuit, not a blocker given the shutdown context.
- keygen.test.ts / e2e.test.ts still assert expect(200) on /keygen. CI doesn't run jest so pipeline is unaffected; local regression guard is just weakened.
변경
서비스 종료 대비 신규 가입 영구 차단.
차단
POST /tss/v1/keygen, POST /tss/v2/keygen → 403 + SIGNUP_DISABLED
기존 본문은 블록 주석으로 보존 (주석 해제로 롤백)
유지
/tss/v2/keygen_ed25519 — 기존 secp256k1 유저의 ed25519 백필 (USER_NOT_FOUND 가드로 신규 유저 우회 차단됨)
signin / 서명 / 인출 등 기존 유저 동작 전체
프론트
SDK OAuthSignInError에 signup_disabled 추가
user_dashboard / demo_web → "Signups are closed" 안내, 재시도 버튼 숨김