When the object has identity, controlled mutation, or richer lifecycle behavior.
An `Order` that changes status and enforces rules over time is not just a bag of data. Full classes are a better fit when the model owns behavior and evolving state.
Additional Notes
When should you keep a full class instead of using a record?