Immutable ZkEvm Testnet - Upgradeable Contract initialize not being called

Here is the most recent upgradeToAndCall transaction that I can see on your proxy: https://explorer.testnet.immutable.com/tx/0x6c6ef57cda1b064f5c56485e7cf56fe53aafa78247b48aab2d285acbcbd05cef

This transaction has set 0xF77E39069c9297d52e83295B5fa2d77823c7cceB as the implementation, but you can see that the data parameter in the 'Decoded input data" is 0x. This means that no additional function was called.

From your script, it looks like you are trying to call the initializer again on the new version, after the upgrade. This initializer call should not work, because your proxy is already initialized.

Consider using a reinitializer in your new version if needed. See Difference between initializer, reinitializer(1), and reinitializer(2) modifiers

Also consider using the call option of upgradeProxy so that the reinitializer call is done in the same transaction as the upgrade. See https://docs.openzeppelin.com/upgrades-plugins/1.x/api-hardhat-upgrades#upgrade-proxy