I now think that what I'm doing is very close to the idea of services in Symfony. I read that people use services to do both input validation and business logic, which is what my "repositories" are doing. That said, thanks for the command/handler pattern. I'll make sure to look into it next!
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.