lifeCycleEmitters

Typed emitters for the four simulation lifecycle boundaries.

Lazily initialized — accessing this property for the first time creates the SimulationLifeCycleEmitters instance and attaches the bridge observer. Zero overhead when unused. Attach subscribers before calling simulate; dynamic mid-run subscription is not supported.