134 Commits

Author SHA1 Message Date
2569718930@qq.com c2fe8caddf docs: refresh v1.8.1 release docs 2026-05-28 20:46:35 +08:00
2569718930@qq.com 79b82a34cb fix: use settlement runway endpoint temperatures 2026-05-28 10:55:32 +08:00
2569718930@qq.com 5d784f78b9 feat: implement scan terminal dashboard system and supporting services 2026-05-28 08:24:50 +08:00
2569718930@qq.com 8609376c59 feat: add versioned DEB bias backtesting 2026-05-27 21:40:26 +08:00
2569718930@qq.com 573768846e feat: implement real-time SSE event architecture with Redis stream integration and add associated validation tests 2026-05-27 11:03:04 +08:00
2569718930@qq.com 820dabfbf3 feat: implement real-time observation patch normalization and live temperature threshold visualization logic 2026-05-27 10:17:33 +08:00
2569718930@qq.com 79d94bed5f feat: add weekly reward loop, i18n support, and scan terminal dashboard components 2026-05-27 07:50:05 +08:00
2569718930@qq.com b6194b4756 feat: implement live temperature threshold chart logic with auto-visibility policies and snapshot testing 2026-05-26 23:12:48 +08:00
2569718930@qq.com 645e304b3e feat: implement SSE-based real-time event distribution system with replay support and heartbeat functionality 2026-05-26 22:27:55 +08:00
2569718930@qq.com 5c6ffa4742 docs: shorten realtime patch replay retention 2026-05-26 22:10:15 +08:00
2569718930@qq.com ff104cfc31 docs: design production realtime sse patches 2026-05-26 22:08:44 +08:00
2569718930@qq.com 55439977f6 文档更新 + SSE hook 修复 2026-05-26 11:02:33 +08:00
2569718930@qq.com 6e6d27f323 莫斯科数据源简化:移除 METAR 集群 + NOAA 结算,仅保留 UUWW 单站
- city_registry: settlement_source noaa → metar
- weather_sources: 移除 Moscow METAR cluster 5 站配置
- country_networks: 删除 RussiaStationWebNetworkProvider 类
- 文档: Tier 4 备注更新
2026-05-26 09:20:49 +08:00
2569718930@qq.com 4bc352519a 文档更新:香港 HKO 改 10min + CoWIN 6087 补入优先级链 + 深圳移入 Tier 3 2026-05-26 08:16:42 +08:00
2569718930@qq.com 636a81d6df test: add unit tests for temperature chart data and visibility policy, and document city data sources 2026-05-26 06:02:47 +08:00
2569718930@qq.com e1417f607d feat: implement LiveTemperatureThresholdChart and add visibility policy unit tests 2026-05-26 05:46:45 +08:00
2569718930@qq.com 43231d4474 新增城市实时数据源分级总览文档,梳理 51 城数据源与日内修正影响 2026-05-25 03:49:15 +08:00
2569718930@qq.com 8fbbe54c46 新增终端大洲分组实施计划 — 9个任务,从continent-grouping逻辑到响应式UI 2026-05-25 01:39:34 +08:00
2569718930@qq.com 637b580bbd @
新增终端城市大洲分组设计文档

覆盖桌面端 9 列分区分组表格、移动端 Tab+卡片流布局方案。
所有数据字段已就绪,无需后端改动。
@
2026-05-25 01:35:07 +08:00
2569718930@qq.com 5aa2a9e384 更换 Telegram Bot 为新账号 polyyuanbot,更新群链接和推送配置
- Bot token/用户名全局替换:WeatherQuant_bot → polyyuanbot
- 群 ID 更新为新群 polyweather售后群(-1003927451869)
- 群邀请链接更新为 https://t.me/+Io5H9oVHFmVjOTQ5
- 修复机场推送:Paris/Taipei/Denver/Tel Aviv 支持 airport_primary/current 回退
- 修复跑道数据展示:has_runway 直接检测数据而非依赖 source 字段
- 创建新群 30 城 Forum Topics(data/city_thread_ids.json)
- 配置 AMSC AWOS 数据源 URL

Constraint: 旧 Telegram 账号已注销,Bot 完全重建
Tested: VPS 部署验证,所有城市推送正常,Topic 路由生效
2026-05-24 16:03:29 +08:00
2569718930@qq.com b2dd758977 扩展模型区间端点至首尔和釜山,并做前端小幅清理
- GET /api/cities/model-range 新增 seoul/busan,总计 9 城
- 移除未使用的 react-leaflet 依赖
- 提取 chart Tooltip contentStyle 为共享常量 CHART_TOOLTIP_STYLE,消除 6 个文件中 15 处重复内联样式

Tested: npx tsc --noEmit pass
Confidence: high
2026-05-23 22:59:50 +08:00
2569718930@qq.com e79bc2d291 清理废弃代码并同步全部文档:删除钱包异动监控模块,移除已废弃功能的文档引用
- 删除 polymarket_wallet_activity_watcher.py(914行)及 runtime_coordinator 调度
- 移除 LGBM / Polymarket 价格层 / Groq / prewarm 等 v1.7.0 已废弃功能的文档引用
- 清理 6 个死文档链接,更新文档索引和版本日期
- 移除 POLYMARKET_WALLET_ACTIVITY_* / PREWARM_* 等废弃环境变量

