feat: sablier fee on Airstreams claim
Changelog
- Closes https://github.com/sablier-labs/v2-core/issues/1032
- Closes https://github.com/sablier-labs/v2-core/issues/1040
-
SablierFeestruct
-
- Adds a new user:
campaignOwnerinstruct Users - Adds
BUSL-1.1license toSablierMerkleFactory
This PR is now ready for review pending conclusion in https://github.com/sablier-labs/v2-core/discussions/1039.
Thanks, @smol-ninja!
We need to implement some additional functionality, unfortunately.
https://github.com/sablier-labs/v2-core/issues/1040
We need to implement some additional functionality, unfortunately
No problem. ~How do we proceed @andreivladbrg? Should I close this PR then or should we review and merge it and then work on top of it?~ https://github.com/sablier-labs/v2-core/issues/1040#issuecomment-2341449108
~I think reviewing and merging would be better as I have already worked on some of the changes that would be required for https://github.com/sablier-labs/v2-core/issues/1040 or the other PR can be merged into feat/claim-fee-airstream.~ https://github.com/sablier-labs/v2-core/issues/1040#issuecomment-2341449108
@andreivladbrg You can review this PR now. Its completed from my end.
Bumping this up @andreivladbrg so that you can add it to your to do task.
I’m sorry, @smol-ninja 😞. I rebased on staging from main, and it caused a lot of conflicts in this PR. I didn’t realize the consequences. I will help you fixing them
git reflog
I’m sorry, @smol-ninja 😞. I rebased on staging from main, and it caused a lot of conflicts in this PR. I didn’t realize the consequences. I will help you fixing them
No problem @andreivladbrg. I am sure it wont take more than 2 mins to fix it. These ain't as scary as they look in Github UI.
Finally. Thanks for the partial review @andreivladbrg. Appreciate it!
Also, why
campaignOwnerand notcampaignAdmin?
No reason just https://github.com/sablier-labs/v2-core/issues/1032#issuecomment-2337907316: campaignAdmin didn't come to my mind when I was proposing this. Paul was fine with anything as long as it is prefixed with campaign and you didn't object as well.
As per Slack conversation between @razgraf and @andreivladbrg, its beneficial for the UI to include sablierFee in the CreateMerkle events. However, to be able to include sablierFee in CreateMerkleLT event, I would either have to merge _deployMerkleLT code into createMerkleLT or return sablierFee in _deployMerkleLT to then access it in the event log.
@andreivladbrg, which one would you go for? I’d like to go with the first approach as _deployMerkleLT is anyways only called in createMerkleLT so why not include the code directly and avoid having returned value. But I do not remember why we decided to have a separate function _deployMerkleLT.
@andreivladbrg, which one would you go for? I’d like to go with the first approach as
_deployMerkleLTis anyways only called increateMerkleLTso why not include the code directly and avoid having returned value. But I do not remember why we decided to have a separate function_deployMerkleLT.
@smol-ninja I have missed this one. Do what you think is best.
The reason I introduced the internal function for deployment was due to a "stack too deep" error. If you can manage to abstract the logic into a single function, feel free to go for it.