Commit Graph

58 Commits

Author SHA1 Message Date
2569718930@qq.com c9d03fd3e1 feat: implement dashboard state management, API proxy layer, and modular UI components for weather monitoring and payments 2026-05-14 15:05:13 +08:00
2569718930@qq.com 341825747f UX 审查 P2 修复:X轴标签密度、极端温度视觉强化
- AiCityTemperatureChart:X轴标签从每4个→每3个显示,maxTicksLimit 6→8
- globals.css:新增 temp-extreme-hot(≥40°C)和 temp-extreme-cold(≤-5°C)样式
- PanelSections:Hero 温度值自动应用极端温度 CSS 类(橙色辉光/蓝色辉光)
- 华氏度自动适配:≥104°F 为极热,≤23°F 为极冷

Tested: npx tsc --noEmit
2026-05-10 17:39:22 +08:00
2569718930@qq.com 2b1d7c0b65 Improve dashboard maintainability before the next release
The dashboard had several oversized orchestration, component, and CSS files that made product-copy changes and mobile/performance work risky. This refactor preserves behavior while splitting scan terminal CSS, opportunity helpers, future forecast panels, history/detail charts, and probability/model sections into smaller ownership boundaries.

Constraint: No user-visible version bump because this batch is architecture and performance cleanup, not a release announcement.

Rejected: Rewrite dashboard state management in the same batch | too broad for a safe upload after CSS and component splitting.

Confidence: high

Scope-risk: moderate

Reversibility: clean

Directive: Keep new component/CSS boundaries instead of moving product copy back into the large dashboard files.

Tested: npm run build; npm run test:business; git diff --check

Not-tested: Browser visual smoke test after push
2026-04-28 20:19:17 +08:00
2569718930@qq.com a77d613c2b Move weather summaries out of the dashboard utility bulk
Weather labels, METAR translation, risk badges, and hero meta chips were still embedded in dashboard-utils even though panel, modal, and detail views use them as focused presentation helpers. This moves them into weather-summary-utils while keeping dashboard-utils re-export compatibility.

Constraint: Preserve existing weather/METAR/risk/hero meta wording.

Rejected: Move airport narrative in the same pass | it has broader AI narrative coupling and should be separated independently.

Confidence: high

Scope-risk: narrow

Reversibility: clean

Tested: TypeScript diagnostics for weather-summary-utils, dashboard-utils, PanelSections, DetailPanel, and FutureForecastModal

Tested: npm run build

Not-tested: Visual snapshot of every weather icon/label combination.
2026-04-28 12:17:42 +08:00
2569718930@qq.com 5dc39b1573 Move model views out of the dashboard utility bulk
Probability and multi-model view adapters were still embedded in dashboard-utils even though table, panel, modal, and city-card views use them as small pure selectors. This moves them into model-utils and keeps dashboard-utils re-export compatibility.

Constraint: Preserve model/probability return shapes and existing fallback behavior.

Rejected: Merge model-utils with chart-utils | model selectors and chart data preparation change at different rates.

Confidence: high

Scope-risk: narrow

Reversibility: clean

Tested: TypeScript diagnostics for model-utils, dashboard-utils, and PanelSections

Tested: npm run build

Not-tested: Bundle analyzer size comparison.
2026-04-28 12:07:43 +08:00
2569718930@qq.com ecbba9160d Let chart views avoid the dashboard utility bulk
The intraday chart data builder lived inside dashboard-utils with observation-source and TAF helpers, so chart consumers had to depend on the large dashboard utility surface. This moves chart data preparation, observation-source helpers, and TAF marker labels into focused modules while keeping dashboard-utils re-export compatibility.

Constraint: Preserve existing chart data shape, observation labels, TAF labels, and legacy dashboard-utils exports.

Rejected: Rewrite chart data generation while moving it | this pass is a boundary move only so visual behavior remains stable.

Confidence: high

Scope-risk: moderate

Reversibility: clean

Tested: TypeScript diagnostics for chart-utils, dashboard-utils, observation-source-utils, and taf-utils

Tested: npm run build

