I'm trying to validate if this works properly in conjunction with the new_max stuff, since I assume new_max_size could change if we're overriding a size downgrade here. Did you check for that?
(Separately, it looks at a quick scan like we never actually set update_max=true, so maybe it's a moot point and we should just remove that path — or fix the bug if that is one.)