Testing Defender V1 and having difficulties understanding wether it's working or not (Goerli)


I wanted to try out the Defender to offer a better UX than running scripts for the beacon proxy pattern, so far, it's a bit inconclusive.

The V1 admin defender mention that the contract needs to be EIP-1967 compliant while the documentation mention that it needs to be EIP-1967 compliant and have the upgradeTo function.

Is there somewhere the explicit checks it does to know wether it's anEIP-1967 compliant contract?
Like does it checks the events ABI, looks for slots? Try execution?

Any explicit information would help, thanks!

Link to the documentation: https://docs.openzeppelin.com/defender/v1/admin#upgrades

Defender checks the value of the storage slots defined in the EIP 1967 specification to determine if a contract is EIP-1967 compliant. If values are defined in those storage slots we determine that the contract is complaint and this is reflected in the UI.

If a contract does not implement the upgradeTo function it is not EIP 1967 compliant and therefore it cannot be upgraded via Defender.