Commit Graph

379 Commits

Author SHA1 Message Date
TAMARA LIPOWSKI
ae1b1f8850 fix: Don't PLE-encode for Ekubo
Our encoding uses PLE for subsequent swaps in a swap group. The EkuboExecutor assumes hard-coded hop length, which did not match the encoding side - leading to corrupted calldata in any swap after the first swap.
2025-10-07 12:27:25 +02:00
adrian
299126da16 test: add tests to generate runtime bytecode for the executors 2025-09-09 11:58:39 +02:00
TAMARA LIPOWSKI
1a49e3f3f6 chore: merge main 2025-08-27 23:27:58 -04:00
adrian
09202b3170 refactor: remove user_data from bebop encoded data 2025-08-27 18:05:51 +02:00
TAMARA LIPOWSKI
ea9a1a88ca fix: revert hooks rename
- Instead, add a new attribute to the builder, constants, and executor addresses json
- This was a miscommunication. Regular pools will still have the same name - only those with hooks will have hook appended to it
2025-08-21 17:40:28 -04:00
TAMARA LIPOWSKI
03414532c6 chore: merge main 2025-08-21 14:31:05 -04:00
TAMARA LIPOWSKI
c1d88be329 feat: rename "uniswap_v4" to "uniswap_v4_hooks"
to match the indexer
2025-08-21 14:00:01 -04:00
Diana Carvalho
cea964e0a5 feat: Add BytecodeExporter to TestUtils
Add example usage for BalancerV2

Took 2 hours 27 minutes


Took 10 seconds
2025-08-21 17:44:07 +01:00
adrian
80853f7ba8 chore: remove unused entry in calldata.text 2025-08-21 14:19:09 +02:00
adrian
f4d3fe75e8 test: fix executor tests after removing the effectiveTrader field 2025-08-21 13:11:13 +02:00
adrian
52c91a12b8 refactor: remove effectiveTrader from calldata and always set it to trader's value 2025-08-21 13:11:13 +02:00
adrian
5c5678f291 test: update hashflow sequential swap test 2025-08-21 13:11:13 +02:00
adrian
81e6a6ea93 chore: forge fmt 2025-08-21 13:11:13 +02:00
adrian
58bb3d7bdb test: move TychoRouterSingleSwapTestForHashflow to hashflow file 2025-08-21 13:11:13 +02:00
adrian
a5b6865698 test: revert import reordering 2025-08-21 13:11:13 +02:00
adrian
77de0d892a test: add sequential swap tests for hashflow 2025-08-21 13:11:13 +02:00
adrian
93db953c62 feat: implement SwapEncoder for Hashflow 2025-08-21 13:11:13 +02:00
Diana Carvalho
22920617eb feat: Support Bebop quote through IndicativelyPriced state
Made a new feature gate (test-utils) for MockRFQState

Took 2 hours 19 minutes
2025-08-14 13:01:40 +01:00
Diana Carvalho
d301dfcc44 fix: After merge fixes with SwapBuilder
Took 4 minutes
2025-08-14 10:03:32 +01:00
Diana Carvalho
914bc69485 test: Remove unnecessary setup in Bebop.t.sol
Took 6 minutes
2025-08-14 09:59:07 +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
cf0921076f chore: Remove unnecessary entries in calldata.txt
Took 5 minutes
2025-08-13 15:43:10 +01:00
Diana Carvalho
83a44b4d46 test(Bebop): Add a test selling ETH
Took 14 minutes
2025-08-13 15:35:36 +01: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
ee3d0cc060 chore: Update BebopExecutionHarness 2025-08-10 18:06:08 -03:00
pedrobergamini
29dc960a63 chore: fix encoding 2025-08-10 17:24:29 -03:00
pedrobergamini
97a961ecb8 chore: fix single encoding bebop tests 2025-08-10 16:59:06 -03:00
pedrobergamini
712d863368 chore: cleanup tech debt from Bebop tests and the execution harness 2025-08-08 12:28:24 -03:00
pedrobergamini
7f8e1e6e3b chore: assert exact eth balance at aggregate test 2025-08-08 12:00:12 -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
003ab7cea8 fix: After merging main fixes
Took 10 minutes
2025-08-08 14:54:40 +01: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
Diana Carvalho
c42a5dae6a fix: Encode sequential swaps with unwrapping WETH correctly
Took 24 minutes


Took 1 minute

Took 24 seconds
2025-08-06 18:02:24 +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
4cb570edb1 chore: fix test filledTakerAmount extraction and decoding logic 2025-08-04 18:52:53 -03:00
pedrobergamini
d4df49a796 chore: strip selector from calldata to setup state for harness 2025-08-04 18:13:06 -03:00
pedrobergamini
7ef587575a chore: create internal _swap method for harness usage 2025-08-04 14:51:58 -03:00
Diana Carvalho
2adcb89e6d fix: Recalculate calldata after merging main
Took 2 minutes


Took 40 seconds
2025-07-31 18:18:08 +01:00
Diana Carvalho
c399e316f5 Merge branch 'refs/heads/main' into hooks/dc/ENG-4624-pass-hook-data
# Conflicts:
#	foundry/test/assets/calldata.txt

Took 9 minutes
2025-07-31 17:50:45 +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
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