Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/oracle limited commitments #139

Open
wants to merge 179 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
179 commits
Select commit Hold shift + click to select a range
9c4b2bb
adding
ethereumdegen Jul 6, 2023
3a7a7fa
changing tellerv2 sol
ethereumdegen Jul 7, 2023
a0a4d19
adding collateral v2 to tellersol
ethereumdegen Jul 7, 2023
679b534
implementing if/then switch for collateral managers
ethereumdegen Jul 7, 2023
9f72321
fix }
ethereumdegen Jul 7, 2023
121134e
fixing issues
ethereumdegen Jul 7, 2023
9f61210
fixing issues
ethereumdegen Jul 7, 2023
13ac69b
fixing collateral manager v2
ethereumdegen Jul 7, 2023
6ea038e
harmonizing types in the bundle lib to be more similar to v1
ethereumdegen Jul 7, 2023
11f36b3
fixing types
ethereumdegen Jul 7, 2023
9741d34
contracts compile
ethereumdegen Jul 7, 2023
8000727
fixing types
ethereumdegen Jul 7, 2023
595b968
fixing up
ethereumdegen Jul 7, 2023
0330c32
fix interface
ethereumdegen Jul 7, 2023
1a41490
need to fix tests
ethereumdegen Jul 7, 2023
59d5667
compiles !
ethereumdegen Jul 7, 2023
41c626b
remove unused file
ethereumdegen Jul 7, 2023
afee9cd
update
ethereumdegen Jul 7, 2023
2bd34d1
fixing tests
ethereumdegen Jul 7, 2023
d5081a3
fixing test
ethereumdegen Jul 7, 2023
6de9cb5
fixing tests
ethereumdegen Jul 8, 2023
96833fd
need to make more unit testy
ethereumdegen Jul 8, 2023
0f73823
all tests pass
ethereumdegen Jul 8, 2023
8b7e4eb
format
ethereumdegen Jul 8, 2023
5db82c0
fixing up tests
ethereumdegen Jul 8, 2023
d141b14
merge
ethereumdegen Sep 26, 2023
77cdaef
store collateral mgr for bid in mapping
ethereumdegen Sep 26, 2023
54c72b4
fixing tests
ethereumdegen Sep 26, 2023
1e2cd0b
fixing tests
ethereumdegen Sep 26, 2023
3b7f79e
tests compile but fail
ethereumdegen Sep 26, 2023
5ba4f1c
fix tests
ethereumdegen Sep 26, 2023
9f4d59c
fixing tests
ethereumdegen Sep 26, 2023
0b33af1
trying to fix test
ethereumdegen Sep 26, 2023
1f7217c
fixed commit collateral for test
ethereumdegen Sep 27, 2023
c77b0ad
fixed more tests
ethereumdegen Sep 27, 2023
b6402cb
tests pass
ethereumdegen Sep 27, 2023
f161741
add
ethereumdegen Oct 2, 2023
3df663d
update collateral manager to use bundle id mapping
ethereumdegen Oct 2, 2023
eba557d
add withdraw fn
ethereumdegen Oct 2, 2023
314e612
adding deploy script for collateral mgr v2
ethereumdegen Oct 3, 2023
06dc2e9
trying todeploy
ethereumdegen Oct 4, 2023
2612de6
get upgrade unsafe error
ethereumdegen Oct 4, 2023
1004989
notes
ethereumdegen Oct 4, 2023
46403e3
remove unnecessary constant
ethereumdegen Oct 4, 2023
7ecdc0d
clean comments
ethereumdegen Oct 4, 2023
fc08098
draft spec
ethereumdegen Oct 5, 2023
62ed652
merge
ethereumdegen Oct 10, 2023
9b2b0e1
adding manifests for cm v2
ethereumdegen Oct 10, 2023
f58ed3f
improve foundry config
ethereumdegen Oct 10, 2023
4d34e52
adding fork test helper
ethereumdegen Oct 10, 2023
b86727f
adding test
ethereumdegen Oct 10, 2023
ec1ae42
adding more to test
ethereumdegen Oct 10, 2023
942f57f
imports
ethereumdegen Oct 10, 2023
d5966ff
Merge branch 'develop' into feature/collateral-manager-v2
ethereumdegen Oct 10, 2023
81901d3
edit events for withdraw
ethereumdegen Oct 10, 2023
d20214d
fixing tests
ethereumdegen Oct 10, 2023
d42a159
tests compile
ethereumdegen Oct 10, 2023
a9c6dbd
formatting
passabilities Oct 11, 2023
4a3b4a6
remove new subgraph mappings
passabilities Oct 11, 2023
6593a43
fix tests
Oct 11, 2023
98906cb
add
Oct 11, 2023
1b92d2d
add to test
Oct 12, 2023
a3e95d9
test fails
ethereumdegen Oct 12, 2023
95e9d0a
fix test
ethereumdegen Oct 12, 2023
260f3e9
fix tests
ethereumdegen Oct 12, 2023
85e9471
testing nft as collateral
Oct 12, 2023
6b711b5
more assertions
Oct 12, 2023
a2c57a0
added test that proves that tokens are released to proper bundle id
Oct 12, 2023
f90b557
add to test
Oct 12, 2023
52a86c7
clean up
ethereumdegen Oct 13, 2023
baa088f
comments
ethereumdegen Oct 13, 2023
c30ead7
removing EAS
ethereumdegen Oct 17, 2023
2010b69
removing tellerAS and cleaning up
ethereumdegen Oct 17, 2023
287b0f8
fix errors
ethereumdegen Oct 17, 2023
6538283
fixing market registry interfaces
ethereumdegen Oct 17, 2023
7f8e753
fixing contract compilation
ethereumdegen Oct 17, 2023
d4cba39
contracts compile !!
ethereumdegen Oct 17, 2023
e5f3f7c
format
ethereumdegen Oct 17, 2023
d490b1c
merge
ethereumdegen Oct 17, 2023
84b7abe
fixing tests
ethereumdegen Oct 17, 2023
f98cb80
fix tests
ethereumdegen Oct 17, 2023
3081fb6
fixing tests
ethereumdegen Oct 17, 2023
92b2365
fixing market reg test
ethereumdegen Oct 17, 2023
7bc3c0e
fixing tests
ethereumdegen Oct 18, 2023
9f1758a
tests compile
ethereumdegen Oct 18, 2023
f9ef5e7
fixed some tests
ethereumdegen Oct 18, 2023
35df55e
fix interfaces
ethereumdegen Oct 18, 2023
202fcd8
fix test
ethereumdegen Oct 18, 2023
306c333
fixing tests mock
ethereumdegen Oct 18, 2023
d6f7630
cant get last test to pass
ethereumdegen Oct 18, 2023
9e9176f
fixed use of nextbidiD
ethereumdegen Oct 19, 2023
97abda0
remove console
ethereumdegen Oct 19, 2023
1aef74b
trying to fix
ethereumdegen Oct 19, 2023
b30fdba
all tests passs
ethereumdegen Oct 19, 2023
58ba248
emit event
ethereumdegen Oct 24, 2023
0ae6840
update script
ethereumdegen Oct 24, 2023
3e7ce98
goerli deployment
ethereumdegen Oct 24, 2023
f784ad8
Merge branch 'feature/collateral-manager-v2' into feature/optimize-ma…
ethereumdegen Oct 25, 2023
23e0745
add deploy script
ethereumdegen Oct 25, 2023
4b20f62
deployed to goerli
ethereumdegen Oct 25, 2023
4dc009e
adding code
ethereumdegen Jan 5, 2024
708f353
draft new contract
ethereumdegen Jan 8, 2024
4a13f7f
Merge branch 'feature/oracle-limited-commitments' of github.com:telle…
ethereumdegen Jan 8, 2024
b02b69b
added twap and compiles
ethereumdegen Jan 8, 2024
3e0e0f8
add price calc
ethereumdegen Jan 8, 2024
996ca51
add
ethereumdegen Jan 8, 2024
50a7655
fixing up ratos
ethereumdegen Jan 8, 2024
ba65dae
add comments
ethereumdegen Jan 9, 2024
7ca3a1a
adding to pricex96
ethereumdegen Jan 12, 2024
32b242b
adding to tests
ethereumdegen Jan 16, 2024
8492e30
adding to test
ethereumdegen Jan 16, 2024
894ebfe
integrating mocks
ethereumdegen Jan 16, 2024
524fb93
test mock works better
ethereumdegen Jan 16, 2024
f156ba0
math is not working fully
ethereumdegen Jan 16, 2024
27c1d88
getting very close to answer but off by one zero...
ethereumdegen Jan 17, 2024
198a627
add comment
ethereumdegen Jan 17, 2024
4fec1bc
adding to contract
ethereumdegen Jan 17, 2024
3baa14f
fixing type
ethereumdegen Jan 17, 2024
b26e83e
create fn for pool route price
ethereumdegen Jan 18, 2024
bf4f9c9
closer
ethereumdegen Jan 18, 2024
368c28e
kind of works so far...
ethereumdegen Jan 18, 2024
332b522
works in a basic sense
ethereumdegen Jan 18, 2024
3e71a09
adding usePoolRoutes
ethereumdegen Jan 18, 2024
4b9b634
more tests
ethereumdegen Jan 18, 2024
eab46e3
add ltv
ethereumdegen Jan 19, 2024
4bfa25c
decimal test fails
ethereumdegen Jan 19, 2024
647bc47
normmalization wont work
ethereumdegen Jan 19, 2024
58d8ab9
adding code to try and fix expansion
ethereumdegen Jan 22, 2024
5a9033e
got all tests to pass but dont fully understand logic still
ethereumdegen Jan 22, 2024
a9d1eb3
adding comment
ethereumdegen Jan 22, 2024
d100d9f
remove comment
ethereumdegen Jan 22, 2024
a6f4ee3
remove comment
ethereumdegen Jan 22, 2024
f52457b
rename
ethereumdegen Jan 23, 2024
0c18c9e
trying to fix renaming
ethereumdegen Jan 23, 2024
9cfb42c
compiles w rename
ethereumdegen Jan 23, 2024
6863052
deploying to sepolia
ethereumdegen Jan 23, 2024
07f8373
lcf alpha
ethereumdegen Jan 24, 2024
adc5e1f
improving code
ethereumdegen Jan 24, 2024
0a12eaa
deploy lcf alpha
ethereumdegen Jan 24, 2024
84ebe34
fixing pool routes of 0
ethereumdegen Jan 25, 2024
0bec9e2
Merge branch 'feature/oracle-limited-commitments-routed' of github.co…
ethereumdegen Jan 25, 2024
9235c04
upgraded sepolia
ethereumdegen Jan 25, 2024
c87627b
fixing pool routes puhs
ethereumdegen Jan 26, 2024
4f601fd
upgraded
ethereumdegen Jan 26, 2024
b392fea
update upgrade scripts
ethereumdegen Jan 29, 2024
9b19513
fix cmv2 script
ethereumdegen Jan 29, 2024
e365487
deployed
ethereumdegen Jan 29, 2024
f315ddc
update subgraph
ethereumdegen Feb 15, 2024
e7a16c8
merge in fix to lender commit
ethereumdegen Feb 15, 2024
ccbd659
update version
ethereumdegen Feb 15, 2024
4f90f20
add notes
ethereumdegen Feb 15, 2024
c5d5cf2
override grafting base code
ethereumdegen Feb 19, 2024
518d5cd
changing mappings to public
ethereumdegen Feb 20, 2024
7ecb5a7
trying to deploy
ethereumdegen Feb 20, 2024
8a71959
add
ethereumdegen Feb 20, 2024
287e80e
new getter fns
ethereumdegen Feb 20, 2024
4063534
rename to commit id
ethereumdegen Feb 20, 2024
72bcb75
reconfig hbs script
ethereumdegen Feb 21, 2024
f70ae88
Merge branch 'feature/oracle-limited-commitments-routed' of github.co…
ethereumdegen Feb 21, 2024
a78d2f0
inverted zeroForOne bool so it now matches the spec for uniswap
ethereumdegen Feb 21, 2024
b9a6785
uninvert zero for one
ethereumdegen Feb 21, 2024
e4c3a83
improve handlebars
ethereumdegen Feb 21, 2024
19c661b
deploy lcfa
ethereumdegen Feb 21, 2024
2a3db27
added logs for now
ethereumdegen Feb 22, 2024
1fe595b
Merge pull request #141 from teller-protocol/feature/oracle-limited-c…
ethereumdegen Feb 27, 2024
35f2151
prep for arb deployment
ethereumdegen Feb 27, 2024
3253fa7
deploy to arb
ethereumdegen Feb 27, 2024
8a6fbc5
prep mainnet deploy
ethereumdegen Feb 27, 2024
78773df
switched to using a static standard exp factor of 1e36
ethereumdegen Feb 27, 2024
c773726
add more tests
ethereumdegen Feb 27, 2024
3b845d9
comments
ethereumdegen Feb 27, 2024
08a4ad3
improve exp factor
ethereumdegen Feb 28, 2024
4adf1b3
adding to tests
ethereumdegen Feb 28, 2024
56169d3
deploy eror
ethereumdegen Feb 28, 2024
f958c48
fix polygon addr
ethereumdegen Feb 28, 2024
a0beaed
clean up script
ethereumdegen Feb 28, 2024
1430378
Merge pull request #142 from teller-protocol/feature/oracle-limited-c…
ethereumdegen Feb 29, 2024
c29c3ce
reabse
ethereumdegen Feb 29, 2024
1dfea0e
Merge branch 'feature/oracle-limited-commitments' of github.com:telle…
ethereumdegen Feb 29, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ typechain