Directive: 文档与代码同步清理,无功能变更
Tested: pytest tests/test_bot_runtime_coordinator.py pass
Confidence: high
2026-05-23 21:42:46 +08:00
2569718930@qq.com 219fda39d9 发布 v1.7.0:市场监控面板、天气日报、后台重写、新数据源、LGBM 移除
Constraint: CHANGELOG 覆盖 v1.6.0 以来 ~340 个提交
Confidence: high
Tested: git diff --stat 11 files, sync_version.py 通过
2026-05-23 20:31:34 +08:00
2569718930@qq.com 23f7e29acc Update payment token configuration examples to show dual USDC/USDC.e setup 2026-05-20 09:25:54 +08:00
2569718930@qq.com 9ff0685756 Unify subscription pricing to 10 USDC, update documentation, and improve manual payment address copy experience 2026-05-20 09:20:07 +08:00
2569718930@qq.com 8cb5b3b310 整理文档:删除 4 个已废弃 EMOS/LGBM 文档,更新 8 个引用了已删除功能的其他文档 2026-05-19 14:53:37 +08:00
2569718930@qq.com 476a4f85d8 修复移动端点击城市列表触发 Leaflet flyTo NaN 崩溃:隐藏地图容器跳过动画 2026-05-19 12:41:38 +08:00
2569718930@qq.com 6041d25f23 feat: add telegram group pricing and direct payments 2026-05-18 16:18:26 +08:00
2569718930@qq.com 4cc579ccb3 feat: add AMSC runway observations 2026-05-15 01:41:49 +08:00
2569718930@qq.com 8dd9aa59b3 接入新加坡 MSS 1分钟实时温度及 MGM/JMA/FMI/KNMI 高频源到 airport_primary
- 新建 singapore_mss_sources.py:拉取 data.gov.sg 1分钟干球温度(S24 樟宜站)
- country_networks.py:_airport_primary_from_raw 新增 MGM/JMA/FMI/KNMI/SG_MSS 分支
- weather_sources.py:注入 jma_current/fmi_current/knmi_current/singapore_mss_current
- 前端 MonitorPanel:resolveSourceLabel 根据 airport_primary.source_code 显示数据源标签
- 文档:更新 AIRPORT_REALTIME_SOURCES.md 新增新加坡

Tested: ruff check . ✓  npx tsc --noEmit ✓
2026-05-14 17:12:11 +08:00
2569718930@qq.com 96676e7097 修正市场监控温度数据源:接入 NOAA MADIS 5分钟高频数据并优化展示
- 首尔/釜山:隐藏大号跑道温度值,改为"跑道温度"标签(跑道表面温度 ≠ 空气温度)
- US 城市:MADIS HFMETAR 5分钟小数温度接入 airport_primary,前端优先读取
- 其他城市:整数值不再强制 toFixed(1) 追加虚假 .0 精度
- 后端:weather_sources.py 注入 madis_hfmetar_current 到 results
- 后端:country_networks.py 的 _airport_primary_from_raw 新增 MADIS 优先分支
- 文档:更新 AIRPORT_REALTIME_SOURCES.md 新增 11 个 US 城市
- 文档:更新 CLAUDE.md 补充市场监控、高频数据管道、Country Network Provider 架构

Tested: npx tsc --noEmit ✓  ruff check . ✓
2026-05-14 16:00:55 +08:00
2569718930@qq.com 02add6d994 feat: implement city weather detail API routing, dashboard data models, and monitoring infrastructure 2026-05-14 14:21:28 +08:00
2569718930@qq.com 1493c72138 删除 Rust 监控项目及旧文档,已用 Python 重写替代 2026-05-13 23:22:13 +08:00
2569718930@qq.com 557882600e 添加市场监控频道 Rust 独立网页版方案文档
直读 SQLite airport_obs_log,零 Python 依赖,Axum+Askama+HTMX 纯展示
2026-05-13 14:42:19 +08:00
2569718930@qq.com 6f83b9d7ea 接入巴黎 Le Bourget AROME HD 15分钟模型预报数据
Météo-France 站点实测无法获取,改为通过 Open-Meteo 取 AROME France HD
15分钟模型温度。非实测数据,标注为模型预报类型。
巴黎跳过 obs_log 峰值检测(无站点观测日志)。

Constraint: AROME 为模型格点值非实测,与 AMOS/JMA/FMI 精度不同
Tested: pytest 176 passed, AROME API 实测返回 16.2°C
2026-05-12 23:59:06 +08:00
2569718930@qq.com 963e717523 新增机场高频实时数据源参考文档 docs/AIRPORT_REALTIME_SOURCES.md
汇总已接入 7 城的数据源、频率、推送机制、消息模板和未接入原因。
2026-05-12 21:17:42 +08:00
2569718930@qq.com fc146b6e0c @
实测修正 MGM 安卡拉刷新频率:5-15 分钟不定,非固定 10 分钟

