Best practices for modeling long-running business processes with Temporal?

Hi everyone,

I’m working on migrating some long-running business processes to Temporal and would love to hear your experiences and best practices.

Specifically, I’m dealing with workflows that:

- Run for days or weeks (customer onboarding, approval chains)

- Need to handle human tasks and wait for external events

- Require visibility into current state for business stakeholders

How do you typically model these? Do you:

- Use signals for external events or prefer polling activities?

- Create child workflows for sub-processes or keep everything in one workflow?

- Handle versioning when business rules change mid-flight?

Any patterns or lessons learned would be greatly appreciated!

Thanks in advance.