Fix auth: auto-create customer, display name flow, OTP auto-verify

- Backend: getOrCreateCustomer with phone fallback for re-login
- Backend: PATCH /api/client/auth/profile for display name update
- Client app: AuthNeedsDisplayNameData state + SetDisplayNameScreen
- Client app: ApiClient.patch method
- Both apps: handle verificationCompleted for auto-verify (test numbers)
- Both apps: skip credential sign-in if already auto-verified
- Remove debug prints from mitra auth + OTP screens
- Fix ChatRequestNotifier.startListening skips when accepting

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-09 16:22:28 +08:00
parent 2e80434e9b
commit 212e1e8ac6
9 changed files with 178 additions and 11 deletions

View File

@@ -54,6 +54,8 @@ class ChatRequest extends _$ChatRequest {
ChatRequestData build() => const ChatRequestIdleData();
Future<void> startListening() async {
// Don't reset state if actively accepting/accepted — would lose navigation
if (state is ChatRequestAcceptingData || state is ChatRequestAcceptedData) return;
_closeWebSocket();
state = const ChatRequestListeningData();
await _connectWebSocket();