三次采样 09:50→09:56(6min)→10:10(14min),波动较大。
更新文档为实际观测值,非预估。

Tested: curl 实测 servis.mgm.gov.tr 端点
@
2026-05-12 18:26:50 +08:00
2569718930@qq.com 106dd3305b @
修正文档:区分跑道对温度和站点实时温度

首尔/釜山为 AMOS 跑道传感器(每对独立温度),东京/安卡拉为机场
气象站单点实时温度,二者数据类型不同,文档和数据表已据此更新。

Constraint: 代码逻辑无需改动,仅文档修正
Scope-risk: 无
Tested: ruff check 通过
@
2026-05-12 18:07:35 +08:00
2569718930@qq.com 12b0c76caf @
砍掉机场快照,改为 per-city 独立告警;新增安卡拉 MGM 17128 高频监控

快照定时推送无实际价值(没变化也报),改为仅温度急变时触发告警。
各城市独立检测、独立冷却,不再捆绑推送。
同时接入安卡拉 Esenboğa 机场 MGM 站点 17128 的实时温度数据。

Constraint: 快照已运行验证格式无误,砍掉不影响现有急变告警功能
Scope-risk: 中低,仅影响高频通道逻辑,主循环不变
Tested: ruff check 通过
@
2026-05-12 17:51:40 +08:00
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 c56c490b60 新增机场高频数据接入市场监控频道方案文档
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 18:34:39 +08:00
AmandaloveYang eb47e0a078 更新深度评估报告:日期至 2026-05-11,城市数 52→51,新增 AMOS 与积分改造内容
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 18:04:04 +08:00
AmandaloveYang ff7938187c 更新文档:KMA→AMOS、积分来源补全、信心指标移除、缓存 TTL 修正
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-11 17:56:45 +08:00
2569718930@qq.com bf70d0b42a 新增 UX 研究员审查报告:修正逻辑可读性、图表误导、专业术语、异常体验
核心发现:
- AI 用"上修/下修/维持",前端用"偏高温/暂不追/等待确认"——两套语言体系不一致(P0)
- 日内图表没有"现在"标记,用户不知道哪里是当前时间(P0)
- METAR/DEB/TAF 全站 50+ 处出现,无任何 tooltip 或解释(P0)
- 实测突破时没有行动建议,用户不知道下一步该做什么(P0)
- DEB 路径全是虚线(含过去部分),本应实线→虚线过渡(P1)
- "DEB 融合"对普通用户无意义(P1)

共识别 18 个问题:P0 4 项、P1 4 项、P2 4 项
2026-05-10 17:24:35 +08:00
2569718930@qq.com e2bea367a1 校准漂移检测增加日志告警 + 更新架构文档
- core.py:drift.drifted=true 时输出 loguru warning,包含 delta% 和 sample 数量
- data-architecture-review.md:标记 2 项误诊(METAR TTL 实际 600s、轮询已有 AbortController 保护)
- 剩余真正待办:校准自动重训练(需算力)、缓存键细化(低优先级)
2026-05-10 17:06:43 +08:00
2569718930@qq.com 27095025e7 更新数据架构审查文档:标记 8/8 已修复,保留 4 项低优先级待办 2026-05-10 17:02:02 +08:00
2569718930@qq.com c0bb2acf78 修复数据链路 P0 瓶颈:缓存炸弹、Context 重渲染、LGBM 循环、TTL 不匹配
P0-1 sessionStorage 限制:
- writeCityDetailCacheBundle 只保留最近 3 个城市的详情
- 避免 3-10MB JSON 序列化阻塞主线程

P0-2 Context 拆分:
- 新增 CityDetailsContext 独立管理 cityDetailsByName 变更
- 新增 useCityDetails hook,只订阅详情的组件不再因 cities/proAccess 变化重渲染
- DashboardStoreContext 保持不变,向后兼容

P0-3 扫描终端 TTL:
- SCAN_TERMINAL_PAYLOAD_TTL_SEC 30s → 120s
- 匹配 ThreadPoolExecutor(4) x 60 城的实际重算耗时

P0-4 LGBM 循环依赖:
- LGBM 预测值不再作为 DEB 输入参与权重计算
- 保留为独立参考字段 lgbm.prediction 输出给前端展示
- 消除 DEB → LGBM 训练 → DEB 的循环

新增 docs/data-architecture-review.md 完整数据链路审查报告

Tested: npx tsc --noEmit, python -m ruff check .
2026-05-10 16:48:28 +08:00
2569718930@qq.com 8cc7e9a996 移除"已完成"章节:文档只保留待办事项和产品亮点 2026-05-10 16:31:22 +08:00
2569718930@qq.com c9d3a27e88 精简产品审查文档:已解决问题移入"已完成"章节,保留待办 2026-05-10 16:29:10 +08:00
2569718930@qq.com e52f1a46f6 更新产品审查文档:标记修复进度 12/14,账户设置标记为不做 2026-05-10 16:23:37 +08:00