Commit Graph

119 Commits

Author SHA1 Message Date
2569718930@qq.com 64f8ff21ec @
新增机场高频推送:10分钟级温度监控 + DEB预测快报

为首尔/釜山/东京三大机场城市实现高频温度监控通道:
- 新增 airport_obs_log 表积累观测数据,支持趋势检测
- AMOS/JMA 成功后自动写入观测日志
- 新增 airport_rapid_temp_change 告警规则(20min窗口、0.5°C/10min阈值)
- 10分钟间隔高频子循环 + 30分钟机场快照(含 DEB 预测最高温)
- 最高温锁定后自动跳过,快照仅当地 08:00-20:00 发送

Tested: ruff check 通过
@
2026-05-12 17:04:17 +08:00
AmandaloveYang 55bb06d213 移除 Masroor Air Base 机场城市(数据源、别名、时区、前端面板、文档、测试)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 16:39:04 +08:00
2569718930@qq.com 8075fb66b7 AMOS 增加 info 级别日志追踪数据流
- weather_sources.py: _attach_korean_amos_data 记录 fetch 开始、成功/失败、温度/跑道数据
- amos_station_sources.py: _amos_get_page 记录页面匹配/不匹配
- amos_station_sources.py: fetch_amos_official_current 记录 HTML 获取和解析
- analysis_service.py: _analyze 记录 AMOS 数据是否到达分析层

重启后端后在日志中搜索 "AMOS" 可追踪完整数据流:
  AMOS: fetching for city=seoul
  AMOS page matched icao=RKSI length=...
  AMOS fetch_amos_official_current: got HTML for RKSI...
  AMOS: got data for city=seoul temp_c=... source=...
  AMOS _analyze: found amos data for city=seoul temp_c=...
2026-05-10 19:46:26 +08:00
2569718930@qq.com 5512ebf133 修复 AMOS 数据不显示:移出 include_nearby 条件判断
根因:_attach_korean_amos_data 在 include_nearby 块内
面板模式(depth=panel)时 include_nearby=False
→ AMOS 数据从不获取 → detail.amos 始终为空 → 跑道面板不显示

修复:AMOS 调用移到 include_nearby 之外
AMOS 是主观测源,不是 nearby 站网数据
无论 depth 模式都应获取
2026-05-10 19:10:38 +08:00
2569718930@qq.com 27010d5fb3 移除 KMA 数据源:已被更精确的 AMOS 跑道级传感器取代
- weather_sources.py:移除 KmaStationSourceMixin 导入和继承
- 移除 _attach_korea_official_nearby() 函数
- 移除 kma_cache 初始化代码
- 首尔/釜山现在使用 AMOS 跑道传感器替代 KMA 地面站
- kma_station_sources.py 保留为参考文件

Replaced-by: AMOS (global.amo.go.kr) runway-level sensor data
2026-05-10 17:59:26 +08:00
2569718930@qq.com 058ab7a619 新增 AMOS 跑道级实时气象数据源(韩国仁川/釜山)
- src/data_collection/amos_station_sources.py:新增 AmosStationSourceMixin
- 从 global.amo.go.kr 爬取跑道级观测:温度/露点/气压/风向风速/能见度/RVR/云层
- 解析 METAR + TAF 报文,提取温/湿/压/风数值
- 解析跑道级表格数据(每跑道独立风分量、侧风、视程)
- 覆盖首尔/仁川 (RKSI) 和釜山/金海 (RKPK)

- weather_sources.py:集成 AmosStationSourceMixin
- fetch_all_sources 中为 seoul/busan 自动追加 AMOS 数据
- 结果存入 results["amos"],包含原始 METAR/TAF 和解析后的跑道数据

