Commit Graph

394 Commits

Author SHA1 Message Date
royvardhan
5853de679a feat: move callback testing to usv3 executor 2025-02-14 01:29:30 +05:30
royvardhan
80500e615e feat: fix input decoding in usv3 executor and execution dispatcher 2025-02-14 00:53:43 +05:30
royvardhan
bd1971334e feat: update new interface in codebase 2025-02-13 20:54:54 +05:30
royvardhan
a309825769 refactor: rm usv3 callback from router and add generic callback to executor 2025-02-13 20:31:21 +05:30
Diana Carvalho
dae38ceaf9 feat: Add a production foundry profile
It can be used with FOUNDRY_PROFILE=production forge build

--- don't change below this line ---
ENG-4223 Took 15 minutes
2025-02-13 12:00:59 +00:00
Diana Carvalho
4c5e3bf6a9 fix: Verify that the executor exists in the uni v4 callback
--- don't change below this line ---
ENG-4223 Took 10 minutes
2025-02-13 12:00:59 +00:00
Diana Carvalho
591d73ba71 feat: Support uniswap v4 callback in TychoRouter
Make TychoRouter inherit from SafeCallback and then delegatecall to the UniswapV4 executor
Add a test for this. I had to update the block of our forked network in the tests. Because of this I had to update all the asserts in previous tests

Had to change the optimizer_runs in foundry.toml because of weird Yul errors when compiling

--- don't change below this line ---
ENG-4223 Took 1 hour 21 minutes

Took 7 seconds


Took 35 seconds
2025-02-13 12:00:59 +00:00
Diana Carvalho
29eb50d0a1 chore: Create a UniswapV4Utils with encoding functions
--- don't change below this line ---
ENG-4223 Took 4 hours 33 minutes

Took 2 minutes


Took 28 minutes
2025-02-13 12:00:59 +00:00
royvardhan
d79068282a fix: _pay and msgSender 2025-02-13 00:25:26 +05:30
royvardhan
0c40e9e979 fix: handle native token balance changes 2025-02-13 00:25:26 +05:30
royvardhan
fe48c64e8e chore: change balance checks naming 2025-02-13 00:25:26 +05:30
royvardhan
2371ab2a1f fix: remove executeActions wrapper, strict equality checks and rename swap return 2025-02-13 00:25:26 +05:30
royvardhan
b47cff3fc9 fix: add equality check, amountInOrOut check, update _decodeData 2025-02-13 00:25:26 +05:30
royvardhan
ff3209b1c8 fix: remove extra _receiver and redundant asserts 2025-02-13 00:25:26 +05:30
royvardhan
a555683257 chore: consistent naming 2025-02-13 00:25:26 +05:30
royvardhan
120c96215f chore: remove redundant data from _decodeData 2025-02-13 00:25:25 +05:30
royvardhan
a8cc84ddce fix: git submodules and strict equality check in v4 executor 2025-02-13 00:25:25 +05:30
royvardhan
d998c88cfe feat: support multi swap decoding 2025-02-13 00:25:25 +05:30
royvardhan
c264084783 feat: move encoding to test 2025-02-13 00:25:25 +05:30
royvardhan
ae0b07b2a4 fix: reciever issue 2025-02-13 00:25:25 +05:30
royvardhan
7ca647f009 feat: add new pair test 2025-02-13 00:25:25 +05:30
royvardhan
4599f07df0 feat: add test for UniswapV4Executor 2025-02-13 00:25:25 +05:30
royvardhan
e62c332451 feat: add router params 2025-02-13 00:25:25 +05:30
royvardhan
bdd3daffba feat: update solc and add V4Router into UniswapV4Executor 2025-02-13 00:25:25 +05:30
royvardhan
24d4e762a2 fix: rm redundant transfer 2025-02-13 00:25:25 +05:30
royvardhan
1a36c33bc6 fix: rm callback fn 2025-02-13 00:25:25 +05:30
royvardhan
b2097ca4a5 feat: handle amounts in unlockCallback 2025-02-13 00:25:25 +05:30
royvardhan
ed90cb4ef1 feat: add callback 2025-02-13 00:25:25 +05:30
royvardhan
cb4c8f4e51 feat: add univ4 executor 2025-02-13 00:25:25 +05:30
Diana Carvalho
582533fa31 fix: Miscellaneous audit remarks
- Move pause functions together
- Add missing zero checks
- Use openzepplin's sendValues instead of transfer

