(I love how the system doesn't crash or anything but creates this btw

)
And the reason why this happens is: Dusknoir has the correct data set as pre evolutions. But the problem is, that its pre evolution (Duskull) doesn't exist in the game. The Pokédex tries to display it anyways and falls back to a Caterpie to prevent a crash when trying to load non-existing Pokémon data. And then it completes the Caterpie evolution line, because it thinks that the pre evolution of Dusknoir is Caterpie.
It's not a bug though because once the pre evolution gets in the game, it will correct itself automatically.