feat: remove the last beginner walls — USDC sourcing help, reachable deposit page, first-run reassurance

- The /welcome deposit page (QR + auto-refreshing balance + key backup) was
  gated behind a legacy 'beginner mode' localStorage flag that nothing sets
  anymore — every deposit link silently bounced to /traders. Gate removed:
  any signed-in user reaches it.
- 'Don't have USDC yet?' helper on the deposit page: buy on Binance/OKX/
  Coinbase, withdraw picking the Base network, arrives in ~1 minute. This is
  the wall every true newcomer hits first.
- Autopilot step 3 now says exactly where trading money goes
  (app.hyperliquid.xyz → Deposit, USDC on Arbitrum).
- Register page: 'NEW_USER ONBOARDING / Initializing Registration Sequence'
  jargon replaced with what actually happens next (guided launch, ~$13,
  five minutes).
- Dashboard shows a calm first-run note while a fresh autopilot runs its
  first cycle ('reading the whole market — first decision lands in a minute
  or two'), so the initial silence doesn't read as broken.
- Hyperliquid connect steps renamed to plain language ('Approve it in your
  wallet (trade-only, cannot withdraw)' etc.).
This commit is contained in:
tinkle-community
2026-07-07 23:03:20 +09:00
parent c1b660bb45
commit 390db72cdb
6 changed files with 44 additions and 23 deletions

View File

@@ -31,7 +31,6 @@ import { useLanguage } from '../contexts/LanguageContext'
import { useSystemConfig } from '../hooks/useSystemConfig'
import { t } from '../i18n/translations'
import { api } from '../lib/api'
import { getUserMode } from '../lib/onboarding'
import type {
AccountInfo,
DecisionRecord,
@@ -446,12 +445,11 @@ export function AppRoutes() {
<Route
path={ROUTES.welcome}
element={
// The welcome overlay is the AI-wallet deposit page (QR +
// auto-refreshing balance) — useful to every signed-in user, so
// no legacy "beginner mode" gate here.
isAuthenticated ? (
getUserMode() === 'beginner' ? (
<TradersRoute showBeginnerOnboarding />
) : (
<Navigate to={ROUTES.traders} replace />
)
<TradersRoute showBeginnerOnboarding />
) : (
<Navigate to={ROUTES.login} replace />
)