@cartesi/devnet 1.8.0 → 2.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/build/anvil_state.json +1 -1
  2. package/deployments/localhost/ApplicationFactory.json +227 -0
  3. package/deployments/localhost/AuthorityFactory.json +55 -44
  4. package/deployments/localhost/ERC1155BatchPortal.json +26 -26
  5. package/deployments/localhost/ERC1155SinglePortal.json +25 -25
  6. package/deployments/localhost/ERC20Portal.json +35 -23
  7. package/deployments/localhost/ERC721Portal.json +23 -23
  8. package/deployments/localhost/EtherPortal.json +21 -21
  9. package/deployments/localhost/InputBox.json +64 -58
  10. package/deployments/localhost/QuorumFactory.json +188 -0
  11. package/deployments/localhost/SafeERC20Transfer.json +118 -0
  12. package/deployments/localhost/SelfHostedApplicationFactory.json +71 -70
  13. package/deployments/localhost/TestMultiToken.json +18 -18
  14. package/deployments/localhost/TestNFT.json +24 -24
  15. package/deployments/localhost/TestToken.json +28 -28
  16. package/export/abi/localhost.json +234 -602
  17. package/export/artifacts/@openzeppelin/contracts/access/manager/IAccessManager.sol/IAccessManager.json +11 -22
  18. package/export/artifacts/@openzeppelin/contracts/interfaces/IERC4906.sol/IERC4906.json +4 -4
  19. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC1155Errors.json +1 -1
  20. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC20Errors.json +1 -1
  21. package/export/artifacts/@openzeppelin/contracts/interfaces/draft-IERC6093.sol/IERC721Errors.json +2 -2
  22. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/ERC1155.sol/ERC1155.json +1 -1
  23. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155.sol/IERC1155.json +4 -4
  24. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol/IERC1155Receiver.json +3 -3
  25. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol/IERC1155MetadataURI.json +4 -4
  26. package/export/artifacts/@openzeppelin/contracts/token/ERC1155/utils/ERC1155Utils.sol/ERC1155Utils.json +34 -0
  27. package/export/artifacts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.json +2 -2
  28. package/export/artifacts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.json +1 -1
  29. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol/ERC20Burnable.json +1 -1
  30. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol/ERC20Pausable.json +2 -2
  31. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/ERC20Permit.sol/ERC20Permit.json +3 -3
  32. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.json +1 -1
  33. package/export/artifacts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Permit.sol/IERC20Permit.json +1 -1
  34. package/export/artifacts/@openzeppelin/contracts/token/ERC721/ERC721.sol/ERC721.json +2 -2
  35. package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721.sol/IERC721.json +4 -4
  36. package/export/artifacts/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol/IERC721Receiver.json +2 -2
  37. package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/ERC721URIStorage.sol/ERC721URIStorage.json +2 -2
  38. package/export/artifacts/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.sol/IERC721Metadata.json +3 -3
  39. package/export/artifacts/@openzeppelin/contracts/token/ERC721/utils/ERC721Utils.sol/ERC721Utils.json +33 -0
  40. package/export/artifacts/@openzeppelin/contracts/utils/Arrays.sol/Arrays.json +26 -3
  41. package/export/artifacts/@openzeppelin/contracts/utils/Comparators.sol/Comparators.json +34 -0
  42. package/export/artifacts/@openzeppelin/contracts/utils/Panic.sol/Panic.json +65 -0
  43. package/export/artifacts/@openzeppelin/contracts/utils/ShortStrings.sol/ShortStrings.json +2 -2
  44. package/export/artifacts/@openzeppelin/contracts/utils/SlotDerivation.sol/SlotDerivation.json +42 -0
  45. package/export/artifacts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.json +4 -3
  46. package/export/artifacts/@openzeppelin/contracts/utils/Strings.sol/Strings.json +3 -2
  47. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/ECDSA.sol/ECDSA.json +2 -2
  48. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/EIP712.sol/EIP712.json +2 -2
  49. package/export/artifacts/@openzeppelin/contracts/utils/cryptography/MessageHashUtils.sol/MessageHashUtils.json +3 -3
  50. package/export/artifacts/@openzeppelin/contracts/utils/introspection/ERC165.sol/ERC165.json +1 -1
  51. package/export/artifacts/@openzeppelin/contracts/utils/introspection/IERC165.sol/IERC165.json +2 -2
  52. package/export/artifacts/@openzeppelin/contracts/utils/math/Math.sol/Math.json +11 -16
  53. package/export/artifacts/@openzeppelin/contracts/utils/math/SafeCast.sol/SafeCast.json +4 -3
  54. package/export/artifacts/@openzeppelin/contracts/utils/math/SignedMath.sol/SignedMath.json +4 -3
  55. package/export/artifacts/@openzeppelin/contracts/utils/types/Time.sol/Time.json +2 -2
  56. package/export/artifacts/contracts/TestMultiToken.sol/TestMultiToken.json +3 -3
  57. package/export/artifacts/contracts/TestNFT.sol/TestNFT.json +4 -4
  58. package/export/artifacts/contracts/TestToken.sol/TestToken.json +3 -3
  59. package/package.json +11 -11
  60. package/deployments/localhost/AuthorityHistoryPairFactory.json +0 -276
  61. package/deployments/localhost/Bitmask.json +0 -44
  62. package/deployments/localhost/CartesiDAppFactory.json +0 -231
  63. package/deployments/localhost/CartesiMathV2.json +0 -213
  64. package/deployments/localhost/DAppAddressRelay.json +0 -102
  65. package/deployments/localhost/HistoryFactory.json +0 -177
  66. package/deployments/localhost/MerkleV2.json +0 -217
  67. package/deployments/localhost/UnrolledCordic.json +0 -54
