Across 3 companies and 8 managers, I have yet to receive feedback that was productive in helping me understand what skills or track record is lacking and what is necessary to move up. Managers are (often) bad at providing actionable feedback let alone any feedback which leads to lots of blandness in 1:1s which translates to lots of blandness in mid year and end of year review cycles.
I try and rectify this by finding quantitative data: impact on revenue (very difficult though most of the time), MRs merged, GitHub activity, tickets closed, projects led, initiatives taken, demos presented etc but this only goes so far.
All this leads me to believe that at the end of the day promotions are decided by various levels of managers getting together with a few beers, deciding how many total promotions can take place due to budget, and going through a list of names while deciding based on their gut but of course this can't be admitted as the official process.
It is frustrating that unlike other careers IE finance, law, medicine etc where performance can be directly tied to revenue (investment returns, client income, patient income) we have yet to design a standard for measuring impact for many software engineering roles.