Tested: python -m ruff check ., npx tsc --noEmit
2026-05-10 17:55:39 +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 9ded30b125 feat: implement AI-driven weather scan terminal with decision utilities and forecast visualization 2026-04-27 02:18:34 +08:00
2569718930@qq.com 717106eec6 Anchor Paris weather data to Le Bourget 2026-04-19 14:25:38 +08:00
2569718930@qq.com 25122fed4a Use realtime METAR cluster for Moscow nearby maps 2026-04-18 16:28:08 +08:00
2569718930@qq.com 7909a16002 Add open multi-model forecast sources 2026-04-17 00:27:57 +08:00
2569718930@qq.com 9ed31b95a4 Fix METAR refresh timing and local observation display 2026-04-16 18:21:51 +08:00
2569718930@qq.com fd2b870d6a Add Manila Karachi and Masroor weather sources 2026-04-16 16:43:37 +08:00
2569718930@qq.com 0eee5c8948 Stabilize METAR fetching with fallback requests 2026-04-16 15:43:47 +08:00
2569718930@qq.com aa6ed30987 Add Guangzhou city support and prewarm defaults 2026-04-15 15:14:14 +08:00
2569718930@qq.com baaccc6636 feat: implement multi-source weather data collection system and dashboard frontend with integrated analysis services. 2026-04-13 18:42:27 +08:00
2569718930@qq.com f0940b9c8b Speed up JMA nearby refresh and link Tokyo to 10-minute data 2026-04-13 11:02:45 +08:00
2569718930@qq.com 77b4d7b341 feat: implement METAR data collection service and dashboard infrastructure 2026-04-11 20:11:01 +08:00
2569718930@qq.com 95e1fd50d2 Add Moscow Russia station web nearby provider with stale filtering 2026-04-10 18:49:50 +08:00
2569718930@qq.com fef37f6b0f Add KMA nearby weather support for Seoul and Busan 2026-04-09 20:19:07 +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 c3da29c09c Add dashboard prewarm worker and cache visibility 2026-04-08 06:53:49 +08:00
2569718930@qq.com bdc300bdd2 Expose station network coverage and settlement station details 2026-04-06 07:21:59 +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 343c5c9c2f Add new Wunderground-backed cities and source links 2026-04-05 01:23:10 +08:00
2569718930@qq.com 603546f2f9 Align Taipei and Shenzhen settlement sources with Wunderground 2026-04-02 21:46:41 +08:00
2569718930@qq.com e4db7d5dea Fix Istanbul MGM station and province matching 2026-03-30 19:14:00 +08:00
2569718930@qq.com 2ee30ce551 Add Moscow and broaden Turkish MGM support 2026-03-30 19:03:13 +08:00
2569718930@qq.com 0cc4f4f0d3 Add LightGBM daily high forecasting pipeline 2026-03-29 23:29:17 +08:00
2569718930@qq.com a5c667473e Remove remote TimesFM integration 2026-03-29 22:27:18 +08:00
2569718930@qq.com cdfc785402 Add remote TimesFM service integration 2026-03-29 22:13:10 +08:00
2569718930@qq.com 7237278f5a Generalize NOAA settlement handling across dashboard and docs 2026-03-27 20:58:38 +08:00
2569718930@qq.com 2007ded86d Add HKO-backed Shek Kong settlement and history support 2026-03-27 20:11:08 +08:00
2569718930@qq.com 2b0e6a6f67 Add Wunderground as Shenzhen settlement source 2026-03-25 17:00:36 +08:00
2569718930@qq.com b365155622 Add TAF-based airport signals to intraday analysis 2026-03-24 02:58:29 +08:00
2569718930@qq.com ace9c71743 Align Taipei settlement to NOAA RCTP across web and extension 2026-03-23 14:39:41 +08:00
2569718930@qq.com 2ba680954c Add Warsaw official nearby station data 2026-03-21 21:32:54 +08:00
2569718930@qq.com 1c84893bed Add CI and shadow calibration reporting 2026-03-20 20:59:30 +08:00
2569718930@qq.com e4cc5b4263 feat: Add initial web dashboard and centralize weather trend analysis logic into a shared engine. 2026-03-20 18:16:21 +08:00
2569718930@qq.com dbf10253a8 feat: Implement multi-source weather data collection with caching, rate limiting, and disk persistence. 2026-03-20 13:35:34 +08:00
2569718930@qq.com b33a741385 Switch Ankara MGM station selection to 17128 airport 2026-03-18 21:01:31 +08:00
2569718930@qq.com fef3097c36 Remove RP5 multi-model data 2026-03-18 00:20:04 +08:00
2569718930@qq.com 5057892255 Fix RP5 Shanghai station prediction 2026-03-18 00:05:37 +08:00
2569718930@qq.com 1ae9b55509 Add RP5 forecast scraping support 2026-03-17 23:15:13 +08:00
2569718930@qq.com 93f7a852a8 Add Madrid METAR market note 2026-03-17 14:04:22 +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 4bd531bbc9 feat: implement PolyWeather Telegram bot with weather and DEB analysis, a point system, and configuration. 2026-03-14 11:39:30 +08:00
2569718930@qq.com eca0c7f514 feat: Introduce multi-source weather data collection, including city configuration and robust caching. 2026-03-12 00:29:34 +08:00
2569718930@qq.com 1958b2764b feat: Implement core PolyWeather application with city weather query service, trend analysis, data collection, and dashboard UI. 2026-03-11 10:49:35 +08:00
2569718930@qq.com d2a40462c5 feat: Add city weather query service with city resolution, forecast processing, and weather summary generation. 2026-03-11 10:30:46 +08:00