Skip to content

TradePilot AI v1.0.1 — 数据准确性专项 + 全量健壮性修复

Choose a tag to compare

@MLINK-70 MLINK-70 released this 15 Aug 09:49
· 20 commits to main since this release

🔴 重大数据问题修复(数据准确性专项)

核心结论:UN Comtrade 原始接口的"明细行"不能直接求和。 平台按 customsCode(贸易方式)和 motCode(运输方式)把同一笔贸易拆成多条 + 成对重复行。此前所有"清洗"都在不理解字段语义的情况下进行,导致贸易额严重失真。

问题 根因 修复
德国进口 8525 被算成 55.07 亿(真实 6.88 亿,差 8 倍) 22 行明细直接求和 去重 + 取 customsCode=C00 且 motCode=0 唯一记录为总额;无则报错拒绝(宁缺勿错)
"mot=0 优先"仍错(27.5 亿) 只过滤 mot 仍保留 customsCode 拆分行 双条件同时命中
出口 vs 进口镜像不一致(4 倍差) 两国上报口径真实差异 标记 Suspicious,不覆盖替换(三态质量模型)
500 条截断被当完整结果 截断检测在过滤后 移到过滤前,触顶拒绝
preview/formal 切换旧缓存命中 缓存键无模式维度 缓存键加 mode
SEC 财务单位错误(苹果 0.00 亿) 百万美元当美元 SEC_VAL_SCALE=1e6
A 股序列降序取错年份 返回降序 排序升序
印度编码 699→356 UNCTAD 内部码 改 M49 标准码
索尼年报取不到 20-F + 百万日元 按公司配置 (form, 币种, 倍数)
LLM 趋势缓存数值不失效 键不含数据签名 键加签名 + deepcopy

原则沉淀:宁缺勿错 · 先理解语义再清洗 · Valid/Suspicious/Invalid 三态质量模型。

🐛 其他修复

  • 确定性崩溃:线索 URL 端口越界、模拟客户花括号、LLM 非 dict、Retry-After 无上限、脏缓存 KeyError
  • 防幻觉绕过:URL 归一化空串绕过校验、搜索结果裸拼 prompt
  • Agent 步骤去重、请求模型长度上限、eBay token 缓存、Word DispatchEx
  • SSRF DNS rebinding TOCTOU 关闭(IP 钉扎建连)
  • 速卖通签名修复:timestamp yyyy-MM-dd HH:mm:ss(GMT+8) + 签名大写 hex
  • UN Comtrade 数据源切换开关(设置面板)

✅ 测试

86 项 pytest 全部通过(新增 23 项回归测试)