Diana Carvalho
51d9484de0
fix: Rename mainnet to ethereum in txServiceUrls for Safe
...
This is used the scripts that interact with TychoRouter
Took 7 minutes
2025-07-31 17:08:28 +01:00
TAMARA LIPOWSKI
c217702560
feat: Add protocol state to Swap object
...
- This consists of lots of necessary battles with lifetimes.
2025-07-22 12:13:39 -04:00
Diana Carvalho
5bf5c8124b
docs: Extend Uniswap X deployment docs
...
--- don't change below this line ---
ENG-4675 Took 4 minutes
2025-07-15 17:13:05 +01:00
Diana Carvalho
d2d8b29056
fix: Read Tycho Router addresses from file
...
--- don't change below this line ---
ENG-4675 Took 17 minutes
2025-07-15 17:08:26 +01:00
Diana Carvalho
efa6fae0e8
feat: Uniswap X deployment script
...
--- don't change below this line ---
ENG-4675 Took 23 minutes
2025-07-15 10:01:38 +01:00
TAMARA LIPOWSKI
a0531bdfad
chore: typo fix
2025-07-11 17:18:32 -04:00
TAMARA LIPOWSKI
a53fa6502d
test: rewrite testExecute without hack
...
- We can use the same transaction as the integration test, with a different low-fee USV3 pool.
- Don't need to roll the fork either.
2025-07-11 17:17:32 -04:00
TAMARA LIPOWSKI
4ba59192fc
feat: add testExecuteIntegration
...
- Needed to change the integration test setup to use two USV3 pools instead of one V3 and V2, since the V2 pool was taking too much fees for the order to be fulfilled.
- Also needed to change the fork block to make this test work, which meant also needing to update the data for the existing testExecute.
2025-07-11 17:05:45 -04:00
TAMARA LIPOWSKI
4fef906e42
test: Use calldata in USX integration test
...
- Needed to update the filler address with the one from the test
- Removed unnecessary approval from non-integration test. The approval is now performed in the callback method.
2025-07-09 15:44:41 -04:00
Diana Carvalho
96d0bf4ba5
fix: Replicate a real Uniswap X order in integration test
...
Took 16 minutes
2025-07-09 14:38:48 -04:00
Diana Carvalho
d2ba255417
test: Add encoding test for a uniswap X integration test
...
Took 26 minutes
2025-07-09 14:38:48 -04:00
TAMARA LIPOWSKI
9e2f228a47
fix: use encodePacked to encode if approval needed
...
- Also approve max amount for the tycho router to use (to save on gas)
2025-07-09 14:32:43 -04:00
TAMARA LIPOWSKI
1b6a24fd75
fix: silence slither on native address setting
...
- We don't need a zero address check, since we expect this to be the zero address for most cases.
2025-07-09 12:21:12 -04:00
TAMARA LIPOWSKI
3752c155ea
feat: Handle native ETH outputs
...
- In this case, the ETH needs to be manually transferred to the reactor.
- Native ETH input is not supported for UniswapX
Source:
https://support.uniswap.org/hc/en-us/articles/17544708791821-Are-there-network-costs-for-UniswapX
2025-07-09 12:21:12 -04:00
TAMARA LIPOWSKI
e243667f9e
feat: (WIP) Handle approvals in UniswapXFiller
...
Reasons for using regular approvals instead of permit2:
- More simplicity, simpler setup
- Unfortunately we won't be able to "expire" approvals, which is a risk we may be okay with taking - since one advantage of this is that we will be able save on gas by not approving the reactor every single time (is this our intention?)
TODO:
- Do we really need input tokens to pass through our router?
- Handle native ETH (double check how this is transferred in the reactor)
2025-07-09 12:21:12 -04:00
Tamara
8518a3a756
Merge branch 'main' into usx/tnl/ENG-4668-naive-callback
2025-07-09 08:06:57 -04:00
dianacarvalho1
7a13f9e510
Merge branch 'main' into router/dc/ENG-4611-update-executors-scripts-safe
2025-07-09 09:35:15 +01:00
TAMARA LIPOWSKI
a2d123a263
fix: disable slither warnings
...
- locked-ether: We do have a withdraw method. Not sure why it doesn't register with slither. Already tried renaming.
- low-level-calls: This low level call is integral to the design of our filler contract.=
2025-07-08 14:00:17 -04:00
TAMARA LIPOWSKI
a114dfc9da
feat: UniswapXFiller callback - naive implementation
...
Added testCallback + execution integration test with real onchain data
2025-07-08 12:05:15 -04:00
Diana Carvalho
ba60e4bb73
fix: Simplify nonceOffset logic
...
Set new role addresses for all chains
Took 1 hour 43 minutes
2025-07-08 16:55:41 +01:00
TAMARA LIPOWSKI
d61469ea67
fix: Make slither happy
...
Naming conventions (mixed case) for variables
2025-07-08 10:24:40 -04:00
TAMARA LIPOWSKI
00f22d62c1
feat: Take reactor address as input to UniswapXFiller
...
- Put reactor zero address check in separate line for more easy debugging.
- Also includes other small cosmetic changes.
2025-07-08 09:48:25 -04:00
Diana Carvalho
2733bb0072
feat: Upgrade scripts to submit to Safe wallet
...
Also add revoke-role.js script
Took 4 hours 0 minutes
2025-07-08 12:23:41 +01:00
TAMARA LIPOWSKI
ce1fe1dd94
feat: UniswapXFiller skeleton
2025-07-07 18:13:06 -04:00
dianacarvalho1
c003197c42
Merge branch 'main' into balancer-v3/dc/ENG-4425-deploy
2025-07-07 12:00:51 +01:00
Diana Carvalho
0c01e61d50
chore: Use tycho project in tenderly
...
Took 15 minutes
2025-07-04 12:15:12 +01:00
greendianasaur
1e499e1e3b
Merge branch 'main' into balancer-v3/dc/ENG-4425-deploy
2025-07-01 17:28:36 +01:00
Diana Carvalho
3fe9906e5b
feat: Deploy EkuboExecutor with MEV-resist
...
Took 31 minutes
2025-07-01 16:00:51 +01:00
die-herdplatte
5aaac2855e
forge fmt
2025-06-24 17:42:28 +02:00
die-herdplatte
817aa35557
Merge remote-tracking branch 'upstream/main' into ekubo-mev-resist
2025-06-24 17:40:12 +02:00
Diana Carvalho
266e30d1aa
feat: Deploy Balancer V3 executor
...
Took 19 minutes
2025-06-24 11:52:12 +01:00
Diana Carvalho
df63b87569
fix: Add optimized_transfers_integration_tests.rs
...
I forgot these tests in the previous PR
Took 24 minutes
2025-06-23 15:34:11 +01:00
Diana Carvalho
1d263f8b4c
fix: After rebase fixes
...
Took 6 minutes
2025-06-23 15:02:21 +01:00
Diana Carvalho
e09789f347
test: Refactor tests
...
- Move encoding integration tests to integration test folder (in the rust project)
- Move protocol integration tests be inside the protocol file. This way we can change the block without any problems and it is easier for integrators
Took 6 minutes
Took 6 minutes
Took 17 minutes
2025-06-23 15:02:20 +01:00
die-herdplatte
b331a43392
forge fmt
2025-06-18 16:22:34 +02:00
die-herdplatte
72553bf98d
Fix slither issues
2025-06-17 11:34:31 +02:00
die-herdplatte
58ce241c63
Add support for Ekubo MEV-resist extension
2025-06-17 11:02:37 +02:00
Diana Carvalho
4f58977007
fix(BalancerV3Executor): Do data.length check at the beginning of swap
...
Took 16 minutes
2025-06-06 17:24:07 +01:00
Diana Carvalho
941879d5d6
fix(BalancerV3Executor): Slice callback data nicely
...
Make a stricter data validation
Took 35 minutes
2025-06-06 17:01:48 +01:00
Diana Carvalho
c03df8aa1e
feat: Add balancer v3 to transfer optimization constants
...
Also added a getForkBlock() on TychoRouterTestSetup.
Moved the router balancer test inside the Balancer file and created a TychoRouterForBalancerV3Test to wrap it
Took 1 hour 10 minutes
Took 21 seconds
2025-06-06 10:41:35 +01:00
Diana Carvalho
269e328b5f
feat: Add integration tests for balancer v3
...
Refactor BalancerV3Executor to have an inner _swapCallback method with the real swapping logic. Then we have two external methods:
- handleCallback: called by the router. Here we need to remove the first 68 bytes (4 selector + 32 dataOffset + 32 dataLength)
- swapCallback: called by the Vault directly if we are swapping against the executor directly (no router involved)
Took 1 minute
2025-06-05 17:22:17 +01:00
Diana Carvalho
806ce4e62c
feat: Make BalancerV3Executor inherit from ICallback
...
Took 37 minutes
2025-06-05 14:59:22 +01:00
Diana Carvalho
f173f9bed7
feat: Add balancer-v3-monorepo lib
...
Took 6 minutes
2025-06-05 14:59:22 +01:00
Diana Carvalho
f34db52f09
feat: Implement BalancerV3Executor
...
Took 2 hours 32 minutes
Took 8 seconds
Took 13 minutes
2025-06-05 14:59:22 +01:00
TAMARA LIPOWSKI
6ea9c3708e
chore: remove tenderly roles
...
- For organization
2025-05-27 13:12:13 -04:00
Diana Carvalho
9356e87d3a
Merge remote-tracking branch 'origin/router/tnl/fix-deployment' into router/tnl/fix-deployment
...
# Conflicts:
# config/router_addresses.json
Took 15 seconds
2025-05-27 16:01:46 +01:00
Diana Carvalho
0dafed0cad
feat: Deploy new router on base
...
Took 33 minutes
2025-05-27 16:01:30 +01:00
TAMARA LIPOWSKI
e2e061e73e
feat: Update unichain executors + router addrs
...
Deployed gas optimization
2025-05-27 10:55:48 -04:00
Diana Carvalho
c0805b107f
Merge branch 'refs/heads/main' into router/tnl/fix-deployment
2025-05-27 15:33:20 +01:00
Diana Carvalho
4f85e3e88e
chore: Move tests from strategy_encoders to tycho_encoders
...
Most of these tests were actually integration tests, so they should be in the outer level of the package.
Took 1 hour 5 minutes
2025-05-26 17:08:44 +01:00