This seems to be (yet another) discussion about the 'deserving' (or 'undeserving') poor - and whether it's fair that people get differing benefits, whether they work hard for a long time - or not.
It seems to me that we should contribute what we can - and receive what we need. Some can save for a more comfortable retirement, but, surely, nobody should be poor in their old age - not in a rich country like the UK?
A good example would be my friend, who's only worked for a couple of years in her entire life. She is 'different', has learning disabilities, never diagnosed but I'd guess ADHD and autism. She can't organise herself, is unreliable, easily overwhelmed and shuts down with any perceived stress - so basically is unemployable. It's not her own fault!
She's been supported by 'us' (the taxpayers) along with her children, for decades - so has cost us dear. Now, she looks after her mother, saving us a fortune in social care. Her children work and pay tax - and it's them, the next generation, paying our pensions.