First of all, thank you for your work!
Description
Error in validate_collection_permissions and validate_asset_permissions is very generic (InvalidAuthority) here.
Problem
It makes it hard to debug or display an error to end-user.
For example:
When using external plugin for transfer lifecycle event and it gets rejected - InvalidAuthority 0x9 error will be thrown, which doesn't really makes sense since NFT authority was provided correctly.
Proposal
Use different errors for different checks
First of all, thank you for your work!
Description
Error in
validate_collection_permissionsandvalidate_asset_permissionsis very generic (InvalidAuthority) here.Problem
It makes it hard to debug or display an error to end-user.
For example:
When using external plugin for transfer lifecycle event and it gets rejected -
InvalidAuthority 0x9error will be thrown, which doesn't really makes sense since NFT authority was provided correctly.Proposal
Use different errors for different checks