Commit Graph

179 Commits

Author SHA1 Message Date
TAMARA LIPOWSKI
b616e11354 fix: Silence slither warnings
- low level calls are fine, since we are checking for success, and we have already checked for contract existence when setting swap executors
- dead-code is silenced
- fix solidity version
2025-01-23 15:22:31 -05:00
TAMARA LIPOWSKI
825af0f8d7 test: Thorough tests for main SwapExecutionDispatcher method 2025-01-23 15:22:31 -05:00
TAMARA LIPOWSKI
e91ee96129 feat: delegatecall to executor in SwapExecutionDispatcher 2025-01-23 15:22:31 -05:00
royvardhan
9c99b73884 fix: pr comments 2025-01-23 21:54:31 +05:30
royvardhan
056582ca2f feat: add tests for withdraw, fee and make it DRY 2025-01-23 21:04:05 +05:30
royvardhan
e6f3fc7004 chore: move to lib/bytes 2025-01-23 19:14:56 +05:30
royvardhan
ef2600b7f8 chore: fmt and slither 2025-01-23 19:03:42 +05:30
royvardhan
ae662d0026 feat: keep assembly 2025-01-23 18:50:55 +05:30
royvardhan
f25da218d7 feat: add LibPrefixLengthEncodedByteArray with tests 2025-01-23 18:43:10 +05:30
Harsh Vardhan Roy
193910e650 Merge branch 'main' into router/hr/ENG-4050-fee-methods 2025-01-23 15:04:11 +05:30
royvardhan
15d3becf60 fix: use FEE_SETTER_ROLE for setFeeReceiver 2025-01-23 15:00:47 +05:30
TAMARA LIPOWSKI
34243e9016 docs: remove mention of delegatecall from verifier doc
- Because we will more likely use a regular call (safer and delegatecall is unnecessary)
2025-01-22 14:21:49 -05:00
royvardhan
0dc7edccfa feat: add fee methods 2025-01-22 23:52:06 +05:30
TAMARA LIPOWSKI
59950a7575 feat: Emit events when setting executors/verifiers 2025-01-22 12:50:43 -05:00
TAMARA LIPOWSKI
4cb3286c94 feat: Set swap executors and verifiers
- Moved the deployment method into a test template for organization
- Created skeletons of dispatcher contracts
- Added all possible test cases for thoroughness
2025-01-22 12:23:22 -05:00
royvardhan
f3363a24f4 fix: disable slither for native withdraw 2025-01-22 22:14:10 +05:30
royvardhan
136adafa6d fmt 2025-01-22 22:09:05 +05:30
royvardhan
2c3af0ff31 feat: add receiver in event 2025-01-22 22:05:28 +05:30
royvardhan
c6c0ddd498 fix: use send for native transfer 2025-01-22 22:01:30 +05:30
royvardhan
0c05874477 fix: ci 2025-01-22 20:54:36 +05:30
royvardhan
a1e7b552b6 fix: undo rm lib 2025-01-22 20:35:55 +05:30
royvardhan
78fa890cd3 feat: add withdraw methods 2025-01-22 20:33:24 +05:30
TAMARA LIPOWSKI
ab28a4730d feat: initial TychoRouter skeleton
- remappings.txt is used for more elegant imports
- decided not to include all helper methods in skeleton - just main swap method. They are properly documented in the jira tasks.
- add filter-paths to slither to exclude submodules, otherwise we will get slither warnings about permit2 and open-zeppelin using different solidity versions:

```
	- Version constraint ^0.8.20 is used by:
		-^0.8.20 (lib/openzeppelin-contracts/contracts/access/AccessControl.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/access/IAccessControl.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/Context.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol#4)
		-^0.8.20 (lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol#4)
	- Version constraint ^0.8.0 is used by:
		-^0.8.0 (lib/permit2/src/interfaces/IAllowanceTransfer.sol#2)
		-^0.8.0 (lib/permit2/src/interfaces/IEIP712.sol#2)
	- Version constraint ^0.8.28 is used by:
```
2025-01-20 17:21:46 -05:00
TAMARA LIPOWSKI
cb9053bd88 feat: Add permit2 lib for approval management
- Added as git submodule
2025-01-20 16:32:20 -05:00
TAMARA LIPOWSKI
a8f62ee837 feat: Add openzeppelin lib for access control
- This will be necessary to use the onlyRole(ADMIN) modifier, for example
2025-01-20 16:29:33 -05:00
TAMARA LIPOWSKI
68dddc0663 chore: Rename TychoRouter typo
- Accidentally copy pasta'd
2025-01-17 17:58:12 -05:00
TAMARA LIPOWSKI
f987125489 fix: Bump to latest Solidity version (0.8.28)
Earlier versions have known vulnerabilities.

Slither output:
```
INFO:Detectors:
Version constraint ^0.8.13 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
	- VerbatimInvalidDeduplication
	- FullInlinerNonExpressionSplitArgumentEvaluationOrder
	- MissingSideEffectsOnSelectorAccess
	- StorageWriteRemovalBeforeConditionalTermination
	- AbiReencodingHeadOverflowWithStaticArrayCleanup
	- DirtyBytesArrayToStorage
	- InlineAssemblyMemorySideEffects
	- DataLocationChangeInInternalOverride
	- NestedCalldataArrayAbiReencodingSizeValidation.
It is used by:
	- ^0.8.13 (src/Counter.sol#2)
Reference: https://github.com/crytic/slither/wiki/Detector-Documentation#incorrect-versions-of-solidity
INFO:Slither:foundry/ analyzed (2 contracts with 93 detectors), 1 result(s) found
```
2025-01-17 16:57:08 -05:00
TAMARA LIPOWSKI
2998bb3fb1 feat: Add Slither to README.md and include contract file to test 2025-01-17 16:39:21 -05:00
Diana Carvalho
e16d7ccb8e feat: Add foundry environment and CI 2025-01-17 09:50:26 +00:00