-
Notifications
You must be signed in to change notification settings - Fork 71
Open
Labels
Description
Post-registration lifecycle operations: updating an asset's mutable metadata, transferring ownership between addresses, and marking an asset as retired.
Requirements
update_asset_metadata(env, asset_id, new_description, new_metadata_uri, new_custom_attributes, caller):
- Caller must be asset owner or admin
- Applies provided
Option<T>values (skipsNone) - Validates metadata URI if provided
- Emits
asset_updevent
transfer_asset_ownership(env, asset_id, new_owner, caller):
- Caller must be current owner
- New owner cannot be zero address
- Removes ID from old owner's registry, adds to new owner's registry
- Updates
asset.owner,last_transfer_timestamp,status = Transferred - Emits
asset_txevent
retire_asset(env, asset_id, caller):
- Caller must be owner or admin
- Sets
status = Retired - Emits
asset_retevent
Acceptance Criteria
- Metadata update with all
Noneargs is a no-op (no error) - Ownership transfer correctly updates both registries
- Retired assets cannot be re-transferred (check status in transfer)
Reactions are currently unavailable