i cannot explain how that array got replaced with a 0. but after it wrote it to composer.json i noticed i should also test that composer.json isn't broken. so it was a good thing in the long run.