Hi Paul, the answer is somewhat involved.
Event elevation must be populated by the time of results submission, ensuring riders always receive elevation credit for any calendared non-team events.
Route elevation can remain blank indefinitely. There are two entry points for RBAs to populate it: (1) from a self-service RBA tool, or (2) during results submission when using that route, if the RBA chooses to assign elevation to the route at that point.
Newly approved routes will have elevation assigned from the get-go because it's part of the modern route approval process. So only the routes before this climbing feature was introduced might be missing the data, and over time more and more of those will be populated.
For elevation for team events (you didn't ask, but I'm throwing it in for completeness), it's up to each team to submit RideWithGPS files to the organizer in a timely manner. Those routes correspond to what was actually ridden vs what was planned (e.g. a team may have not completed all their bonus distance, or may have had to take a detour due to road conditions).