Commit Graph

573 Commits

Author SHA1 Message Date
2569718930@qq.com 20d53e1ae2 新增 CoWIN 6087 数据源:香港保良局陳守仁小學 1 分钟参考站
- cowin_sources.py:从 cowin.hku.hk API 抓取站 6087 的逐分钟温度
- weather_sources.py:CowinSourceMixin 接入采集链,优先级高于 HKO
- country_networks.py:_airport_primary_from_raw 加入 COWIN 优先检查
  airport_primary.source_label 显示为 CoWIN 6087,前端图表默认可见
2026-05-26 07:52:49 +08:00
2569718930@qq.com e852b9bc89 feat: initialize landing page, payment logic, bot coordination, and configuration validation systems 2026-05-26 02:11:27 +08:00
2569718930@qq.com 8cb2beb956 恢复美国城市电报推送和子话题 2026-05-26 00:25:35 +08:00
2569718930@qq.com a6367ab7c2 修复 marketOverview 移除后的导入错误 2026-05-25 23:09:37 +08:00
2569718930@qq.com b3aabe61ce 清理市场概览残留与 refresh_policy 中的 marketOverview 条目 2026-05-25 23:06:44 +08:00
2569718930@qq.com d1aa3550ba 电报推送移除全部美国城市,降低服务器负载 2026-05-25 23:05:46 +08:00
2569718930@qq.com ea5c6ec71e 清理市场概览残留:删除 MarketOverviewBanner+refresh_policy 中的 marketOverview 条目 2026-05-25 23:04:40 +08:00
2569718930@qq.com 10dcf20077 巴黎推送按新口径重构:当前实况始终为 AEROWEB,AROME 仅为模型参考 2026-05-25 21:48:20 +08:00
2569718930@qq.com c5e80a56b4 巴黎推送同时展示 AEROWEB 实况和 AROME 临近预报两条温度 2026-05-25 21:41:48 +08:00
2569718930@qq.com 5202ed06ff 巴黎 AROME 仅在 AEROWEB 为主源时作对比展示,避免与当前温度重复 2026-05-25 21:38:10 +08:00
2569718930@qq.com b8b99a0fc5 巴黎推送增加 AROME HD 15分钟临近预报温度行 2026-05-25 21:35:39 +08:00
2569718930@qq.com 0e81b974e7 巴黎推送标明数据源:AEROWEB 实况或 AROME HD 临近预报 2026-05-25 21:28:17 +08:00
2569718930@qq.com 7a10f4b474 统一 METAR 获取:非 HK/深圳城市走同一条 NOAA 路径,前端移除所有流浮山字样 2026-05-25 21:15:14 +08:00
2569718930@qq.com 7b8826dfa1 清理最后一批 Polymarket 注释+死代码 WeatherDecisionBand 2026-05-25 20:53:03 +08:00
2569718930@qq.com ef8d89e72e 删除 Polymarket 核心文件:readonly 层+WS 缓存 2026-05-25 20:07:32 +08:00
2569718930@qq.com 75e6f58a56 SQLite 开启 WAL 模式 + busy_timeout 解决并行扫描写入锁冲突 2026-05-25 16:53:44 +08:00
2569718930@qq.com 21a375a198 修复 WS 事件识别:无 type envelope 的价格消息也处理 2026-05-25 07:56:45 +08:00
2569718930@qq.com e6d24c308f WS 新增临时调试日志查看实际接收消息 2026-05-25 07:52:18 +08:00
2569718930@qq.com 5566894e84 修复 WS 订阅格式:type=subscribe channel=market 对齐官方文档 2026-05-25 07:49:55 +08:00
2569718930@qq.com 1ef209ce2f 移除 REST 价格获取,纯 WebSocket 报价;默认开启 WS 价格;修复图表 TS 错误 2026-05-25 07:38:35 +08:00
2569718930@qq.com 81f61370fe _batch_get_token_market_data 批量 WS 预热订阅避免全冷 REST 查询 2026-05-25 07:35:19 +08:00
2569718930@qq.com bf4be0436b 完成 lau fau shan → shenzhen 全量重命名,前端库和文档同步更新 2026-05-25 06:10:54 +08:00
2569718930@qq.com 341397bc45 lau fau shan 重命名为 shenzhen,移除旧 ZGSZ 深圳条目,统一使用流浮山天文台 HKO 数据 2026-05-25 06:09:50 +08:00
2569718930@qq.com 317c57ccd1 巨鲸盯盘接入 Polymarket Data API /holders 端点,展示真实持仓者数据 2026-05-25 04:38:45 +08:00
2569718930@qq.com 6de29ed2e1 清理调试日志:移除 BIAS_DEBUG/SCAN_DEBUG 临时日志,保留核心修正逻辑 2026-05-25 03:52:07 +08:00
2569718930@qq.com 8849ef8fe6 放宽扫描终端硬过滤默认值,适配 Polymarket 低流动性长尾桶
min_price 0.05→0.001,max_price 0.95→0.999,min_liquidity 500→50,
max_spread 0.03→0.2,edge 过滤从定向改为绝对值以捕获空头信号。
2026-05-25 02:58:41 +08:00
2569718930@qq.com 852010b8d4 _passes_hard_filters 新增过滤原因日志排查扫描行被全部筛掉问题 2026-05-25 02:54:20 +08:00
2569718930@qq.com d2a9e9a9b3 修复概率引擎与 Polymarket 桶不匹配导致 model_p 始终为 None 的问题
_distribution_probability_for_market 新增高斯 CDF fallback:
当离散概率分布桶与 Polymarket 市场桶无精确重叠时(如 NYC 分布 56-59F
但市场桶为 51-70F),用分布的 mu/sigma 构建正态分布计算 CDF 概率,
不再直接返回 None,保证 scan_rows 正常生成。
2026-05-25 02:51:58 +08:00
2569718930@qq.com 032d46ec1d Polymarket 市场扫描新增 SCAN_DEBUG 日志排查终端无数据问题
在 _build_distribution_scan_pack / _row_from_entry 关键路径
添加 logger.info 跟踪 related_markets 数量、批量报价结果、
行过滤原因和最终结果,便于定位 scan_rows 始终为空的原因。
2026-05-25 02:46:05 +08:00
2569718930@qq.com ad936bfd91 Telegram 高频推送内存优化:LRU 缓存限制、TTL 驱逐、速率控制、连接复用
core.py: _cache 改用 LRUDict(maxsize=256) + threading.Lock 线程安全读写
analysis_service.py: _CACHE_LOCK 保护读写,_SUMMARY_CACHE 改用 LRUDict(maxsize=128)
weather_sources.py: 新增 _maybe_trim_caches() 定期清理 11 个过期缓存条目,防止无限增长
telegram_push.py: requests.Session 连接复用替代裸 requests.get,ThreadPoolExecutor 跨周期复用,
新增 _rate_limited_send 消息发送速率控制防止 API 限流堆积

