依据 #288 的评估。用户于 2026-09-16 确认先做本工单,再做规格同步,键定义改动(A″)延后。
同一虾皮商品下,两个不同的虾皮规格因 【...】 剥离而塌缩成同一个 target_color 时,明确失败,不再静默按同一个映射采购。
【...】
target_color
sybimport.Parse 剥离 【...】,而括号里经常是真正的规格标识(款号、色号、颜色组合),不是备注。target_color 是采购查映射的键:
sybimport.Parse
mappedColor, mappedSize, source := confirmedMappings(shopee.SpecsJSON, syb.TargetColor, syb.TargetSize)
同键即同映射,Agent 会为不同的虾皮规格点击同一个 PDD 规格值。
线上实测(2026-09-16):
颜色塌缩键 78 个,涉及 61 个商品,190 个原始规格 尺码塌缩键 24 个 颜色含括号明细 2062 条;尺码含括号明细 6106 条 落在塌缩键上的采购任务 3 笔,order_created 0 笔
[必须] 至今 0 次错误采购的原因是每个塌缩键目前只有一条规格真正下过单,不是设计上有保证。最高危的 6 个键(1355 的 白色/黑色 各 6 条、2038 黑色 6 条、1946 6 条、16996 5 条、1298 物理防曬 4 条)全部「尚未采购」,风险已装好,只是未触发。
[必须]
白色
黑色
物理防曬
不改解析契约,不迁移数据。在两处加判定:
CodeMappingRequired
原始规格取自 syb_product.raw_json 的 productSpec,按最后一个逗号拆分为颜色与尺码两段。
syb_product.raw_json
productSpec
stripBrackets
61 个商品的相关明细将无法自动匹配与采购,需人工处理。上述 6 个最高危键全部尚未采购,实际业务损失很小;这是用「明确失败」换「静默买错」。
go build ./...;go test ./app/goauto/purchase/... ./app/goauto/sybimport/... ./app/goauto/shopeeproduct/...。
go build ./...
go test ./app/goauto/purchase/... ./app/goauto/sybimport/... ./app/goauto/shopeeproduct/...
[必须] app/goauto/sybimport 存在 12 个先于本工单的失败用例(#285),前后失败集合必须一致。
app/goauto/sybimport
采购就绪判据变化,需更新对应 Wiki 业务规则页面。
No dependencies set.
The note is not visible to the blocked user.
目标
同一虾皮商品下,两个不同的虾皮规格因
【...】剥离而塌缩成同一个target_color时,明确失败,不再静默按同一个映射采购。背景
sybimport.Parse剥离【...】,而括号里经常是真正的规格标识(款号、色号、颜色组合),不是备注。target_color是采购查映射的键:同键即同映射,Agent 会为不同的虾皮规格点击同一个 PDD 规格值。
线上实测(2026-09-16):
[必须]至今 0 次错误采购的原因是每个塌缩键目前只有一条规格真正下过单,不是设计上有保证。最高危的 6 个键(1355 的白色/黑色各 6 条、2038黑色6 条、1946 6 条、16996 5 条、1298物理防曬4 条)全部「尚未采购」,风险已装好,只是未触发。方案
不改解析契约,不迁移数据。在两处加判定:
target_color写入映射前,若该虾皮商品下该键对应多个不同的原始规格,拒绝写入并返回可读错误,不自动选一个。CodeMappingRequired同类处理。原始规格取自
syb_product.raw_json的productSpec,按最后一个逗号拆分为颜色与尺码两段。非目标
stripBrackets,不改target_color的取值(那是 #288 的 A″,已确认延后)。预期影响
61 个商品的相关明细将无法自动匹配与采购,需人工处理。上述 6 个最高危键全部尚未采购,实际业务损失很小;这是用「明确失败」换「静默买错」。
验收
验证
go build ./...;go test ./app/goauto/purchase/... ./app/goauto/sybimport/... ./app/goauto/shopeeproduct/...。[必须]app/goauto/sybimport存在 12 个先于本工单的失败用例(#285),前后失败集合必须一致。文档影响
采购就绪判据变化,需更新对应 Wiki 业务规则页面。