// the account tabs#
/account is your personal hub. The tab row at the top jumps between sub-pages: overview, wallet, positions, pnl, subscriptions, notifications, connections, telegram, risk, billing.
Identity is anchored to your Discord account. The Discord avatar + display name + tier are all read live from the session — there's no separate profile to edit.
// /account/wallet — custody rollout#
Today: read-only. Sign in, browse signals, build manual deep-link tickets — no funds touch Sage.
Coming in phase 5: per-user custodial USDC wallet on Polygon, generated server-side with a KMS envelope, FNF-tier-gated. The page shows where each step of the rollout sits.
When custody ships, this is also where the 'pause trading for 24h' kill switch lives.
// /account/billing — tier ladder#
Your current tier sits at the top (visitor → member → fnf → caller → oracle/admin). The ladder explains what each rung unlocks; comp'd tiers (caller / oracle / admin) bypass FNF's paid layer entirely.
Stripe-hosted checkout for paid FNF lands in phase 6. Until then the upgrade CTA links to a roadmap page; existing FNF members are managed invoice-side by ops.
// /account/notifications — event × channel matrix#
Defines which event kinds (alpha signal, position closed, big market move, whale alert, weekly digest, signal resolved) route to which channels (Discord DM, Dashboard inbox, Telegram DM, Email).
Today the matrix shows the defaults baked into the bot. Per-cell user overrides land when /api/dashboard/user/prefs ships; until then the controls render as a read-only preview.
// /account/subscriptions — what you follow#
Three tabs: callers, markets, wallets. Each row is a thing you receive notifications about, with the per-source toggles (DM / dashboard / mute) you'd expect.
Read-state comes from your defaults today (seeded from the leaderboards). The wallets tab is FNF-only.
// /account/risk — trading guardrails#
Server-side limits for any custodial-trade action: daily loss cap, per-trade size cap, auto-stop on N consecutive losses, and the 24h pause kill switch.
Controls are preview-only until execution ships — they take effect alongside the custodial wallet. The kill switch goes live the moment custody does, regardless of the other controls.
// /account/connections — linked surfaces#
Shows your Discord (always linked, from OAuth), Telegram (linked or pending), wallet (pending until phase 5), and API key (later).
Telegram is the only one with a self-serve link flow today — open /account/telegram for the interactive code-issue + auto-poll page.
