Replies: 3 comments 2 replies
-
I could definitely imagine there being demand for begin/end block actions. I think "chain-owned" actions make total sense (where governance is allowed to setup/remove different mechanisms). Allowing for "user-owned" actions seems a little hairier to me. There would probably need to be some way to limit them (otherwise, someone could queue 1M actions at the end of each block) and would need to pay fees (if utilization goes up, these actions shouldn't get a free pass). The fee may naturally limit the cardinality of said actions but we still may want an explicit limit in any case to avoid chain instability. |
Beta Was this translation helpful? Give feedback.
-
When cleaning up the backlog, I found this related issue as well: #336 |
Beta Was this translation helpful? Give feedback.
-
Upon thinking about this further, I think this makes less sense in a Post-Vryx world. Builders could be given some space in each block to add their own transactions (on top of any included chunks) but there is no guarantee that they would have access to the pending state. Additionally, the requirement to specify state keys may make this even more fragile. The path of registering special actions in state to execute at the end of each block (async) may make sense but the usefulness of this is unclear to me. As a result, I'm removing this feature from the "Developer Ready" milestone. |
Beta Was this translation helpful? Give feedback.
-
Autonomous transactions or transactions which are not triggered by an external actor are operations that can be used for various purposes, one of them being acting as a keeper.
Many protocols rely on people running these keepers in order to keep their system healthy, it is the case of decentralized exchanges or lending markets for instance. This operation costs gas and the keeper runners are incentivized to do so by receiving a reward in return.
If protocol designers are allowed to setup efficient autonomous transactions, then this value could stay in the protocol and be redistributed with more control.
@richardpringle brought the subject of efficiency, if we write these as event listeners, this won't scale very well because of all of the compute resources needed.
We may want to explore other ways of triggering autonomous transactions, such as pre/post processing.
This is an open discussion and can be used to talk about ideas around this concept.
Beta Was this translation helpful? Give feedback.
All reactions