Commit Graph

182 Commits

Author SHA1 Message Date
2569718930@qq.com 118d4e44df This version of Antigravity is no longer supported. Please upgrade to receive the latest features. 2026-05-01 11:37:09 +08:00
2569718930@qq.com 113c0131b5 This version of Antigravity is no longer supported. Please upgrade to receive the latest features. 2026-05-01 11:17:20 +08:00
2569718930@qq.com 9d0570a36b This version of Antigravity is no longer supported. Please upgrade to receive the latest features. 2026-05-01 11:11:17 +08:00
2569718930@qq.com 569f3eef97 Make weather-market UI reliable before shipping
Proxy routes now share one upstream-error adapter so client-actionable statuses such as auth, entitlement, validation, and rate limits survive the BFF instead of becoming opaque 502s. The scan terminal mobile overrides also load last and remove desktop rail constraints so phones get a single readable column.

Constraint: Mobile users reported the dashboard was unreadable, and BFF proxy errors were masking expected client states.

Rejected: Let every route keep bespoke error JSON | continued inconsistent status codes and production detail leakage.

Confidence: high

Scope-risk: moderate

Directive: Keep ScanTerminalMobile.module.css imported after desktop scan-terminal CSS so mobile breakpoints win.

Tested: npx tsc --noEmit --pretty false --project frontend/tsconfig.json

Tested: npm run build

Tested: npm run test:business

Tested: Chrome mobile smoke test at 390px with no horizontal overflow

Not-tested: Real device Safari/Android manual QA
2026-04-29 11:22:49 +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 c476ad2123 Move pace math out of the dashboard utility bulk
Pace-adjusted high calculations were embedded in dashboard-utils alongside chart, profile, and modal helpers. This moves the pure pace model and reusable HM time helpers into focused modules while keeping dashboard-utils re-export compatibility for older callers.

Constraint: Preserve existing pace wording, thresholds, and calculation output.

Rejected: Split all remaining dashboard-utils helpers at once | model/chart/modal helpers have wider call surfaces and should move in separate reversible passes.

Confidence: high

Scope-risk: narrow

Reversibility: clean

Tested: TypeScript diagnostics for pace-utils, time-utils, dashboard-utils, and FutureForecastModal

Tested: npm run build

Not-tested: Bundle analyzer size comparison.
2026-04-28 11:45:34 +08:00
2569718930@qq.com be41becb30 Let temperature formatting ship without dashboard bulk
Temperature formatting was embedded in the large dashboard utility module, so small scan-terminal views had to import the heavy utility surface for simple labels. This moves the pure temperature helpers into a lightweight module while keeping dashboard-utils re-exports for compatibility.

Constraint: Preserve existing temperature text output and all dashboard-utils import compatibility.

Rejected: Split chart, pace, and model helpers in the same pass | those helpers have wider coupling and should move one boundary at a time.

Confidence: high

Scope-risk: narrow

Reversibility: clean

Tested: TypeScript diagnostics for temperature-utils, dashboard-utils, and OpportunityTable

Tested: npm run build

Not-tested: Bundle analyzer size comparison.
2026-04-28 11:32:03 +08:00
2569718930@qq.com 89a71d1bc0 Add Qingdao to the tradable city network
Qingdao needs the same airport-settlement path as the other Wunderground-backed APAC cities, so the registry, aliases, timezone, prewarm, official links, market focus, and tests now point to ZSQD / Qingdao Jiaodong International Airport.