Not-tested: Browser visual regression across every chart city.
2026-04-28 11:58:58 +08:00
2569718930@qq.com 1595f4a92e feat: implement ScanTerminalDashboard with AI-driven city forecast streaming and opportunity tracking 2026-04-26 08:12:31 +08:00
2569718930@qq.com 92e505d804 feat: add dashboard panel components for scan metrics, KPI bars, and terminal views 2026-04-26 00:45:16 +08:00
2569718930@qq.com 3237f95e8c feat: implement scan terminal dashboard with real-time opportunity tracking and visualization components 2026-04-26 00:24:11 +08:00
2569718930@qq.com d5fb40a544 feat: implement weather dashboard components, state management, and API routes for terminal scanning and assistant chat 2026-04-25 06:42:24 +08:00
2569718930@qq.com 0e5a1f2652 feat: implement ScanTerminalDashboard with modular components and backend integration for Polymarket data collection 2026-04-25 03:26:28 +08:00
2569718930@qq.com 79a4333aaf feat: implement PolyWeather dashboard layout with integrated map, weather visualization, and detail panels 2026-04-23 22:35:34 +08:00
2569718930@qq.com fe804bc915 Normalize Wunderground labels to METAR 2026-04-22 23:43:27 +08:00
2569718930@qq.com 1765f383e4 增强页头概率页入口并优化概率标签 2026-04-22 02:59:12 +08:00
2569718930@qq.com 00eed52545 feat: implement FutureForecastModal and PanelSections for advanced weather visualization and dashboard data display 2026-04-22 02:30:49 +08:00
2569718930@qq.com df1ce01625 Refine probability bucket copy 2026-04-22 02:18:25 +08:00
2569718930@qq.com 1fd9dc695c feat: implement dashboard layout with glassmorphism styling and modular panel sections 2026-04-22 02:07:03 +08:00
2569718930@qq.com 53664c9a33 修复天气页面布局异常 2026-04-22 01:59:23 +08:00
2569718930@qq.com 974b55e34f Add full probability distributions to dashboard 2026-04-22 01:43:13 +08:00
2569718930@qq.com f9eff36aae feat: add PanelSections component for dashboard weather data visualization and market bucket analysis 2026-04-22 01:26:27 +08:00
2569718930@qq.com 988f906f23 feat: add PanelSections component for dashboard weather data visualization and market bucket analysis 2026-04-22 01:09:22 +08:00
2569718930@qq.com 8e949821f2 修复天气页面提交信息 2026-04-22 00:53:58 +08:00
2569718930@qq.com e5facb041c Handle range-based Polymarket temperature buckets 2026-04-22 00:38:19 +08:00
2569718930@qq.com 5a1610d428 feat: implement Polymarket WebSocket cache and add dashboard panel UI components 2026-04-22 00:09:49 +08:00
2569718930@qq.com c40b7c54e3 Refine probability distribution price labels 2026-04-21 23:27:31 +08:00
2569718930@qq.com 193af17726 feat: add PanelSections component with helper utilities for dashboard data visualization and model processing 2026-04-21 23:18:42 +08:00
2569718930@qq.com e8065da114 Enhance probability-price linkage in dashboard 2026-04-21 21:12:50 +08:00
2569718930@qq.com 82ec594277 启用概率校准和 WebSocket 报价配置 2026-04-21 21:06:48 +08:00
2569718930@qq.com 582ded8cfb 改进METAR当日状态判断与展示 2026-04-21 19:13:33 +08:00
2569718930@qq.com 9ca29cfd6d Remove dynamic center from probability distribution 2026-04-19 03:51:13 +08:00
2569718930@qq.com c4f1151cf3 Show EMOS probability labels in intraday analysis 2026-04-19 03:41:39 +08:00
2569718930@qq.com fe6477b09c Use existing loading state for sparse detail 2026-04-18 14:40:29 +08:00
2569718930@qq.com 16033033a7 Show forecast completion state in dashboard panels 2026-04-18 01:04:36 +08:00
2569718930@qq.com f5e61e96ff Clarify calibrated probability read with LGBM context 2026-04-17 20:53:37 +08:00
2569718930@qq.com bc09a3753c Fix today analysis modal routing 2026-04-17 20:40:17 +08:00
2569718930@qq.com cdaea8a1f0 Clarify model API source and simplify probability hints 2026-04-17 01:11:04 +08:00
2569718930@qq.com 5f0677447e Rename AIFS model group to avoid AI forecast wording 2026-04-17 00:59:10 +08:00
2569718930@qq.com c346fae351 Add rounded model-vote baseline to probability distribution 2026-04-17 00:48:12 +08:00
2569718930@qq.com 19169e4bdb Document model stack and DEB deduplication 2026-04-17 00:40:46 +08:00
2569718930@qq.com 9ec86e0504 Group model stack and dedupe DEB families 2026-04-17 00:35:48 +08:00
2569718930@qq.com 8db933a47c Clarify METAR anchor labeling in weather forecasts 2026-04-17 00:19:47 +08:00
2569718930@qq.com e2cb0cfe5e Add professional intraday meteorology analysis 2026-04-16 17:13:53 +08:00
2569718930@qq.com 6f80d31852 Add JMA Haneda temps and fix stale detail loading 2026-04-08 16:20:02 +08:00
2569718930@qq.com 7b1f34db27 Refresh sparse model detail caches in forecast views 2026-04-08 15:23:34 +08:00
2569718930@qq.com a5b5711863 Remove AI analysis and rank cities by recent DEB performance 2026-04-05 07:13:00 +08:00
2569718930@qq.com 354d55f752 Use DEB values in multi-day forecasts 2026-03-23 21:41:27 +08:00
2569718930@qq.com 69f24ddc08 Optimize frontend performance and add route-level web vitals tracking 2026-03-18 20:38:43 +08:00
2569718930@qq.com 1ae9b55509 Add RP5 forecast scraping support 2026-03-17 23:15:13 +08:00
2569718930@qq.com 54544e40b9 feat: Implement core data models, backend services for weather and market data, and initial dashboard components. 2026-03-17 13:21:14 +08:00
2569718930@qq.com 025feaa96e feat: Implement PolyWeather web map API backend and integrate new frontend dashboard components for city weather details. 2026-03-11 11:37:07 +08:00