-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: transfer tokens directly if claimed after vesting end time #77
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just an idea (no strong opinion): now since there is the no guarantee that all aggregateAmount
is going to be placed Lockup
contract, should we move the .approve
function in the _claim
before creating the stream. The con is obvious, gas increase for the user.
left some comments on src
:
I understand your rationale and agree with you. But since we have to find a balance between gas efficiency and security, imo this is a very unlikely event where campaign creator passes a malicious lockup and also funds the campaign without checking it. It also means he has not used the Sablier UI to do the same. So thats a low probability security concern. At the same time, gas usage per claim will add ~35k which is a lot. So IMO, the gas increase is not justified here. |
good points, agree, it was just an idea, let's keep the |
@andreivladbrg included all your suggestion. Feel free to give it a final review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
left some more comments re tests
if you agree with them, i can push a commit with the changes, as i implemented them while reviewing
df60eaa
to
1c7a3a6
Compare
38b5117
to
49b8b70
Compare
…ime in merkle lockup docs: add notes in claim natspecs feat: add a new Claim event in merkle lockup interface test: fuzz start time in merkle lockup test: use ranged streams as default streams for integration tests perf: use schedule in memory docs: polish natspecs test(fork): assertEq for expected lockup stream test(fork): move hasClaimed assert outside if block test(claim): re order tree branches test: don't use variable names in tree branches chore: set max-line-length rule to 128 test: polish comment Co-authored-by: Andrei Vlad Birgaoanu <andreivladbrg@gmail.com>
49b8b70
to
c60dd77
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Closes #37
Changelog
claim()
's natspecsClaim
event in Merkle Lockup interface as discussed here