执行 #42 时发现:已验收的采购规则服务端契约只能保存 actions[].type,但 #42 已确认的验收要求是按钮同义词、等待时间和滑动次数可以只改规则、不重新发布 APK。当前严格 JSON 校验会拒绝这些参数,Android 因而无法从合法的任务规则快照取得它们。
actions[].type
提出时间:2026-08-20。来源:#42 实施前契约核对。
server
server/app/goauto/purchasecontract/contract.go
Action
Type string
在既有 pddPurchase schema v1 中补齐受类型约束且有边界的动作参数,不引入任意脚本:
pddPurchase
type
最终字段名、取值边界和各 action 参数矩阵在本单实施前写入 docs/08-agent-api-contract.md 对应 Wiki 页面并确认;Android #42 只消费该已确认契约。
docs/08-agent-api-contract.md
docs/
规则参数过宽会变成远程脚本执行能力;参数过窄则仍会迫使 APK 随页面文案变化发布。本单只允许可审计、可限界的结构化能力,并保持危险动作黑名单。
docs/09-delivery-issues.md
用户于 2026-08-20 回复“通过验收 #53”。核对后确认本单尚无实现提交、测试证据或 API/Wiki 文档更新,当前仓库最新提交仍为 #34,因此不能按完成状态关闭。将本次回复记录为对本单建议方案与验收标准的确认;工单保持打开,下一步需执行 #53,完成实现和验证后再等待功能验收。
最终方案:
textAliases
waitAfterMs
openProduct
openSpecPanel
selectSpec
probeSpecs
swipeAfter
验证:
go test ./...
server/
python dev_scripts/harness.py check --strict
python dev_scripts/harness.py sync --check
Android-Agent-API-Contract
8b81c816989f9063a6927939a3391c103ddc08ad
Delivery-Issues
f1f993a6ed4aa4dc53e1ad7943ac60bca6db790e
提交:afeb2723ea0acfb03f2ab31b7b12f491602f4a9b(fix(#53): parameterize purchase rule actions)。
afeb2723ea0acfb03f2ab31b7b12f491602f4a9b
fix(#53): parameterize purchase rule actions
任务归档:https://git.ilapage.cn/OPC/goauto/wiki/Task-53-%E8%A1%A5%E9%BD%90%E9%87%87%E8%B4%AD%E8%A7%84%E5%88%99%E5%8F%82%E6%95%B0%E5%8C%96%E5%8A%A8%E4%BD%9C%E5%A5%91%E7%BA%A6.- 归档 revision:778012fcf4d14ba0888dfe75c94dd5bdfd666fc4。
778012fcf4d14ba0888dfe75c94dd5bdfd666fc4
未验证范围:本单没有修改 Android,因此未构建 APK、未做真机/PDD 操作;Android 消费该契约由 #42 实现和验收。工单保持打开,等待用户验收。
补充:提交 afeb2723ea0acfb03f2ab31b7b12f491602f4a9b 已推送到 origin/main,远端推送前检查为纯快进。
origin/main
用户于 2026-08-20 明确验收通过。任务归档已更新并在线回读,revision 05a5fd3cde4a58d774a3eef9bc3d7c1034238893;核心 Delivery Issues 镜像提交 997f4e7463559d48269d4c4914422f9341800098 已推送。关闭本单,#42 参数契约阻塞解除。
05a5fd3cde4a58d774a3eef9bc3d7c1034238893
997f4e7463559d48269d4c4914422f9341800098
No dependencies set.
The note is not visible to the blocked user.
原始需求摘要
执行 #42 时发现:已验收的采购规则服务端契约只能保存
actions[].type,但 #42 已确认的验收要求是按钮同义词、等待时间和滑动次数可以只改规则、不重新发布 APK。当前严格 JSON 校验会拒绝这些参数,Android 因而无法从合法的任务规则快照取得它们。提出时间:2026-08-20。来源:#42 实施前契约核对。
类型与范围
server、共享 API 文档当前事实与复现证据
server/app/goauto/purchasecontract/contract.go中Action只有Type string。建议方案(实施前需确认)
在既有
pddPurchaseschema v1 中补齐受类型约束且有边界的动作参数,不引入任意脚本:type的规则兼容。最终字段名、取值边界和各 action 参数矩阵在本单实施前写入
docs/08-agent-api-contract.md对应 Wiki 页面并确认;Android #42 只消费该已确认契约。验收标准
actions[].type的采购规则仍可读取并按明确默认值解释。docs/镜像。风险
规则参数过宽会变成远程脚本执行能力;参数过窄则仍会迫使 APK 随页面文案变化发布。本单只允许可审计、可限界的结构化能力,并保持危险动作黑名单。
文档影响
docs/08-agent-api-contract.md、docs/09-delivery-issues.md用户于 2026-08-20 回复“通过验收 #53”。核对后确认本单尚无实现提交、测试证据或 API/Wiki 文档更新,当前仓库最新提交仍为 #34,因此不能按完成状态关闭。将本次回复记录为对本单建议方案与验收标准的确认;工单保持打开,下一步需执行 #53,完成实现和验证后再等待功能验收。
实施完成,等待验收
最终方案:
textAliases、waitAfterMs;仅openProduct/openSpecPanel/selectSpec/probeSpecs允许有限swipeAfter。验证:
go test ./...(server/):通过。python dev_scripts/harness.py check --strict:通过。python dev_scripts/harness.py sync --check:通过。Android-Agent-API-Contractrevision:8b81c816989f9063a6927939a3391c103ddc08ad。Delivery-Issuesrevision:f1f993a6ed4aa4dc53e1ad7943ac60bca6db790e。提交:
afeb2723ea0acfb03f2ab31b7b12f491602f4a9b(fix(#53): parameterize purchase rule actions)。任务归档:https://git.ilapage.cn/OPC/goauto/wiki/Task-53-%E8%A1%A5%E9%BD%90%E9%87%87%E8%B4%AD%E8%A7%84%E5%88%99%E5%8F%82%E6%95%B0%E5%8C%96%E5%8A%A8%E4%BD%9C%E5%A5%91%E7%BA%A6.-
归档 revision:
778012fcf4d14ba0888dfe75c94dd5bdfd666fc4。未验证范围:本单没有修改 Android,因此未构建 APK、未做真机/PDD 操作;Android 消费该契约由 #42 实现和验收。工单保持打开,等待用户验收。
补充:提交
afeb2723ea0acfb03f2ab31b7b12f491602f4a9b已推送到origin/main,远端推送前检查为纯快进。用户于 2026-08-20 明确验收通过。任务归档已更新并在线回读,revision
05a5fd3cde4a58d774a3eef9bc3d7c1034238893;核心 Delivery Issues 镜像提交997f4e7463559d48269d4c4914422f9341800098已推送。关闭本单,#42 参数契约阻塞解除。