--- don't change below this line ---
ENG-4226 Took 25 minutes


Took 2 minutes
2025-02-11 16:35:26 +00:00
TAMARA LIPOWSKI
37efe52c10 fix: (TychoRouter) Revert if empty swaps
- This is for security purposes. Max uncovered a vulnerability where funds could be stolen if we don't ether the while loop (i.e. if we have empty swaps).
2025-02-10 23:49:01 -05:00
Tamara
e8f22a2eee Merge branch 'main' into encoding/tnl/fix-wrapping-indices 2025-02-04 11:47:58 -05:00
Tamara
9980170fe5 Merge branch 'main' into encoding/tnl/fix-wrapping-indices 2025-02-04 10:35:53 -05:00
royvardhan
e6310d65d1 fix: executor test naming 2025-02-04 20:56:21 +05:30
royvardhan
6333072178 feat: add swap encoder test in balancer v2 executor 2025-02-04 19:56:52 +05:30
TAMARA LIPOWSKI
3f4e27a348 fix: Fix bug with token indexing when wrapping/unwrapping
The issue was that we weren't indexing WETH properly since it was looking for the WETH address in tokens, when only native ETH would be in there

- Found by adding integration tests for the wrapping and unwrapping cases.
2025-02-03 22:46:20 -05:00
Diana Carvalho
2aa1df9b0d chore: Move methods around and improve docstrings
--- don't change below this line ---
ENG-4087 Took 30 seconds


Took 5 seconds
2025-02-03 16:52:31 +00:00
Diana Carvalho
0860d67d7a feat: Verify that no amount in is left in the router
--- don't change below this line ---
ENG-4087 Took 1 hour 41 minutes


Took 2 minutes
2025-02-03 16:52:26 +00:00
Tamara
c5e40f2933 Merge branch 'main' into router/dc/return-eth 2025-01-31 12:17:30 -05:00
TAMARA LIPOWSKI
faacd3f25c fix: Accidentally changed wrong test's calldata 2025-01-31 12:11:24 -05:00
TAMARA LIPOWSKI
5a81ed6be5 fix: Expect decimal during encoding, add assert to test
- The util function was previously expecting a value between 0 and 100, which we felt was a weird UI.
- In integration test - make sure we spent all input tokens
2025-01-31 12:04:53 -05:00
dianacarvalho1
81e0859c10 Merge branch 'main' into router/dc/return-eth 2025-01-31 16:47:53 +00:00
TAMARA LIPOWSKI
ff3c7aa629 test: Split swap integration test 2025-01-31 11:34:50 -05:00
Diana Carvalho
3245ea7295 fix: transfer ETH if tokenOut is ETH
And not only if unwrapETH is true
There might be pools that deal in ETH directly

--- don't change below this line ---
ENG-4081 Took 7 minutes
2025-01-31 15:58:23 +00:00
Diana Carvalho
c85c353e34 fix: Fix token index order in strategy encoding.
The contract relies on this order!!

Remove TODOs and comments

--- don't change below this line ---
ENG-4081 Took 1 hour 12 minutes


Took 12 seconds
2025-01-31 15:34:12 +00:00
TAMARA LIPOWSKI
4d697bfebf test: Router integration test with many TODOs 2025-01-31 15:34:12 +00:00
TAMARA LIPOWSKI
a9c68a4de0 test: (WIP) Router integration tests
TODO it don't pass


Took 14 seconds

Took 12 minutes
2025-01-31 15:34:12 +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
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