Diana Carvalho
8fd3deba70
Merge branch 'refs/heads/main' into encoding/dc/ENG-4081-split-swap-strategy
...
# Conflicts:
# src/encoding/evm/router_encoder.rs
# src/encoding/evm/strategy_encoder/encoder.rs
# src/encoding/evm/strategy_encoder/selector.rs
# src/encoding/strategy_encoder.rs
Took 2 minutes
2025-01-30 16:08:08 +00:00
semantic-release-bot
7fee0fd5e2
chore(release): 0.24.0 [skip ci]
...
## [0.24.0](https://github.com/propeller-heads/tycho-execution/compare/0.23.0...0.24.0 ) (2025-01-30)
### Features
* rename batchSetExecutor to setExecutors ([c653062 ](c653062027 ))
* replace setExecutor with batchSetExecutor ([ea504fa ](ea504faca1 ))
### Bug Fixes
* rm redundant test ([24e95b1 ](24e95b1206 ))
2025-01-30 15:57:45 +00:00
Harsh Vardhan Roy
355405e138
Merge pull request #37 from propeller-heads/router/hr/ENG-4194-Batch-Set-Executor
...
feat: replace setExecutor with batchSetExecutor
2025-01-30 21:25:26 +05:30
Harsh Vardhan Roy
0ea7ca97ee
Merge branch 'main' into router/hr/ENG-4194-Batch-Set-Executor
2025-01-30 21:23:37 +05:30
semantic-release-bot
14849b2e29
chore(release): 0.23.0 [skip ci]
...
## [0.23.0](https://github.com/propeller-heads/tycho-execution/compare/0.22.0...0.23.0 ) (2025-01-30)
### Features
* add executor encoder test ([ad70a0d ](ad70a0d5a8 ))
* add swap test with hex for univ2 executor ([0196767 ](0196767eff ))
* add univ2 executor test with hex ([c482e21 ](c482e21a5f ))
* remove exact_out from USV2 ([8cb95f0 ](8cb95f0950 ))
* resolve pr comments ([1b8bf56 ](1b8bf56c75 ))
* update ExecutorEncoder interface and relevant types ([5c39651 ](5c396512cf ))
2025-01-30 15:52:02 +00:00
Harsh Vardhan Roy
8c4e48b32a
Merge branch 'main' into router/hr/ENG-4194-Batch-Set-Executor
2025-01-30 21:21:52 +05:30
Harsh Vardhan Roy
9fdf017337
Merge pull request #33 from propeller-heads/encoder/hr/ENG-4082-ExecutorEncoder
...
feat: update ExecutorEncoder and test module with contract
2025-01-30 21:19:43 +05:30
royvardhan
6c8226340d
chore: remove console
2025-01-30 21:17:25 +05:30
royvardhan
da7b02407a
chore: remove console
2025-01-30 21:17:25 +05:30
royvardhan
9c35da0760
chore: rename straight_to_pool to direct_execution
2025-01-30 21:17:25 +05:30
royvardhan
8cb95f0950
feat: remove exact_out from USV2
2025-01-30 21:17:25 +05:30
royvardhan
95d45975ad
chore: encoder test naming
2025-01-30 21:17:25 +05:30
royvardhan
746733056c
chore: encoder test naming
2025-01-30 21:17:25 +05:30
royvardhan
4ef9b0b82f
chore: use Bytes
2025-01-30 21:17:25 +05:30
royvardhan
1b8bf56c75
feat: resolve pr comments
2025-01-30 21:17:25 +05:30
royvardhan
a50c31203b
chore: foundry fmt
2025-01-30 21:17:25 +05:30
royvardhan
cfce36486a
chore: add comment
2025-01-30 21:17:25 +05:30
royvardhan
0196767eff
feat: add swap test with hex for univ2 executor
2025-01-30 21:17:25 +05:30
royvardhan
c482e21a5f
feat: add univ2 executor test with hex
2025-01-30 21:17:25 +05:30
royvardhan
0007c4924c
chore: update executor encoder tests
2025-01-30 21:17:25 +05:30
royvardhan
d2289c3765
chore: update test
2025-01-30 21:17:25 +05:30
royvardhan
ad70a0d5a8
feat: add executor encoder test
2025-01-30 21:17:25 +05:30
royvardhan
5c396512cf
feat: update ExecutorEncoder interface and relevant types
2025-01-30 21:17:25 +05:30
semantic-release-bot
ee0aafbc4d
chore(release): 0.22.0 [skip ci]
...
## [0.22.0](https://github.com/propeller-heads/tycho-execution/compare/0.21.0...0.22.0 ) (2025-01-30)
### Features
* fixed USV3 Verification ([96af542 ](96af542923 ))
* Implement generic callback ([fafeba9 ](fafeba9248 ))
* UniswapV3Executor and integration tests ([ca32446 ](ca32446a9e ))
* USV3 verification ([7822c4f ](7822c4f913 ))
### Bug Fixes
* Remove amountReceived and dataOffset from the callback verification ([63b94b5 ](63b94b5584 ))
* Remove amountReceived, dataOffset from ICallbackVerifier interface ([33ada0c ](33ada0cf26 ))
* Remove exactOut from USV3 encoding ([d8b44f6 ](d8b44f623b ))
2025-01-30 15:40:49 +00:00
Diana Carvalho
82e671df39
fix: Use abi_encode_packed in ple_encode()
...
--- don't change below this line ---
ENG-4081 Took 17 minutes
2025-01-30 15:39:07 +00:00
Tamara
318ab0ad95
Merge pull request #34 from propeller-heads/router/tnl/ENG-4034-usv3-executor
...
feat: UniswapV3 Executor
2025-01-30 10:36:50 -05:00
Tamara
94b214384b
Merge branch 'main' into router/tnl/ENG-4034-usv3-executor
2025-01-30 10:33:18 -05:00
TAMARA LIPOWSKI
83bbabddd1
chore: rename amountOwed -> amountIn
...
...for consistency.
Also remove comment. We will keep exact_out to avoid future interface changes.
2025-01-30 10:33:09 -05:00
royvardhan
24e95b1206
fix: rm redundant test
2025-01-30 21:01:28 +05:30
Harsh Vardhan Roy
bd49c86d86
Update TychoRouter.t.sol
...
Co-authored-by: Tamara <tamara@datarevenue.com >
2025-01-30 20:53:28 +05:30
Diana Carvalho
6e8d2ede59
feat: Simplify router encoder
...
Don't make selector() a member of the StrategyEncoder trait. It is needed only for certain strategies. The strategy should manage it itself.
--- don't change below this line ---
ENG-4081 Took 17 minutes
2025-01-30 15:19:09 +00:00
Diana Carvalho
089e7d2e0f
feat: Add ChainId model
...
Remove to_chain_id helper method
--- don't change below this line ---
ENG-4081 Took 28 minutes
2025-01-30 15:01:53 +00:00
royvardhan
c653062027
feat: rename batchSetExecutor to setExecutors
2025-01-30 19:29:24 +05:30
royvardhan
719a15c0e5
chore: fmt
2025-01-30 19:00:15 +05:30
royvardhan
ea504faca1
feat: replace setExecutor with batchSetExecutor
2025-01-30 18:58:54 +05:30
Diana Carvalho
0e70e827a0
chore: Rename encoder to strategy/swap_encoder
...
This was confusing me when I had all of them open at the same time. Better to be extra explicit
--- don't change below this line ---
ENG-4081 Took 2 minutes
2025-01-30 13:19:09 +00:00
Diana Carvalho
7a8872cc41
fix: Don't leak evm specific code to interfaces(PrivateKeySigner, Chain)
...
Pass the signer's private key as a string around and only create a PrivateKeySigner inside Permit2 (where it's needed)
Use tycho-core Chain instead of Alloy ChainID. Create a temp method to convert between them
Create a EVMSwapEncoder that implements the executor_selector (that is evm specific)
--- don't change below this line ---
ENG-4081 Took 1 hour 7 minutes
2025-01-30 13:17:23 +00:00
Diana Carvalho
feb91cc639
feat: Implement SplitSwapStrategyEncoder
...
The strategy works as follows:
- Manage approvals needed
- Compute min amount (if check amount is any):
- if slippage is defined, apply slippage on the expected amount and take the min value between that and the check amount
- if not, it's just the check amount
- Iterate through the swaps
- call the corresponding swap encoder to encode the swap
- add swap header (tokens indexes and split)
- ple encode the swaps
- Add extra inputs (amounts, token addresses, min amount, (un)wrap, number of tokens and receiver)
Misc:
- Move executor address and selector encoding inside the SwapEncoder
- Add default executor_selector to SwapEncoder
- Pass router address inside the SplitSwapStrategyEncoder
- Move Permit2 inside the SplitSwapStrategyEncoder. It is a responsibility and a specificity of the strategy to need permit2 approvals
--- don't change below this line ---
ENG-4081 Took 1 hour 21 minutes
2025-01-30 11:23:32 +00:00
Diana Carvalho
3a69bbf603
feat: Remove generalisation on user approvals manager
...
This is a too early over generalisation. We need to encode the permit and the signature all together with the other method input variables. This way the return type will be specific to permit2 (instead Vec<u8>) anyway. For simplicity, decided to remove the generalisation and keep things simple
--- don't change below this line ---
ENG-4081 Took 2 hours 23 minutes
Took 9 seconds
Took 1 minute
2025-01-30 11:23:32 +00:00
TAMARA LIPOWSKI
92b4ee00d3
chore: remove unused factory variable
2025-01-29 19:53:22 -05:00
TAMARA LIPOWSKI
ca32446a9e
feat: UniswapV3Executor and integration tests
...
- Note: I think we can get the fee straight from the pool... why did we always encode this and send it from the solver? Is this bound to change sometimes?
2025-01-29 19:51:17 -05:00
TAMARA LIPOWSKI
d8b44f623b
fix: Remove exactOut from USV3 encoding
...
- We don't support exactOut atm
2025-01-29 16:56:45 -05:00
dianacarvalho1
1b79326637
Merge pull request #31 from propeller-heads/router/dc/ENG-4047-generic-callback
...
feat: Implement generic callback
2025-01-29 20:20:45 +00:00
Diana Carvalho
33ada0cf26
fix: Remove amountReceived, dataOffset from ICallbackVerifier interface
...
--- don't change below this line ---
ENG-4081 Took 1 hour 36 minutes
2025-01-29 20:19:34 +00:00
Diana Carvalho
63b94b5584
fix: Remove amountReceived and dataOffset from the callback verification
...
--- don't change below this line ---
ENG-4047 Took 20 minutes
2025-01-29 20:19:34 +00:00
Diana Carvalho
fafeba9248
feat: Implement generic callback
...
--- don't change below this line ---
ENG-4047 Took 26 minutes
Took 4 minutes
Took 8 seconds
Took 59 seconds
Took 22 seconds
2025-01-29 20:19:34 +00:00
Tamara
e481ceb304
Merge pull request #32 from propeller-heads/router/tnl/ENG-4100-master-verifier
...
feat: USV3 callback verification
2025-01-29 14:10:49 -05:00
TAMARA LIPOWSKI
d3f1136486
chore: Remove v3-periphery from gitmodules
...
- We aren't using this anymore since the solc version is outdated
2025-01-29 14:05:56 -05:00
TAMARA LIPOWSKI
96af542923
feat: fixed USV3 Verification
...
- We cannot use the regular v3-periphery library because of outdated solc versions. I've copied the v3-updated library which we have used in our previous project
2025-01-29 12:12:58 -05:00
TAMARA LIPOWSKI
057c616b0c
chore: merge main
2025-01-29 10:19:18 -05:00