Hello, @Bruno Costa.
For me, the best approach is to refactor the flow before it becomes too hard to maintain.
When I see the same logic being repeated in multiple places, I try to move it into reusable tasks. Things like schedule validation, variable initialization, customer identification, error handling, and common routing decisions are good candidates. This helps keep the flow cleaner and makes future changes easier, because you update the logic in one place instead of fixing the same rule several times.
I also think naming and descriptions are very important. A task name should make it clear what that task does, and descriptions help the next person understand why that logic exists.
For Common Modules, I like the idea, but I would use them carefully. They are great when the same logic is used across different flows, but they can also increase complexity and affect flow size if overused. So I would not move everything into a common module just because it is reusable. I would use them for stable logic that is really shared across flows.
------------------------------
Arthur Pereira Reinoldes
------------------------------