literally just spent 3 hours debugging a production issue that boiled down to a rogue semver range in some nested npm dependency. who thought "^" was a good idea?