Een gebruiker heeft vandaag een ticket geopend in de Revoke discord. Hun sDAI-saldo wordt niet weergegeven. Dus besloot ik erin te duiken: het blijkt dat sDAI opzettelijk geen Transfer-evenementen genereert bij het minten/verbranden van de token. Dit legt een onnodige druk op de rest van het ecosysteem.
Het sDAI-contract implementeert ERC-4626, een standaard voor single-token vaults. Deze standaard specificeert dat er Deposit/Withdraw-evenementen moeten worden uitgezonden bij het minten/verbranden van de vault-token. Maar het staat ontwikkelaars niet tegen om OOK Transfer-evenementen uit te zenden.
De Spark-documentatie vermeldt dat ze opzettelijk geen Transfer-evenementen uitzenden bij mint/burn om gas te besparen in deze transacties. Ik zou betogen dat de extra integratiebelasting voor de rest van het ecosysteem veel kostbaarder is dan de besparing op gas die dit oplevert.
Vergelijk de ideologische benadering van sDAI met de pragmatische benadering van Yearn. Yearn v3 Vaults zijn ook ERC-4626 compliant, maar geven nog steeds Transfer-evenementen af zodat ze gemakkelijk kunnen worden geïntegreerd in wallets, explorers en andere tools.
Het lijkt erop dat Spark het ermee eens is dat het verwijderen van Transfer-evenementen een fout was, aangezien de nieuwere sUSDS-token WEL Transfer-evenementen genereert bij stortingen/opnames. Met dat in gedachten hoop ik dat toekomstige ERC-4626 kluizen deze meer pragmatische benadering blijven volgen.
Wat betekent dit voor Revoke? Je GOEDKEURINGEN zullen ALTIJD correct worden weergegeven. Maar we kunnen je sDAI *saldo* mogelijk niet weergeven als je het alleen maar hebt gemint. Zodra je andere sDAI-overdrachten hebt gedaan, zal je saldo weer normaal worden weergegeven.
8,71K