Constraint: User supplied Wunderground Qingdao/ZSQD settlement URL.
Rejected: Add a partial registry-only entry | it would show in APIs without frontend links, prewarm coverage, or alias support.
Confidence: high
Scope-risk: narrow
Reversibility: clean
Tested: pytest tests/test_country_networks.py tests/test_web_observability.py::test_cities_endpoint_includes_new_wunderground_cities -q
Tested: npm run build
Not-tested: Live Wunderground fetch for ZSQD in production.
2026-04-28 07:08:33 +08:00
2569718930@qq.com f39f59f47a feat: implement AI city forecasting and market scan hooks with backend API integration for the scan terminal dashboard 2026-04-26 11:28:36 +08:00
2569718930@qq.com 9b77a3a0e2 feat: implement AI city forecast and market scan integration for terminal dashboard 2026-04-26 11:08:58 +08:00
2569718930@qq.com e374ad4bf0 feat: add AI city forecast terminal and integration components 2026-04-26 10:43:14 +08:00
2569718930@qq.com 0f23d8af9d feat: implement dashboard types, Polymarket data collection, and decision utilities for AI-driven city weather analysis 2026-04-26 09:40:02 +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 ce0f7629a2 feat: implement scan terminal dashboard with AI-driven city analysis and state management 2026-04-26 03:42:13 +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 3083d6b8fe feat: implement scan terminal service with caching, background refresh, and AI-driven market analysis support 2026-04-25 04:25:17 +08:00
2569718930@qq.com 77c0597e74 feat: implement Polymarket data collection and dashboard UI for weather market analysis 2026-04-25 03:59:02 +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 2b9e10384e Use fresh city detail for scan list probabilities 2026-04-25 02:41:38 +08:00
2569718930@qq.com 62a12257f0 Upgrade V4 scan to city analysis 2026-04-25 02:19:37 +08:00
2569718930@qq.com df6a2c73ed Add V4 scan run logs 2026-04-25 01:09:08 +08:00
2569718930@qq.com 091d2efef3 Add DeepSeek V4 scan review 2026-04-24 23:32:32 +08:00
2569718930@qq.com d2bc9e3ac8 Add scan terminal request timeouts 2026-04-24 22:47:03 +08:00
2569718930@qq.com 99ffa717ef Use model cluster for tail no scan signals 2026-04-24 15:12:53 +08:00
2569718930@qq.com 379a4b9e45 Fix intraday modal hook order 2026-04-24 13:04:27 +08:00
2569718930@qq.com 467f736602 feat: implement dashboard store and API routes for city market scanning and analysis 2026-04-24 12:46:44 +08:00
2569718930@qq.com c61a3f500d feat: implement Polymarket read-only data service and add scan terminal dashboard components 2026-04-24 10:19:16 +08:00
2569718930@qq.com a1faacb302 feat: add scan dashboard components and local development configuration 2026-04-24 02:14:20 +08:00
2569718930@qq.com 79b58a8b98 Add locale controls and distribution previews to scan terminal 2026-04-24 00:34:09 +08:00
2569718930@qq.com ddc0180ae6 Implement EMOS scan terminal with REST-only market data 2026-04-23 23:49:52 +08:00
2569718930@qq.com 9a2ef217eb feat: implement dashboard opportunity table and supporting UI components for weather market analysis 2026-04-23 23:03:26 +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 ca81fda287 feat: implement analysis service, dashboard components, and data collection utilities for PolyWeather 2026-04-23 21:10:22 +08:00
2569718930@qq.com 54b326ff42 feat: implement comprehensive Polymarket weather analysis service with frontend dashboard and market scanning capabilities 2026-04-23 20:45:32 +08:00
2569718930@qq.com 4f57d4ed1a feat: implement PolyWeather dashboard core components, state management, and API integration 2026-04-23 19:40:38 +08:00
2569718930@qq.com b65bdd010d Add pro AI assistant to homepage 2026-04-23 08:44:10 +08:00
2569718930@qq.com e766728c5f Refine homepage focus panel 2026-04-23 00:57:49 +08:00
2569718930@qq.com fe804bc915 Normalize Wunderground labels to METAR 2026-04-22 23:43:27 +08:00
2569718930@qq.com a615b2f7c1 Remove probability hub page 2026-04-22 05:04:15 +08:00
2569718930@qq.com 40564b545d Optimize probability hub market refresh 2026-04-22 04:54:19 +08:00
2569718930@qq.com e59c106bbc Add home link and probability hub filters 2026-04-22 03:25:40 +08:00
2569718930@qq.com 1765f383e4 增强页头概率页入口并优化概率标签 2026-04-22 02:59:12 +08:00
2569718930@qq.com 974b55e34f Add full probability distributions to dashboard 2026-04-22 01:43:13 +08:00
2569718930@qq.com e5facb041c Handle range-based Polymarket temperature buckets 2026-04-22 00:38:19 +08:00
2569718930@qq.com 42dd0a7c6d feat: implement FutureForecastModal component and market-scan API integration 2026-04-21 23:01:38 +08:00
2569718930@qq.com 9eba41cd1c Hydrate bucket prices from token IDs 2026-04-21 21:31:15 +08:00
2569718930@qq.com e8065da114 Enhance probability-price linkage in dashboard 2026-04-21 21:12:50 +08:00