e6dcad7c7d
无 is_best 兜底原本排除源、强选最低目标;当源本身最便宜时(全平台 dish-diff 相似替换),会误选更贵目标 → saved 变负,倒扣 get_stats 的 「累计发现可省」(该聚合按 status=success 求和、不带 >0 过滤)。 改为在含源的有价行里取最低价,与老派生函数 _derive「全目标缺菜回落源、 不虚报省」同一语义:源最便宜 → best=源、saved=0、is_source_best=True。 补回归测试:源最便宜场景(旧逻辑 best 误选更贵目标、saved 为负)。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>