Commit Graph

69 Commits

Author SHA1 Message Date
2569718930@qq.com 14141314d7 fix: preserve DEB metadata in city summary 2026-05-27 21:50:28 +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 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 d029d5c4e7 Auth session 持久化 + 多分辨率跑道图表 + 拖拽缩放
- middleware: refreshMiddlewareSession 前置刷新 Supabase token
- backend-auth: getUser() 优先触发 refresh,再 getSession 拿新 token
- Dashboard: onAuthStateChange 实时更新 proAccess + 15min getSession 心跳
- detail proxy: 新增 city/[name]/detail 代理,透传 resolution 参数
- city_payloads: aggregate_runway_history + build_runway_band_history 跑道聚合
- chart: 10m→1m 自适应分辨率 + zoom 拖拽 + 跑道温区 Area + Runway Details 开关
2026-05-26 20:37:00 +08:00
2569718930@qq.com 45365df694 CoWIN 6087 历史持久化 + 跑道曲线聚合 + 模型区间修复 + HKO 曲线对调 + 毛玻璃加载层
- weather_sources: CoWIN 1min 观测写入 official_intraday_observations_store
- country_networks: cowin_obs 源从 DB 回读 1min 历史,不复用 VHHH METAR
- analysis_service: 跑道实测 36h 历史按跑道分组,透传至前端
- scan_terminal_city_row: model_cluster_sources fallback 修复 + runway_plate_history
- 前端: CoWIN 6087 升级为主轴实线,HKO 退为虚线,VHHH METAR 轻虚线
- 前端: Loading 升级为毛玻璃全卡蒙层
2026-05-26 09:13:39 +08:00
2569718930@qq.com cf84b8336f 扫描 worker 默认值 6→8,上限 8→12(适配 8GB 内存) 2026-05-26 01:01:07 +08:00
2569718930@qq.com 3d0d099cb9 修复 _analyze() 移除 include_llm_commentary 参数后的残留调用 2026-05-26 00:29:45 +08:00
2569718930@qq.com 9545725d7f 清理旧决策卡片、市场总览、跑道面板等已废弃组件 2026-05-25 23:52:44 +08:00
2569718930@qq.com a6367ab7c2 修复 marketOverview 移除后的导入错误 2026-05-25 23:09:37 +08:00
2569718930@qq.com c2bb9d3901 电报推送移除美国城市;修复 market_overview_api 死引用 2026-05-25 23:07:32 +08:00
2569718930@qq.com b3aabe61ce 清理市场概览残留与 refresh_policy 中的 marketOverview 条目 2026-05-25 23:06:44 +08:00
2569718930@qq.com ea5c6ec71e 清理市场概览残留:删除 MarketOverviewBanner+refresh_policy 中的 marketOverview 条目 2026-05-25 23:04:40 +08:00
2569718930@qq.com 7f0506b897 清理残留 skip_polymarket 参数和 PM 注释 2026-05-25 20:26:26 +08:00
2569718930@qq.com c16a8cb7a5 修复 Polymarket 清理后的导入错误:analysis_service 移除 city_payloads market_scan 依赖 2026-05-25 20:16:02 +08:00
2569718930@qq.com e3aa612bf3 清理 Polymarket 市场扫描相关代码 2026-05-25 20:13:02 +08:00
2569718930@qq.com d3c8058178 更新 CLAUDE.md:Polymarket 已全部移除,终端仅气象数据 2026-05-25 20:03:06 +08:00
2569718930@qq.com 3bc1a4a1ed 后端深度清理 Polymarket:删除 readonly 层+WS 缓存+market_scan API
删除 src/data_collection/polymarket_readonly.py(2500行)和 polymarket_ws_cache.py。city_payloads 移除 _get_polymarket_layer/_top_probability_bucket/build_city_market_scan_payload。city.py 移除 /market-scan 和 /holders 路由。scan_terminal 移除 skip_polymarket。
2026-05-25 20:02:30 +08:00
2569718930@qq.com 6b7a4575ad 拆分 analysis_service:剩余工具函数全部移至 analysis_utils.py
提取 _mgm_hourly_high/_dedupe_forecast_daily/_format_observation_time_local/_parse_local_hour/_parse_utc_datetime/_metar_is_current_local_day/_is_plausible_city_temp。统一 parse_utc_datetime 副本。analysis_service 2082→1966 行。
2026-05-25 17:51:10 +08:00
2569718930@qq.com 812a4b2d32 拆分 analysis_service:时钟工具和概率桶函数移至 analysis_utils.py
抽取 clock_minutes/format_clock_minutes/next_observation_clock 和 bucket_label/top_probability_bucket/add_signal 到独立模块。analysis_service 2152→2080 行。
2026-05-25 17:40:50 +08:00
2569718930@qq.com c82c33ec53 拆分 scan_terminal_service:AI 配置常量移至 scan_ai_config.py
提取 ~140 行配置+env helpers 到新模块。scan_terminal_service 1534→1474 行。
2026-05-25 17:37:38 +08:00
2569718930@qq.com 623ec7c5fa 拆分 analysis_service:观测源配置与新鲜度工具函数移至 observation_freshness.py
抽取 _OBSERVATION_SOURCE_PROFILES、parse_utc_datetime、observation_age_min、canonical_observation_source_code、build_observation_freshness 到独立模块。analysis_service.py 加 10 行导入替代原 ~180 行内联定义。
2026-05-25 17:31:26 +08:00
2569718930@qq.com 045121a457 feat: implement scan terminal dashboard with real-time market data services and interactive visual components 2026-05-25 16:48:19 +08:00
2569718930@qq.com 7273891794 更新 CLAUDE.md,清理死 import,图表与 API 细节调整 2026-05-25 07:52:31 +08:00
2569718930@qq.com c74be88cf9 扫描终端支持 region 参数按区域懒加载 2026-05-25 07:00:59 +08:00
2569718930@qq.com 85452fdf56 移除未使用的 CITIES 导入 2026-05-25 06:44:04 +08:00
2569718930@qq.com 9978ac3e01 新增实时滚动温度走势图:API端点+前端组件
后端 city_realtime_stream.py:循环缓冲区(deque maxlen=1440),best_temp() METAR优先。路由 /api/city/{name}/realtime-stream 返回 {points, thresholds}。前端 RealtimeScrollChart:每30秒轮询,一条温度线+多条阈值横线,横轴随时间推进。
2026-05-25 06:43:42 +08:00
2569718930@qq.com ce667ba1b6 气温走势图:多模型逐小时预测曲线 + API 新增 models_hourly 字段
city_payloads 新增 models_hourly 包含 per-model hourly_forecasts。LiveTemperatureThresholdChart 渲染多模型曲线替代点预测卡片。CityDetail 类型新增 models_hourly。
2026-05-25 05:58:15 +08:00
2569718930@qq.com baede6a485 终端侧边栏新增训练数据面板,展示各城市 DEB 命中率/MAE 准确率 2026-05-25 04:24:44 +08:00
2569718930@qq.com 9a49ff3f5e 新增终端大洲分组与移动端卡片 CSS 模块
包含分组标题行、移动端 Tab 隐藏滚动条、信号卡片样式及浅色主题适配。
2026-05-25 01:55:55 +08:00
2569718930@qq.com e9cc9a5eb1 修复机构落地页构建失败并恢复 Polymarket 市场扫描
InstitutionalLandingPage.tsx 补充 "use client" 指令以通过 Next.js 15 构建。
polymarket_readonly.py 集成 WebSocket 报价缓存加速价格获取。
city_payloads.py 复用 Polymarket 层构建真实市场扫描数据替代空返回。

