Как различать отдельные NFT-выходы Avalanche X-Chain внутри группы
Выход NFT в AVM содержит ID группы и полезные данные, а обёртка указывает актив. Ни группа, ни содержимое не определяют отдельный нерасходованный выход.
Идентифицируйте текущую запись по outpoint
Декодируйте NFTTransferOutput, сохраните ID группы и исходные байты, прочитайте условия владения. В примере два отдельных нерасходованных выхода с одинаковым содержимым. Ключ БД только по активу и группе перезапишет один из них.
asset ID group ID outpoint payload bytes
asset A 3 transaction:0 01ff
asset A 3 transaction:1 01ff
Свяжите расход и появление выходов при передаче
После принятия транзакции закройте израсходованный outpoint и добавьте итоговый выход с новым ID транзакции и индексом. Сохраните связь расходования для восстановления истории владельцев. Содержимое представляет произвольные байты: считайте его текстом или URI лишь по правилам конкретного приложения.