Skip to content

Commit 405f1a7

Browse files
committed
Add Nested transactions to motivation
1 parent cd2b8d3 commit 405f1a7

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

CIP-0172/README.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,18 @@ This restriction creates a specific inefficiency: if a transaction produces an
2727
output containing a script or datum that is also required to validate that same
2828
transaction, the transaction cannot utilize the copy present in the output.
2929
Instead, the transaction must provide a redundant copy of the same script or
30-
data (e.g., in the transaction witnesses).
31-
32-
This forced redundancy increases transaction size, and thus transaction fees,
33-
directly inflating the costs incurred by users.
30+
data (e.g., in the transaction witnesses). This forced redundancy increases
31+
transaction size, and thus transaction fees, directly inflating the costs
32+
incurred by users.
33+
34+
In combination with the upcoming feature of Nested transactions, in the
35+
Dijkstra era, the current restriction imposes a strict constraint in how
36+
scripts and/or data can be shared within a batch. Specifically, without this
37+
proposal, scripts and/or data produced in transaction outputs are only
38+
accessible to subsequent sub-transactions (via reference inputs). This forces
39+
transaction builders to artificially order transactions or to provide redundant
40+
copies of the same script or data (e.g., if two sub-transactions mutually
41+
depend on each other's script and/or data).
3442

3543
The key idea of this CIP is to remove this restriction, allowing transactions
3644
to reference their own outputs for validation purposes.

0 commit comments

Comments
 (0)