Load only per-tab data for embed fragments, skip exchange capital fetches on tab switches, and harden calculator market imports/timeouts.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use in-shell content loading state instead of parent postMessage so tab changes do not trigger the full instance-frame loading mask.
Co-authored-by: Cursor <cursoragent@cursor.com>
Replace full-page soft nav with a persistent shell and /api/embed/page loads so tab switches in the hub iframe avoid document.write flicker.
Co-authored-by: Cursor <cursoragent@cursor.com>
Remove hover prefetch and mark soft-nav fetches so Gate/OKX render pages from local DB without blocking on exchange history sync.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use fetch in-frame navigation with overlay and hover prefetch; show delayed hub loading spinner instead of hiding the iframe.
Co-authored-by: Cursor <cursoragent@cursor.com>
Stop fetch_tickers fallback for volume rank and keep stale cache on failed refresh. Compute roll unified stop as merge-average plus offset percent instead of break-even.
Co-authored-by: Cursor <cursoragent@cursor.com>
Skip appending AI error strings to the session and use event-specific fallback commentary when the model returns empty content.
Co-authored-by: Cursor <cursoragent@cursor.com>
Account cards expand to fill available width when fewer exchanges are enabled instead of staying in fixed four-column tracks.
Co-authored-by: Cursor <cursoragent@cursor.com>
Each settings section and exchange card gets its own save button and fold toggle with state persisted in localStorage.
Co-authored-by: Cursor <cursoragent@cursor.com>
Align the trading supervision card with other settings panels so content is not flush against the border.
Co-authored-by: Cursor <cursoragent@cursor.com>
Proactive monitoring for manual/hub closes and new opens prevents overtrading via in-app alerts, configurable WeChat links, and supervisor chat.
Co-authored-by: Cursor <cursoragent@cursor.com>
Market info fetch was rejected by instances because it sent the wrong bridge token header; align with hub monitor calls.
Co-authored-by: Cursor <cursoragent@cursor.com>
Load enabled instances from settings, fetch market info via /api/hub/market, and apply exchange-specific amount and price precision in trend and roll calculators.
Co-authored-by: Cursor <cursoragent@cursor.com>
Merge 关键阻力位/关键支撑位 into 关键支撑阻力, share key_monitor_form.js across hub and new-tab views, and add hub shortcut to /key_monitor.
Co-authored-by: Cursor <cursoragent@cursor.com>
Clear expired cooloff on read, never restart timer from invalid future anchors, and reconcile with journaled manual closes when the 1h window already ended.
Co-authored-by: Cursor <cursoragent@cursor.com>
Clamp future last_close anchors, cap remaining time server-side, prefer freeze_remaining_sec in the badge JS, and auto-repair stale DB rows on read.
Co-authored-by: Cursor <cursoragent@cursor.com>
Anchor last_close on journal save, ignore leftover stored until when 1h window ended, and clear expired cooloff on trading-day rollover.
Co-authored-by: Cursor <cursoragent@cursor.com>
Treat naive app datetimes as local time, normalize legacy UTC-ms rows, and resolve cooloff end from stored until or last_close+duration.
Co-authored-by: Cursor <cursoragent@cursor.com>