2569718930@qq.com
dd72908e0e
60s 轮询扩展:跑道曲线 + 站点观测同步刷新
...
原来只轮询 summary 拿 current.temp 更新数字。
现在同时 fetch detail?depth=full 合并 amos/runway_plate_history/
airport_primary_today_obs 等字段,跑道曲线和站点线每 60s 刷新。
后端 CITY_FULL_CACHE_TTL_SEC=60 保证轻量命中缓存。
2026-05-26 09:46:36 +08:00
2569718930@qq.com
23203f6ebb
图表 stats bar 温度数字 60 秒级轻量轮询
...
liveTemp state 独立于 hourly 缓存,每 60s fetch /api/city/{city}/summary。
只取 current.temp,不触发 _analyze() 重算。
图表曲线保持 5min TTL,顶部数字最快 1min 级更新。
2026-05-26 08:30:33 +08:00
2569718930@qq.com
5d10d60dcb
缓存 TTL 对齐:图表内存/会话缓存统一降为 5 分钟(metar),与大表刷新同步
...
- HOURLY_CACHE_TTL_MS: model(30min) → metar(5min)
- SESSION_CACHE_TTL_MS: 10min → metar(5min)
- 消除大表已刷新但折线图仍显示旧温度的时差问题
2026-05-26 08:13:37 +08:00
2569718930@qq.com
8a534160f0
修复 MADIS 测试:HH:MM 时间戳改为 ISO 格式,避免日期回退导致 slot 错位
...
normObs 对 HH:MM 格式调用 getCityLocalUtcTimestamp 时未传 referenceLocalDate,
导致取当前真实日期而非测试数据日期,所有观测挤到最后一个 slot。
2026-05-26 08:11:13 +08:00
2569718930@qq.com
3a82c11e78
feat: implement LiveTemperatureThresholdChart and add visibility and refresh policy unit tests
2026-05-26 06:13:18 +08:00
2569718930@qq.com
636a81d6df
test: add unit tests for temperature chart data and visibility policy, and document city data sources
2026-05-26 06:02:47 +08:00
2569718930@qq.com
e1417f607d
feat: implement LiveTemperatureThresholdChart and add visibility policy unit tests
2026-05-26 05:46:45 +08:00
2569718930@qq.com
8ca9ce4223
feat: add scan terminal dashboard, fallback city mapping, and Nginx deployment configuration
2026-05-26 05:20:36 +08:00
2569718930@qq.com
617d3c910e
支付域名识别更新:Vercel → polyweather.top
...
payment-host.ts 新增 polyweather.top。site-url.ts/wallet.ts/usePaymentFlow/AccountCenter 硬编码域名替换。PRODUCTION_SITE_URL 改为 https://polyweather.top 。
2026-05-26 00:33:02 +08:00
2569718930@qq.com
9545725d7f
清理旧决策卡片、市场总览、跑道面板等已废弃组件
2026-05-25 23:52:44 +08:00
2569718930@qq.com
723c6dafc6
终端布局和搜索框清理,新增网格策略业务测试
2026-05-25 23:44:02 +08:00
2569718930@qq.com
26b6f3ae9b
删除 AI 机场解读 12 个失效测试
2026-05-25 23:14:48 +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
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
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
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
80729274bc
修复业务测试:MarketTable→CityRegionList 组件名同步
2026-05-25 17:07:58 +08:00
2569718930@qq.com
7f8dca2066
拆分 AccountCenter:提取支付与钱包逻辑至 useAccountPayment hook,主组件从 2917 行减至 1280 行
2026-05-25 02:38:20 +08:00
2569718930@qq.com
fd2531341d
更新终端重构后的业务状态测试
2026-05-25 00:23:44 +08:00
2569718930@qq.com
6cbc56ac5a
修复业务测试:AI 预测最高温需等待 AI 就绪,不再回退行数据
2026-05-23 12:45:19 +08:00
2569718930@qq.com
348dfe132a
移除 Polymarket 价格层 UI:删除 MarketDecisionLine 组件及相关数据流
2026-05-23 12:24:49 +08:00
2569718930@qq.com
573393409d
更新业务状态测试适配全跑道展示
2026-05-20 18:25:37 +08:00
2569718930@qq.com
415f03466d
修复 CI: mobileAnnouncement 测试适配公告移除
2026-05-17 21:52:50 +08:00
2569718930@qq.com
9d8c59f741
修复城市决策卡切换时地图白屏和第二城市加载失败
...
- MapCanvas 改为始终挂载,视图切换用 display:none 隐藏而非卸载,
避免 Leaflet 重初始化时容器尺寸为 0 导致白屏
- handleMapCitySelect 在 matchedRow 为空时主动调用 ensureCityDetail
预加载城市详情,不再依赖 hydration 队列异步补拉
2026-05-17 21:20:17 +08:00
2569718930@qq.com
deec8221ea
重构温度曲线图表数据模块,修复 DEB offset 基准
...
- 新建 temperature-chart-paths.ts:抽取 8 个纯函数(buildChartTimeAxis、
buildDebBaselinePath、buildCalibratedPath、buildObservationGrid 等)
- DEB offset 基准改为优先用 hourly 曲线自身 max,forecast.today_high
降级为 fallback,防止不可靠的 today_high 整体抬升/压低曲线
- chart-utils.ts 精简 ~280 行,清除重写的 normalizeTafHm/chartHmToMinutes
- temperatureChartData.test.ts 新增 Moscow/Ankara/正常城市 3 个测试场景
2026-05-17 20:57:52 +08:00
2569718930@qq.com
07f61f8ca9
Bump city detail cache for chart rebuild
2026-05-17 19:48:09 +08:00
2569718930@qq.com
38ac9844c1
Ensure DEB chart path covers full day
2026-05-17 19:34:42 +08:00
2569718930@qq.com
a83200d505
Fix Ankara decision chart model coverage
2026-05-17 19:12:28 +08:00
2569718930@qq.com
8ade6dd7d2
Improve scan decision card hydration
2026-05-17 18:57:02 +08:00
2569718930@qq.com
02fd7d9e49
修复 CI: 适配 MobileCityPicker 测试断言 + 清理 f-string 和无用 import
...
- removedMonitorRunwayTabs.test.ts: 检查 MobileCityPicker 替代旧 scan-mobile-city-list-view
- stableServerRefreshPolicy.test.ts: 同上,MobileCityPicker 替代旧视图标识
- scan_forum_topics.py: 移除无占位符的 f-string 和无用 json import
2026-05-17 18:08:59 +08:00
2569718930@qq.com
2d9aa576dd
feat: implement scan terminal mobile dashboard components and data management logic
2026-05-17 15:32:47 +08:00
2569718930@qq.com
c60baaa1e8
feat: implement utility modules and AI-pinned city dashboard components for temperature forecasting
2026-05-17 14:33:23 +08:00
2569718930@qq.com
341c6d0a93
feat: implement Telegram push utility and add new dashboard components for scan terminal and paywall management
2026-05-17 13:59:40 +08:00
2569718930@qq.com
8e2317592d
feat: implement chart utilities for temperature forecasting, calibration, and observation processing
2026-05-16 22:19:10 +08:00
2569718930@qq.com
5e8548999a
feat: implement ScanTerminalDashboard UI and state management with supporting tests
2026-05-15 15:02:15 +08:00
2569718930@qq.com
747c8aa401
feat: tune scan dashboard and telegram monitor
2026-05-15 14:36:43 +08:00
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
4cc579ccb3
feat: add AMSC runway observations
2026-05-15 01:41:49 +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
17b93803af
修复业务测试:observedHighBreak 断言适配新的行动指引文案
2026-05-10 20:25:05 +08:00
2569718930@qq.com
9635387beb
移除日历视图:功能与决策卡重叠,维护成本高于价值
...
- 删除 CalendarView.tsx、calendar-action-utils.ts 及其测试文件
- 删除 ScanTerminalCalendar.module.css
- ScanTerminalDashboard:移除日历 tab 按钮、日历渲染分支、ContentView 类型中的 calendar
- ScanTerminalLightTheme:清理所有 .scan-calendar-* 规则(~40 行)
- scan-root-styles.ts:移除 ScanTerminalCalendar 导入
同时完善地理排序:
- scan_terminal_filters.py:market_region_from_tz_offset 细化为 7 个区域(东亚/东南亚/中亚/西亚/欧洲非洲/南美/北美)并增加 sort_order
- scan_terminal_city_row.py:传递 trading_region_sort
- dashboard-types.ts:增加 trading_region_sort 字段
- decision-utils.ts:sortRowsByUserTime 按 trading_region_sort 优先排序
Rejected: keep-calendar-view, calendar-actions-overlap-with-decision-cards
Tested: npx tsc --noEmit, python -m ruff check .
2026-05-10 15:48:18 +08:00
2569718930@qq.com
6603515433
This version of Antigravity is no longer supported. Please upgrade to receive the latest features.
2026-04-30 09:59:40 +08:00
2569718930@qq.com
b122e7cbae
Stabilize the decision workspace data boundaries
...
The scan terminal had grown into overlapping CSS, request-state, AI-provider, and city-card data responsibilities. This refactor separates those boundaries without changing product behavior: CSS modules are split by surface, city AI prompt/provider/fallback logic is isolated, and scan terminal request state now has reusable RemoteData adapters plus business-state tests.
Constraint: Preserve existing global scan-terminal class names and API responses during the refactor
Constraint: No new dependencies; keep this as a file-boundary cleanup
Rejected: Introduce React Query now | higher migration risk than the requested lightweight query-client path
Rejected: Rewrite AI stream behavior | progressive/fallback states are product-sensitive and were only adapter-split
Confidence: high
Scope-risk: moderate
Reversibility: clean
Directive: Keep AI stream state changes covered by business snapshots before changing fallback/cache wording
Tested: npm run test:business; npx tsc --noEmit; npm run build; python pytest -q; ruff check; py_compile targeted city AI modules
Not-tested: Live DeepSeek provider network replay and browser visual QA
2026-04-28 14:45:34 +08:00
2569718930@qq.com
12d90c5051
Lock decision edge cases with business state tests
...
The dashboard risk is now mostly contradictory state combinations rather than styling. This extracts calendar action grouping into a pure utility and adds a lightweight TypeScript business-state runner so key decision states can be asserted without adding a test dependency.
Constraint: No new dependencies; use the existing TypeScript package for a local runner.
Rejected: Only rely on Next build/typecheck | it cannot catch product-language regressions such as fallback AI being labeled complete.
Confidence: high
Scope-risk: moderate
Reversibility: clean
Tested: npm run test:business
Tested: npm run build
Not-tested: Browser-rendered mobile fold interaction snapshots.
2026-04-28 13:13:57 +08:00