Commit

5513b61

Swapping untyped associative arrays for readonly DTOs with typed properties on our internal service layer caught three subtle type coercion bugs on the very first day. The upfront typing effort paid for itself almost immediately.

commit 5513b61