5 Commits
Author SHA1 Message Date
shy3130 a1301e239a fix(desktop): 修复单实例锁、窗口显示与重复启动
- 使用系统文件锁替代 PID 存活判断,崩溃后由系统释放锁并避免删除重建竞态
- 将早期预检异常统一交给启动错误提示,保证退出时释放已取得的锁
- GUI 就绪后显式显示主窗口,避免继承隐藏启动状态
- 移除安装包中重复的安装后启动条目

补充跨进程单实例锁、模拟 Windows 锁异常、早期启动失败、窗口显示与安装配置测试。
Windows 真机安装与窗口行为未在本机验证。

Signed-off-by: shy3130 <shy3130@qq.com>
2026-10-30 20:43:06 +08:00
shy3130 918c7ade7e refactor(core): 策略与信号全面去内置化, 转为用户自定义定义
- 策略: 引擎只加载 data/strategies/{custom,ai,composite} 与研究模板目录,
  原 25 个内置策略一次性迁移为用户自定义文件(ID 不变, 引用零迁移);
  研究模板移至 app/strategy/research, 打包 spec 同步; 新装环境策略库为空
- 信号: 管线不再硬编码任何信号表达式; 涨跌停判定价成为运行时列
  limit_up_price/limit_down_price(生效价∓0.005 容差), 20 个信号转为
  data/user_data/custom_signals 定义(显式 column 沿用 signal_* 原列名);
  依赖解析/注入顺序/当日路径 prev-join 全部定义驱动; 语义统一为历史路径
  口径(顺带修正当日路径 BOLL 比较符与翘板/炸板空值两处既有偏差)
- 前端: 信号库单列表(全部可编辑), SignalPicker/监控选项/信号标签全走
  定义接口; 回测页新增免责声明(模拟性质/数据源准确性不作保证/不构成
  投资建议)
- 测试: 25 个策略夹具与 20 个信号种子入库 tests/fixtures, 受影响测试
  全部自包含化(不依赖运行目录用户数据); 77 万行 MA 死叉新旧表达式对拍
  逐行一致; 回测实跑 45 笔卖点信号出场验证矩阵链路
- 同批包含工作区既有进度: 策略结果 ext 列同日投影修复(含测试)、数据源插件、fuyao/auth/api_gateway/data_integrity 调整、README 信号库
  描述与 strategy.md 导入路径补充

验证: 后端 2592 passed(空数据目录 CI 模拟 2588 passed, 4 例为模拟环境
伪影复验排除); 前端 vitest 125 passed + tsc 0 错 + vite build 通过
2026-10-10 21:10:44 +08:00
shy3130 597afbb5f4 fix: 图标缓存刷新改用 SHChangeNotify, 不再依赖 ie4uinit(无IE系统刷新不到) 2026-10-06 13:26:37 +08:00
shy3130 11977ce6bf fix: 安装完成自动启动失败(错误码740)改用 shellexec 2026-10-06 12:52:29 +08:00
shy3130 4ba0c9bcc0 修复部分已知Bug 2026-10-06 12:40:16 +08:00