So far I keep client files forever. It’s not that expensive for the storage, and if I ever save the day for a client I think the marketing/referral value of that “save” will be worth way more than the cost of the hard drives I use.
Regarding mistakes, I tell my clients to expect them. I make mistakes, clients make mistakes, cameras have wrong dates that I don’t catch, etc. I just delivered a large client project last night and suggested we meet again in January after they’ve had time to review their archive, see if they have any questions or feedback, etc. If they have a few small corrections or updates I’ll just make those changes on the spot for free. If they want bigger changes I’ll charge my normal hourly rates for a refresh.