Replace isPaused
state with runtime check with rps
#271
Replies: 5 comments 27 replies
-
I am against this proposal for the same reason why we intially introduced Using a dedicated boolean is a best practice for checking entry points in functions and ensures clarity and security.
In this case, I prioritize a robust and secure pattern over gas optimizations. But if you want to optimize we can, instead of removing |
Beta Was this translation helpful? Give feedback.
-
Agree with Shub's proposal, let's implement it. |
Beta Was this translation helpful? Give feedback.
This comment was marked as off-topic.
This comment was marked as off-topic.
-
I am still in favor of Shub' proposal. @andreivladbrg I responded to your long comment above through this Loom recording. To @smol-ninja:
Indeed. Also called YAGNI.
Correct
It's a matter of logical possibility. It is possible to have a Lockup stream with a zero address sender if the stream creator wishes so (as in, logically; I know that our if check blocks this in practice). But it is NOT possible to have a Flow stream with an That we don't allow This makes me think — why not lift this requirement? Users may want to set up the streams in advance, and fund them later. |
Beta Was this translation helpful? Give feedback.
-
A paused stream is characterized by two states that are analogous to each other:
rps == 0
andisPaused == true
. Thus we can removeisPaused
state from the contract and instead returntrue
ifrps == 0
.Pros
paused
,void
andrestart
rps
andisPaused
Cons
Note
As we're quite ready for audits with flow, we can discuss this for an upcoming version of the protocol, post-launch. However, this change is minor so, if we all agree, it can be included before the audit. I am in favour of including this before audit.
cc @sablier-labs/solidity
Beta Was this translation helpful? Give feedback.
All reactions