Diana Carvalho
72b60aa324
feat: Update BebopExecutor deployed address
...
Took 38 minutes
2025-08-14 17:46:26 +01:00
Diana Carvalho
7a5ee8b57b
Merge branch 'refs/heads/main' into feat/bebop-rfq-encoder-and-executor
2025-08-14 09:58:21 +01:00
adrian
e03ecf48d5
feat: add hashflow executor
2025-08-14 10:42:51 +02:00
Diana Carvalho
e79347842f
fix(Bebop): Fix encoding and tests
...
Misc: Fix revert condition in UniswapXFiller
Took 1 hour 20 minutes
2025-08-13 15:11:43 +01:00
Diana Carvalho
7024da395d
fix(Bebop): Fix AggregateOrder tests
...
Delete BebopExecutionHarness.t.sol
Took 53 minutes
2025-08-12 18:38:10 +01:00
Diana Carvalho
76a09d0402
fix: Simplify the BebopExecutor and fix Single tests
...
Make specific quotes that are expected to be used by the TychoRouter for the tests. Do not use the BebopHarness
Commented out Aggregate tests
Took 6 hours 40 minutes
2025-08-12 16:11:42 +01:00
pedrobergamini
97a961ecb8
chore: fix single encoding bebop tests
2025-08-10 16:59:06 -03:00
pedrobergamini
a76c35d95e
chore: resolve merge conflicts
2025-08-08 11:41:00 -03:00
pedrobergamini
c0d49f95ad
chore: commit progress so far on test fixing
2025-08-08 11:35:43 -03:00
Diana Carvalho
42609df650
Merge branch 'refs/heads/main' into feat/bebop-rfq-encoder-and-executor
...
# Conflicts:
# config/executor_addresses.json
# foundry/scripts/deploy-executors.js
# foundry/test/TychoRouterSequentialSwap.t.sol
# foundry/test/assets/calldata.txt
# src/encoding/models.rs
# tests/common/mod.rs
Took 21 minutes
2025-08-08 14:40:03 +01:00
pedrobergamini
1336eb5f90
chore: start implementing test changes related to partialFillOffset and encoded receiver
2025-08-05 22:45:48 -03:00
pedrobergamini
504a4db702
chore: include partialFillOffset as part of user_data
2025-08-05 20:32:42 -03:00
pedrobergamini
49754e654e
chore: fix filledTakerAmount calldata override logic
2025-08-04 18:12:31 -03:00
pedrobergamini
7ef587575a
chore: create internal _swap method for harness usage
2025-08-04 14:51:58 -03:00
pedrobergamini
3c7a846ff4
chore: update filledTakerAmount 0 logic
2025-08-04 14:23:20 -03:00
pedrobergamini
276d611157
chore: update BebopExecutor
2025-08-04 10:25:00 -03: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 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
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
TAMARA LIPOWSKI
ce1fe1dd94
feat: UniswapXFiller skeleton
2025-07-07 18:13:06 -04:00
greendianasaur
1e499e1e3b
Merge branch 'main' into balancer-v3/dc/ENG-4425-deploy
2025-07-01 17:28:36 +01:00
Diana Carvalho
f9ef8e0dbd
feat: Deploy BebopExecutor
...
Took 40 minutes
2025-06-25 10:04:03 +01:00
Diana Carvalho
266e30d1aa
feat: Deploy Balancer V3 executor
...
Took 19 minutes
2025-06-24 11:52:12 +01:00
pedrobergamini
80c2ef7881
chore: improve test assertion and function ordering
2025-06-23 14:38:57 -03:00
pedrobergamini
4c7f33d81b
chore: fix _getActualFilledTakerAmount return value
2025-06-18 13:08:50 -03:00
die-herdplatte
b331a43392
forge fmt
2025-06-18 16:22:34 +02:00
pedrobergamini
033a4bfe9f
chore: fix slither info warning
2025-06-17 23:30:48 -03:00
pedrobergamini
90ac0a4c98
test: fix all aggregate order tests and a few executor bugs
2025-06-17 23:27:03 -03: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
pedrobergamini
5418846619
chore: refactor Aggregate orders, fix Single orders integration tests and calldata generation
2025-06-16 23:08:54 -03:00
pedrobergamini
d527479037
refactor: simplify BebopExecutor by removing Multi order type, improve settlement flow
2025-06-16 15:32:07 -03:00
pedrobergamini
8a82dbfe34
chore: test multi and aggregate orders, support all signature types available
2025-06-08 02:58:52 -03:00
pedrobergamini
71a8401670
chore: address merge conflicts, implement user_data for Bebop
2025-06-08 00:36:23 -03:00
pedrobergamini
2124b49a68
test: bebop single encoding integration test
2025-06-07 17:46:08 -03: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
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
f34db52f09
feat: Implement BalancerV3Executor
...
Took 2 hours 32 minutes
Took 8 seconds
Took 13 minutes
2025-06-05 14:59:22 +01:00
pedrobergamini
17e535494b
fix: cargo and forge fmt
2025-06-04 19:57:40 -03:00
pedrobergamini
ad0a9991da
feat: support multi and aggregate orders
2025-06-04 19:41:13 -03:00
pedrobergamini
946c4391e8
fix: SafeCast => V4SafeCast to fix build issue
2025-06-04 19:13:13 -03:00
pedrobergamini
af0f4c454e
chore: implement correct native ETH support
2025-06-04 19:12:07 -03:00
pedrobergamini
7e7e3f0e01
feat: implement encoder and executor with single order support
2025-06-04 17:57:09 -03:00