(banteg)
notre résident @FP_Crypto m'a rappelé une fonctionnalité intéressante des pools
#uniswapv3 lors des transactions de bas niveau.
lisez attentivement le premier extrait. lorsque vous négociez directement avec un pool, celui-ci vous envoie d'abord le résultat du swap. puis il rappelle votre contrat, et seulement lorsque le contrôle est renvoyé, il vérifie que vous lui avez envoyé les jetons d'entrée.
cette petite astuce de voyage dans le temps permet des choses comme l'effet de levier/désendettement. par exemple, ici, je l'ai utilisé pour dénouer une position de base en échangeant des garanties non encore débloquées contre du weth.
malheureusement, cela ne fonctionne pas dans ce cas, à cause du verrouillage de réentrée. l'appel de remboursement dépose instantanément le weth récupéré dans la position plancher en le rappelant, et nous sommes toujours en rappel lorsque cela se produit.
J'ai codé une version différente avec une fonction de prêt flash de sauvegarde, alors restez à l'écoute !
p.s. Le propulseur (uni v3 sur blast) a supprimé la fonction flash mais a négligé la fonction flash lors du swap.