Skip to content

SimTradeDesk v0.3.0

Choose a tag to compare

@kay-ou kay-ou released this 11 Mar 22:09
· 6 commits to main since this release

✨ 新增功能

  • 回测设置:T+1 结算和沙箱模式可在用户面板中开关
  • 服务器就绪同步:渲染进程通过 IPC Promise 等待服务器就绪后再发起 API 请求,消除时序竞争

🐛 修复

  • macOS 启动无界面:窗口创建移至服务器启动之前,避免被服务器超时阻塞 30 秒
  • macOS Gatekeeper 拦截:对未签名的服务器二进制执行 xattr -cr 清除 quarantine 属性
  • WSL/Windows 端口冲突:取消 dev 模式硬编码端口 8765,改用 findFreePort() 随机分配,避免 WSL2 localhost 穿透导致 API key 不匹配(401)
  • PTY 目录不存在:cwd 检查 existsSync 后回退到 homedir(),修复 Windows error 267
  • 旧项目路径残留:dev 模式始终从 __PROJECT_ROOT__ 计算 data/strategies 路径,不再读取旧 config 缓存
  • 暗黑模式登录页:右侧面板使用 token.colorBgContainer 适配主题,GitHub 按钮添加可见边框
  • 语言/字体布局:语言选择器固定 100px 宽度,字体大小改为 flex 自适应,英文标签不再换行

🔒 安全

  • node-pty 动态加载:改为 try/require 容错加载,原生模块失败时禁用终端而非崩溃整个进程
  • asarUnpack:显式配置 node-pty 排除 ASAR 打包,确保原生 .node 文件在生产环境正确加载

🔧 重构

  • 移除 startServer 中已失效的端口复用逻辑
  • 终端右键粘贴事件监听器正确清理
  • oauthLogin 提取为模块级函数,消除 LoginScreen 和 AuthModal 中的重复
  • 数据下载 WebSocket 消息添加 JSON 解析容错
  • TradeDetailTable 使用复合业务键替代索引作为 rowKey