Commit Graph

141 Commits

Author SHA1 Message Date
2569718930@qq.com 1ac41dde33 Callback 修复补丁:redirect URL 改用 siteUrl 构造,避免跳转到 localhost:3000 2026-05-26 04:48:07 +08:00
2569718930@qq.com f884b016cc 修复 callback 无限重定向:origin 比较改为 host header 比较
nextUrl.origin 在 route handler 中不认 x-forwarded-* headers,
导致 canonical origin 检查始终失败,callback 无限重定向到自身。
改用 request.headers.get(host) 比较。
2026-05-26 04:27:37 +08:00
2569718930@qq.com a3db39909d 术语统一:合约/市场/交易 → 阈值/信号/实况路径/多模型预测 2026-05-25 22:51:53 +08:00
2569718930@qq.com 5d0d1e2673 删除 AI 预报系统全部死代码:11 个文件,扫描客户端 AI 流、状态管理、类型定义 2026-05-25 22:27:02 +08:00
2569718930@qq.com 7f0506b897 清理残留 skip_polymarket 参数和 PM 注释 2026-05-25 20:26:26 +08:00
2569718930@qq.com 2d9e99760f 深度清理 Polymarket 代码:删除10个文件+3个API路由+客户端引用
删除 MarketOverviewView、MarketDecisionLine、market-scan-state、use-city-market-scan、AnalyticsPanel、TerminalDashboard、polymarket-market-links、lib/types、market-scan 路由、use-ai-city-card-data。scan-terminal-client 移除 getMarketScan 和 skip_polymarket。
2026-05-25 19:50:28 +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 7273891794 更新 CLAUDE.md,清理死 import,图表与 API 细节调整 2026-05-25 07:52:31 +08:00
2569718930@qq.com 140a0f16ae 全局字体加大:body 15px,终端密集文字 +1px,text-xs/text-sm 上调 2026-05-25 05:00:16 +08:00
2569718930@qq.com 9a49ff3f5e 新增终端大洲分组与移动端卡片 CSS 模块
包含分组标题行、移动端 Tab 隐藏滚动条、信号卡片样式及浅色主题适配。
2026-05-25 01:55:55 +08:00
2569718930@qq.com 759ee7a8e4 登录页 mode 参数改为服务端直传,消除登录/注册表单切换闪烁
LoginPage 从 searchParams 提取 mode 作为 initialMode prop 传给 LoginClient,
替代客户端 useEffect 从 window.location.search 读取的方式,首次渲染即显示目标表单。

Tested: tsc --noEmit 通过, npm run build 通过
2026-05-25 01:03:38 +08:00
2569718930@qq.com e4d123d94d 重构首页为机构落地页,新增终端路由,时区感知 Polymarket 市场发现 2026-05-25 00:16:53 +08:00
2569718930@qq.com 45e9c28437 feat: implement account management and subscription payment center components 2026-05-24 23:09:13 +08:00
2569718930@qq.com 32a3ba0ea4 feat: implement HeaderBar and ScanTerminal UI layout components for dashboard navigation and decision workspace 2026-05-24 22:38:43 +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 2415167132 修复 OAuth 回调域名:优先使用 NEXT_PUBLIC_SITE_URL 并添加根路径 code 兜底 2026-05-24 17:55: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 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 2f0b496066 ops 订阅开通改为 Next.js 直连 Supabase,免去 VPS 鉴权链路 2026-05-20 22:23:28 +08:00
2569718930@qq.com cb625a2b0e ops 代理路由直接使用 entitlement token 作为 Bearer 鉴权 2026-05-20 22:11:57 +08:00
2569718930@qq.com 2f9889d63a 修复后台漏斗无数据:埋点默认启用、补全 signup_completed 和 dashboard_active 事件上报 2026-05-20 20:13:18 +08:00
2569718930@qq.com 4e59c41c81 添加 ops API 代理路由 2026-05-20 17:35:39 +08:00
2569718930@qq.com 6f7e847b01 添加后台 Telegram 审计面板 2026-05-20 17:12:32 +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 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 a9d71c18aa 后台数据可视化:Recharts 漏斗图、总览页 KPI 卡片和缓存饼图 2026-05-18 20:53:27 +08:00
2569718930@qq.com 67701a4715 后台管理系统后端 API:在线配置编辑、手动订阅管理、日志查看(logs 目录避开 gitignore) 2026-05-18 20:18:42 +08:00
2569718930@qq.com 073d0efbb0 后台管理系统基础框架:侧边栏布局、9 个页面模块、共享类型和 API 客户端 2026-05-18 20:10:08 +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 5c2977fe71 修复温度曲线图 DEB 路径不显示:后端 v2 API 的 timeseries.hourly 映射到前端 CityDetail.hourly
- normalizeCityDetailPayload 新增 timeseries.hourly → hourly 字段提升
- 预热列表 DEFAULT_CITIES 扩展到 33 城,覆盖全部机场推送城市
2026-05-17 18:41:53 +08:00
2569718930@qq.com 861b394e49 跑道观测推送时间修正为AMSC/AMOS观测时间,显示HH:MM格式 2026-05-15 17:49:37 +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 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 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 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 357e01be3c feat: add monitor panel component with consolidated CSS root styles 2026-05-14 01:51:55 +08:00
2569718930@qq.com c006d13fea MonitorPanel 从独立 API 改为复用 DashboardStore 数据,砍掉 /api/m 和 /m/json 2026-05-14 00:43:19 +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 5e653c2ec1 前端接入监控页面:新增 Monitor 标签页 + /api/m 代理 2026-05-14 00:04:26 +08:00
2569718930@qq.com 40f231b76d 优化 Vercel Fluid CPU:API加CDN缓存、缩小middleware范围、跳过公共API的Supabase身份转发
- 7条GET路由加 s-maxage + stale-while-revalidate,fetch 改为 next revalidate
- middleware matcher 从全匹配缩小到9条需auth的路径,移除 isStaticAsset
- 8条公共API路由加 includeSupabaseIdentity: false
- backend-auth getSession 为空时跳过 getUser
- subscription-help 加 I18nProvider,移除 force-dynamic → 静态预渲染
- next.config.mjs 加静态资源 immutable 缓存头

Tested: npx tsc --noEmit 通过,npm run build 通过
2026-05-13 14:23:04 +08:00
AmandaloveYang ff4c8b0139 修复手机端无法滚动:添加 viewport meta 标签并在移动端允许根容器垂直滚动
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-12 10:06:12 +08:00
2569718930@qq.com 78cdb006e5 subscription-help: 添加 dynamic=force-dynamic 跳过预渲染 2026-05-10 20:48:20 +08:00