Constraint: 市场扫描需在无 Polymarket 价格 UI 的前提下提供数据
Tested: npm run build 通过
2026-05-25 00:41:56 +08:00
2569718930@qq.com 20c8395c0b 全局配置更新:OAuth 回调修复、支付安全加固、站点 URL 工具
- 新增 NEXT_PUBLIC_SITE_URL 支持及 site-url.ts 工具模块
- 修复 OAuth 回调域名:import.meta.env 统一读取站点 URL
- 支付 API 路由新增收款地址校验
- 后端支付服务更新
- middleware 清理
- 新增 paymentSecurity 测试
2026-05-24 18:33:47 +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 eeb5f563db 移除 Polymarket 价格拉取:删除 _market_layer、market_scan 返回空、清理健康检查和配置验证 2026-05-23 12:04:40 +08:00
2569718930@qq.com 891b4d2422 新增 AEROWEB (Météo-France) 和 NCM (沙特) 实时气象数据源
AEROWEB: 接入 aviation.meteo.fr,LFPB METAR 2 分钟内可获取,
实测温度替代 AROME 模式预报作为 Paris 电报推送数据源。
登录流程: PHPSESSID + MD5 密码 → ajax/login_valid.php,
Session 20 分钟自动续期,XML 解析提取 tempe/td/dd/ff/qnh。

