To anyone who cares
It should be removed unlink in Capability-based Access Control. Otherwise, I think most people still imitate solidity in their writing. Use msg.sender. open to discuss with core of cadence dev team. thanks.
The key idea of flow is to use “resources”, not like solidity use “ledger”, but if resources are unlinked, it will be very troublesome in the future. If the link permission is stored in the contract, it is meaningless.