Commit Graph

40 Commits

Author SHA1 Message Date
Diana Carvalho
e78a362894 feat: Pass the file contents instead of the file path for executors
This is better because passing paths around might be really complex when running the code in another environments that is not local

Took 30 minutes
2025-09-25 09:34:43 +01:00
Diana Carvalho
5fa97d08e5 feat: Upgrade alloy to "1.0.6"
Took 18 minutes
2025-05-30 11:55:44 +01:00
Diana Carvalho
73c1a2db6a chore: Rename selector to function signature
Took 8 minutes
2025-05-27 09:37:24 +01:00
Diana Carvalho
d12e3d3b5f fix: Bring back swapper_pk for backwards compatibility
Took 16 minutes
2025-05-26 12:50:11 +01:00
Diana Carvalho
f5d9ab03da chore: Improve docstrings
Took 23 minutes
2025-05-26 12:50:11 +01:00
Diana Carvalho
c62af2f232 feat: Don't sign permit2 objects
We don't want to be responsible for holding private keys -> the user is the one that should do this outside of tycho-execution

Done:
- Remove signature from EncodedSolution
- Introduce UserTransferType and pass that everywhere instead of is_permit2_active and token_in_already_in_router
- Remove signing from permit2. Added it to the encoding_utils.rs only
- Mark encode_full_calldata as deprecated
- Backwards compatibility: still accept a signer for the encode_full_calldata case
- Update all tests

Took 2 hours 10 minutes


Took 13 minutes
2025-05-26 12:50:11 +01:00
Diana Carvalho
75f2c3a1c5 feat: Create non alloy specific Permit and PermitDetails structs
- Add try_from methods to convert them to the corresponding Solidity representations
- Update tests

Took 56 seconds
2025-05-23 11:31:05 +01:00
Diana Carvalho
facdf716bd feat: Add interacting_with to EncodedSolution
- Remove encode_full_calldata from the TychoEncoder trait
- Make the TychoExecutorEncoder use encode_solutions instead of encode_full_calldata
- Update tycho-encode.rs accordingly

Took 1 hour 3 minutes


Took 12 seconds
2025-05-22 14:43:12 +01:00
Diana Carvalho
7bf0b48ea6 fix: Make clippy happy after new format! format
Took 19 minutes
2025-04-24 13:34:08 +01:00
Diana Carvalho
aba280acd0 feat: Update tycho-encode bin with new arguments
--- don't change below this line ---
ENG-4446 Took 51 minutes


Took 9 seconds
2025-04-23 12:31:53 +01:00
Diana Carvalho
8b4b79b353 feat: Refactor TychoEncoder
We have a trait TychoEncoder and then two implementations: TychoRouterEncoder and TychoExecutorEncoder.
This way we go a level above with the decision if it is a direct execution or if it should use the tycho router.

- Created two builders: one for each tycho encoder
- Delete ExecutorStrategyEncoder and move code straight into the TychoExecutorEncoder
- Add validate_solution to trait TychoEncoder
- Move group_swaps.rs a level up
- Update tests and usage cases

Doing this we get rid of all that weird stuff we were doing before

--- don't change below this line ---
ENG-4306 Took 2 hours 6 minutes


Took 12 seconds
2025-04-23 12:30:13 +01:00
TAMARA LIPOWSKI
d05e1183d4 feat: Unichain deployment 2025-04-02 15:49:08 +02:00
TAMARA LIPOWSKI
1f6f1a4236 feat: Add router_address to cli 2025-04-02 12:02:56 +02:00
kayibal
0836bf7d53 feat: switch to tycho_commons 2025-03-27 16:58:34 +01:00
Diana Carvalho
6f572eed01 feat: Rename shortcut methods of encoder builder
Also moved executors_file_path to be an independent attribute

--- don't change below this line ---
ENG-4286 Took 19 minutes
2025-03-03 12:59:42 +00:00
Diana Carvalho
20e6419a20 feat: Adapt SplitSwapStrategyEncoder to have optional permit2 logic
- If the signer_pk is not passed -> use the swap method that expects the tokens to be already in the Router
- If it is passed -> compute permit2 and use swap method that does the token in transfer
- Extend builder to have another shortcut
- Add integration test with contract
- Update bin (and simplified it) and quickstart

