Files
sanguo_vnpy_v2/docs/vps-deploy-pending.md
T
claude_dev 67d1c1ef2f
CI/CD / test (push) Successful in 11s
CI/CD / nas-deploy (push) Successful in 24s
CI/CD / nas-verify (push) Failing after 4s
ci(vps-gate): commit必打[vps]/[nas]标签+vps-deployed tag+待推issue [nas]
- ci-cd: enforce-label(本次push无标签→fail,merge豁免) + check-vps-needed(nas-verify绿后对比vps-deployed tag,有[vps]未部署→开issue)
- vps-deploy: 成功打vps-deployed tag + 关issue(gap清空)
- scripts/ci/vps_pending_check.py: issue开/关/更新(CI复用)
- docs: vps-impact-map触及面表 + vps-deploy-pending判定记录
- CLAUDE.md: 部署流程段补标签约定
2026-08-02 23:25:40 +08:00

77 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# VPS 推送判定待办(分布式判定 + 中心汇总)
> **机制**:各业务 session 认领自己模块的 commit,判定 `[vps]`/`[nas]`/`存疑` + 理由,回传给基建。基建汇总后**统一推一次 VPS**(清技术债 + 建立 `vps-deployed` tag 基线);判定与基建初判不一致的 case by case 讨论。
>
> **判定标准**(详见 `docs/vps-impact-map.md`):维度是「VPS 运行时是否触发这个 bug」,**不是**「文件改了没」。
> - VPS 触及(→`[vps]`):`sanguo_data` / `sanguo_backtest` / `sanguo_portfolio.runner_backtest` / provider / `sanguo_common` / `scripts/data_platform`
> - VPS 不触及(→`[nas]`):`sanguo_orchestrator`(仅web启) / `sanguo_api`(uvicorn) / `sanguo_web`(前端) / docker / .gitea
>
> **关键事实(已核查)**VPS 回测入口 `sanguo_portfolio/runner_backtest.py` 直接调 `run_backtest()`**不走 ProcessPool/orchestrator**VPS 无常驻 web。所以 orchestrator/pool/api.uvicorn/前端 = VPS 不触及。
---
## 策略 session 认领(sanguo_backtest + sanguo_portfolio
| commit | message | 基建初判 | session判定 | 理由 |
|--------|---------|---------|------------|------|
| b66a6c5 | load_data 直查 dbbardata 绕 peewee(治CTA死算) | [vps] | | |
| 2ff8eca | rolling alpha/beta 向量化(治分钟级卡死) | [vps] | | |
| b2c41c7 | CTA metrics benchmark 缺失降级 | [vps] | | |
| 9588a77 | 回测可观测性 L1+L2+L3 | [vps] | | |
| 7a14d7d | strategy 字段全链透传(→runner_backtest) | [vps] | | |
| c263aa1 | cta_engine load_data logging | [nas](纯log) | | |
| 3d934f5 | cta_engine 阶段 logging | [nas](纯log) | | |
| 6d23f7b | worker _TIMEOUT 3600→10800 | [nas](orchestrator worker) | | |
| e22c8ee | max_pool 透传(model+handler+前端) | [nas](pool调度) | | |
> ⚠️ 重点确认:`6d23f7b`/`e22c8ee` 涉及 orchestrator/pool 调度,VPS 回测若不走 ProcessPool 则 `[nas]`;若 VPS 也复用 worker/pool 逻辑则 `[vps]`。你最清楚 runner_backtest 是否触及。
## 前端 session 认领(sanguo_web
| commit | message | 基建初判 | session判定 | 理由 |
|--------|---------|---------|------------|------|
| 4c5270c | EquityCurve 去 v-if + watch flush:post | [nas] | | |
| c049e0e | MetricCards fmt 兜底字符串值 | [nas] | | |
| 857d43c | CTA结果页补净值曲线 | [nas] | | |
> 前端 VPS 不 serve(无常驻web),应全 `[nas]`,确认即可。
## 后端 session 认领(sanguo_api
| commit | message | 基建初判 | session判定 | 理由 |
|--------|---------|---------|------------|------|
| a17f291 | /health 存活探针端点 | [nas](VPS不跑web) | | |
> 确认 /health 改动是否只触及 uvicorn web 部分,还是有非 web 代码复用。
## 数据 session 认领(sanguo_data / provider
近期无 sanguo_data 业务 commit,本轮跳过。
---
## 已判(基建自判,业务无需复核)
| commit | 判定 | 说明 |
|--------|------|------|
| 2cb2ab0 | [nas] | config vnpy_dbVPS 用 SANGUO_DB_PATH env 覆盖 |
| 1989a54 | [vps] | requirements-lockVPS pip 装包参考(弱) |
| 6d786fb | [nas] | spawn PYTHONPATH+entrypointVPS 不跑 ProcessPool |
| c210197/0f6cdbe/5c5bd9d | [nas] | entrypoint/DockerfileNAS 专属 |
| ca0ec01 | [nas] | nas-verify /health gate.gitea 不推 VPS |
| f9b7c10/7bed73a/e080885/0332aef/53daf9b | [nas] | docker/docs 系列 |
---
## 最终汇总(2026-08-02,三 session 判定 + 已推 VPS
**[vps] 已推 VPS**promote --target vps 推 b66a6c5verify E2E DONE`vps-deployed` tag→b66a6c5):
- `b66a6c5`/`2ff8eca`/`b2c41c7`sanguo_backtest,三 session 全确认)
- `6b3d869`/`3b3e429`(数据 session 自行 scp,已到位)
**[nas] 不推**(全员确认):`9588a77`/`7a14d7d`**基建误判纠正**`runner.py``runner_backtest.py`,只改 web/orch/前端,VPS runner_backtest 未触及)/ `6d23f7b`/`e22c8ee`VPS 不走 ProcessPoolmax_pool 是选股池)/ `c263aa1`/`3d934f5`(纯 log/ 前端 3 条 / `a17f291` / `2cb2ab0`
**DB 备注**`SANGUO_DB_PATH` env 空,`vt_setting.json` 兜底指对 VPS 库 → 不阻塞。
**机制交接**:后续 commit 走 `[vps]`/`[nas]` 标签,CI enforce-label 强制 + check-vps-needed 对比 `vps-deployed` tag。详见 issue #6