@shlee I am over-engineering a project to learn rust. The handlers are callbacks that implement business logic, the output of which is an option event* and some kind of response structure. The event (if present) gets passed to things that persist it and update various projections.
Is this a good idea? No.
*there are technicalities but you do not need to care.