2569718930@qq.com
|
522e35de7f
|
Add trial and referral subscription program
|
2026-05-29 19:24:46 +08:00 |
|
2569718930@qq.com
|
2269aaefd7
|
Reduce Supabase disk IO
|
2026-05-29 17:22:33 +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
|
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
|
777b7465b7
|
SSE CORS 修复:EventSource 跨域 + preflight OPTIONS
- sse_router: 显式加 Access-Control-Allow-Origin + Allow-Credentials,新增 OPTIONS
- use-sse-patches: CORS 失败自动切 BFF 代理降级
|
2026-05-26 11:15:41 +08:00 |
|
2569718930@qq.com
|
23882ac1ef
|
SSE Patch 增量推送架构全链路实现
- web/sse_manager.py: asyncio.Queue 连接池 + broadcast + event_stream
- web/routers/sse_router.py: GET /api/events + POST /api/internal/collector-patch
- weather_sources.py: 采集后 POST patch 给 web
- Nginx polyweather.conf: /api/events proxy_buffering off
- frontend/api/events/route.ts: Next.js SSE 代理
- frontend/hooks/use-sse-patches.ts: EventSource + useLatestPatch + 重连
- LiveTemperatureThresholdChart: mergePatchIntoHourly 增量合并
- scan-terminal-query: 接入 SSE patch 更新行数据
- 新增 ssePatchArchitecture.test.ts 架构测试
|
2026-05-26 10:39:17 +08:00 |
|
2569718930@qq.com
|
c88d313f60
|
终端 header 显示当前在线人数
- src/utils/online_tracker.py:5 分钟滑动窗口,thread-safe 内存追踪
- web/core.py:认证成功时 record_activity(user_id)
- web/routers/ops.py:GET /api/ops/online-users 返回 {online: N}
- 前端 header 每 60s 轮询,Users 图标 + 数字
|
2026-05-26 08:40:17 +08:00 |
|
2569718930@qq.com
|
5b19a49ffb
|
首屏优化:scan terminal 加 s-maxage 缓存 + 落地页预加载 API
1. /api/scan/terminal 返回 Cache-Control: public, s-maxage=30, stale-while-revalidate=120
→ pre-warm 期间也能返回缓存,白屏 20s 变 1s
2. 落地页 2s 后静默 prefetch /api/cities,预热后端进程和连接池
3. metadata 加 preconnect api.polyweather.top
|
2026-05-26 08:23:33 +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
|
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
|
617b55f24c
|
scan.py 添加 from __future__ import annotations 修复 Python 3.8 兼容
|
2026-05-25 17:54:23 +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
|
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
|
c74be88cf9
|
扫描终端支持 region 参数按区域懒加载
|
2026-05-25 07:00:59 +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
|
317c57ccd1
|
巨鲸盯盘接入 Polymarket Data API /holders 端点,展示真实持仓者数据
|
2026-05-25 04:38:45 +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
|
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
|
f661350990
|
新增 GET /api/cities/model-range 端点:返回 7 城 DEB 预测和模型区间
|
2026-05-23 10:42:53 +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
|
75dd7464cc
|
新增积分转账功能:支持管理员手动扣除和划转用户积分
|
2026-05-20 20:39:51 +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
|
e1e000e854
|
后台会员页新增增长趋势图表:累计曲线、每日新增堆叠面积图、统计卡片
|
2026-05-19 19:28:38 +08:00 |
|
2569718930@qq.com
|
a5c508cce8
|
feat: implement SQLite database management and Supabase integration for user authentication and points synchronization
|
2026-05-19 18:07:39 +08:00 |
|
2569718930@qq.com
|
b93a75516d
|
移除未使用的 Groq 和 Meteoblue 服务代码及配置
|
2026-05-19 00:05:07 +08:00 |
|
2569718930@qq.com
|
c38dc80f58
|
后台新增 API 状态检测页:实时检测 Supabase/Open-Meteo/METAR/KNMI/MADIS/Telegram 连通性
|
2026-05-18 23:25:16 +08:00 |
|
2569718930@qq.com
|
67701a4715
|
后台管理系统后端 API:在线配置编辑、手动订阅管理、日志查看(logs 目录避开 gitignore)
|
2026-05-18 20:18:42 +08:00 |
|
2569718930@qq.com
|
78b23ef361
|
feat: implement Telegram account binding and update project structure in documentation
|
2026-05-18 17:10:44 +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
|
bd21b05fbc
|
完全移除预热(prewarm)功能
- 删除 src/utils/prewarm_dashboard.py
- 删除 scripts/prewarm_dashboard_cache.py、prewarm_dashboard_worker.py
- docker-compose.yml 移除 polyweather_prewarm 服务
- runtime_coordinator.py 移除预热循环启动逻辑
- web/core.py 移除 prewarm status 上报
- web/routers/system.py 移除 /api/system/prewarm 端点
- web/services/system_api.py 移除 run_system_prewarm
- city_runtime.py DEFAULT_PREWARM_CITIES 改名为 DEFAULT_STATUS_CITIES
- 清理 env.example、测试、VPS .env 中的预热配置
|
2026-05-17 22:43:17 +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 |
|