Add a way to pad transactions' size if needed by Simplicity cost metric
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- rust
- Bereich
- blockchain
Rechercherichtung
Das Issue nennt rust-elements, aber keine Datei und keinen Test. Beginne damit, die Einstiegspunkte für Transaktionsgewicht und Serialisierung sowie die bestehende Handhabung der Simplicity-Kosten zu finden; bestimme anschließend die Grundlage für das Padding und die erforderliche Abdeckung. Erledigt ist die Aufgabe, wenn ein standardisierter, getesteter Mechanismus zum Padding von Transaktionen auf das erforderliche Gewicht implementiert ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Simplicity transactions have an additional "cost" associated with the computational resources consumed by verification of the results of executing the contract.
This cost is paid for by ensuring that the transaction has a sufficiently high weight (using conventional weight calculations) to cause the associated fee to be adequate according to the cost formula. Currently, most typical Simplicity programs inherently produce large enough transactions to satisfy this requirement, so there hasn't been a need to artificially increase the size of their transactions in order to get them accepted by Liquid nodes. However, this might not always be the case for more computationally-intensive contracts in the future, e.g. those that use loops or that call expensive jets repeatedly for some reason.
So, we could use a standardized way to pad transactions to make them deliberately larger when this turns out to be required by the cost formula.
@apoelstra suggested that the appropriate place to specify and implement the basis for this is here in rust-elements.
- Vorherrschende Sprache
- Rust
- Sterne
- 57
- Forks
- 40
- Ø Merge
- 11 Std. 58 Min.
- Gemergte PRs (30 T.)
- 1
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus ElementsProject/rust-elements
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 45/100
ElementsProject/rust-elements#290 · 1 Kommentar ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
ElementsProject/rust-elements#277 ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 30/100
ElementsProject/rust-elements#273 · 3 Kommentare ·
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
ElementsProject/rust-elements#268 · 1 Kommentar ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 52/100
ElementsProject/rust-elements#262 · 2 Kommentare · 1 Reaktion ·
Alle Issues in ElementsProject/rust-elements
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
gitbutlerapp/gitbutler#15998 · 1 Kommentar ·
-
bug triage:deciding
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
open-telemetry/otel-arrow#4132 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100