From 07205b616698f07c087fcbe9ef4953e6df7d03ba Mon Sep 17 00:00:00 2001 From: Justin Gu <97915@qq.com> Date: Sat, 4 Jul 2026 04:12:46 +0800 Subject: [PATCH] =?UTF-8?q?release:=20v1.17.10=20=E2=80=94=20=E4=B8=80?= =?UTF-8?q?=E9=94=AE=E5=AF=BB=E4=BC=98=E3=80=8C=E6=9F=A5=E7=9C=8B=E3=80=8D?= =?UTF-8?q?=E8=B7=B3=E8=BD=AC=E6=90=BA=E5=B8=A6=E5=AE=8C=E6=95=B4=E8=A1=8C?= =?UTF-8?q?=E6=83=85=E4=B8=8A=E4=B8=8B=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - SymbolPicker code/category/startDate/endDate 改 defineModel 双向同步 - OptimizeView 两个「查看」按钮跳转 URL 附带 symbol/startDate/endDate/category - BacktestView onMounted 回填标的/周期/日期到 SymbolPicker 表单 - 向后兼容:老 URL(只有 strategy/params) 仍正常,缺失字段保持默认 - 前端 vue-tsc / vite build 通过,后端 870 单测全绿(无回归) --- CHANGELOG.md | 17 ++++++++++ pyproject.toml | 2 +- web-ui/src/components/SymbolPicker.vue | 27 +++++++++------- web-ui/src/views/BacktestView.vue | 33 +++++++++++++++++-- web-ui/src/views/OptimizeView.vue | 45 ++++++++++++++++++++------ 5 files changed, 100 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index fd1d3c6..463b546 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,23 @@ 本文件记录 easy-tdx 的版本变更。格式遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/)。 +## [1.17.10] — 2026-07-04 + +**Web UI 一键寻优「查看」按钮跳转携带完整行情上下文** —— `/optimize` 页策略排名表的两个「查看」按钮此前跳转只带 `strategy` + `params`,丢失了股票代码、周期、起止日期,导致跳到回测页后用户得手动重选标的与日期才能复现寻优行情。本次让跳转 URL 额外携带 `symbol/startDate/endDate/category`,回测页 `onMounted` 自动回填到 `SymbolPicker` 表单(股票代码/周期/起止日期全部就位),用户只需点「开始回测」即可完整复现。**向后兼容**:老书签(只有 `strategy/params`)仍正常工作,缺失字段保持默认值。前端 `vue-tsc --noEmit` / `vite build` 通过,后端 870 单测全绿(无回归)。 + +### 新增 + +- **SymbolPicker 表单状态双向同步**(`web-ui/src/components/SymbolPicker.vue`)—— `code/category/startDate/endDate` 从私有 `ref` 升级为 `defineModel`(带默认值),父组件可读(拼 URL)可写(回填表单)。`defineExpose({ loadBars, loading })` 保留不动,向后兼容已有调用。 + +### 变更 + +- **「查看」跳转 URL 携带完整上下文**(`web-ui/src/views/OptimizeView.vue`)—— 抽 `buildBacktestQuery(strategyName, params)` 统一构造 query,`onViewParams`(单策略网格排名表)/`onViewAll`(全局策略排名表)两个按钮跳转时附带 `symbol/startDate/endDate/category`。 +- **回测页回填标的与日期**(`web-ui/src/views/BacktestView.vue`)—— `onMounted` 新增读取 `route.query.symbol/startDate/endDate/category`,各字段独立 `if` 守卫回填到 `SymbolPicker` v-model 镜像 ref。老 URL 缺失字段保持默认值。 + +### 已知约束(非 bug) + +- **URL query `category` 无白名单校验** —— 与既有 `strategy/params` 读取风格一致,非法值由后端 `/bars` 兜底拒绝;前端 `