@@ -0,0 +1,118 @@
1
+ {
2
+ "address": "0x817b126F242B5F184Fa685b4f2F91DC99D8115F9",
3
+ "abi": [
4
+ {
5
+ "inputs": [
6
+ {
7
+ "internalType": "address",
8
+ "name": "target",
9
+ "type": "address"
10
+ }
11
+ ],
12
+ "name": "AddressEmptyCode",
13
+ "type": "error"
14
+ },
15
+ {
16
+ "inputs": [
17
+ {
18
+ "internalType": "address",
19
+ "name": "account",
20
+ "type": "address"
21
+ }
22
+ ],
23
+ "name": "AddressInsufficientBalance",
24
+ "type": "error"
25
+ },
26
+ {
27
+ "inputs": [],
28
+ "name": "FailedInnerCall",
29
+ "type": "error"
30
+ },
31
+ {
32
+ "inputs": [
33
+ {
34
+ "internalType": "address",
35
+ "name": "token",
36
+ "type": "address"
37
+ }
38
+ ],
39
+ "name": "SafeERC20FailedOperation",
40
+ "type": "error"
41
+ },
42
+ {
43
+ "inputs": [
44
+ {
45
+ "internalType": "contract IERC20",
46
+ "name": "token",
47
+ "type": "address"
48
+ },
49
+ {
50
+ "internalType": "address",
51
+ "name": "to",
52
+ "type": "address"
53
+ },
54
+ {
55
+ "internalType": "uint256",
56
+ "name": "value",
57
+ "type": "uint256"
58
+ }
59
+ ],
60
+ "name": "safeTransfer",
61
+ "outputs": [],
62
+ "stateMutability": "nonpayable",
63
+ "type": "function"
64
+ }
65
+ ],
66
+ "transactionHash": "0x561508fd49e10826ed28e904073fa557613ca5cd5132d85fd8484e48d2824792",
67
+ "receipt": {
68
+ "to": "0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7",
69
+ "from": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",
70
+ "contractAddress": null,
71
+ "transactionIndex": 0,
72
+ "gasUsed": "227912",
73
+ "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
74
+ "blockHash": "0x26e30adebe93ab1ae6bdda7963109797b283684dbee7ae959adf6b4489fa5edb",
75
+ "transactionHash": "0x561508fd49e10826ed28e904073fa557613ca5cd5132d85fd8484e48d2824792",
76
+ "logs": [],
77
+ "blockNumber": 13,
78
+ "cumulativeGasUsed": "227912",
79
+ "status": 1,
80
+ "byzantium": true
81
+ },
82
+ "args": [],
83
+ "numDeployments": 1,
84
+ "bytecode": "0x608060405234801561001057600080fd5b50610326806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063d1660f9914610030575b600080fd5b61004361003e36600461025e565b610045565b005b6100596001600160a01b038416838361005e565b505050565b604080516001600160a01b03848116602483015260448083018590528351808403909101815260649092019092526020810180516001600160e01b031663a9059cbb60e01b179052610059918591906000906100bc9084168361010f565b905080516000141580156100e15750808060200190518101906100df919061029f565b155b1561005957604051635274afe760e01b81526001600160a01b03841660048201526024015b60405180910390fd5b606061011d83836000610124565b9392505050565b6060814710156101495760405163cd78605960e01b8152306004820152602401610106565b600080856001600160a01b0316848660405161016591906102c1565b60006040518083038185875af1925050503d80600081146101a2576040519150601f19603f3d011682016040523d82523d6000602084013e6101a7565b606091505b50915091506101b78683836101c1565b9695505050505050565b6060826101d6576101d18261021d565b61011d565b81511580156101ed57506001600160a01b0384163b155b1561021657604051639996b31560e01b81526001600160a01b0385166004820152602401610106565b508061011d565b80511561022d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b038116811461024657600080fd5b60008060006060848603121561027357600080fd5b833561027e81610249565b9250602084013561028e81610249565b929592945050506040919091013590565b6000602082840312156102b157600080fd5b8151801515811461011d57600080fd5b6000825160005b818110156102e257602081860181015185830152016102c8565b50600092019182525091905056fea2646970667358221220770726e7ad5dd1738ebf2b83baa38187dd37ed24d03d1b61c4ef95f8cde1b84c64736f6c63430008170033",
85
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063d1660f9914610030575b600080fd5b61004361003e36600461025e565b610045565b005b6100596001600160a01b038416838361005e565b505050565b604080516001600160a01b03848116602483015260448083018590528351808403909101815260649092019092526020810180516001600160e01b031663a9059cbb60e01b179052610059918591906000906100bc9084168361010f565b905080516000141580156100e15750808060200190518101906100df919061029f565b155b1561005957604051635274afe760e01b81526001600160a01b03841660048201526024015b60405180910390fd5b606061011d83836000610124565b9392505050565b6060814710156101495760405163cd78605960e01b8152306004820152602401610106565b600080856001600160a01b0316848660405161016591906102c1565b60006040518083038185875af1925050503d80600081146101a2576040519150601f19603f3d011682016040523d82523d6000602084013e6101a7565b606091505b50915091506101b78683836101c1565b9695505050505050565b6060826101d6576101d18261021d565b61011d565b81511580156101ed57506001600160a01b0384163b155b1561021657604051639996b31560e01b81526001600160a01b0385166004820152602401610106565b508061011d565b80511561022d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b50565b6001600160a01b038116811461024657600080fd5b60008060006060848603121561027357600080fd5b833561027e81610249565b9250602084013561028e81610249565b929592945050506040919091013590565b6000602082840312156102b157600080fd5b8151801515811461011d57600080fd5b6000825160005b818110156102e257602081860181015185830152016102c8565b50600092019182525091905056fea2646970667358221220770726e7ad5dd1738ebf2b83baa38187dd37ed24d03d1b61c4ef95f8cde1b84c64736f6c63430008170033",
86
+ "devdoc": {
87
+ "errors": {
88
+ "AddressEmptyCode(address)": [
89
+ {
90
+ "details": "There's no code at `target` (it is not a contract)."
91
+ }
92
+ ],
93
+ "AddressInsufficientBalance(address)": [
94
+ {
95
+ "details": "The ETH balance of the account is not enough to perform the operation."
96
+ }
97
+ ],
98
+ "FailedInnerCall()": [
99
+ {
100
+ "details": "A call to an address target failed. The target may have reverted."
101
+ }
102
+ ],
103
+ "SafeERC20FailedOperation(address)": [
104
+ {
105
+ "details": "An operation with an ERC20 token failed."
106
+ }
107
+ ]
108
+ },
109
+ "kind": "dev",
110
+ "methods": {},
111
+ "version": 1
112
+ },
113
+ "userdoc": {
114
+ "kind": "user",
115
+ "methods": {},
116
+ "version": 1
117
+ }
118
+ }
@@ -1,16 +1,16 @@
1
1
  {
2
- "address": "0x9E32e06Fd23675b2DF8eA8e6b0A25c3DF6a60AbC",
2
+ "address": "0xF925E1467DfCb1be6904bcF70621A974b5eA8708",
3
3
  "abi": [
4
4
  {
5
5
  "inputs": [
6
6
  {
7
- "internalType": "contract IAuthorityHistoryPairFactory",
8
- "name": "_authorityHistoryPairFactory",
7
+ "internalType": "contract IAuthorityFactory",
8
+ "name": "authorityFactory",
9
9
  "type": "address"
10
10
  },
11
11
  {
12
- "internalType": "contract ICartesiDAppFactory",
13
- "name": "_applicationFactory",
12
+ "internalType": "contract IApplicationFactory",
13
+ "name": "applicationFactory",
14
14
  "type": "address"
15
15
  }
16
16
  ],
@@ -21,22 +21,27 @@
21
21
  "inputs": [
22
22
  {
23
23
  "internalType": "address",
24
- "name": "_authorityOwner",
24
+ "name": "authorityOwner",
25
25
  "type": "address"
26
26
  },
27
+ {
28
+ "internalType": "uint256",
29
+ "name": "epochLength",
30
+ "type": "uint256"
31
+ },
27
32
  {
28
33
  "internalType": "address",
29
- "name": "_dappOwner",
34
+ "name": "appOwner",
30
35
  "type": "address"
31
36
  },
32
37
  {
33
38
  "internalType": "bytes32",
34
- "name": "_templateHash",
39
+ "name": "templateHash",
35
40
  "type": "bytes32"
36
41
  },
37
42
  {
38
43
  "internalType": "bytes32",
39
- "name": "_salt",
44
+ "name": "salt",
40
45
  "type": "bytes32"
41
46
  }
42
47
  ],
@@ -44,17 +49,12 @@
44
49
  "outputs": [
45
50
  {
46
51
  "internalType": "address",
47
- "name": "application_",
48
- "type": "address"
49
- },
50
- {
51
- "internalType": "address",
52
- "name": "authority_",
52
+ "name": "application",
53
53
  "type": "address"
54
54
  },
55
55
  {
56
56
  "internalType": "address",
57
- "name": "history_",
57
+ "name": "authority",
58
58
  "type": "address"
59
59
  }
60
60
  ],
@@ -65,40 +65,40 @@
65
65
  "inputs": [
66
66
  {
67
67
  "internalType": "address",
68
- "name": "_authorityOwner",
68
+ "name": "authorityOwner",
69
69
  "type": "address"
70
70
  },
71
+ {
72
+ "internalType": "uint256",
73
+ "name": "epochLength",
74
+ "type": "uint256"
75
+ },
71
76
  {
72
77
  "internalType": "address",
73
- "name": "_dappOwner",
78
+ "name": "appOwner",
74
79
  "type": "address"
75
80
  },
76
81
  {
77
82
  "internalType": "bytes32",
78
- "name": "_templateHash",
83
+ "name": "templateHash",
79
84
  "type": "bytes32"
80
85
  },
81
86
  {
82
87
  "internalType": "bytes32",
83
- "name": "_salt",
88
+ "name": "salt",
84
89
  "type": "bytes32"
85
90
  }
86
91
  ],
87
92
  "name": "deployContracts",
88
93
  "outputs": [
89
94
  {
90
- "internalType": "contract CartesiDApp",
91
- "name": "application_",
92
- "type": "address"
93
- },
94
- {
95
- "internalType": "contract Authority",
96
- "name": "authority_",
95
+ "internalType": "contract IApplication",
96
+ "name": "application",
97
97
  "type": "address"
98
98
  },
99
99
  {
100
- "internalType": "contract History",
101
- "name": "history_",
100
+ "internalType": "contract IAuthority",
101
+ "name": "authority",
102
102
  "type": "address"
103
103
  }
104
104
  ],
@@ -110,7 +110,7 @@
110
110
  "name": "getApplicationFactory",
111
111
  "outputs": [
112
112
  {
113
- "internalType": "contract ICartesiDAppFactory",
113
+ "internalType": "contract IApplicationFactory",
114
114
  "name": "",
115
115
  "type": "address"
116
116
  }
@@ -120,10 +120,10 @@
120
120
  },
121
121
  {
122
122
  "inputs": [],
123
- "name": "getAuthorityHistoryPairFactory",
123
+ "name": "getAuthorityFactory",
124
124
  "outputs": [
125
125
  {
126
- "internalType": "contract IAuthorityHistoryPairFactory",
126
+ "internalType": "contract IAuthorityFactory",
127
127
  "name": "",
128
128
  "type": "address"
129
129
  }
@@ -132,62 +132,63 @@
132
132
  "type": "function"
133
133
  }
134
134
  ],
135
- "transactionHash": "0x78fd5f5f0a6be37616703e0a7f9fd4369a70fa3e67b3c8e376ea67a26a96620d",
135
+ "transactionHash": "0x9b915d749840d88d464e14d3f0cb02f549cb9a6e86896f32686706a06b63a253",
136
136
  "receipt": {
137
137
  "to": "0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7",
138
138
  "from": "0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266",
139
139
  "contractAddress": null,
140
140
  "transactionIndex": 0,
141
- "gasUsed": "298964",
141
+ "gasUsed": "287274",
142
142
  "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
143
- "blockHash": "0x6347ee8b4fbd7fbc5804fea697b8e5d2ea4f22c56e0bb3c30082f801f1f4089b",
144
- "transactionHash": "0x78fd5f5f0a6be37616703e0a7f9fd4369a70fa3e67b3c8e376ea67a26a96620d",
143
+ "blockHash": "0xaf94957c8df27b69149c437188cbd4b50e0a224b2bd64f761e68704aeed14019",
144
+ "transactionHash": "0x9b915d749840d88d464e14d3f0cb02f549cb9a6e86896f32686706a06b63a253",
145
145
  "logs": [],
146
- "blockNumber": 18,
147
- "cumulativeGasUsed": "298964",
146
+ "blockNumber": 12,
147
+ "cumulativeGasUsed": "287274",
148
148
  "status": 1,
149
149
  "byzantium": true
150
150
  },
151
151
  "args": [
152
- "0x3890A047Cf9Af60731E80B2105362BbDCD70142D",
153
- "0x7122cd1221C20892234186facfE8615e6743Ab02"
152
+ "0xB897F7Fe78f220aE34B7FA9493092701a873Ed45",
153
+ "0xd7d4d184b82b1a4e08f304DDaB0A2A7a301C2620"
154
154
  ],
155
155
  "numDeployments": 1,
156
- "bytecode": "0x60c060405234801561001057600080fd5b5060405161053d38038061053d83398101604081905261002f9161005e565b6001600160a01b039182166080521660a052610098565b6001600160a01b038116811461005b57600080fd5b50565b6000806040838503121561007157600080fd5b825161007c81610046565b602084015190925061008d81610046565b809150509250929050565b60805160a0516104666100d76000396000818160e2015281816101dc015261032b015260008181605301528181610133015261028401526104666000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80633ae7e45e14610051578063b02b5e4414610090578063dbeab8a0146100cd578063e63d50ff146100e0575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100a361009e36600461038c565b610106565b604080516001600160a01b0394851681529284166020840152921691810191909152606001610087565b6100a36100db36600461038c565b610257565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b604051636b9f9a3d60e11b81526001600160a01b03858116600483015260248201839052600091829182917f00000000000000000000000000000000000000000000000000000000000000009091169063d73f347a9060440160408051808303816000875af115801561017d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101a191906103d2565b604051630e1a07f560e01b81526001600160a01b038084166004830152898116602483015260448201899052606482018890529294509092507f000000000000000000000000000000000000000000000000000000000000000090911690630e1a07f5906084016020604051808303816000875af1158015610227573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024b919061040c565b92509450945094915050565b6040516339dcd45760e01b81526001600160a01b03858116600483015260248201839052600091829182917f0000000000000000000000000000000000000000000000000000000000000000909116906339dcd457906044016040805180830381865afa1580156102cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f091906103d2565b60405163bd4f121960e01b81526001600160a01b038084166004830152898116602483015260448201899052606482018890529294509092507f00000000000000000000000000000000000000000000000000000000000000009091169063bd4f121990608401602060405180830381865afa158015610227573d6000803e3d6000fd5b6001600160a01b038116811461038957600080fd5b50565b600080600080608085870312156103a257600080fd5b84356103ad81610374565b935060208501356103bd81610374565b93969395505050506040820135916060013590565b600080604083850312156103e557600080fd5b82516103f081610374565b602084015190925061040181610374565b809150509250929050565b60006020828403121561041e57600080fd5b815161042981610374565b939250505056fea264697066735822122031bfd9110a4e367d5f98b448035b6db0472cebe854305d509547385279a5432b64736f6c63430008130033",
157
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80633ae7e45e14610051578063b02b5e4414610090578063dbeab8a0146100cd578063e63d50ff146100e0575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100a361009e36600461038c565b610106565b604080516001600160a01b0394851681529284166020840152921691810191909152606001610087565b6100a36100db36600461038c565b610257565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b604051636b9f9a3d60e11b81526001600160a01b03858116600483015260248201839052600091829182917f00000000000000000000000000000000000000000000000000000000000000009091169063d73f347a9060440160408051808303816000875af115801561017d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101a191906103d2565b604051630e1a07f560e01b81526001600160a01b038084166004830152898116602483015260448201899052606482018890529294509092507f000000000000000000000000000000000000000000000000000000000000000090911690630e1a07f5906084016020604051808303816000875af1158015610227573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061024b919061040c565b92509450945094915050565b6040516339dcd45760e01b81526001600160a01b03858116600483015260248201839052600091829182917f0000000000000000000000000000000000000000000000000000000000000000909116906339dcd457906044016040805180830381865afa1580156102cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102f091906103d2565b60405163bd4f121960e01b81526001600160a01b038084166004830152898116602483015260448201899052606482018890529294509092507f00000000000000000000000000000000000000000000000000000000000000009091169063bd4f121990608401602060405180830381865afa158015610227573d6000803e3d6000fd5b6001600160a01b038116811461038957600080fd5b50565b600080600080608085870312156103a257600080fd5b84356103ad81610374565b935060208501356103bd81610374565b93969395505050506040820135916060013590565b600080604083850312156103e557600080fd5b82516103f081610374565b602084015190925061040181610374565b809150509250929050565b60006020828403121561041e57600080fd5b815161042981610374565b939250505056fea264697066735822122031bfd9110a4e367d5f98b448035b6db0472cebe854305d509547385279a5432b64736f6c63430008130033",
156
+ "bytecode": "0x60c060405234801561001057600080fd5b5060405161050738038061050783398101604081905261002f9161005e565b6001600160a01b039182166080521660a052610098565b6001600160a01b038116811461005b57600080fd5b50565b6000806040838503121561007157600080fd5b825161007c81610046565b602084015190925061008d81610046565b809150509250929050565b60805160a0516104306100d76000396000818160c5015281816101d1015261032101526000818160530152818161012e015261027c01526104306000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806375689f8314610051578063de4d53fd14610090578063e63d50ff146100c3578063ffc643ca146100e9575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100a361009e366004610384565b6100fc565b604080516001600160a01b03938416815292909116602083015201610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b6100a36100f7366004610384565b61024a565b604051631442f7bb60e01b81526001600160a01b038681166004830152602482018690526044820183905260009182917f00000000000000000000000000000000000000000000000000000000000000001690631442f7bb90606401602060405180830381865afa158015610175573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019991906103d6565b60405163bd4f121960e01b81526001600160a01b038083166004830152878116602483015260448201879052606482018690529192507f00000000000000000000000000000000000000000000000000000000000000009091169063bd4f121990608401602060405180830381865afa15801561021a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023e91906103d6565b91509550959350505050565b604051631d9324cd60e31b81526001600160a01b038681166004830152602482018690526044820183905260009182917f0000000000000000000000000000000000000000000000000000000000000000169063ec992668906064016020604051808303816000875af11580156102c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e991906103d6565b604051630e1a07f560e01b81526001600160a01b038083166004830152878116602483015260448201879052606482018690529192507f000000000000000000000000000000000000000000000000000000000000000090911690630e1a07f5906084016020604051808303816000875af115801561021a573d6000803e3d6000fd5b6001600160a01b038116811461038157600080fd5b50565b600080600080600060a0868803121561039c57600080fd5b85356103a78161036c565b94506020860135935060408601356103be8161036c565b94979396509394606081013594506080013592915050565b6000602082840312156103e857600080fd5b81516103f38161036c565b939250505056fea264697066735822122020a143bc4274577e61018885b1497d3d548317895553ccc9ead215bc303b532364736f6c63430008170033",
157
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806375689f8314610051578063de4d53fd14610090578063e63d50ff146100c3578063ffc643ca146100e9575b600080fd5b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b0390911681526020015b60405180910390f35b6100a361009e366004610384565b6100fc565b604080516001600160a01b03938416815292909116602083015201610087565b7f0000000000000000000000000000000000000000000000000000000000000000610073565b6100a36100f7366004610384565b61024a565b604051631442f7bb60e01b81526001600160a01b038681166004830152602482018690526044820183905260009182917f00000000000000000000000000000000000000000000000000000000000000001690631442f7bb90606401602060405180830381865afa158015610175573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019991906103d6565b60405163bd4f121960e01b81526001600160a01b038083166004830152878116602483015260448201879052606482018690529192507f00000000000000000000000000000000000000000000000000000000000000009091169063bd4f121990608401602060405180830381865afa15801561021a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061023e91906103d6565b91509550959350505050565b604051631d9324cd60e31b81526001600160a01b038681166004830152602482018690526044820183905260009182917f0000000000000000000000000000000000000000000000000000000000000000169063ec992668906064016020604051808303816000875af11580156102c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102e991906103d6565b604051630e1a07f560e01b81526001600160a01b038083166004830152878116602483015260448201879052606482018690529192507f000000000000000000000000000000000000000000000000000000000000000090911690630e1a07f5906084016020604051808303816000875af115801561021a573d6000803e3d6000fd5b6001600160a01b038116811461038157600080fd5b50565b600080600080600060a0868803121561039c57600080fd5b85356103a78161036c565b94506020860135935060408601356103be8161036c565b94979396509394606081013594506080013592915050565b6000602082840312156103e857600080fd5b81516103f38161036c565b939250505056fea264697066735822122020a143bc4274577e61018885b1497d3d548317895553ccc9ead215bc303b532364736f6c63430008170033",
158
158
  "devdoc": {
159
159
  "kind": "dev",
160
160
  "methods": {
161
- "calculateAddresses(address,address,bytes32,bytes32)": {
161
+ "calculateAddresses(address,uint256,address,bytes32,bytes32)": {
162
162
  "params": {
163
- "_authorityOwner": "The initial authority owner",
164
- "_dappOwner": "The initial DApp owner",
165
- "_salt": "The salt used to deterministically generate the addresses",
166
- "_templateHash": "The initial machine state hash"
163
+ "appOwner": "The initial application owner",
164
+ "authorityOwner": "The initial authority owner",
165
+ "epochLength": "The epoch length",
166
+ "salt": "The salt used to deterministically generate the addresses",
167
+ "templateHash": "The initial machine state hash"
167
168
  },
168
169
  "returns": {
169
- "application_": "The application address",
170
- "authority_": "The authority address",
171
- "history_": "The history address"
170
+ "application": "The application address",
171
+ "authority": "The authority address"
172
172
  }
173
173
  },
174
174
  "constructor": {
175
175
  "params": {
176
- "_applicationFactory": "The application factory",
177
- "_authorityHistoryPairFactory": "The authority-history pair factory"
176
+ "applicationFactory": "The application factory",
177
+ "authorityFactory": "The authority factory"
178
178
  }
179
179
  },
180
- "deployContracts(address,address,bytes32,bytes32)": {
180
+ "deployContracts(address,uint256,address,bytes32,bytes32)": {
181
+ "details": "Reverts if the authority owner address is zero.Reverts if the application owner address is zero.Reverts if the epoch length is zero.",
181
182
  "params": {
182
- "_authorityOwner": "The initial authority owner",
183
- "_dappOwner": "The initial DApp owner",
184
- "_salt": "The salt used to deterministically generate the addresses",
185
- "_templateHash": "The initial machine state hash"
183
+ "appOwner": "The initial application owner",
184
+ "authorityOwner": "The initial authority owner",
185
+ "epochLength": "The epoch length",
186
+ "salt": "The salt used to deterministically generate the addresses",
187
+ "templateHash": "The initial machine state hash"
186
188
  },
187
189
  "returns": {
188
- "application_": "The application contract",
189
- "authority_": "The authority contract",
190
- "history_": "The history contract"
190
+ "application": "The application contract",
191
+ "authority": "The authority contract"
191
192
  }
192
193
  },
193
194
  "getApplicationFactory()": {
@@ -195,9 +196,9 @@
195
196
  "_0": "The application factory"
196
197
  }
197
198
  },
198
- "getAuthorityHistoryPairFactory()": {
199
+ "getAuthorityFactory()": {
199
200
  "returns": {
200
- "_0": "The authority-history pair factory"
201
+ "_0": "The authority factory"
201
202
  }
202
203
  }
203
204
  },
@@ -207,20 +208,20 @@
207
208
  "userdoc": {
208
209
  "kind": "user",
209
210
  "methods": {
210
- "calculateAddresses(address,address,bytes32,bytes32)": {
211
- "notice": "Calculate the addresses of the application, authority and history contracts to be deployed deterministically."
211
+ "calculateAddresses(address,uint256,address,bytes32,bytes32)": {
212
+ "notice": "Calculate the addresses of the application and authority contracts to be deployed deterministically."
212
213
  },
213
- "deployContracts(address,address,bytes32,bytes32)": {
214
- "notice": "Deploy new application, authority and history contracts deterministically."
214
+ "deployContracts(address,uint256,address,bytes32,bytes32)": {
215
+ "notice": "Deploy new application and authority contracts deterministically."
215
216
  },
216
217
  "getApplicationFactory()": {
217
- "notice": "Get the factory used to deploy `CartesiDApp` contracts"
218
+ "notice": "Get the factory used to deploy `IApplication` contracts"
218
219
  },
219
- "getAuthorityHistoryPairFactory()": {
220
- "notice": "Get the factory used to deploy `Authority` and `History` contracts"
220
+ "getAuthorityFactory()": {
221
+ "notice": "Get the factory used to deploy `IAuthority` contracts"
221
222
  }
222
223
  },
223
- "notice": "Allows anyone to reliably deploy a new Authority-History pair, along with a CartesiDApp contract already linked to it.",
224
+ "notice": "Allows anyone to reliably deploy a new IAuthority contract, along with an IApplication contract already linked to it.",
224
225
  "version": 1
225
226
  }
226
227
  }