2569718930@qq.com
|
721173aea3
|
Isolate observation collector from web API
|
2026-06-08 13:19:52 +08:00 |
|
2569718930@qq.com
|
2af1cf9cd8
|
feat: add observation collector and source gate
|
2026-06-05 14:38:58 +08:00 |
|
2569718930@qq.com
|
8fc9f3ae1a
|
Add terminal feedback workflow
|
2026-06-01 21:10:37 +08:00 |
|
2569718930@qq.com
|
3e5ff4ea8f
|
Isolate scan prewarm to web service
|
2026-05-31 23:31:32 +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
|
8ca9ce4223
|
feat: add scan terminal dashboard, fallback city mapping, and Nginx deployment configuration
|
2026-05-26 05:20:36 +08:00 |
|
2569718930@qq.com
|
804b720b3c
|
扫描终端优化:增加并发到6、超时60s、启动预热全城缓存
MAX_WORKERS 2→6,BUILD_TIMEOUT 22→60s。新增 start_scan_terminal_prewarm:服务启动时后台跑全城 _analyze(),后续扫描直接命中缓存。app_factory 在路由注册后触发热身。
|
2026-05-25 06:12:17 +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 |
|