NDPU algorithm is not known.
Pre Covid, I used to buy lots of upgrades on AF (probably > 50% of long hauls) and always got interesting deals.
I haven’t bought an upgrade since 2020 or so, yet I have been in and out of NDPU purgatory regularly… so it’s definitely more complex than just « N days after the last OLCI upgrade ».
Flagging seems to depend on status, how often you buy J tickets, but also the phase of the moon and some other random factors we don’t know about.