- Add a common in-process event bus - Emit task lifecycle events from task store and instances - Register CAD listeners to invalidate task state