NCM: 沙特气象局 Meteomatics API 代码框架,待凭证激活。
Jeddah settlement_source 从废弃的 wunderground 迁移至 ncm。

同时清理: 日志文件 trading_system.log → polyweather.log,
删除 2026-02-07 的 1.2MB 废弃交易引擎日志。

Constraint: AEROWEB 需 AEROWEB_USERNAME/AEROWEB_PASSWORD 环境变量
Constraint: NCM 需 NCM_API_USERNAME/NCM_API_PASSWORD 环境变量
Confidence: high
Tested: AEROWEB 登录→取数→解析端到端验证通过
2026-05-22 21:50:37 +08:00
2569718930@qq.com 105713c799 @
支付提交增加 Tx 预校验:提交前链上验签收款地址与金额,防止转错地址;409 错误展示友好中文提示并自动对账恢复

- 新增 validate_intent_tx 方法及 POST /api/payments/intents/{id}/validate 端点,
  在提交前查链上 receipt 对比收款地址和金额,mismatch 直接拦截
- 新增 handleSubmit409 辅助函数,根据后端错误详情分流处理:
  已支付→自动 reconcile,已过期→提示重下单,其他→透传具体原因
- submit/validate 路由透传后端 detail 字段,生产环境也能看到具体错误
- 手动转账面板粘贴 tx hash 后自动触发验证,绿色/红色提示,
  验证不通过时禁用提交按钮

Tested: tsc --noEmit + ruff check . 均通过
@
2026-05-22 04:44:14 +08:00
2569718930@qq.com b0662f6fef 开通 Pro 时支持同时扣除用户积分 2026-05-20 20:52:25 +08:00
2569718930@qq.com d04d6c9efb 移除季付和年付计划,仅保留月付 2026-05-20 20:44:13 +08:00
2569718930@qq.com 75dd7464cc 新增积分转账功能:支持管理员手动扣除和划转用户积分 2026-05-20 20:39:51 +08:00
2569718930@qq.com db955d59ea 修复管理员手动开通失败:移除 ops 后台的订阅要求检查 2026-05-20 20:28:54 +08:00
2569718930@qq.com 44a273c9d1 修复未使用变量 2026-05-20 17:13:05 +08:00
2569718930@qq.com 6f7e847b01 添加后台 Telegram 审计面板 2026-05-20 17:12:32 +08:00
2569718930@qq.com 66512d2623 完善后台管理功能:订阅管理增强、训练精度面板、支付记录查询 2026-05-20 16:50:19 +08:00
2569718930@qq.com 05f5d3c2dd 添加后台支付成功记录列表 2026-05-20 14:12:35 +08:00
2569718930@qq.com 452dfe2218 @
移除 IMGW / Synoptic 健康检查

两者均为可选 fallback 数据源,VPS 未配置且非核心链路
Synoptic 检查还存在变量名错误(查 SYNOPTIC_API_TOKEN 而非 NOAA_WRH_MESO_TOKEN)
@
2026-05-20 12:15:52 +08:00
2569718930@qq.com 56bcb89d3d @
移除 OpenWeather / VisualCrossing 健康检查

两个数据源有实现但从未在主流程中被调用,属于死代码
@
2026-05-20 12:07:35 +08:00
2569718930@qq.com 5ef0b49299 @
后台健康检查超时从 3s 提高到 8s

aviationweather.gov 从亚洲 VPS 连接经常超过 3 秒导致误报
@
2026-05-20 12:01:21 +08:00
2569718930@qq.com 781d8cf476 @
修复后台管理 CWA 状态显示为未配置

ops_api 读取 CWA_API_KEY,但实际环境变量是 CWA_OPEN_DATA_AUTH
@
2026-05-20 11:44:07 +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 72e93f8e93 Optimize multi-model caching and frontend revalidation 2026-05-20 08:58:16 +08:00
2569718930@qq.com df892ce9a6 chore(ops): fall back to local trading_system.log in get_ops_logs when docker logs is empty 2026-05-20 08:20:16 +08:00