4.7 KiB
4.7 KiB
PolyHermes v2.0.2 Release Notes
📋 版本信息
- 版本号: v2.0.2
- 发布日期: 2026-01-29
- 基础版本: v2.0.1
🎯 改动摘要
本次版本主要修复了买入订单金额精度问题,并优化了构建流程和通知机制。
🐛 Bug 修复
1. 修复买入订单金额精度问题
问题描述:
- 市场买入订单创建时出现
invalid amounts错误 - Polymarket API 要求市场买入订单的 makerAmount 最多 2 位小数,takerAmount 最多 4 位小数
- 之前的实现不符合 API 要求,导致订单创建失败
修复内容:
- ✅ 修复市场买入订单 makerAmount 和 takerAmount 的精度限制
- ✅ makerAmount (USDC) 限制为最多 2 位小数(之前为 4 位)
- ✅ takerAmount (shares) 限制为最多 4 位小数(之前为 2 位)
- ✅ 符合 Polymarket API 的要求,解决 'invalid amounts' 错误
影响范围:
OrderSigningService.kt- 订单签名服务
提交: 42472f6
🔧 优化改进
优化构建流程和通知机制
改进内容:
- ✅ 添加 workflow_dispatch 支持手动触发构建
- ✅ Release 事件默认只打包产物(在线升级),不构建 Docker
- ✅ 手动触发可选择构建类型:在线升级或 Docker 升级
- ✅ 优化 Telegram 通知文案,区分构建类型和升级路径
- ✅ 在线升级任务不发送开始通知,只发送完成通知
- ✅ 手动触发时产物上传为 Artifact,Release 事件上传到 Release Assets
影响范围:
.github/workflows/docker-build.yml- GitHub Actions 工作流
提交: e5992b5
⚠️ 潜在问题和注意事项
1. 买入订单金额精度调整可能带来的影响
问题说明: 本次修复调整了买入订单的金额精度限制,可能会带来以下影响:
1.1 makerAmount 精度降低(4 位 → 2 位小数)
影响:
- 订单金额可能被向下舍入:由于 makerAmount (USDC) 从 4 位小数降低到 2 位小数,订单金额可能会被向下舍入
- 实际支付金额可能略低于预期:例如,如果计算出的金额是
0.5985 USDC,现在会被舍入为0.59 USDC,实际支付金额可能比预期少0.0085 USDC - 可能影响固定金额模式的跟单:在固定金额模式下,如果金额被舍入,实际买入的数量可能会略少于预期
建议:
- 在固定金额模式下,建议设置稍大一点的金额,以补偿可能的舍入损失
- 监控订单创建情况,确认金额是否符合预期
- 如果发现金额差异较大,可以适当调整跟单配置
1.2 takerAmount 精度提高(2 位 → 4 位小数)
影响:
- 订单数量精度提高:takerAmount (shares) 从 2 位小数提高到 4 位小数,可以更精确地指定买入数量
- 可能增加订单复杂度:更高的精度可能导致一些边缘情况,需要确保数量计算正确
建议:
- 验证订单数量是否符合预期
- 确认跟单数量计算逻辑是否正确
1.3 订单创建成功率变化
影响:
- 修复前:订单创建可能因为精度问题失败
- 修复后:订单创建成功率应该提高,但金额可能略有变化
建议:
- 升级后监控订单创建成功率
- 对比升级前后的订单金额,确认差异是否在可接受范围内
2. 构建流程变更
影响:
- Release 事件默认只打包产物,不构建 Docker
- 如果需要 Docker 镜像,需要手动触发构建并选择 Docker 升级类型
建议:
- 了解新的构建流程,根据需要选择合适的构建方式
- 如果需要 Docker 镜像,使用 workflow_dispatch 手动触发
📊 文件变更统计
- 修改文件数: 2
- 新增行数: 127
- 删除行数: 27
🔄 升级建议
-
测试买入订单创建:
- 升级后先测试少量买入订单,确认金额和数量是否符合预期
- 特别关注固定金额模式的跟单,确认金额是否被正确舍入
-
监控订单创建成功率:
- 升级后监控订单创建成功率,确认是否解决了
invalid amounts错误 - 对比升级前后的订单金额,确认差异是否在可接受范围内
- 升级后监控订单创建成功率,确认是否解决了
-
验证金额计算:
- 验证 makerAmount 是否被正确限制为 2 位小数
- 验证 takerAmount 是否被正确限制为 4 位小数
-
了解构建流程变更:
- 了解新的构建流程,根据需要选择合适的构建方式
- 如果需要 Docker 镜像,使用 workflow_dispatch 手动触发
📝 完整提交列表
🙏 致谢
感谢所有贡献者和用户的支持与反馈!