It was written for a while - the promotion guidelines used to state that the expectation was that all engineers were expected to get to level 5 within "a reasonable amount of time" (generally 2-3 years between promotions), and that managers should identify roadblocks to continued growth for people stuck at level 3/4. I don't think that the "or out" part was ever specified, but that's the implication. Level 5 was continued a terminal level for folks who didn't want to move into management, roughly equivalent to tenure; at that point, you've paid off your value to the company, and can be trusted to pick your own projects.
I heard less and less about this policy over my time in the company - it was stated explicitly my first few perf cycles in 2009/2010, but I don't think I could recall it ever being mentioned after around 2012. And it was always very sporadically enforced; the longest-serving level 4 I knew had been with the company for 11 years.
It's actually a written rule. Look up the job descriptions for SWE2's and 3's and compare them to those for higher levels. It specifically says that you are expected to advance.
I heard less and less about this policy over my time in the company - it was stated explicitly my first few perf cycles in 2009/2010, but I don't think I could recall it ever being mentioned after around 2012. And it was always very sporadically enforced; the longest-serving level 4 I knew had been with the company for 11 years.