I've done the reschedule count for a time using tags and used variants of "best before date" to achieve something similar.

The best option that worked for me was using a filter on the age (>365days) without tags: once a week / month you go through the filtered tasks and prune. Also great for occasionally repeating tasks and shared tasks and whether they still apply. If it's still relevant, create a duplicate and delete the old one, to reset the best before date.