This happens when you add a script as a child node (Command+A on Mac, “Plus/Cross Icon” under Scene) instead of instantiating a scene (Shift+Command+A on Mac, “Chain Icon” under Scene).
It produces two scripts instead of the intended singular one, both claiming to be the same class with “class_name”.
Go node by node try to locate which node read from what script and detach the new incorrect script, then attach the the correct, original script. Likely the add child mentioned holds the “fake script”.