A catch block added in 2021 for an error that has not occurred since, swallowing a different one. A catch of Throwable is a decision that every possible…
Eight single-property wrappers over a string, none of which validated anything. A value object with no invariant is a type alias that PHP does not have, and the…
A value object made readonly in 2022, and the requirement in 2026 that would have broken a mutable one. The property that mattered was not thread safety or…
Three hooks reverted, and in every case asymmetric visibility was the whole answer. A get hook that returns a backing property unchanged is asymmetric visibility with extra syntax…
A property hook written by me, against a rule written by me, fourteen months later. The rule from December 2024 was pure, cheap and total, and the first…