UNPKG

keep3r-v2

Version:

The Keep3r Network is a decentralized network for projects that need external devops, and for external teams to find keeper jobs

656 lines (655 loc) 24.6 kB
{ "_format": "hh-sol-artifact-1", "contractName": "Keep3rDisputableForTest", "sourceName": "solidity/for-test/peripherals/Keep3rDisputableForTest.sol", "abi": [ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AlreadyDisputed", "type": "error" }, { "inputs": [], "name": "DisputerExistent", "type": "error" }, { "inputs": [], "name": "DisputerUnexistent", "type": "error" }, { "inputs": [], "name": "JobDisputed", "type": "error" }, { "inputs": [], "name": "JobUnavailable", "type": "error" }, { "inputs": [], "name": "NoGovernanceZeroAddress", "type": "error" }, { "inputs": [], "name": "NotDisputed", "type": "error" }, { "inputs": [], "name": "OnlyDisputer", "type": "error" }, { "inputs": [], "name": "OnlyGovernance", "type": "error" }, { "inputs": [], "name": "OnlyPendingGovernance", "type": "error" }, { "inputs": [], "name": "OnlySlasher", "type": "error" }, { "inputs": [], "name": "SlasherExistent", "type": "error" }, { "inputs": [], "name": "SlasherUnexistent", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_keeper", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_bonding", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "Bonding", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_jobOrKeeper", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_disputer", "type": "address" } ], "name": "Dispute", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_disputer", "type": "address" } ], "name": "DisputerAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_disputer", "type": "address" } ], "name": "DisputerRemoved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_pendingGovernance", "type": "address" } ], "name": "GovernanceProposal", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_governance", "type": "address" } ], "name": "GovernanceSet", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_jobOrKeeper", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_resolver", "type": "address" } ], "name": "Resolve", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_slasher", "type": "address" } ], "name": "SlasherAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_slasher", "type": "address" } ], "name": "SlasherRemoved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "_keeperOrJob", "type": "address" }, { "indexed": true, "internalType": "address", "name": "_unbonding", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "Unbonding", "type": "event" }, { "inputs": [], "name": "acceptGovernance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_disputer", "type": "address" } ], "name": "addDisputer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_slasher", "type": "address" } ], "name": "addSlasher", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "bonds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "canActivateAfter", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "canWithdrawAfter", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_jobOrKeeper", "type": "address" } ], "name": "dispute", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "disputers", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "disputes", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "firstSeen", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "governance", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "hasBonded", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "jobTokenCredits", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "jobs", "outputs": [ { "internalType": "address[]", "name": "_list", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "keepers", "outputs": [ { "internalType": "address[]", "name": "_list", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "pendingBonds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingGovernance", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "pendingUnbonds", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_disputer", "type": "address" } ], "name": "removeDisputer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_slasher", "type": "address" } ], "name": "removeSlasher", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_jobOrKeeper", "type": "address" } ], "name": "resolve", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_governance", "type": "address" } ], "name": "setGovernance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "slashers", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "workCompleted", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x608060405234801561001057600080fd5b503380806100305760405162b293ed60e81b815260040160405180910390fd5b601480546001600160a01b0319166001600160a01b039290921691909117905550610b03806100606000396000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c8063951dc22c116100c3578063b87fcbff1161007c578063b87fcbff14610391578063cd22af1b146103b4578063e326ac43146103df578063f0f346b9146103ff578063f39c38a014610412578063f75f9f7b1461042557600080fd5b8063951dc22c146103025780639d5c33d81461030a578063a39744b51461031d578063aac6aa9c14610348578063ab033ea91461035b578063b0103b1a1461036e57600080fd5b8063274a8db411610115578063274a8db41461024657806355ea6c47146102795780635aa6e6751461028c57806368a9f19c146102b75780637c8fce23146102ca5780638cb22b76146102df57600080fd5b806307b435c21461015d57806315006b821461019b578063168f92e7146101c65780631b44555e146101f157806321040b0114610211578063238efcbc1461023c575b600080fd5b61018861016b366004610a4d565b600f60209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b6101886101a9366004610a4d565b600d60209081526000928352604080842090915290825290205481565b6101886101d4366004610a4d565b600660209081526000928352604080842090915290825290205481565b6101886101ff366004610a32565b60026020526000908152604090205481565b61018861021f366004610a4d565b601060209081526000928352604080842090915290825290205481565b610244610438565b005b610269610254366004610a32565b60176020526000908152604090205460ff1681565b6040519015158152602001610192565b610244610287366004610a32565b6104c1565b60145461029f906001600160a01b031681565b6040516001600160a01b039091168152602001610192565b6102446102c5366004610a32565b610575565b6102d2610635565b6040516101929190610a80565b6102696102ed366004610a32565b60116020526000908152604090205460ff1681565b6102d2610646565b610244610318366004610a32565b610652565b61018861032b366004610a4d565b600560209081526000928352604080842090915290825290205481565b610244610356366004610a32565b61070b565b610244610369366004610a32565b6107c0565b61026961037c366004610a32565b60046020526000908152604090205460ff1681565b61026961039f366004610a32565b60166020526000908152604090205460ff1681565b6101886103c2366004610a4d565b600e60209081526000928352604080842090915290825290205481565b6101886103ed366004610a32565b60036020526000908152604090205481565b61024461040d366004610a32565b610839565b60155461029f906001600160a01b031681565b610244610433366004610a32565b6108ee565b6015546001600160a01b0316331461046357604051637ef5703160e11b815260040160405180910390fd5b60158054601480546001600160a01b0383166001600160a01b031991821681179092559091169091556040519081527fc73be659241aade67e9a059bcf21494955018b213dbd1179054ccf928b13f3b69060200160405180910390a1565b3360009081526017602052604090205460ff166104f157604051630942721960e31b815260040160405180910390fd5b6001600160a01b03811660009081526004602052604090205460ff1661052a576040516310cec38560e21b815260040160405180910390fd5b6001600160a01b038116600081815260046020526040808220805460ff19169055513392917fe02b2375d8fb4aef3e5bc5d53bffcf70b6f185c5c93e69dcbe8b6cfc58e837e291a350565b6014546001600160a01b031633146105a0576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526016602052604090205460ff16156105da5760405163546da66560e11b815260040160405180910390fd5b6001600160a01b038116600081815260166020908152604091829020805460ff1916600117905590519182527f049ccb28ab796d3225573a065712f6e7754487ced56056cda8889c337511807b91015b60405180910390a150565b606061064160126109a6565b905090565b606061064160006109a6565b6014546001600160a01b0316331461067d576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526017602052604090205460ff16156106b75760405163274e25dd60e11b815260040160405180910390fd5b6001600160a01b038116600081815260176020908152604091829020805460ff1916600117905590519182527f8addc69f897ecca0e41d70ed4ff9d75a9148a615a0fbda8597e53aea2684302f910161062a565b6014546001600160a01b03163314610736576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526016602052604090205460ff1661076f576040516336fe17e760e21b815260040160405180910390fd5b6001600160a01b038116600081815260166020908152604091829020805460ff1916905590519182527f3ed8cbce8cab40e59282f1743e2b607effa08b5cbe0111bb4721134f2f80d025910161062a565b6014546001600160a01b031633146107eb576040516354348f0360e01b815260040160405180910390fd5b601580546001600160a01b0319166001600160a01b0383169081179091556040519081527fe987aaedf9d279143bdf1eee16cf1d0feb47742867d81083df8d6cd0a5ac857f9060200161062a565b6014546001600160a01b03163314610864576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526017602052604090205460ff1661089d57604051633ca0d42760e11b815260040160405180910390fd5b6001600160a01b038116600081815260176020908152604091829020805460ff1916905590519182527f5e8bd21d0a98cb2caf33706e56139ff40ffbdca7ec5d9d412a0a2292496dc70e910161062a565b3360009081526017602052604090205460ff1661091e57604051630942721960e31b815260040160405180910390fd5b6001600160a01b03811660009081526004602052604090205460ff1615610958576040516304ee891b60e11b815260040160405180910390fd5b6001600160a01b038116600081815260046020526040808220805460ff19166001179055513392917f070125a1c0f5202217aae14ec399abfaaa13c2fd98a91d43bd3a897dd4751e8091a350565b606060006109b3836109ba565b9392505050565b606081600001805480602002602001604051908101604052809291908181526020018280548015610a0a57602002820191906000526020600020905b8154815260200190600101908083116109f6575b50505050509050919050565b80356001600160a01b0381168114610a2d57600080fd5b919050565b600060208284031215610a4457600080fd5b6109b382610a16565b60008060408385031215610a6057600080fd5b610a6983610a16565b9150610a7760208401610a16565b90509250929050565b6020808252825182820181905260009190848201906040850190845b81811015610ac15783516001600160a01b031683529284019291840191600101610a9c565b5090969550505050505056fea264697066735822122085378f394db3025c06a14897f9db08ecc1f9e9be3ee7b7a0d56dd675fce14c7c64736f6c63430008070033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c8063951dc22c116100c3578063b87fcbff1161007c578063b87fcbff14610391578063cd22af1b146103b4578063e326ac43146103df578063f0f346b9146103ff578063f39c38a014610412578063f75f9f7b1461042557600080fd5b8063951dc22c146103025780639d5c33d81461030a578063a39744b51461031d578063aac6aa9c14610348578063ab033ea91461035b578063b0103b1a1461036e57600080fd5b8063274a8db411610115578063274a8db41461024657806355ea6c47146102795780635aa6e6751461028c57806368a9f19c146102b75780637c8fce23146102ca5780638cb22b76146102df57600080fd5b806307b435c21461015d57806315006b821461019b578063168f92e7146101c65780631b44555e146101f157806321040b0114610211578063238efcbc1461023c575b600080fd5b61018861016b366004610a4d565b600f60209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b6101886101a9366004610a4d565b600d60209081526000928352604080842090915290825290205481565b6101886101d4366004610a4d565b600660209081526000928352604080842090915290825290205481565b6101886101ff366004610a32565b60026020526000908152604090205481565b61018861021f366004610a4d565b601060209081526000928352604080842090915290825290205481565b610244610438565b005b610269610254366004610a32565b60176020526000908152604090205460ff1681565b6040519015158152602001610192565b610244610287366004610a32565b6104c1565b60145461029f906001600160a01b031681565b6040516001600160a01b039091168152602001610192565b6102446102c5366004610a32565b610575565b6102d2610635565b6040516101929190610a80565b6102696102ed366004610a32565b60116020526000908152604090205460ff1681565b6102d2610646565b610244610318366004610a32565b610652565b61018861032b366004610a4d565b600560209081526000928352604080842090915290825290205481565b610244610356366004610a32565b61070b565b610244610369366004610a32565b6107c0565b61026961037c366004610a32565b60046020526000908152604090205460ff1681565b61026961039f366004610a32565b60166020526000908152604090205460ff1681565b6101886103c2366004610a4d565b600e60209081526000928352604080842090915290825290205481565b6101886103ed366004610a32565b60036020526000908152604090205481565b61024461040d366004610a32565b610839565b60155461029f906001600160a01b031681565b610244610433366004610a32565b6108ee565b6015546001600160a01b0316331461046357604051637ef5703160e11b815260040160405180910390fd5b60158054601480546001600160a01b0383166001600160a01b031991821681179092559091169091556040519081527fc73be659241aade67e9a059bcf21494955018b213dbd1179054ccf928b13f3b69060200160405180910390a1565b3360009081526017602052604090205460ff166104f157604051630942721960e31b815260040160405180910390fd5b6001600160a01b03811660009081526004602052604090205460ff1661052a576040516310cec38560e21b815260040160405180910390fd5b6001600160a01b038116600081815260046020526040808220805460ff19169055513392917fe02b2375d8fb4aef3e5bc5d53bffcf70b6f185c5c93e69dcbe8b6cfc58e837e291a350565b6014546001600160a01b031633146105a0576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526016602052604090205460ff16156105da5760405163546da66560e11b815260040160405180910390fd5b6001600160a01b038116600081815260166020908152604091829020805460ff1916600117905590519182527f049ccb28ab796d3225573a065712f6e7754487ced56056cda8889c337511807b91015b60405180910390a150565b606061064160126109a6565b905090565b606061064160006109a6565b6014546001600160a01b0316331461067d576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526017602052604090205460ff16156106b75760405163274e25dd60e11b815260040160405180910390fd5b6001600160a01b038116600081815260176020908152604091829020805460ff1916600117905590519182527f8addc69f897ecca0e41d70ed4ff9d75a9148a615a0fbda8597e53aea2684302f910161062a565b6014546001600160a01b03163314610736576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526016602052604090205460ff1661076f576040516336fe17e760e21b815260040160405180910390fd5b6001600160a01b038116600081815260166020908152604091829020805460ff1916905590519182527f3ed8cbce8cab40e59282f1743e2b607effa08b5cbe0111bb4721134f2f80d025910161062a565b6014546001600160a01b031633146107eb576040516354348f0360e01b815260040160405180910390fd5b601580546001600160a01b0319166001600160a01b0383169081179091556040519081527fe987aaedf9d279143bdf1eee16cf1d0feb47742867d81083df8d6cd0a5ac857f9060200161062a565b6014546001600160a01b03163314610864576040516354348f0360e01b815260040160405180910390fd5b6001600160a01b03811660009081526017602052604090205460ff1661089d57604051633ca0d42760e11b815260040160405180910390fd5b6001600160a01b038116600081815260176020908152604091829020805460ff1916905590519182527f5e8bd21d0a98cb2caf33706e56139ff40ffbdca7ec5d9d412a0a2292496dc70e910161062a565b3360009081526017602052604090205460ff1661091e57604051630942721960e31b815260040160405180910390fd5b6001600160a01b03811660009081526004602052604090205460ff1615610958576040516304ee891b60e11b815260040160405180910390fd5b6001600160a01b038116600081815260046020526040808220805460ff19166001179055513392917f070125a1c0f5202217aae14ec399abfaaa13c2fd98a91d43bd3a897dd4751e8091a350565b606060006109b3836109ba565b9392505050565b606081600001805480602002602001604051908101604052809291908181526020018280548015610a0a57602002820191906000526020600020905b8154815260200190600101908083116109f6575b50505050509050919050565b80356001600160a01b0381168114610a2d57600080fd5b919050565b600060208284031215610a4457600080fd5b6109b382610a16565b60008060408385031215610a6057600080fd5b610a6983610a16565b9150610a7760208401610a16565b90509250929050565b6020808252825182820181905260009190848201906040850190845b81811015610ac15783516001600160a01b031683529284019291840191600101610a9c565b5090969550505050505056fea264697066735822122085378f394db3025c06a14897f9db08ecc1f9e9be3ee7b7a0d56dd675fce14c7c64736f6c63430008070033", "linkReferences": {}, "deployedLinkReferences": {} }