2569718930@qq.com
|
e7fc3c97cb
|
feat: add scan terminal dashboard components, monitoring panels, and associated utility hooks
|
2026-05-15 12:52:39 +08:00 |
|
2569718930@qq.com
|
1a284c9990
|
跑道观测卡片移除机场报文展示
|
2026-05-15 04:37:40 +08:00 |
|
2569718930@qq.com
|
77488e561a
|
跑道观测面板每 60 秒自动刷新观测时间
|
2026-05-15 04:36:45 +08:00 |
|
2569718930@qq.com
|
c2a78e7b62
|
Dockerfile 启用 BuildKit 缓存挂载加速构建
|
2026-05-15 04:25:57 +08:00 |
|
2569718930@qq.com
|
3845432ac2
|
测试 mock 方法名同步为 _amsc_http_get_json
|
2026-05-15 04:20:52 +08:00 |
|
2569718930@qq.com
|
c031dd0e28
|
prewarm 加 --force-refresh 确保按时拉取最新 AMSC 跑道数据
|
2026-05-15 04:15:58 +08:00 |
|
2569718930@qq.com
|
c6f1eac6c1
|
跑道观测面板添加移动端响应式布局(768px / 480px 断点)
|
2026-05-15 04:04:54 +08:00 |
|
2569718930@qq.com
|
f47ea93ec1
|
AMSC 重命名 _http_get_json 为 _amsc_http_get_json,避免 MRO 被 WeatherDataCollector 的同名方法覆盖
|
2026-05-15 03:47:15 +08:00 |
|
2569718930@qq.com
|
856e9aa6d1
|
AMSC 添加 stderr 调试输出,确认 urllib 代码路径被执行
|
2026-05-15 03:42:14 +08:00 |
|
2569718930@qq.com
|
e981188bf8
|
AMSC 请求从 httpx 改为 urllib,彻底绕过代理干扰
|
2026-05-15 03:33:06 +08:00 |
|
2569718930@qq.com
|
d8639f40f9
|
AMSC 请求绕过代理 trust_env=False,修复容器内 SSL 验证失败
|
2026-05-15 03:19:33 +08:00 |
|
2569718930@qq.com
|
6655476fd4
|
AMSC SSL 硬编码 verify=False,跳过证书验证环境变量依赖
|
2026-05-15 03:13:30 +08:00 |
|
2569718930@qq.com
|
06df0a87dd
|
AMSC 请求添加调试日志,排查 SSL verify 状态
|
2026-05-15 03:03:26 +08:00 |
|
2569718930@qq.com
|
00400f1392
|
AMSC 请求添加 app: AMS header,对齐浏览器完整请求头
|
2026-05-15 02:49:34 +08:00 |
|
2569718930@qq.com
|
bbb47b1634
|
AMSC sessionId 从 Cookie 改为自定义 header,对齐浏览器请求格式
|
2026-05-15 02:46:56 +08:00 |
|
2569718930@qq.com
|
189a77d03d
|
AMSC SSL 改用 httpx.Client(verify=False) 确保跳过证书验证
|
2026-05-15 02:42:03 +08:00 |
|
2569718930@qq.com
|
0f7322dbd8
|
feat: add RunwayObservationsPanel component to display AMSC airport weather data
|
2026-05-15 02:28:26 +08:00 |
|
2569718930@qq.com
|
9f7bbffca1
|
AMSC AWOS 请求添加 SSL 验证开关,兼容国内证书
|
2026-05-15 02:25:33 +08:00 |
|
2569718930@qq.com
|
9868784494
|
移除跑道观测面板刷新按钮,数据随面板加载自动拉取
|
2026-05-15 02:21:54 +08:00 |
|
2569718930@qq.com
|
d4892a5294
|
feat: add RunwayObservationsPanel component for tracking major Chinese airport runway temperatures
|
2026-05-15 02:15:03 +08:00 |
|
2569718930@qq.com
|
e590150fa9
|
补全 scan/terminal/overview Next.js API route handler,修复生产 404
MarketOverviewBanner 改为使用 fetchBackendApi() 统一调用模式,
同时创建缺失的 app/api/scan/terminal/overview/route.ts 代理到后端。
其他 scan/terminal 子路由 (ai, ai-city, stream) 已有对应 handler。
|
2026-05-15 02:08:12 +08:00 |
|
2569718930@qq.com
|
644b592fe8
|
修复 MarketOverviewBanner 未使用 fetchBackendApi 导致生产环境 404
组件内裸 fetch() 请求到 Vercel 前端域名,缺少路由 handler 返回 404。
统一使用 fetchBackendApi() 走后端代理,其他 scan-terminal 组件已正确使用。
|
2026-05-15 02:01:41 +08:00 |
|
2569718930@qq.com
|
4cc579ccb3
|
feat: add AMSC runway observations
|
2026-05-15 01:41:49 +08:00 |
|
2569718930@qq.com
|
c4b1844a67
|
fix: stabilize pro checkout loading
|
2026-05-15 00:58:40 +08:00 |
|
2569718930@qq.com
|
f9154ff0f2
|
修复 Istanbul/Ankara MGM 实测链接指向机场站点页面
Istanbul: mgm.gov.tr → mgm.gov.tr/?il=Istanbul&ilce=Istanbul Havalimani
Ankara: mgm.gov.tr → mgm.gov.tr/?il=Ankara&ilce=Esenboga
|
2026-05-15 00:41:53 +08:00 |
|
2569718930@qq.com
|
c96a630d1b
|
账户页添加本地错误边界,支付崩溃时提示钱包冲突排查
用户反馈点击"立即订阅并激活服务"后页面崩溃。
新增 account/error.tsx 本地错误边界,支付流程出错时提示:
- 常见原因:多钱包插件冲突(MetaMask + Rabby 同时开启)
- 建议操作:关闭其他钱包插件后刷新重试
Error boundary is scoped to /account route only, won't affect dashboard.
Scope-risk: LOW — TypeScript 零错误
Tested: npx tsc --noEmit (0 errors)
|
2026-05-15 00:35:34 +08:00 |
|
2569718930@qq.com
|
3bca2093f0
|
修复高频机场数据源:AMOS接入airport_primary、Taipei CWA补充mgm_nearby、Paris AROME缓存
- Seoul/Busan: AMOS 跑道传感器纳入 airport_primary 链路(MADIS之后、MGM之前)
- Seoul/Busan: 跑道温度生效时同步更新 current_obs_time,去重不再依赖慢速METAR
- Taipei: 新增 _attach_cwa_settlement_nearby,将CWA数据注入 mgm_nearby(icao=RCSS)
- Paris: AROME HD 抓取新增 10分钟内存缓存(模型15分钟更新),obs_time 为空时补 UTC 时间
- Istanbul/Ankara MGM 链接修复为直接跳转机场站点页面
Scope-risk: LOW — 170 测试通过,ruff 零告警
Tested: python -m pytest -q (170 passed), ruff check .
|
2026-05-15 00:10:03 +08:00 |
|
2569718930@qq.com
|
2ee00f8016
|
MiMo AI 能力扩展:TAF解读、概率分布解读、异常检测、市场概览
AI 解读字段扩展:
- 新增 taf_read_zh/en:解读机场预报中影响今日峰值窗口的变化
- 新增 probability_read_zh/en:描述概率分布形态(最高桶、偏左/偏右)
- stream max_tokens 900→1200 容纳新输出字段
- 缓存 key 简化为 METAR原文+观测时间,大幅提升命中率
- 兜底函数补全 TAF 和概率字段的确定性生成
异常检测:
- 纯数学计算,零 AI 延迟:实测温度 vs 全部模型预测上下限
- 三级告警:breakout_above / breakout_below / deviation
市场概览:
- 新增 POST /api/scan/terminal/overview(MiMo 批量解读,缓存10分钟)
- 前端 MarketOverviewBanner 可折叠横幅(顶栏与标签栏之间)
- 移动端适配 640px/768px 断点,暗色/亮色双主题
Scope-risk: MEDIUM — 170 测试通过,TypeScript 零错误,ruff 零告警
Tested: python -m pytest -q (170 passed), npx tsc --noEmit (0 errors), ruff check .
|
2026-05-14 22:41:31 +08:00 |
|
2569718930@qq.com
|
6c08a68413
|
@
性能与用户体验全面优化
前端性能:
- 移除 Three.js 依赖(~600KB),天气粒子改为纯 CSS 动画 + Canvas 2D
- Google Fonts 切换为 next/font 自托管,消除跨域字体请求
- 合并 ScanTerminalLightTheme.module.css (37KB) 到主 CSS,亮/暗主题统一用 CSS 变量
- 新增 /api/dashboard/init 聚合端点,首次加载 4 次往返 → 1 次
- 添加 Service Worker 静态资源缓存,修复 PWA manifest 配置
用户体验:
- 新增全局错误边界 error.tsx / global-error.tsx,崩溃不再白屏
- 决策卡和城市详情的更新时间改为相对时间("15秒前"),每秒自动刷新
- 数据陈旧时状态标签从青色切换为琥珀色提示
DEB 算法增强:
- 市场扫描路径接入 Open-Meteo 多模型数据(ECMWF/GFS/ICON/JMA/HRDPS 等)
- MAE 计算加入时间衰减(decay_factor=0.85),近期模型误差权重更高
Scope-risk: MEDIUM — 全量 170 测试通过,前端 TypeScript/build 通过,ruff 零告警
Tested: python -m pytest -q (170 passed), npx tsc --noEmit (0 errors), npm run build (success), ruff check .
@
|
2026-05-14 21:31:05 +08:00 |
|
2569718930@qq.com
|
37494a7192
|
@
将 web/routes.py 拆分为模块化 router + service 架构
- 新增 web/app_factory.py 集中注册 7 个域名 router
- 新增 web/routers/ 薄壳路由层(auth/city/system/scan/ops/payments/analytics)
- 新增 web/services/ 业务函数下沉(每域独立 service 文件)
- web/routes.py 缩减为 city_runtime 的兼容重导出 facade
- analysis_service.py/app.py 适配新入口并清理冗余导入
Scope-risk: LOW — 全量 170 测试通过,router 注册顺序与原路由一致
Tested: python -m pytest -q (170 passed), ruff check . (All checks passed)
@
|
2026-05-14 20:01:26 +08:00 |
|
2569718930@qq.com
|
a79abc02de
|
清理已移除服务的残留环境变量和测试引用
- .env.example:移除 PROMETHEUS/ALERTMANAGER/GRAFANA/ALERT_RELAY 端口配置
- .env.example:移除 TELEGRAM_ALERT_* 市场提醒配置
- test_bot_runtime_coordinator:移除 trade_alert_push 断言
|
2026-05-14 18:45:34 +08:00 |
|
2569718930@qq.com
|
f4a37e4bdd
|
移除 market_alert_engine 对应的测试文件
该测试文件引用已删除的 src.analysis.market_alert_engine 模块。
|
2026-05-14 18:42:41 +08:00 |
|
2569718930@qq.com
|
5617e5b112
|
拆分 FutureForecastModalContent:提取 TodayLayout 组件
- 新建 FutureForecastTodayLayout:封装今日视图双栏布局(左侧卡片+右侧图表)
- FutureForecastModalContent 从 1098 行降至 999 行
- 纯 JSX 提取,不修改任何业务逻辑、状态或数据流
Tested: npx tsc --noEmit ✓
|
2026-05-14 18:39:10 +08:00 |
|
2569718930@qq.com
|
eb056a890b
|
移除 PolyWeather 市场提醒功能及监控基础设施
- 删除 market_alert_engine.py:交易预警引擎
- 删除 alertmanager_telegram_relay.py:Alertmanager 到 Telegram 转发
- 移除 telegram_push.py 中市场监控推送循环
- 移除 runtime_coordinator.py 中 trade_alert_push 协程
- 移除 docker-compose.yml 中 Prometheus/Alertmanager/Grafana 服务
- 移除 monitoring/ 目录:prometheus/alertmanager/grafana 配置
Tested: ruff check . ✓
|
2026-05-14 18:23:39 +08:00 |
|
2569718930@qq.com
|
5ad89b4c29
|
移除未使用的 HistoryModal 历史对账组件
该组件未被任何地方引用,属于死代码。同时移除关联 CSS Module
及 scan-root-styles.ts 中的 barrel 注册。
|
2026-05-14 18:13:41 +08:00 |
|
2569718930@qq.com
|
ac90ef9206
|
修复 CSS Module spin 动画::global(spin) 改为本地 @keyframes spin
PostCSS 将 :global(spin) 解析为伪元素 :: 导致 Vercel 构建失败。
改用在每个 CSS Module 中定义本地 @keyframes spin。
|
2026-05-14 18:06:53 +08:00 |
|
2569718930@qq.com
|
c8103179e1
|
修正市场监控新高提醒:统一数据源并修复 HKO/跑道城市逻辑
- resolveMaxSoFar:HKO 城市优先使用 current.max_so_far(天文台结算锚点)
- trendClass:跑道城市跳过比较(跑道表面温度 vs 空气温度无意义)
- newHigh badge / audio alert:跑道城市屏蔽新高判断
- 所有调用处传入 key 参数确保 HKO fallback 生效
|
2026-05-14 17:51:08 +08:00 |
|
2569718930@qq.com
|
4f13faa311
|
优化日内温度曲线图加载性能并修复图标旋转动画
- AiCityTemperatureChart:React.memo 包裹 + useMemo 依赖移除 detail 避免每帧重算
- ScanTerminalCard 等 9 个 CSS Module:animation: spin 改为 :global(spin) 修复 CSS Modules 作用域问题
|
2026-05-14 17:31:25 +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
|
c9d03fd3e1
|
feat: implement dashboard state management, API proxy layer, and modular UI components for weather monitoring and payments
|
2026-05-14 15:05:13 +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
|
0e220d890f
|
feat: add component styles for future forecast modal v2
|
2026-05-14 02:55:16 +08:00 |
|
2569718930@qq.com
|
4bda402270
|
feat: implement MonitorPanel component for real-time weather monitoring and temperature tracking
|
2026-05-14 02:47:37 +08:00 |
|
2569718930@qq.com
|
8bfe23138c
|
feat: implement MonitorPanel component with real-time airport weather tracking and concurrency-controlled polling
|
2026-05-14 02:41:51 +08:00 |
|
2569718930@qq.com
|
f5acae3c81
|
feat: implement ScanTerminalDashboard with integrated monitoring, paywall, and AI-driven city analysis features
|
2026-05-14 02:32:56 +08:00 |
|
2569718930@qq.com
|
294ac30026
|
feat: add MonitorPanel component for real-time airport weather tracking and automated refresh coordination
|
2026-05-14 02:15:49 +08:00 |
|
2569718930@qq.com
|
fb4ba622a8
|
feat: implement MonitorPanel component for tracking real-time airport weather data with automated concurrency and stale-data prioritization
|
2026-05-14 02:02:30 +08:00 |
|
2569718930@qq.com
|
d7d1744313
|
feat: implement MonitorPanel dashboard component with status indicators and grid view
|
2026-05-14 02:00:00 +08:00 |
|
2569718930@qq.com
|
357e01be3c
|
feat: add monitor panel component with consolidated CSS root styles
|
2026-05-14 01:51:55 +08:00 |
|
2569718930@qq.com
|
3529d97d58
|
移除国内城市(NMC并非机场温度,无用)
|
2026-05-14 01:41:16 +08:00 |
|
2569718930@qq.com
|
329e3afe38
|
监控页新增 7 个国内城市(上海/北京/成都等,NMC 5min数据)
|
2026-05-14 01:37:37 +08:00 |
|
2569718930@qq.com
|
6eca1da3f9
|
修复测试:aurora→denver 城市 key 重命名后更新断言
|
2026-05-14 01:27:04 +08:00 |
|
2569718930@qq.com
|
4ab749c136
|
市场监控新增 11 个美国城市(NY/LA/Chicago/Denver 等)
|
2026-05-14 01:17:09 +08:00 |
|
2569718930@qq.com
|
d2472fa0c2
|
市场监控 1 分钟强制刷新 11 城数据
|
2026-05-14 01:13:53 +08:00 |
|
2569718930@qq.com
|
6c4f43fba6
|
Aurora→Denver 重命名 + 接入 MADIS HFMETAR 5 分钟数据源
|
2026-05-14 01:09:17 +08:00 |
|
2569718930@qq.com
|
79944432fb
|
MonitorPanel 自动触发未加载城市的 ensureCityDetail
|
2026-05-14 00:52:14 +08:00 |
|
2569718930@qq.com
|
c006d13fea
|
MonitorPanel 从独立 API 改为复用 DashboardStore 数据,砍掉 /api/m 和 /m/json
|
2026-05-14 00:43:19 +08:00 |
|
2569718930@qq.com
|
7a28810f25
|
监控页刷新间隔 30s → 60s
|
2026-05-14 00:32:30 +08:00 |
|
2569718930@qq.com
|
c5fdb93ae5
|
监控页:后端 30s 缓存 + 前端 loading 态
|
2026-05-14 00:29:51 +08:00 |
|
2569718930@qq.com
|
2202f8e211
|
砍掉 /m HTML 页面,只保留 /m/json 给 React 组件用
|
2026-05-14 00:23:03 +08:00 |
|
2569718930@qq.com
|
fc48795299
|
监控页从 iframe 改为原生 React 组件:无加载延迟,30s JSON 轮询
|
2026-05-14 00:18:26 +08:00 |
|
2569718930@qq.com
|
fd12c15518
|
Monitor tab 中文名+iframe 常驻避免重新加载
|
2026-05-14 00:13:32 +08:00 |
|
2569718930@qq.com
|
22b414f69e
|
监控页时间改为用户本地时间(JS toLocaleTimeString)
|
2026-05-14 00:10:43 +08:00 |
|
2569718930@qq.com
|
5e653c2ec1
|
前端接入监控页面:新增 Monitor 标签页 + /api/m 代理
|
2026-05-14 00:04:26 +08:00 |
|
2569718930@qq.com
|
9dd59ceb4e
|
修复 ruff 风格:多行语句、bare except → except Exception
|
2026-05-13 23:55:54 +08:00 |
|
2569718930@qq.com
|
a9b1449680
|
放弃 Jinja2,改用 f-string 直接拼 HTML,零模板引擎依赖
|
2026-05-13 23:54:53 +08:00 |
|
2569718930@qq.com
|
a7ba7aed3a
|
Debug:简化 context 排查 Jinja2 500
|
2026-05-13 23:46:18 +08:00 |
|
2569718930@qq.com
|
1240fbb673
|
跑道数据改用 tuple 避免 Jinja2 dict unhashable 错误
|
2026-05-13 23:41:31 +08:00 |
|
2569718930@qq.com
|
d56889c2e5
|
修复 Jinja2 模板 dict 访问方式和条件表达式
|
2026-05-13 23:38:06 +08:00 |
|
2569718930@qq.com
|
1fba498c37
|
添加 jinja2 依赖
|
2026-05-13 23:28:52 +08:00 |
|
2569718930@qq.com
|
b94037f328
|
路由 /monitor → /m,URL 更短
|
2026-05-13 23:24:26 +08:00 |
|
2569718930@qq.com
|
1493c72138
|
删除 Rust 监控项目及旧文档,已用 Python 重写替代
|
2026-05-13 23:22:13 +08:00 |
|
2569718930@qq.com
|
a221b3e969
|
用 Python 重写市场监控网页版:FastAPI+Jinja2+HTMX,复用 _analyze()
|
2026-05-13 23:19:49 +08:00 |
|
2569718930@qq.com
|
bfffbdedd0
|
恢复模板中被吃掉的跑道数据显示区块
|
2026-05-13 22:07:36 +08:00 |
|
2569718930@qq.com
|
26fff84c3a
|
修复跑道数据:用 LIKE 查询所有 RKSI_RWY_%,不再硬编码索引
|
2026-05-13 22:00:00 +08:00 |
|
2569718930@qq.com
|
7038b14904
|
网页版卡片时间改用 obs_time(数据源时间戳),支持 ISO/epoch/Naive 多种格式解析
|
2026-05-13 21:47:55 +08:00 |
|
2569718930@qq.com
|
c9006f250f
|
网页版卡片时间改为观测数据时间(基于 created_at),不再用当前本地时间
|
2026-05-13 21:45:05 +08:00 |
|
2569718930@qq.com
|
1a4d75c126
|
推送消息时间改为观测数据时间,不再用当前本地时间
|
2026-05-13 21:43:26 +08:00 |
|
2569718930@qq.com
|
7555da8e6a
|
更新html
|
2026-05-13 21:26:26 +08:00 |
|
2569718930@qq.com
|
d97bb76480
|
移除 city_daily_max 表及 upsert 逻辑,日最高已改用 intraday_path_snapshots_store
|
2026-05-13 21:14:28 +08:00 |
|
2569718930@qq.com
|
c779b20a4f
|
日最高改用 intraday_path_snapshots_store(已有实时数据,无需等 Docker rebuild)
|
2026-05-13 21:10:39 +08:00 |
|
2569718930@qq.com
|
cac84dcc0c
|
修复今日最高:新增 city_daily_max 表,所有数据源写入日最高
- DB: city_daily_max(icao,max_temp,obs_date,max_time) upsert
- AMOS/JMA/KNMI/FMI/HKO/METAR集群/CWA 采集后均写入
- Rust: 读 city_daily_max 获取准确日最高 + 时间
- 卡片恢复 High 行,显示最高温 + 达成时间
- new_high 提醒也基于真实日最高重新生效
Tested: cargo build + ruff check 均通过
|
2026-05-13 20:50:46 +08:00 |
|
2569718930@qq.com
|
e734c93b34
|
移除不准确的今日最高,改为按当前温度从高到低排序
- airport_obs_log 仅保留 2h 数据,max_so_far 不准确
- 去掉卡片 Today High 行,趋势箭头移到 Obs 同行
- 卡片按 current_temp 降序排列,无数据沉底
- 通知文案简化
|
2026-05-13 20:44:09 +08:00 |
|
2569718930@qq.com
|
067ee63ba4
|
首尔/釜山跑道数据:Python 存 RKSI_RWY_0/1,Rust 查询展示
- weather_sources: AMOS 采集时每条跑道单独写 airport_obs_log
- Rust: 按 RKSI_RWY_0、RKSI_RWY_1 等 icao 查询跑道温度
- 跑道标签 18L/36R、18R/36L 写死在 config 中
|
2026-05-13 20:39:15 +08:00 |
|
2569718930@qq.com
|
88918677c0
|
监控页面:英文城市名 + 新高浏览器提醒(可开关)
- 卡片标题改为英文名(Seoul/Busan/Tokyo 等)
- 温度突破今日最高 0.3°C 时触发浏览器 Notification
- 右上角 🔔 按钮开关提醒,状态存 localStorage
- 同日同城同一温度不重复提醒(notify_highs 去重)
- 页面标题和标签全英文化
Tested: cargo build --release 通过
|
2026-05-13 20:33:59 +08:00 |
|
2569718930@qq.com
|
041c9fb4fa
|
撤回 METAR 兜底,改走 CWA 10min 实时数据(需配 API key)
|
2026-05-13 20:20:16 +08:00 |
|
2569718930@qq.com
|
1d3ccbb7cf
|
台北走 METAR 集群兜底:ICAO 从 CWA 站号 466920 改为 RCSS
- weather_sources: 放开 cwa settlement_source 的 METAR 拦截
- Rust: ICAO 改用 RCSS,匹配 METAR 集群数据
- 原因: CWA_OPEN_DATA_AUTH 未配置,CWA 接口静默失败致 airport_obs_log 无数据
|
2026-05-13 20:17:12 +08:00 |
|
2569718930@qq.com
|
8dd212f0af
|
卡片放大:3列网格、52px温度大字、加宽间距、整体放大 ~30%
|
2026-05-13 20:05:16 +08:00 |
|
2569718930@qq.com
|
ded09df749
|
监控页面布局对齐文档:时区后缀、暖色高温、新高紫光、趋势同行
- 当地时间加时区缩写(KST/JST/HKT 等)
- 温度 >= 30°C 暖橙色高亮
- 新高标记:紫色边框 + 紫色温度数字
- "今日最高" 与趋势箭头同行,对齐 docs 卡片布局
- CSS: temp-value.warm, new-high-card/high-val 样式
|
2026-05-13 20:03:18 +08:00 |
|
2569718930@qq.com
|
239c9c446d
|
监控页面增强:温度变化闪绿光、观测N分钟前、更新戳可见
- 每张卡片加"观测 X 分钟前"时间感知
- 温度值变化时卡片边框闪绿光(HTMX afterSwap 事件)
- 更新时间戳移入 HTMX 局部刷新区,30s 刷新可见
- CSS 加 obs-age 样式
|
2026-05-13 19:58:19 +08:00 |
|
2569718930@qq.com
|
538cc7db2d
|
监控页面刷新间隔 60s → 30s
|
2026-05-13 19:53:13 +08:00 |
|
2569718930@qq.com
|
6055f8328e
|
修正 DB 路径:/var/lib/polyweather/polyweather.db(非 data/ 本地副本)
|
2026-05-13 19:51:25 +08:00 |
|
2569718930@qq.com
|
611811101b
|
修正 service DB 路径为 /root/PolyWeather/data/polyweather.db
|
2026-05-13 19:39:26 +08:00 |
|
2569718930@qq.com
|
9e80719cbe
|
添加 market-monitor systemd service 文件
|
2026-05-13 19:34:21 +08:00 |
|
2569718930@qq.com
|
db9071101a
|
@
添加市场监控 Rust 网页版:Axum+Askama+HTMX,直读 SQLite
- 11 城市卡片网格,暗色主题,响应式布局
- 60s HTMX 轮询局部刷新
- 当前温度、今日最高、趋势箭头(线性回归)
- 首尔/釜山跑道温度(预留)
- 零 Python 依赖,编译后 ~3MB 二进制
Constraint: 读 POLYWEATHER_DB_PATH 指向的 SQLite
@
|
2026-05-13 19:24:24 +08:00 |
|
2569718930@qq.com
|
86467d4e92
|
HK/LFS 数据延迟重试:obs_time 未变且距上次推送超 9min 时等 4s 重拉
HKO API 在 x7 分发布数据但有 3-5s 延迟,推送检查可能刚好在
API 更新前拿到旧数据被去重跳过。现在检测到数据过期时等待重拉。
Constraint: 仅影响 hong kong / lau fau shan,其他城市无额外延迟
|
2026-05-13 15:29:28 +08:00 |
|
2569718930@qq.com
|
1680bd5871
|
香港/流浮山推送间隔改为 60s:obs_time去重防重复,x7分放数据即时捕获
HKO 每 10min 在 x7 分(07/17/27…)发布数据,600s 间隔容易与
发布时刻错位导致延迟一整轮。改为 60s 轮询,obs_time 去重机制
保证同一观测不重复推送。
|
2026-05-13 15:08:34 +08:00 |
|
2569718930@qq.com
|
6802f647b3
|
Busan 高温窗口 fallback:peak 偏窄(13-14)时拓宽到 12-16
沿海城市受海风影响,Open-Meteo 算出的 peak 窗口仅 1 小时,
导致 time_ok 在 16:01 就关窗。加 _AIRPORT_PEAK_FALLBACK,
last_h - first_h < 3 时用 fallback 值。
Constraint: 仅影响 Busan,其他城市无 fallback 保持原逻辑
|
2026-05-13 15:04:54 +08:00 |
|
2569718930@qq.com
|
557882600e
|
添加市场监控频道 Rust 独立网页版方案文档
直读 SQLite airport_obs_log,零 Python 依赖,Axum+Askama+HTMX 纯展示
|
2026-05-13 14:42:19 +08:00 |
|