# Subgraph
packages/subgraph/config/config.json
packages/subgraph/scripts/thegraph/api/config/*
packages/subgraph/scripts/thegraph/api/config/*.json
packages/subgraph/subgraph.yaml
packages/subgraph/generated
packages/subgraph/abis/*
Expand Down
342 changes: 342 additions & 0 deletions packages/contracts/.openzeppelin/arbitrum-one.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,11 @@
"address": "0xef20ec912F7183B3ddA18F3Ad990E06f0b5dC670",
"txHash": "0x2e635c5c5d9cd18455182fe3d20c6dfedb0def05b26b4932b8afafcc65b7c87e",
"kind": "transparent"
},
{
"address": "0x6455F2E1CCb14bd0b675A309276FB5333Dec524f",
"txHash": "0x12c5459905abe52e6c761f8a640a1b594e7f2399847010112f73223828338f27",
"kind": "transparent"
}
],
"impls": {
Expand Down Expand Up @@ -3305,6 +3310,343 @@
"storage": [],
"types": {}
}
},
"b68c07b728c96974a44354a20cf012159ac895a0e35c3ff0d41f36b463ed7896": {
"address": "0x90D08f8Df66dFdE93801783FF7A36876453DAE75",
"txHash": "0x365d0eb13d71f4718282120b0b1bf5b085839edd077c992ef6e4237242a4d9a5",
"layout": {
"solcVersion": "0.8.9",
"storage": [
{
"label": "userExtensions",
"offset": 0,
"slot": "0",
"type": "t_mapping(t_address,t_mapping(t_address,t_bool))",
"contract": "ExtensionsContextUpgradeable",
"src": "contracts/LenderCommitmentForwarder/extensions/ExtensionsContextUpgradeable.sol:12"
},
{
"label": "__gap",
"offset": 0,
"slot": "1",
"type": "t_array(t_uint256)49_storage",
"contract": "ExtensionsContextUpgradeable",
"src": "contracts/LenderCommitmentForwarder/extensions/ExtensionsContextUpgradeable.sol:61"
},
{
"label": "_initialized",
"offset": 0,
"slot": "50",
"type": "t_uint8",
"contract": "Initializable",
"src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:62",
"retypedFrom": "bool"
},
{
"label": "_initializing",
"offset": 1,
"slot": "50",
"type": "t_bool",
"contract": "Initializable",
"src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:67"
},
{
"label": "__gap",
"offset": 0,
"slot": "51",
"type": "t_array(t_uint256)50_storage",
"contract": "ContextUpgradeable",
"src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:36"
},
{
"label": "__gap",
"offset": 0,
"slot": "101",
"type": "t_array(t_uint256)50_storage",
"contract": "TellerV2MarketForwarder_G2",
"src": "contracts/TellerV2MarketForwarder_G2.sol:149"
},
{
"label": "commitments",
"offset": 0,
"slot": "151",
"type": "t_mapping(t_uint256,t_struct(Commitment)34721_storage)",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:49"
},
{
"label": "commitmentCount",
"offset": 0,
"slot": "152",
"type": "t_uint256",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:51"
},
{
"label": "commitmentBorrowersList",
"offset": 0,
"slot": "153",
"type": "t_mapping(t_uint256,t_struct(AddressSet)5349_storage)",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:54"
},
{
"label": "commitmentPrincipalAccepted",
"offset": 0,
"slot": "154",
"type": "t_mapping(t_uint256,t_uint256)",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:57"
},
{
"label": "commitmentUniswapPoolRoutes",
"offset": 0,
"slot": "155",
"type": "t_mapping(t_uint256,t_array(t_struct(PoolRouteConfig)34732_storage)dyn_storage)",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:59"
},
{
"label": "commitmentPoolOracleLtvRatio",
"offset": 0,
"slot": "156",
"type": "t_mapping(t_uint256,t_uint16)",
"contract": "LenderCommitmentForwarder_U1",
"src": "contracts/LenderCommitmentForwarder/LenderCommitmentForwarder_U1.sol:62"
}
],
"types": {
"t_address": {
"label": "address",
"numberOfBytes": "20"
},
"t_array(t_bytes32)dyn_storage": {
"label": "bytes32[]",
"numberOfBytes": "32"
},
"t_array(t_struct(PoolRouteConfig)34732_storage)dyn_storage": {
"label": "struct ILenderCommitmentForwarder_U1.PoolRouteConfig[]",
"numberOfBytes": "32"
},
"t_array(t_uint256)49_storage": {
"label": "uint256[49]",
"numberOfBytes": "1568"
},
"t_array(t_uint256)50_storage": {
"label": "uint256[50]",
"numberOfBytes": "1600"
},
"t_bool": {
"label": "bool",
"numberOfBytes": "1"
},
"t_bytes32": {
"label": "bytes32",
"numberOfBytes": "32"
},
"t_enum(CommitmentCollateralType)34697": {
"label": "enum ILenderCommitmentForwarder_U1.CommitmentCollateralType",
"members": [
"NONE",
"ERC20",
"ERC721",
"ERC1155",
"ERC721_ANY_ID",
"ERC1155_ANY_ID",
"ERC721_MERKLE_PROOF",
"ERC1155_MERKLE_PROOF"
],
"numberOfBytes": "1"
},
"t_mapping(t_address,t_bool)": {
"label": "mapping(address => bool)",
"numberOfBytes": "32"
},
"t_mapping(t_address,t_mapping(t_address,t_bool))": {
"label": "mapping(address => mapping(address => bool))",
"numberOfBytes": "32"
},
"t_mapping(t_bytes32,t_uint256)": {
"label": "mapping(bytes32 => uint256)",
"numberOfBytes": "32"
},
"t_mapping(t_uint256,t_array(t_struct(PoolRouteConfig)34732_storage)dyn_storage)": {
"label": "mapping(uint256 => struct ILenderCommitmentForwarder_U1.PoolRouteConfig[])",
"numberOfBytes": "32"
},
"t_mapping(t_uint256,t_struct(AddressSet)5349_storage)": {
"label": "mapping(uint256 => struct EnumerableSetUpgradeable.AddressSet)",
"numberOfBytes": "32"
},
"t_mapping(t_uint256,t_struct(Commitment)34721_storage)": {
"label": "mapping(uint256 => struct ILenderCommitmentForwarder_U1.Commitment)",
"numberOfBytes": "32"
},
"t_mapping(t_uint256,t_uint16)": {
"label": "mapping(uint256 => uint16)",
"numberOfBytes": "32"
},
"t_mapping(t_uint256,t_uint256)": {
"label": "mapping(uint256 => uint256)",
"numberOfBytes": "32"
},
"t_struct(AddressSet)5349_storage": {
"label": "struct EnumerableSetUpgradeable.AddressSet",
"members": [
{
"label": "_inner",
"type": "t_struct(Set)5034_storage",
"offset": 0,
"slot": "0"
}
],
"numberOfBytes": "64"
},
"t_struct(Commitment)34721_storage": {
"label": "struct ILenderCommitmentForwarder_U1.Commitment",
"members": [
{
"label": "maxPrincipal",
"type": "t_uint256",
"offset": 0,
"slot": "0"
},
{
"label": "expiration",
"type": "t_uint32",
"offset": 0,
"slot": "1"
},
{
"label": "maxDuration",
"type": "t_uint32",
"offset": 4,
"slot": "1"
},
{
"label": "minInterestRate",
"type": "t_uint16",
"offset": 8,
"slot": "1"
},
{
"label": "collateralTokenAddress",
"type": "t_address",
"offset": 10,
"slot": "1"
},
{
"label": "collateralTokenId",
"type": "t_uint256",
"offset": 0,
"slot": "2"
},
{
"label": "maxPrincipalPerCollateralAmount",
"type": "t_uint256",
"offset": 0,
"slot": "3"
},
{
"label": "collateralTokenType",
"type": "t_enum(CommitmentCollateralType)34697",
"offset": 0,
"slot": "4"
},
{
"label": "lender",
"type": "t_address",
"offset": 1,
"slot": "4"
},
{
"label": "marketId",
"type": "t_uint256",
"offset": 0,
"slot": "5"
},
{
"label": "principalTokenAddress",
"type": "t_address",
"offset": 0,
"slot": "6"
}
],
"numberOfBytes": "224"
},
"t_struct(PoolRouteConfig)34732_storage": {
"label": "struct ILenderCommitmentForwarder_U1.PoolRouteConfig",
"members": [
{
"label": "pool",
"type": "t_address",
"offset": 0,
"slot": "0"
},
{
"label": "zeroForOne",
"type": "t_bool",
"offset": 20,
"slot": "0"
},
{
"label": "twapInterval",
"type": "t_uint32",
"offset": 21,
"slot": "0"
},
{
"label": "token0Decimals",
"type": "t_uint256",
"offset": 0,
"slot": "1"
},
{
"label": "token1Decimals",
"type": "t_uint256",
"offset": 0,
"slot": "2"
}
],
"numberOfBytes": "96"
},
"t_struct(Set)5034_storage": {
"label": "struct EnumerableSetUpgradeable.Set",
"members": [
{
"label": "_values",
"type": "t_array(t_bytes32)dyn_storage",
"offset": 0,
"slot": "0"
},
{
"label": "_indexes",
"type": "t_mapping(t_bytes32,t_uint256)",
"offset": 0,
"slot": "1"
}
],
"numberOfBytes": "64"
},
"t_uint16": {
"label": "uint16",
"numberOfBytes": "2"
},
"t_uint256": {
"label": "uint256",
"numberOfBytes": "32"
},
"t_uint32": {
"label": "uint32",
"numberOfBytes": "4"
},
"t_uint8": {
"label": "uint8",
"numberOfBytes": "1"
}
},
"namespaces": {}
}
}
}
}
Loading
Loading