I've looked through the changesets for the past 2 months and there have been no changes to how permissions for the Edit tab are calculated, except for a change to protection so moderators can edit articles even if the article creator says no one can (to prevent an irremovable lock). Since it sounds like your issue occurs across the whole wiki, it's unlikely this change is related.
It might just be that you need to edit a usergroup again and click save even if you don't make any changes. I don't know why but sometimes this works.
Related, I did notice that the upgrade script for 4.0.2 is supposed to "fix" permissions sets that might have been orphaned in previous versions (and were being ignored). This upgrade script does not erase any existing permissions, but rather re-applies permissions that the database forgot were already there. If you had orphaned permissions that were different from what you and your users have come to expect, you can have the behavior you experience.
You will want to look at the following types of permissions to verify you don't have renegade "No" or "Never" values in effect. The orphan fix affects the following:
- Global Usergroup permissions from VaultWiki 3 for usergroups for which you have not changed permissions since migrating to VaultWiki 4.
- User-level Access Masks that were applied to "All Areas" rather than just one area.
- Custom Moderator Permissions that were applied to "All Areas" rather than just one area.
These are the only changes I'm aware of that relate to permissions for the Edit tab in any way (there were changes to permissions for other tabs to improve security, but they should not affect Edit).
I'm aware of random memory collisions and other issues for sites using VaultWiki 4 with some builds of PHP 7 (experimental version of PHP). If you're using PHP 7, you might want to consider rolling back to PHP 5.6 until we declare full compatibility. Perhaps the memory collisions are affecting permissions.
If your issue persists, you may have to submit another Support Ticket so that we can try to figure out what happened. No one else has reported an issue like this for 4.0.2.