When attempting to call QuestChain__factory.connect using ethers v6, the call fails with the error: "invalid signer or provider" because apparently v5's Provider.isProvider() returns false when called with a v6 Provider.
The solution is likely to upgrade to ethers v6 which was, in fairness, released in February of 2023. ethers v6 is required for other libraries like the Ethereum Attestation Service. Most of the changes are just removing containing namespaces like ethers.utils.<lib> → ethers.<lib> & the same for ethers.providers.*. Also, Web3Provider becomes BrowserProvider. (I know because I just did the v6 → v5 transition to fix Quest Chains in MetaGame, breaking EAS in the process.)