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
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
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
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
9980170fe5
Merge branch 'main' into encoding/tnl/fix-wrapping-indices
2025-02-04 10:35:53 -05:00
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
dianacarvalho1
81e0859c10
Merge branch 'main' into router/dc/return-eth
2025-01-31 16:47:53 +00: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
Harsh Vardhan Roy
8c4e48b32a
Merge branch 'main' into router/hr/ENG-4194-Batch-Set-Executor
2025-01-30 21:21:52 +05:30
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
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
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
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 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
TAMARA LIPOWSKI
7822c4f913
feat: USV3 verification
2025-01-29 10:10:13 -05:00
Harsh Vardhan Roy
cb6d165e7f
feat: approve max
2025-01-28 23:49:28 +05:30
royvardhan
b85428212a
fix: slither
2025-01-28 22:59:02 +05:30
royvardhan
b1ca478294
fix: ci
2025-01-28 22:54:31 +05:30
Harsh Vardhan Roy
6af6780f2e
Merge branch 'main' into router/hr/ENG-4035-Balancer-V2-Executor
2025-01-28 22:43:02 +05:30
Diana Carvalho
655cf91984
feat: Assume that funds will never go straight from a pool to the receiver
...
- The funds will always go through the router
- Rename splitSwap for Swap
- Improve tests
--- don't change below this line ---
ENG-4041 Took 24 minutes
Took 23 seconds
Took 42 seconds
2025-01-28 17:10:15 +00:00
royvardhan
7a83eddc92
fix: slither
2025-01-28 22:38:26 +05:30
Diana Carvalho
dfa7033d2e
feat: Smother slither and add a reentrancy guard in swap()
...
--- don't change below this line ---
ENG-4041 Took 34 minutes
2025-01-28 16:59:29 +00:00