From 3c750c5f73e5eefe9c01c7b7873ce11fed1d7988 Mon Sep 17 00:00:00 2001 From: Denvil J Clarke <60730266+denviljclarke@users.noreply.github.com> Date: Mon, 19 Aug 2024 10:51:08 +0100 Subject: [PATCH] Add PSO deployment script (#208) * forge install: mento-core-2.4.0 v2.4.0 * feat: add pso proxy * chore: pso baklava deployment * chore: pso alfajores deployment * chore: pso mainnet deployment --------- Co-authored-by: Bayological <6872903+bayological@users.noreply.github.com> --- .gitmodules | 3 + .../42220/run-latest.json | 117 ++++++++++++++++++ .../44787/run-latest.json | 117 ++++++++++++++++++ .../62320/run-latest.json | 117 ++++++++++++++++++ lib/mento-core-2.4.0 | 1 + remappings.txt | 1 + .../PSO/deploy/PSO-00-Create-Proxies.sol | 30 +++++ 7 files changed, 386 insertions(+) create mode 100644 broadcast/PSO-00-Create-Proxies.sol/42220/run-latest.json create mode 100644 broadcast/PSO-00-Create-Proxies.sol/44787/run-latest.json create mode 100644 broadcast/PSO-00-Create-Proxies.sol/62320/run-latest.json create mode 160000 lib/mento-core-2.4.0 create mode 100644 script/upgrades/PSO/deploy/PSO-00-Create-Proxies.sol diff --git a/.gitmodules b/.gitmodules index d09537b6..d6e2b022 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,3 +16,6 @@ [submodule "lib/mento-core-2.3.1"] path = lib/mento-core-2.3.1 url = https://github.com/mento-protocol/mento-core +[submodule "lib/mento-core-2.4.0"] + path = lib/mento-core-2.4.0 + url = https://github.com/mento-protocol/mento-core diff --git a/broadcast/PSO-00-Create-Proxies.sol/42220/run-latest.json b/broadcast/PSO-00-Create-Proxies.sol/42220/run-latest.json new file mode 100644 index 00000000..49fb918e --- /dev/null +++ b/broadcast/PSO-00-Create-Proxies.sol/42220/run-latest.json @@ -0,0 +1,117 @@ +{ + "transactions": [ + { + "hash": "0x7d0088e4798fee338276bace188c9b44fbb290c6f6ca437e95c01d8d76b977a3", + "transactionType": "CREATE", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "function": null, + "arguments": null, + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "gas": "0xbd5cc", + "value": "0x0", + "data": "0x6080604052610016336001600160e01b0361001b16565b6100d9565b6001600160a01b03811661006a576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e000000000000000000000000008152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a25050565b61096b806100e86000396000f3fe60806040526004361061005a5760003560e01c8063bb913f4111610043578063bb913f41146102a7578063d29d44ee146102e7578063f7e6af80146103275761005a565b806303386ba3146101da57806342404e0714610269575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01805473ffffffffffffffffffffffffffffffffffffffff811661013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4e6f20496d706c656d656e746174696f6e207365740000000000000000000000604482015290519081900360640190fd5b61013b8161033c565b6101a657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b60405136810160405236600082376000803683855af43d604051818101604052816000823e8280156101d6578282f35b8282fd5b610267600480360360408110156101f057600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561022857600080fd5b82018360208201111561023a57600080fd5b8035906020019184600183028401116401000000008311171561025c57600080fd5b509092509050610378565b005b34801561027557600080fd5b5061027e61050c565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102b357600080fd5b50610267600480360360208110156102ca57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610564565b3480156102f357600080fd5b506102676004803603602081101561030a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610715565b34801561033357600080fd5b5061027e6107c2565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061037057508115155b949350505050565b6103806107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461041957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b61042283610564565b600060608473ffffffffffffffffffffffffffffffffffffffff1684846040518083838082843760405192019450600093509091505080830381855af49150503d806000811461048e576040519150601f19603f3d011682016040523d82523d6000602084013e610493565b606091505b5090925090508161050557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f696e697469616c697a6174696f6e2063616c6c6261636b206661696c65640000604482015290519081900360640190fd5b5050505050565b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b61056c6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461060557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016106628261033c565b6106cd57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b81815560405173ffffffffffffffffffffffffffffffffffffffff8316907fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d1390600090a25050565b61071d6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107b657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b6107bf8161081a565b50565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b73ffffffffffffffffffffffffffffffffffffffff811661089c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f6f776e65722063616e6e6f742062652030000000000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130181207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018281559073ffffffffffffffffffffffffffffffffffffffff8316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a2505056fea265627a7a72315820468f83f4393e43cae70d020c8715121ce7cd91204a65ef092b4025958ceac25364736f6c63430005110032", + "nonce": "0x205" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0xb282f6f7bd3e1626d55ecb9a69a620c238b7d973b8e30b53c716d82f1ab2f138", + "transactionType": "CALL", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "function": "_transferOwnership(address)", + "arguments": [ + "0xD533Ca259b330c7A88f74E000a3FaEa2d63B7972" + ], + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "to": "0x7242a5ffbc765f322ee7cad7957c291ac54c33f4", + "gas": "0x9789", + "value": "0x0", + "data": "0xd29d44ee000000000000000000000000d533ca259b330c7a88f74e000a3faea2d63b7972", + "nonce": "0x206" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x7d0088e4798fee338276bace188c9b44fbb290c6f6ca437e95c01d8d76b977a3", + "transactionIndex": "0x1", + "blockHash": "0x439789c7a09d2e6e59b8d789543e002f03a72e00106fef59fb28f93101f520ea", + "blockNumber": "0x19f3f72", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": null, + "cumulativeGasUsed": "0x9b62e", + "gasUsed": "0x91a9d", + "contractAddress": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "logs": [ + { + "address": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x00000000000000000000000056fd3f2bee130e9867942d0f463a16fbe49b8d81" + ], + "data": "0x", + "blockHash": "0x439789c7a09d2e6e59b8d789543e002f03a72e00106fef59fb28f93101f520ea", + "blockNumber": "0x19f3f72", + "transactionHash": "0x7d0088e4798fee338276bace188c9b44fbb290c6f6ca437e95c01d8d76b977a3", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000010000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004001000000000000000000000000000000000000000000000000000000001", + "type": "0x0", + "effectiveGasPrice": "0x2540be400" + }, + { + "transactionHash": "0xb282f6f7bd3e1626d55ecb9a69a620c238b7d973b8e30b53c716d82f1ab2f138", + "transactionIndex": "0x2", + "blockHash": "0x439789c7a09d2e6e59b8d789543e002f03a72e00106fef59fb28f93101f520ea", + "blockNumber": "0x19f3f72", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "cumulativeGasUsed": "0xa23e4", + "gasUsed": "0x6db6", + "contractAddress": null, + "logs": [ + { + "address": "0x7242a5FfbC765F322ee7cAd7957c291aC54c33F4", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x000000000000000000000000d533ca259b330c7a88f74e000a3faea2d63b7972" + ], + "data": "0x", + "blockHash": "0x439789c7a09d2e6e59b8d789543e002f03a72e00106fef59fb28f93101f520ea", + "blockNumber": "0x19f3f72", + "transactionHash": "0xb282f6f7bd3e1626d55ecb9a69a620c238b7d973b8e30b53c716d82f1ab2f138", + "transactionIndex": "0x2", + "logIndex": "0x2", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000100000000000000000000000000000000000000000000000001000000000000010000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000000000000001000000000000004000000000000000000000000000000000000000001", + "type": "0x0", + "effectiveGasPrice": "0x2540be400" + } + ], + "libraries": [ + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressLinkedList.sol:AddressLinkedList:0x6200F54D73491d56b8d7A975C9ee18EFb4D518Df", + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressSortedLinkedListWithMedian.sol:AddressSortedLinkedListWithMedian:0xED477A99035d0c1e11369F1D7A4e587893cc002B" + ], + "pending": [], + "returns": {}, + "timestamp": 1723740517, + "chain": 42220, + "multi": false, + "commit": "eceb1ae" +} \ No newline at end of file diff --git a/broadcast/PSO-00-Create-Proxies.sol/44787/run-latest.json b/broadcast/PSO-00-Create-Proxies.sol/44787/run-latest.json new file mode 100644 index 00000000..662df4c6 --- /dev/null +++ b/broadcast/PSO-00-Create-Proxies.sol/44787/run-latest.json @@ -0,0 +1,117 @@ +{ + "transactions": [ + { + "hash": "0x42ffc21d40443a428cee21b65894a91e2761aaf5f772438c3ab191cfdfea803d", + "transactionType": "CREATE", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "function": null, + "arguments": null, + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "gas": "0xbd5cc", + "value": "0x0", + "data": "0x6080604052610016336001600160e01b0361001b16565b6100d9565b6001600160a01b03811661006a576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e000000000000000000000000008152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a25050565b61096b806100e86000396000f3fe60806040526004361061005a5760003560e01c8063bb913f4111610043578063bb913f41146102a7578063d29d44ee146102e7578063f7e6af80146103275761005a565b806303386ba3146101da57806342404e0714610269575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01805473ffffffffffffffffffffffffffffffffffffffff811661013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4e6f20496d706c656d656e746174696f6e207365740000000000000000000000604482015290519081900360640190fd5b61013b8161033c565b6101a657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b60405136810160405236600082376000803683855af43d604051818101604052816000823e8280156101d6578282f35b8282fd5b610267600480360360408110156101f057600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561022857600080fd5b82018360208201111561023a57600080fd5b8035906020019184600183028401116401000000008311171561025c57600080fd5b509092509050610378565b005b34801561027557600080fd5b5061027e61050c565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102b357600080fd5b50610267600480360360208110156102ca57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610564565b3480156102f357600080fd5b506102676004803603602081101561030a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610715565b34801561033357600080fd5b5061027e6107c2565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061037057508115155b949350505050565b6103806107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461041957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b61042283610564565b600060608473ffffffffffffffffffffffffffffffffffffffff1684846040518083838082843760405192019450600093509091505080830381855af49150503d806000811461048e576040519150601f19603f3d011682016040523d82523d6000602084013e610493565b606091505b5090925090508161050557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f696e697469616c697a6174696f6e2063616c6c6261636b206661696c65640000604482015290519081900360640190fd5b5050505050565b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b61056c6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461060557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016106628261033c565b6106cd57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b81815560405173ffffffffffffffffffffffffffffffffffffffff8316907fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d1390600090a25050565b61071d6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107b657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b6107bf8161081a565b50565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b73ffffffffffffffffffffffffffffffffffffffff811661089c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f6f776e65722063616e6e6f742062652030000000000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130181207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018281559073ffffffffffffffffffffffffffffffffffffffff8316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a2505056fea265627a7a723158200ee523013bef93852e311f2a3cd6670a5b783c08dcf550df104f795c4f464fd364736f6c63430005110032", + "nonce": "0x52c" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x6b38b9582206078c75ff47dc1465bd3ac17d3fd35411c8ff709bdf35d65bb9e0", + "transactionType": "CALL", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "function": "_transferOwnership(address)", + "arguments": [ + "0xAA963FC97281d9632d96700aB62A4D1340F9a28a" + ], + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "to": "0x8e00fa3a6e955b8b56c861a4f0bd7c80e27f3760", + "gas": "0xa085", + "value": "0x0", + "data": "0xd29d44ee000000000000000000000000aa963fc97281d9632d96700ab62a4d1340f9a28a", + "nonce": "0x52d" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0x42ffc21d40443a428cee21b65894a91e2761aaf5f772438c3ab191cfdfea803d", + "transactionIndex": "0x7", + "blockHash": "0xad3a459f61a2a3627c52bcde0ec58dd082b6ad019a9897e9ed80d149a6ee9254", + "blockNumber": "0x187a071", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": null, + "cumulativeGasUsed": "0xd822b", + "gasUsed": "0x91a9d", + "contractAddress": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "logs": [ + { + "address": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x00000000000000000000000056fd3f2bee130e9867942d0f463a16fbe49b8d81" + ], + "data": "0x", + "blockHash": "0xad3a459f61a2a3627c52bcde0ec58dd082b6ad019a9897e9ed80d149a6ee9254", + "blockNumber": "0x187a071", + "transactionHash": "0x42ffc21d40443a428cee21b65894a91e2761aaf5f772438c3ab191cfdfea803d", + "transactionIndex": "0x7", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000410000000000000010000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000100000000000000000000000000000000800000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0x2540be400" + }, + { + "transactionHash": "0x6b38b9582206078c75ff47dc1465bd3ac17d3fd35411c8ff709bdf35d65bb9e0", + "transactionIndex": "0x8", + "blockHash": "0xad3a459f61a2a3627c52bcde0ec58dd082b6ad019a9897e9ed80d149a6ee9254", + "blockNumber": "0x187a071", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "cumulativeGasUsed": "0xdefed", + "gasUsed": "0x6dc2", + "contractAddress": null, + "logs": [ + { + "address": "0x8E00fA3a6e955B8B56C861a4f0Bd7C80e27f3760", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x000000000000000000000000aa963fc97281d9632d96700ab62a4d1340f9a28a" + ], + "data": "0x", + "blockHash": "0xad3a459f61a2a3627c52bcde0ec58dd082b6ad019a9897e9ed80d149a6ee9254", + "blockNumber": "0x187a071", + "transactionHash": "0x6b38b9582206078c75ff47dc1465bd3ac17d3fd35411c8ff709bdf35d65bb9e0", + "transactionIndex": "0x8", + "logIndex": "0x2", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000020000000000000000000000000000000000000000000000000000000000000004000000000000000400000000000000010000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000100000000000000000000000000000000800000000000000000000000000000000000000000400000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0x2540be400" + } + ], + "libraries": [ + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressLinkedList.sol:AddressLinkedList:0x2F0F7686fFFEfc3C266403Ad600035581deaedff", + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressSortedLinkedListWithMedian.sol:AddressSortedLinkedListWithMedian:0x29B1B5e05217c751038861aF2C77494EAB10A257" + ], + "pending": [], + "returns": {}, + "timestamp": 1723740392, + "chain": 44787, + "multi": false, + "commit": "140af71" +} \ No newline at end of file diff --git a/broadcast/PSO-00-Create-Proxies.sol/62320/run-latest.json b/broadcast/PSO-00-Create-Proxies.sol/62320/run-latest.json new file mode 100644 index 00000000..8062e562 --- /dev/null +++ b/broadcast/PSO-00-Create-Proxies.sol/62320/run-latest.json @@ -0,0 +1,117 @@ +{ + "transactions": [ + { + "hash": "0xf6af9a359e287cc04cceb9e614b7d302214fc32713592835f18ac9721f3f106a", + "transactionType": "CREATE", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "function": null, + "arguments": null, + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "gas": "0xbd5cc", + "value": "0x0", + "data": "0x6080604052610016336001600160e01b0361001b16565b6100d9565b6001600160a01b03811661006a576040805162461bcd60e51b815260206004820152601160248201527006f776e65722063616e6e6f74206265203607c1b604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e000000000000000000000000008152905190819003601301812060001901828155906001600160a01b038316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a25050565b61096b806100e86000396000f3fe60806040526004361061005a5760003560e01c8063bb913f4111610043578063bb913f41146102a7578063d29d44ee146102e7578063f7e6af80146103275761005a565b806303386ba3146101da57806342404e0714610269575b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01805473ffffffffffffffffffffffffffffffffffffffff811661013257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f4e6f20496d706c656d656e746174696f6e207365740000000000000000000000604482015290519081900360640190fd5b61013b8161033c565b6101a657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b60405136810160405236600082376000803683855af43d604051818101604052816000823e8280156101d6578282f35b8282fd5b610267600480360360408110156101f057600080fd5b73ffffffffffffffffffffffffffffffffffffffff823516919081019060408101602082013564010000000081111561022857600080fd5b82018360208201111561023a57600080fd5b8035906020019184600183028401116401000000008311171561025c57600080fd5b509092509050610378565b005b34801561027557600080fd5b5061027e61050c565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b3480156102b357600080fd5b50610267600480360360208110156102ca57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610564565b3480156102f357600080fd5b506102676004803603602081101561030a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610715565b34801561033357600080fd5b5061027e6107c2565b6000813f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47081811480159061037057508115155b949350505050565b6103806107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461041957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b61042283610564565b600060608473ffffffffffffffffffffffffffffffffffffffff1684846040518083838082843760405192019450600093509091505080830381855af49150503d806000811461048e576040519150601f19603f3d011682016040523d82523d6000602084013e610493565b606091505b5090925090508161050557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f696e697469616c697a6174696f6e2063616c6c6261636b206661696c65640000604482015290519081900360640190fd5b5050505050565b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b61056c6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461060557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e696d706c656d656e746174696f6e000000008152905190819003601c0190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff016106628261033c565b6106cd57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f496e76616c696420636f6e747261637420616464726573730000000000000000604482015290519081900360640190fd5b81815560405173ffffffffffffffffffffffffffffffffffffffff8316907fab64f92ab780ecbf4f3866f57cee465ff36c89450dcce20237ca7a8d81fb7d1390600090a25050565b61071d6107c2565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146107b657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f73656e64657220776173206e6f74206f776e6572000000000000000000000000604482015290519081900360640190fd5b6107bf8161081a565b50565b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130190207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff015490565b73ffffffffffffffffffffffffffffffffffffffff811661089c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601160248201527f6f776e65722063616e6e6f742062652030000000000000000000000000000000604482015290519081900360640190fd5b604080517f656970313936372e70726f78792e61646d696e00000000000000000000000000815290519081900360130181207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018281559073ffffffffffffffffffffffffffffffffffffffff8316907f50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe290600090a2505056fea265627a7a723158209437cd1d6b435c9c63bc63c6ac5733bf246f80d2cbd2b9caee5e1b4b95e9edcd64736f6c63430005110032", + "nonce": "0x407" + }, + "additionalContracts": [], + "isFixedGasLimit": false + }, + { + "hash": "0x9b658f62c8c8fdeaa3d7d012fa6b71f8173c5f1790bd2ba4b02acc3c6a4a2124", + "transactionType": "CALL", + "contractName": "StableTokenPSOProxy", + "contractAddress": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "function": "_transferOwnership(address)", + "arguments": [ + "0x28443b1d87db521320a6517A4F1B6Ead77F8C811" + ], + "transaction": { + "type": "0x00", + "from": "0x56fd3f2bee130e9867942d0f463a16fbe49b8d81", + "to": "0x7888c0513f5c85fd8592eeff179dc02226c0e6ac", + "gas": "0xa085", + "value": "0x0", + "data": "0xd29d44ee00000000000000000000000028443b1d87db521320a6517a4f1b6ead77f8c811", + "nonce": "0x408" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "transactionHash": "0xf6af9a359e287cc04cceb9e614b7d302214fc32713592835f18ac9721f3f106a", + "transactionIndex": "0x0", + "blockHash": "0xbfd7fbf448792b932cf22e817ddf4070cfa70187b10c8bf6a194334a4bfbbff8", + "blockNumber": "0x17f6244", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": null, + "cumulativeGasUsed": "0x91a9d", + "gasUsed": "0x91a9d", + "contractAddress": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "logs": [ + { + "address": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x00000000000000000000000056fd3f2bee130e9867942d0f463a16fbe49b8d81" + ], + "data": "0x", + "blockHash": "0xbfd7fbf448792b932cf22e817ddf4070cfa70187b10c8bf6a194334a4bfbbff8", + "blockNumber": "0x17f6244", + "transactionHash": "0xf6af9a359e287cc04cceb9e614b7d302214fc32713592835f18ac9721f3f106a", + "transactionIndex": "0x0", + "logIndex": "0x0", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x000000000000000000000000000000000000000000000000a0000000000000000000000000000800000000000000410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000002000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0xbebc200" + }, + { + "transactionHash": "0x9b658f62c8c8fdeaa3d7d012fa6b71f8173c5f1790bd2ba4b02acc3c6a4a2124", + "transactionIndex": "0x1", + "blockHash": "0xbfd7fbf448792b932cf22e817ddf4070cfa70187b10c8bf6a194334a4bfbbff8", + "blockNumber": "0x17f6244", + "from": "0x56fD3F2bEE130e9867942D0F463a16fBE49B8d81", + "to": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "cumulativeGasUsed": "0x9885f", + "gasUsed": "0x6dc2", + "contractAddress": null, + "logs": [ + { + "address": "0x7888C0513F5c85FD8592eEFF179Dc02226c0e6ac", + "topics": [ + "0x50146d0e3c60aa1d17a70635b05494f864e86144a2201275021014fbf08bafe2", + "0x00000000000000000000000028443b1d87db521320a6517a4f1b6ead77f8c811" + ], + "data": "0x", + "blockHash": "0xbfd7fbf448792b932cf22e817ddf4070cfa70187b10c8bf6a194334a4bfbbff8", + "blockNumber": "0x17f6244", + "transactionHash": "0x9b658f62c8c8fdeaa3d7d012fa6b71f8173c5f1790bd2ba4b02acc3c6a4a2124", + "transactionIndex": "0x1", + "logIndex": "0x1", + "removed": false + } + ], + "status": "0x1", + "logsBloom": "0x00000000000000000000000000000000000000000000000080001000000000000000000000000800000000000000400000000000000000000000000000000000000000000000000000000000000000000000000000000000020000001000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000002000000000000000000000", + "type": "0x0", + "effectiveGasPrice": "0xbebc200" + } + ], + "libraries": [ + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressLinkedList.sol:AddressLinkedList:0x3e2cc57f83093Ce1Ee03482c1590E3B5f4225bd7", + "lib/mento-core-2.0.0/contracts/common/linkedlists/AddressSortedLinkedListWithMedian.sol:AddressSortedLinkedListWithMedian:0x99EDce8143FF8AeFA1fBB6C2103B349Add2B9519" + ], + "pending": [], + "returns": {}, + "timestamp": 1723740149, + "chain": 62320, + "multi": false, + "commit": "f51f49b" +} \ No newline at end of file diff --git a/lib/mento-core-2.4.0 b/lib/mento-core-2.4.0 new file mode 160000 index 00000000..31e5f017 --- /dev/null +++ b/lib/mento-core-2.4.0 @@ -0,0 +1 @@ +Subproject commit 31e5f017987f76fbf3451afd264fa62ae153e064 diff --git a/remappings.txt b/remappings.txt index 88d06330..6e0bcd92 100644 --- a/remappings.txt +++ b/remappings.txt @@ -8,3 +8,4 @@ mento-core-2.0.0/=lib/mento-core-2.0.0/contracts/ mento-core-2.1.0/=lib/mento-core-2.1.0/contracts/ mento-core-2.2.0/=lib/mento-core-2.2.0/contracts/ mento-core-2.3.1/=lib/mento-core-2.3.1/contracts/ +mento-core-2.4.0/=lib/mento-core-2.4.0/contracts/ diff --git a/script/upgrades/PSO/deploy/PSO-00-Create-Proxies.sol b/script/upgrades/PSO/deploy/PSO-00-Create-Proxies.sol new file mode 100644 index 00000000..df4c7c7f --- /dev/null +++ b/script/upgrades/PSO/deploy/PSO-00-Create-Proxies.sol @@ -0,0 +1,30 @@ +// SPDX-License-Identifier: GPL-3.0-or-later +pragma solidity ^0.5.13; + +import { Script } from "script/utils/Script.sol"; +import { Chain } from "script/utils/Chain.sol"; +import { console2 } from "forge-std/Script.sol"; + +import { StableTokenPSOProxy } from "mento-core-2.4.0/legacy/proxies/StableTokenPSOProxy.sol"; + +/* + yarn deploy -n -u PSO -s PSO-00-Create-Proxies.sol +*/ +contract PSO_CreateProxies is Script { + function run() public { + address payable stableTokenPSOProxy; + address governance = contracts.celoRegistry("Governance"); + + vm.startBroadcast(Chain.deployerPrivateKey()); + { + stableTokenPSOProxy = address(new StableTokenPSOProxy()); + StableTokenPSOProxy(stableTokenPSOProxy)._transferOwnership(governance); + } + vm.stopBroadcast(); + + console2.log("----------"); + console2.log("StableTokenPSOProxy deployed at: ", stableTokenPSOProxy); + console2.log("StableTokenPSOProxy(%s) ownership transferred to %s", stableTokenPSOProxy, governance); + console2.log("----------"); + } +}