Tested: ruff check 通过, 182 pytest 通过
2026-05-25 02:20:15 +08:00
2569718930@qq.com 9a49ff3f5e 新增终端大洲分组与移动端卡片 CSS 模块
包含分组标题行、移动端 Tab 隐藏滚动条、信号卡片样式及浅色主题适配。
2026-05-25 01:55:55 +08:00
2569718930@qq.com c9cff88452 更新浏览器图标为新品牌 logo
基于 public/logo.png 重新生成所有尺寸的 favicon 和 PWA 图标。
Tested: npm run build 通过
2026-05-25 00:53:39 +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 e4d123d94d 重构首页为机构落地页,新增终端路由,时区感知 Polymarket 市场发现 2026-05-25 00:16:53 +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 5db20061eb 移除 command_guard 中的群成员检查,更新对应测试 2026-05-24 17:59:32 +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 0012eddc81 修复电报推送偶发高温:目标机场站缺失时不再冒用 mgm_nearby[0]
Constraint: fetch_mgm_nearby_stations 并发抓取,17128/17058 偶发超时导致回退到市区站(热岛 +2-3°C)
Tested: ruff OK, pytest 184 passed
2026-05-23 22:04:09 +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 eeb5f563db 移除 Polymarket 价格拉取:删除 _market_layer、market_scan 返回空、清理健康检查和配置验证 2026-05-23 12:04:40 +08:00
2569718930@qq.com 442a9c8560 修复支付代币匹配问题:direct 模式遍历所有支持代币查 Transfer 事件,未知代币不再伪装 USDC
- _extract_direct_transfer_event: 遍历 supported_tokens 所有合约而不仅是 intent.token_address
- _default_token_meta: 未知代币显示地址缩写而非 USDC
- _token_symbol_for: 未知代币同样不伪装 USDC
2026-05-23 11:41:01 +08:00
2569718930@qq.com 2aa44dd5c7 天气日报末尾添加粗略预测免责提醒(代码拼接,不依赖 AI) 2026-05-23 10:33:46 +08:00
2569718930@qq.com 678b94000c 简化 AI prompt 为纯文本格式,降低 MiMo 空响应概率 2026-05-23 10:27:07 +08:00
2569718930@qq.com 0a7aaf19a6 修复 CMA 温度提取:_extract_first 添加 re.DOTALL 标志支持多行 HTML 内容 2026-05-23 10:20:59 +08:00
2569718930@qq.com c18ff504e4 修复 CMA 温度提取:改用纯文本数字匹配替代 HTML 标签猜测,天气优先 CMA、温度回退 OM 2026-05-23 10:13:16 +08:00
2569718930@qq.com 53225118c1 修复 Telegram HTML 解析错误:禁止 AI 使用 br 标签,添加 CMA 数据诊断日志 2026-05-23 10:06:52 +08:00
2569718930@qq.com 160dd65a54 接入中国气象局 weather.com.cn 预报数据作为天气日报主数据源
- 新增 CMA 7日预报页 HTML 爬虫,提取白天天气描述和最高/最低温
- 7 城优先使用 CMA 数据,Open-Meteo 仅做 fallback
- 数据来源在 prompt 中标注 weather.com.cn
2026-05-23 09:59:37 +08:00
2569718930@qq.com cfda3a796c 在代码层将 WMO weather_code 转译中文,杜绝 AI 天气误判 2026-05-23 09:53:12 +08:00
2569718930@qq.com a80f34137c 修复 AI 空响应:移除 prompt 中的 HTML 标签示例,加入 finish_reason 诊断日志 2026-05-23 09:50:08 +08:00
2569718930@qq.com dd65adb9d8 强制天气日报逐城格式:天气现象 + 最高温 + 体感建议,禁止结尾客套 2026-05-23 09:45:39 +08:00