- docs/USAGE.md:
· 因子层一行改为「代码注册表投影 + 参数化实例,参数写在名字里以冻结口径」;
· 新增 `GET/POST/PATCH /api/factors`、`GET /api/factors/templates` 与
`/api/condition-fields`、`/fields` 的说明;
· 新增「参数化因子(2026-10)」块:受控范围、键必须写全参数(缺项就靠可改的
默认值兜底 = 追溯改义,所以拒绝)、口径文案按代码收敛、停用 ≠ 删除、
参数化因子也能当过滤条件;
· 自检清单一并更新(pytest 500 条;verify_strategy_workspace 145 项 skip-job;
verify_ui_alignment 8 页 160 项;新增 verify_unit_conversion、verify_factor_params)。
- scripts/:新增 verify_unit_conversion.py(单位只能在给定范围里选 + 界面单位⇄
基准单位换算)、verify_factor_params.py(参数暴露/界面新建/越界拒绝/停用语义,
跑完自动清掉临时因子);verify_strategy_workspace.py 加 [5.7b] 因子参数化一节,
临时因子的清理挪进 finally(断言中途失败也不给真人库留垃圾)。
- .gitignore:docs/screenshots/ 是临时验证证据,不入库(文件留在磁盘)。
scripts
数据同步 / 运维 / 自检脚本。
自检脚本(改完对应部分就跑一遍)
| 脚本 | 检查什么 | 用法 |
|---|---|---|
verify_strategy_workspace.py |
策略库 / 回测 / 归档链路的端到端契约(含按 kind 逐类验证归档页) | python3 scripts/verify_strategy_workspace.py(--skip-job 跳过真实回测) |
verify_backtest_page_contract.py |
回测页与后端字段契约(净值点数、个股曲线数、收益口径) | python3 scripts/verify_backtest_page_contract.py |
verify_ui_alignment.py |
UI 对齐与控件一致性:同排控件等高、尺寸归一、点击目标、标签与无障碍名、圆角/字号一致、无横向溢出、提示不裁切 | python3 scripts/verify_ui_alignment.py(--dump 打印几何明细,--width 375 只测小屏) |
qlib_verify.py |
pyqlib 安装与数据落盘基线 | cd backend && uv run python ../scripts/qlib_verify.py |
verify_ui_alignment.py 用系统 Chrome + 原生 CDP(仅标准库实现,不依赖 playwright),
独占随机端口与临时 profile,不会干扰你正在用的浏览器。
数据 / 运维
| 脚本 | 用途 |
|---|---|
run_dividend_case.py |
复现高股息案例(全市场股息率 TopN、每 m 月择股) |
migrate_sqlite_to_mysql.py |
历史 SQLite 数据迁移到本机 MariaDB |
grant_local_mysql_user.sql / mysql_recover_and_grants.sh |
本机 MariaDB 账号与权限 |
dev.sh |
一键起后端 + 前端(开发用) |