Validator lifecycle

I’d like to confirm my understanding of the validator lifecycle, specifically from the point that a user first deposits some ETH to the point that they withdraw it all or are expelled (so it lumps all of the real work of the validator in to a single “Active” state, and actions such as slashing are not shown explicitly). Could anyone comment on the below diagram to let me know if it is accurate, or if not where it is not? Thanks.

Transitions in black are user-initiated, transitions in grey are system-initiated.