I imagine that there might be an in-game explanation for this, but I'd like to point out that old Pokemon gaining different forms isn't anything new. It happened when mega evolution was first introduced when ORAS came out, and Zygarde's 10% and complete forms didn't exist until Sun and Moon, and likewise, some Pokemon have received additional evolutions as time has gone on. Just pointing out that it's silly to point at Zygarde suddenly being able to mega evolve and question why it can do that when this has been happening for 26 years when Onix was suddenly able to evolve into Steelix.