--- don't change below this line ---
ENG-4255 Took 1 hour 51 minutes

Took 2 minutes

Took 7 seconds
2025-02-20 18:29:11 +00:00
royvardhan
29bc662ba9 refactor: use chain and protocol component from tycho_core::models 2025-02-20 22:36:50 +05:30
Diana Carvalho
684de4fa60 feat: Add methods to builder to set chain and strategy independently
--- don't change below this line ---
ENG-4246 Took 15 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
4741e628b8 chore: Simplify tycho-encode
Don't have a cli as a lib. Move that directly inside tycho-encode.rs for simplicity

--- don't change below this line ---
ENG-4246 Took 29 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
d9d56e7a8c chore: Rename signer_pk to swapper_pk
--- don't change below this line ---
ENG-4246 Took 15 minutes
2025-02-19 17:03:25 +00:00
Diana Carvalho
8537d27469 feat: Remove direct_execution from Solution
This is handled when creating a new TychoEncoder

--- don't change below this line ---
ENG-4246 Took 4 minutes
2025-02-19 17:03:13 +00:00
Diana Carvalho
03506fabe9 feat: Create a EVMEncoderBuilder
- It has two three methods to be created:
  - new: where the user can pass any custom StrategyEncoder
  - tycho_router: where the default SplitSwapStrategyEncoder with Tycho Router will be used
  - direct_execution: where the user can encode only the execution data and integrate this into their workflow.
- This replaces StrategyEncoderRegistry
- EVMTychoEncoder holds directly the StrategyEncoder and not the registry (per one init of the EVMTychoEncoder there is only one possible StrategyEncoder)
- Update quickstart
- Update bin (add subcommands to bin to create a different instance of EVMEncoderBuilder)

--- don't change below this line ---
ENG-4246 Took 33 minutes

Took 38 seconds

Took 38 seconds
2025-02-19 17:03:10 +00:00
TAMARA LIPOWSKI
1c565deb57 refactor: (Solution) replace check_amount with checked_amount
- This is to have consistency with checked_token
2025-02-11 11:25:58 -05:00
Diana Carvalho
a234ff701f feat: Remove router_address from TychoEncoder
Make the router address mandatory for the Solution attribute instead

--- don't change below this line ---
ENG-4088 Took 30 minutes
2025-02-07 14:58:09 +00:00
Diana Carvalho
d7f20aa74f fix: Don't have a DEFAULT_CONFIG_PATH in bin
This is unnecessary since we already have the executor address loaded at build time

--- don't change below this line ---
ENG-4088 Took 8 minutes


Took 7 seconds
2025-02-07 12:27:24 +00:00
royvardhan
520bee5a5d fix: chain.into() 2025-02-06 22:28:02 +05:30
royvardhan
32c3bd2220 feat: update cli params and docs 2025-02-06 20:55:27 +05:30
royvardhan
a5166f282d feat: use clap for cli and resolve pr comments 2025-02-06 18:30:52 +05:30
royvardhan
b93856073c feat: add serde primitive, update command 2025-02-06 00:16:35 +05:30
royvardhan
fd4045e6fe feat: remove manual parsing 2025-02-05 22:57:38 +05:30
royvardhan
a3cf443056 fix: ci 2025-02-05 20:54:30 +05:30
royvardhan
c4f9fd0fa6 fix: remove redundant parse checks 2025-02-05 20:50:44 +05:30
royvardhan
d3ad0ba5bf feat: add default private key 2025-02-05 20:47:51 +05:30
royvardhan
80f1ca913b feat: default native action 2025-02-05 20:39:59 +05:30
royvardhan
07288163d2 chore: merge run.md to readme.md 2025-02-05 20:34:56 +05:30
royvardhan
6cec83fde5 fix: ci 2025-02-05 17:36:27 +05:30
royvardhan
d3be9d1489 feat: add md 2025-02-05 17:29:17 +05:30
royvardhan
8d97f73ec7 feat: simplify 2025-02-05 17:26:02 +05:30
royvardhan
ae6b1ed658 feat: remove direct execution hardcode 2025-02-05 17:05:06 +05:30
royvardhan
4f7fe3b96d feat: add encoder bin 2025-02-05 16:53:20 +05:30