来源:用户于 2026-09-05 反馈,本地服务中 SYB 订单 2609044MMAVCFD 已把目标颜色“薑黃色”人工确认映射到 PDD 商品 998477642606 的“黄色”,正式采购仍失败并提示“没有找到可采购的 PDD 颜色或尺码”。用户确认按分析方案建单实施。
2609044MMAVCFD
998477642606
薑黃色 → 黄色
5XL → XXXXXL
XXXXXL
5XL
unresolved
resolveProbedSpecs
保留 #215 强制真机探测安全边界;探测完成后,对每个目标规格角色优先复用仍能映射到当次候选的已确认商品映射,未解决角色再按确定性优先、必要时 AI 的顺序处理。任务最终只能固化当次真机候选中的精确值。
PURCHASE_SPEC_PANEL_EVIDENCE_NOT_MATCHED
spec_source
spec_probe
采购状态机属于高风险范围。本单只实现并自动测试规格决策,不触发 Agent 领取,不执行地址或订单动作。历史映射必须经过当次候选重新验证,严禁直接信任或绕过探测。
后端状态与决策流程变更,不需要 UI 原型;以上架构/状态方案经用户于 2026-09-05 以“建工单,做”确认。
该变更细化 #215 的长期规格决策规则,需要更新 Gitea Wiki 的业务规则及 Agent API 契约,在线回读 revision 后同步本地镜像,并执行一次 sync 与一次 sync --check。
sync
sync --check
实施核对修正:现有 Agent/Server 规格规范化只处理尾价、繁简、空白/全半角/大小写等,不会把 XXXXXL 改写为 5XL。因此 #223 不复用该历史尺码标签;CG85 场景只复用经当次候选验证仍有效的颜色 黄色,尺码由目标 5XL 与当次候选 5XL 确定性匹配。已确认映射指导信息在任务创建时冻结,避免探测期间的商品映射变化影响同一任务。
黄色
提交:d84f6dd(分支 fix/223-probed-confirmed-mapping,已推送)
d84f6dd
fix/223-probed-confirmed-mapping
mappedColor
mappedSize
roleSources
manual_mapping
exact_match
ai_match
specSource
go test ./app/goauto/purchase ./app/goauto/aimatching
go test ./app/goauto/...
go build ./...
python dev_scripts/harness.py check --strict
python dev_scripts/harness.py sync
python dev_scripts/harness.py sync --check
Business-Rules-and-Glossary@21ad1681d12a
Android-Agent-API-Contract@e5a443e16e28
本地运行验证更新:用户授权后已将 d84f6dd 快进合入 D:\OPC\goauto 当前运行分支,并在确认无 running / order_submit_started / spec_probe_pending 采购任务及无 running 采集任务后,仅重启 goauto-admin-api。Supervisor 状态 Running,启动日志显示 JobCore start success;http://127.0.0.1:8010/ 与 Swagger 均返回 HTTP 200。Web 未重启,无数据库迁移,未自动创建或重试采购任务。CG87 保留失败历史,下一步由用户从 CG87 发起重试生成新任务验收。
D:\OPC\goauto
running
order_submit_started
spec_probe_pending
goauto-admin-api
http://127.0.0.1:8010/
No dependencies set.
The note is not visible to the blocked user.
原始需求摘要
来源:用户于 2026-09-05 反馈,本地服务中 SYB 订单
2609044MMAVCFD已把目标颜色“薑黃色”人工确认映射到 PDD 商品998477642606的“黄色”,正式采购仍失败并提示“没有找到可采购的 PDD 颜色或尺码”。用户确认按分析方案建单实施。当前事实与根因
薑黃色 → 黄色(manual)、5XL → XXXXXL(ai_match)。PDD 档案中对应尺码原文为XXXXXL,Android 真机探测按既有规范化输出5XL。unresolved;resolveProbedSpecs只以 SYB 原始目标与当次候选重新执行确定性/AI 匹配,没有把已确认商品映射作为“经当次候选重新验证后可复用”的决策输入。因此颜色无法确定性匹配,Provider 无有效结果时任务失败。目标
保留 #215 强制真机探测安全边界;探测完成后,对每个目标规格角色优先复用仍能映射到当次候选的已确认商品映射,未解决角色再按确定性优先、必要时 AI 的顺序处理。任务最终只能固化当次真机候选中的精确值。
非目标
PURCHASE_SPEC_PANEL_EVIDENCE_NOT_MATCHED另属相邻缺陷)。前置依赖与并行性
实施方案
resolveProbedSpecs只读取该不可变快照,不读取可能已变化的商品映射,也不得跳过当次探测。spec_source保持现有允许值并使用可审计的汇总规则,不新增数据库枚举。验收标准
薑黃色 → 黄色的 confirmed manual 映射在当次颜色候选包含“黄色”时被安全复用。XXXXXL在现有规范化规则下不等于当次候选5XL,不得直接复用;目标5XL应由当次候选确定性匹配并最终固化为5XL。验证
spec_probe与后续正式采购均待用户另行授权/验收。风险与安全边界
采购状态机属于高风险范围。本单只实现并自动测试规格决策,不触发 Agent 领取,不执行地址或订单动作。历史映射必须经过当次候选重新验证,严禁直接信任或绕过探测。
设计证据
后端状态与决策流程变更,不需要 UI 原型;以上架构/状态方案经用户于 2026-09-05 以“建工单,做”确认。
文档影响
该变更细化 #215 的长期规格决策规则,需要更新 Gitea Wiki 的业务规则及 Agent API 契约,在线回读 revision 后同步本地镜像,并执行一次
sync与一次sync --check。任务记录
实施核对修正:现有 Agent/Server 规格规范化只处理尾价、繁简、空白/全半角/大小写等,不会把
XXXXXL改写为5XL。因此 #223 不复用该历史尺码标签;CG85 场景只复用经当次候选验证仍有效的颜色黄色,尺码由目标5XL与当次候选5XL确定性匹配。已确认映射指导信息在任务创建时冻结,避免探测期间的商品映射变化影响同一任务。实施完成,待验收
提交:
d84f6dd(分支fix/223-probed-confirmed-mapping,已推送)最终实现
spec_probe;创建时只把对应目标的 confirmed 商品映射冻结为不可变指导快照,mappedColor/mappedSize仍为空。roleSources分角色记录manual_mapping/exact_match/ai_match,现有任务级specSource枚举不变,无数据库迁移。薑黃色 → 黄色;历史XXXXXL不与当次5XL冒充等价,尺码由目标和当次候选确定性得到5XL;无需调用 AI。验证
go test ./app/goauto/purchase ./app/goauto/aimatching:通过。go test ./app/goauto/...:通过。go build ./...:通过。python dev_scripts/harness.py check --strict:通过。python dev_scripts/harness.py sync:通过。python dev_scripts/harness.py sync --check:通过。Business-Rules-and-Glossary@21ad1681d12a、Android-Agent-API-Contract@e5a443e16e28,均已在线回读并同步镜像。同步同时带入其他核心页面已经在线存在的新 revision,仅更新生成镜像,不属于 #223 产品行为改动。未验证与安全边界
本地运行验证更新:用户授权后已将
d84f6dd快进合入D:\OPC\goauto当前运行分支,并在确认无running/order_submit_started/spec_probe_pending采购任务及无 running 采集任务后,仅重启goauto-admin-api。Supervisor 状态 Running,启动日志显示 JobCore start success;http://127.0.0.1:8010/与 Swagger 均返回 HTTP 200。Web 未重启,无数据库迁移,未自动创建或重试采购任务。CG87 保留失败历史,下一步由用户从 CG87 发起重试生成新任务验收。