Skip to content

Feature/373 nft transfer history#557

Merged
Samuel1-ona merged 2 commits into
Samuel1-ona:mainfrom
dahmeezy:feature/373-nft-transfer-history
Jun 30, 2026
Merged

Feature/373 nft transfer history#557
Samuel1-ona merged 2 commits into
Samuel1-ona:mainfrom
dahmeezy:feature/373-nft-transfer-history

Conversation

@dahmeezy

Copy link
Copy Markdown
Contributor

closes #373

dahmeezy and others added 2 commits June 29, 2026 16:29
Add persistent transfer history for each NFT to enable provenance
tracking. The implementation:

- TransferRecord struct: stores from (Option<Address>, None for mint),
  to (Address), and timestamp (u64)
- MAX_TRANSFER_HISTORY = 20 bounded storage per NFT via Vec trimming
- Storage::save_transfer_record / Storage::get_transfer_history
  in storage.rs using THST key prefix
- Mint recorded as first transfer (from = None) in
  mint_reward_nft_impl
- Each transfer_nft call appends a record with from = Some(previous_owner)
- get_nft_transfer_history(nft_id) public query returning Vec<TransferRecord>

Closes Samuel1-ona#373
@Samuel1-ona Samuel1-ona merged commit 643b791 into Samuel1-ona:main Jun 30, 2026
1 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add NFT transfer history tracking

2 participants