#2238, #2232 and #2233 fail because the contract target is not specified correctly. In the verify UI we use a method based on the ContractName property, we should align it with the one in server.
E.g. The name of the contract contains spaces in the Etherscan API result, and this is simply the wrong contract name
{...
"ContractName": "yETH weighted stableswap pool",
...}
I'm proposing to move the Etherscan response parsing functionality from server to lib-sourcify and then to use the same code in server and verification UI