用户 2026-09-18:「agent回填还是失败。确定可以做吗不可以做就换成电脑浏览器登录pdd来获取」。
Agent 回填结果:已检查 0 · 成功 0 · 已回填 0 · 冲突/失败 0,「返回后未识别全部订单列表,未完整扫描」。
OrderBackfillWindow.observe() 的 checked++ 无条件执行,checked == 0 证明一张卡片都没被打开过,失败发生在列表阶段,与 #311/#312 的详情页读取无关。
OrderBackfillWindow.observe()
checked++
checked == 0
现场抓到对应的中间帧:订单列表第一张卡片整棵子树塌成零高度——商品图 [33,258][93,258]、店铺名 [114,258][399,258]、商品标题 [291,258][876,258],而第二、三张卡片布局正常。WebView 尚未完成重排。
[33,258][93,258]
[114,258][399,258]
[291,258][876,258]
扫描循环在 scroll() 与 back() 之后都用 read() 立即取一帧,check(listReady(page)) 单帧不合格即抛错终止。两类中间帧都会命中:标签栏尚未渲染的空列表帧;back() 后仍含「订单编号」的详情页残帧(detail() 为真使 allTab() 返回 null)。
scroll()
back()
read()
check(listReady(page))
detail()
allTab()
awaitOrders() 本来就是为等待稳定写的,但只在启动阶段用过。
awaitOrders()
page = read()
page = awaitOrders()
判据与安全边界不变,只是把「单帧不合格即终止」改为「重取到稳定帧」。
中间帧持续 8 次仍不稳定时报「等待订单列表加载超时」,比原先的错误信息更准确,不会静默少读。回退即还原两处调用与签名。
无长期文档影响:未改入口、配置、接口和状态机。
提交 9ce17a2(deploy-main)。
9ce17a2
transient frames after scroll and back never abort the scan
真机回填能否完整跑完并读到订单编号与下单时间——待人工触发一次回填。
状态:待验收。
No dependencies set.
The note is not visible to the blocked user.
原始需求
用户 2026-09-18:「agent回填还是失败。确定可以做吗不可以做就换成电脑浏览器登录pdd来获取」。
事实(真机 192.168.0.173:38881,0.9.59,2026-09-18)
Agent 回填结果:已检查 0 · 成功 0 · 已回填 0 · 冲突/失败 0,「返回后未识别全部订单列表,未完整扫描」。
OrderBackfillWindow.observe()的checked++无条件执行,checked == 0证明一张卡片都没被打开过,失败发生在列表阶段,与 #311/#312 的详情页读取无关。现场抓到对应的中间帧:订单列表第一张卡片整棵子树塌成零高度——商品图
[33,258][93,258]、店铺名[114,258][399,258]、商品标题[291,258][876,258],而第二、三张卡片布局正常。WebView 尚未完成重排。扫描循环在
scroll()与back()之后都用read()立即取一帧,check(listReady(page))单帧不合格即抛错终止。两类中间帧都会命中:标签栏尚未渲染的空列表帧;back()后仍含「订单编号」的详情页残帧(detail()为真使allTab()返回 null)。awaitOrders()本来就是为等待稳定写的,但只在启动阶段用过。方案
page = read()改为page = awaitOrders():要求连续两帧签名一致,最多 8 次,仍不稳定才报超时。awaitOrders()的稳定签名补入可见非零高度节点数。标签栏坐标在重排期间不变,只看它会立刻「稳定」并返回一个卡片尚未布局完成的帧。判据与安全边界不变,只是把「单帧不合格即终止」改为「重取到稳定帧」。
验收
back()后先给一帧详情页残帧、一帧标签栏未渲染的空列表,扫描仍完成并读出订单。风险与回退
中间帧持续 8 次仍不稳定时报「等待订单列表加载超时」,比原先的错误信息更准确,不会静默少读。回退即还原两处调用与签名。
文档影响
无长期文档影响:未改入口、配置、接口和状态机。
实施
提交
9ce17a2(deploy-main)。scroll()与back()之后的两处read()改为awaitOrders()。awaitOrders()稳定签名补入可见非零高度节点数。验证
back()后的read(),新增用例transient frames after scroll and back never abort the scan变红。未验证
真机回填能否完整跑完并读到订单编号与下单时间——待人工触发一次回填。
状态:待验收。