ElementsProject / ElementsProject/elements
Inconsistency of "fee at end" rule
- Langage dominant
- C++
- Étoiles
- 1.2k
- Forks
- 416
- Merge moyen
- 1 j 23 h
- PR mergées (30 j)
- 15
Description
Some of our RPCs enforce a rule that the fee output must be last. I'm not clear on where this requirement comes from, or whether it needs to be enforced.
There is at least one case in blinding (blinded inputs / no blinded outputs) where we have to add a zero-value OP_RETURN output in order to balance the blinding factors. It looks like we add this at the end, which messes up the 'fee output must be last' logic.
If the fee output indeed must be last, I would like to add some checks to ensure we are consistent about this everywhere, rather than in an ad-hoc way as we do now. Then we can move the "bonus output" to be before the fee for consistency.
If not, I would like to revisit the "fee last" rule.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Trace les RPCs qui imposent l’ordre des fee-outputs et le cas de blinding avec des inputs aveuglés et aucun output aveuglé. Établis d’abord si la fee doit être la dernière ; c’est terminé lorsque la règle repose sur une base claire et que son application ainsi que l’ordre des bonus-outputs sont cohérents partout où cela s’applique.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- cpp
- Domaine
- blockchain
- Type d'issue
- Refactorisation
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 25/100