@everyprotocol/every-cli 0.1.0

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.
package/abis/ISet.json ADDED
@@ -0,0 +1 @@
1
+ {"abi":[{"type":"function","name":"descriptor","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"od","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"elements","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"elems","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"owner","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"owner_","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"revision","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"rev","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"snapshot","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"od","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"elems","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"sota","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"od","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"owner_","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"touch","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"od","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"transfer","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"to","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"upgrade","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"kindRev0","type":"uint32","internalType":"uint32"},{"name":"setRev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"od","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"uri","inputs":[],"outputs":[{"name":"uri_","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"event","name":"Created","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"od","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"elems","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"owner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Destroyed","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"od","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"anonymous":false},{"type":"event","name":"Touched","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"od","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"anonymous":false},{"type":"event","name":"Transferred","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"from","type":"address","indexed":false,"internalType":"address"},{"name":"to","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Updated","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"od","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"elems","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"od","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"descriptor(uint64,uint32)":"46fe3415","elements(uint64,uint32)":"f174a533","owner(uint64)":"4d1f8c31","revision(uint64,uint32)":"626ab632","snapshot(uint64,uint32)":"747b8fb1","sota(uint64)":"2f39789e","supportsInterface(bytes4)":"01ffc9a7","touch(uint64)":"0ad0bd6f","transfer(uint64,address)":"7ef09476","upgrade(uint64,uint32,uint32)":"55837438","uri()":"eac989f8"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"elems\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"Created\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"name\":\"Destroyed\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"name\":\"Touched\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"Transferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"elems\",\"type\":\"bytes32[]\"}],\"name\":\"Updated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"descriptor\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"elements\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"elems\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"revision\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"snapshot\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"},{\"internalType\":\"bytes32[]\",\"name\":\"elems\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"sota\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner_\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"touch\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"transfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"kindRev0\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev0\",\"type\":\"uint32\"}],\"name\":\"upgrade\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"od\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"uri_\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Created(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32[],address)\":{\"params\":{\"elems\":\"Elements of the object\",\"id\":\"Object ID\",\"od\":\"Object descriptor\",\"owner\":\"Initial owner\"}},\"Destroyed(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"params\":{\"id\":\"Object ID\",\"od\":\"Descriptor before destruction\"}},\"Touched(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"params\":{\"id\":\"Object ID\",\"od\":\"Latest descriptor\"}},\"Transferred(uint64,address,address)\":{\"params\":{\"from\":\"Previous owner\",\"id\":\"Object ID\",\"to\":\"New owner\"}},\"Updated(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32[])\":{\"params\":{\"elems\":\"Updated elements\",\"id\":\"Object ID\",\"od\":\"Updated descriptor\"}},\"Upgraded(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"params\":{\"id\":\"Object ID\",\"od\":\"Descriptor after upgrade\"}}},\"kind\":\"dev\",\"methods\":{\"descriptor(uint64,uint32)\":{\"params\":{\"id\":\"Object ID\",\"rev0\":\"Revision number (0 = latest)\"},\"returns\":{\"od\":\"Descriptor at that revision\"}},\"elements(uint64,uint32)\":{\"params\":{\"id\":\"Object ID\",\"rev0\":\"Revision number (0 = latest)\"},\"returns\":{\"elems\":\"Elements array at that revision\"}},\"owner(uint64)\":{\"params\":{\"id\":\"Object ID\"},\"returns\":{\"owner_\":\"Current owner address\"}},\"revision(uint64,uint32)\":{\"params\":{\"id\":\"Object ID\",\"rev0\":\"Revision to check (0 = latest)\"},\"returns\":{\"rev\":\"Valid revision (0 if invalid)\"}},\"snapshot(uint64,uint32)\":{\"params\":{\"id\":\"Object ID\",\"rev0\":\"Revision number to query (0 = latest)\"},\"returns\":{\"elems\":\"Elements at the specified revision\",\"od\":\"Descriptor at the specified revision\"}},\"sota(uint64)\":{\"params\":{\"id\":\"Object ID\"},\"returns\":{\"od\":\"Descriptor at the specified revision\",\"owner_\":\"Current owner (not historical)\"}},\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[ERC section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"},\"touch(uint64)\":{\"params\":{\"id\":\"Object ID\"},\"returns\":{\"od\":\"Descriptor after touch\"}},\"transfer(uint64,address)\":{\"params\":{\"id\":\"Object ID\",\"to\":\"Address of the new owner\"}},\"upgrade(uint64,uint32,uint32)\":{\"params\":{\"id\":\"Object ID\",\"kindRev0\":\"New kind revision (0 = no change)\",\"setRev0\":\"New set revision (0 = no change)\"},\"returns\":{\"od\":\"Descriptor after upgrade\"}},\"uri()\":{\"details\":\"Client should replace `{id}` and `{rev}` placeholders\",\"returns\":{\"uri_\":\"URI template string\"}}},\"title\":\"ISet\",\"version\":1},\"userdoc\":{\"events\":{\"Created(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32[],address)\":{\"notice\":\"Emitted when a new object is created\"},\"Destroyed(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"notice\":\"Emitted when an object is destroyed\"},\"Touched(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"notice\":\"Emitted when an object is touched (bumped without content change)\"},\"Transferred(uint64,address,address)\":{\"notice\":\"Emitted when ownership is transferred\"},\"Updated(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32[])\":{\"notice\":\"Emitted when an object is updated\"},\"Upgraded(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"notice\":\"Emitted when an object is upgraded\"}},\"kind\":\"user\",\"methods\":{\"descriptor(uint64,uint32)\":{\"notice\":\"Get descriptor at a specific revision\"},\"elements(uint64,uint32)\":{\"notice\":\"Get elements at a specific revision\"},\"owner(uint64)\":{\"notice\":\"Get current owner of an object\"},\"revision(uint64,uint32)\":{\"notice\":\"Resolve and validate a revision number\"},\"snapshot(uint64,uint32)\":{\"notice\":\"Get descriptor and elements at a specific revision\"},\"sota(uint64)\":{\"notice\":\"Get the latest descriptor and current owner\"},\"touch(uint64)\":{\"notice\":\"Touch an object to increment revision without content change\"},\"transfer(uint64,address)\":{\"notice\":\"Transfer ownership of an object\"},\"upgrade(uint64,uint32,uint32)\":{\"notice\":\"Upgrade an object to a new kind or set revision\"},\"uri()\":{\"notice\":\"Get URI template for metadata\"}},\"notice\":\"Minimal interface for set contracts\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/user/ISet.sol\":\"ISet\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@create3-factory/=lib/create3-factory/src/\",\":@everyprotocol/core/=contracts/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/\",\":@solmate/=lib/solmate/src/\",\":create3-factory/=lib/create3-factory/\",\":ds-test/=lib/solmate/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/\",\":solmate/=lib/solmate/src/\"],\"viaIR\":true},\"sources\":{\"contracts/interfaces/user/ISet.sol\":{\"keccak256\":\"0xe465548515b146f8ebf38a3209ad33bb4dfb9d84337925cf49ec320316c8216f\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://30a88ff437bf1d6f397b2602441763d142077280187d3c4cb349a973598a96f5\",\"dweb:/ipfs/QmSJp2dhvu32hMreXTGrxc1t4XM665Sr7Z33VicbhEzxi8\"]},\"contracts/types/Descriptor.sol\":{\"keccak256\":\"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1\",\"dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT\"]},\"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol\":{\"keccak256\":\"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621\",\"dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false},{"internalType":"bytes32[]","name":"elems","type":"bytes32[]","indexed":false},{"internalType":"address","name":"owner","type":"address","indexed":false}],"type":"event","name":"Created","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false}],"type":"event","name":"Destroyed","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false}],"type":"event","name":"Touched","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"address","name":"from","type":"address","indexed":false},{"internalType":"address","name":"to","type":"address","indexed":false}],"type":"event","name":"Transferred","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false},{"internalType":"bytes32[]","name":"elems","type":"bytes32[]","indexed":false}],"type":"event","name":"Updated","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"descriptor","outputs":[{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"elements","outputs":[{"internalType":"bytes32[]","name":"elems","type":"bytes32[]"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"owner_","type":"address"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"revision","outputs":[{"internalType":"uint32","name":"rev","type":"uint32"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"snapshot","outputs":[{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]},{"internalType":"bytes32[]","name":"elems","type":"bytes32[]"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"view","type":"function","name":"sota","outputs":[{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]},{"internalType":"address","name":"owner_","type":"address"}]},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"view","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"nonpayable","type":"function","name":"touch","outputs":[{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"address","name":"to","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"transfer"},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"kindRev0","type":"uint32"},{"internalType":"uint32","name":"setRev0","type":"uint32"}],"stateMutability":"nonpayable","type":"function","name":"upgrade","outputs":[{"internalType":"struct Descriptor","name":"od","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[],"stateMutability":"view","type":"function","name":"uri","outputs":[{"internalType":"string","name":"uri_","type":"string"}]}],"devdoc":{"kind":"dev","methods":{"descriptor(uint64,uint32)":{"params":{"id":"Object ID","rev0":"Revision number (0 = latest)"},"returns":{"od":"Descriptor at that revision"}},"elements(uint64,uint32)":{"params":{"id":"Object ID","rev0":"Revision number (0 = latest)"},"returns":{"elems":"Elements array at that revision"}},"owner(uint64)":{"params":{"id":"Object ID"},"returns":{"owner_":"Current owner address"}},"revision(uint64,uint32)":{"params":{"id":"Object ID","rev0":"Revision to check (0 = latest)"},"returns":{"rev":"Valid revision (0 if invalid)"}},"snapshot(uint64,uint32)":{"params":{"id":"Object ID","rev0":"Revision number to query (0 = latest)"},"returns":{"elems":"Elements at the specified revision","od":"Descriptor at the specified revision"}},"sota(uint64)":{"params":{"id":"Object ID"},"returns":{"od":"Descriptor at the specified revision","owner_":"Current owner (not historical)"}},"supportsInterface(bytes4)":{"details":"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[ERC section] to learn more about how these ids are created. This function call must use less than 30 000 gas."},"touch(uint64)":{"params":{"id":"Object ID"},"returns":{"od":"Descriptor after touch"}},"transfer(uint64,address)":{"params":{"id":"Object ID","to":"Address of the new owner"}},"upgrade(uint64,uint32,uint32)":{"params":{"id":"Object ID","kindRev0":"New kind revision (0 = no change)","setRev0":"New set revision (0 = no change)"},"returns":{"od":"Descriptor after upgrade"}},"uri()":{"details":"Client should replace `{id}` and `{rev}` placeholders","returns":{"uri_":"URI template string"}}},"version":1},"userdoc":{"kind":"user","methods":{"descriptor(uint64,uint32)":{"notice":"Get descriptor at a specific revision"},"elements(uint64,uint32)":{"notice":"Get elements at a specific revision"},"owner(uint64)":{"notice":"Get current owner of an object"},"revision(uint64,uint32)":{"notice":"Resolve and validate a revision number"},"snapshot(uint64,uint32)":{"notice":"Get descriptor and elements at a specific revision"},"sota(uint64)":{"notice":"Get the latest descriptor and current owner"},"touch(uint64)":{"notice":"Touch an object to increment revision without content change"},"transfer(uint64,address)":{"notice":"Transfer ownership of an object"},"upgrade(uint64,uint32,uint32)":{"notice":"Upgrade an object to a new kind or set revision"},"uri()":{"notice":"Get URI template for metadata"}},"version":1}},"settings":{"remappings":["@create3-factory/=lib/create3-factory/src/","@everyprotocol/core/=contracts/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/","@solmate/=lib/solmate/src/","create3-factory/=lib/create3-factory/","ds-test/=lib/solmate/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/interfaces/user/ISet.sol":"ISet"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"contracts/interfaces/user/ISet.sol":{"keccak256":"0xe465548515b146f8ebf38a3209ad33bb4dfb9d84337925cf49ec320316c8216f","urls":["bzz-raw://30a88ff437bf1d6f397b2602441763d142077280187d3c4cb349a973598a96f5","dweb:/ipfs/QmSJp2dhvu32hMreXTGrxc1t4XM665Sr7Z33VicbhEzxi8"],"license":"BUSL-1.1"},"contracts/types/Descriptor.sol":{"keccak256":"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4","urls":["bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1","dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT"],"license":"BUSL-1.1"},"lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol":{"keccak256":"0x79796192ec90263f21b464d5bc90b777a525971d3de8232be80d9c4f9fb353b8","urls":["bzz-raw://f6fda447a62815e8064f47eff0dd1cf58d9207ad69b5d32280f8d7ed1d1e4621","dweb:/ipfs/QmfDRc7pxfaXB2Dh9np5Uf29Na3pQ7tafRS684wd3GLjVL"],"license":"MIT"}},"version":1},"id":40}
@@ -0,0 +1 @@
1
+ {"abi":[{"type":"function","name":"setContract","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"code","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"setDescriptor","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"setOwner","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"owner","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"setRegister","inputs":[{"name":"data","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"setRevision","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"rev","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"setSnapshot","inputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"rev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"elems","type":"bytes32[]","internalType":"bytes32[]"}],"stateMutability":"view"},{"type":"function","name":"setSota","inputs":[{"name":"id","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"owner","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"setStatus","inputs":[{"name":"ids","type":"uint64[]","internalType":"uint64[]"}],"outputs":[{"name":"active","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"setTouch","inputs":[],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"setUpdate","inputs":[{"name":"data","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"setUpgrade","inputs":[{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"event","name":"SetRegistered","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"desc","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"code","type":"address","indexed":false,"internalType":"address"},{"name":"data","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"owner","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"SetTouched","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"desc","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"anonymous":false},{"type":"event","name":"SetUpdated","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"desc","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]},{"name":"data","type":"bytes32","indexed":false,"internalType":"bytes32"}],"anonymous":false},{"type":"event","name":"SetUpgraded","inputs":[{"name":"id","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"desc","type":"tuple","indexed":false,"internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"setContract(uint64)":"92338138","setDescriptor(uint64,uint32)":"fd644f03","setOwner(uint64)":"d9a0bd32","setRegister(bytes32)":"8b587840","setRevision(uint64,uint32)":"386956c7","setSnapshot(uint64,uint32)":"35b2419e","setSota(uint64)":"bb9c7404","setStatus(uint64[])":"cfbc0b2a","setTouch()":"00cc3a86","setUpdate(bytes32)":"16f469b4","setUpgrade(uint32,uint32)":"2aa81fde"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"SetRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"name\":\"SetTouched\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"name\":\"SetUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"indexed\":false,\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"name\":\"SetUpgraded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"setContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"code\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"setDescriptor\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"setOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"name\":\"setRegister\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"setRevision\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"internalType\":\"uint32\",\"name\":\"rev0\",\"type\":\"uint32\"}],\"name\":\"setSnapshot\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"},{\"internalType\":\"bytes32[]\",\"name\":\"elems\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"}],\"name\":\"setSota\",\"outputs\":[{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64[]\",\"name\":\"ids\",\"type\":\"uint64[]\"}],\"name\":\"setStatus\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"setTouch\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"name\":\"setUpdate\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"}],\"name\":\"setUpgrade\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"SetRegistered(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),address,bytes32,address)\":{\"params\":{\"code\":\"Address of the associated set contract\",\"data\":\"Hash of the associated matter (external content)\",\"desc\":\"Set descriptor after registration\",\"id\":\"ID of the new set\",\"owner\":\"Owner address of the set\"}},\"SetTouched(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"params\":{\"desc\":\"Descriptor after touch\",\"id\":\"ID of the set\"}},\"SetUpdated(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32)\":{\"params\":{\"data\":\"New data hash\",\"desc\":\"Updated descriptor\",\"id\":\"ID of the set\"}},\"SetUpgraded(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"params\":{\"desc\":\"Descriptor after upgrade\",\"id\":\"ID of the set\"}}},\"kind\":\"dev\",\"methods\":{\"setContract(uint64)\":{\"params\":{\"id\":\"Set ID\"},\"returns\":{\"code\":\"Address of the deployed contract\"}},\"setDescriptor(uint64,uint32)\":{\"params\":{\"id\":\"Set ID\",\"rev0\":\"Revision to query (0 = latest)\"},\"returns\":{\"desc\":\"Descriptor of the set at the specified revision\"}},\"setOwner(uint64)\":{\"params\":{\"id\":\"Set ID\"},\"returns\":{\"owner\":\"Owner address\"}},\"setRegister(bytes32)\":{\"params\":{\"data\":\"Hash of external content (e.g. metadata or schema)\"},\"returns\":{\"desc\":\"Descriptor after registration\",\"id\":\"ID of the new set\"}},\"setRevision(uint64,uint32)\":{\"params\":{\"id\":\"Set ID\",\"rev0\":\"Requested revision (0 = latest)\"},\"returns\":{\"rev\":\"Validated revision (0 if not found)\"}},\"setSnapshot(uint64,uint32)\":{\"params\":{\"id\":\"Set ID\",\"rev0\":\"Revision to query (0 = latest)\"},\"returns\":{\"desc\":\"Descriptor at the revision\",\"elems\":\"Packed element list\"}},\"setSota(uint64)\":{\"params\":{\"id\":\"Set ID\"},\"returns\":{\"desc\":\"Latest descriptor\",\"owner\":\"Current owner\"}},\"setStatus(uint64[])\":{\"params\":{\"ids\":\"List of set IDs\"},\"returns\":{\"active\":\"True if all sets have a revision > 0\"}},\"setTouch()\":{\"params\":{\"id\":\"ID of the set\"},\"returns\":{\"desc\":\"Descriptor after touch\",\"id\":\"ID of the set\"}},\"setUpdate(bytes32)\":{\"params\":{\"data\":\"New data hash\"},\"returns\":{\"desc\":\"Updated descriptor\",\"id\":\"ID of the updated set\"}},\"setUpgrade(uint32,uint32)\":{\"params\":{\"kindRev\":\"New kind revision (0 to skip)\",\"setRev\":\"New set revision (0 to skip)\"},\"returns\":{\"desc\":\"Descriptor after upgrade\",\"id\":\"ID of the set\"}}},\"title\":\"ISetRegistry\",\"version\":1},\"userdoc\":{\"events\":{\"SetRegistered(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),address,bytes32,address)\":{\"notice\":\"Emitted when a new set is registered\"},\"SetTouched(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"notice\":\"Emitted when a set is touched (revision bumped without content change)\"},\"SetUpdated(uint64,(uint32,uint32,uint32,uint32,uint64,uint64),bytes32)\":{\"notice\":\"Emitted when a set is updated\"},\"SetUpgraded(uint64,(uint32,uint32,uint32,uint32,uint64,uint64))\":{\"notice\":\"Emitted when a set is upgraded\"}},\"kind\":\"user\",\"methods\":{\"setContract(uint64)\":{\"notice\":\"Returns the contract address associated with a set\"},\"setDescriptor(uint64,uint32)\":{\"notice\":\"Returns the descriptor at a given revision\"},\"setOwner(uint64)\":{\"notice\":\"Returns the current owner of a set\"},\"setRegister(bytes32)\":{\"notice\":\"Registers a new set\"},\"setRevision(uint64,uint32)\":{\"notice\":\"Resolves and validates a specific revision\"},\"setSnapshot(uint64,uint32)\":{\"notice\":\"Returns descriptor and elements of a set at a specific revision\"},\"setSota(uint64)\":{\"notice\":\"Returns the latest descriptor and current owner\"},\"setStatus(uint64[])\":{\"notice\":\"Checks whether all provided set IDs are active\"},\"setTouch()\":{\"notice\":\"Touches a set (increments revision without any changes)\"},\"setUpdate(bytes32)\":{\"notice\":\"Updates the data hash of an existing set\"},\"setUpgrade(uint32,uint32)\":{\"notice\":\"Upgrades the kind or set revision\"}},\"notice\":\"Interface for registering and managing sets\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/core/ISetRegistry.sol\":\"ISetRegistry\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@create3-factory/=lib/create3-factory/src/\",\":@everyprotocol/core/=contracts/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/\",\":@solmate/=lib/solmate/src/\",\":create3-factory/=lib/create3-factory/\",\":ds-test/=lib/solmate/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/\",\":solmate/=lib/solmate/src/\"],\"viaIR\":true},\"sources\":{\"contracts/interfaces/core/ISetRegistry.sol\":{\"keccak256\":\"0x8e2ef94f79b1840e270c9db69e74b94945af61ca20cc48a46cd9b28fb52e2373\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://d541628c8b8c46cce3d048c86349d5e405e0d1754ebfde623fb3c71ab2f1c7cf\",\"dweb:/ipfs/QmYHhy2xe3RJC3EFfQvqXFm7nptYZUyKARjcjfrKGumHiV\"]},\"contracts/types/Descriptor.sol\":{\"keccak256\":\"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1\",\"dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false},{"internalType":"address","name":"code","type":"address","indexed":false},{"internalType":"bytes32","name":"data","type":"bytes32","indexed":false},{"internalType":"address","name":"owner","type":"address","indexed":false}],"type":"event","name":"SetRegistered","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false}],"type":"event","name":"SetTouched","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false},{"internalType":"bytes32","name":"data","type":"bytes32","indexed":false}],"type":"event","name":"SetUpdated","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64","indexed":false},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}],"indexed":false}],"type":"event","name":"SetUpgraded","anonymous":false},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"view","type":"function","name":"setContract","outputs":[{"internalType":"address","name":"code","type":"address"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"setDescriptor","outputs":[{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"view","type":"function","name":"setOwner","outputs":[{"internalType":"address","name":"owner","type":"address"}]},{"inputs":[{"internalType":"bytes32","name":"data","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setRegister","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"setRevision","outputs":[{"internalType":"uint32","name":"rev","type":"uint32"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"uint32","name":"rev0","type":"uint32"}],"stateMutability":"view","type":"function","name":"setSnapshot","outputs":[{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]},{"internalType":"bytes32[]","name":"elems","type":"bytes32[]"}]},{"inputs":[{"internalType":"uint64","name":"id","type":"uint64"}],"stateMutability":"view","type":"function","name":"setSota","outputs":[{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]},{"internalType":"address","name":"owner","type":"address"}]},{"inputs":[{"internalType":"uint64[]","name":"ids","type":"uint64[]"}],"stateMutability":"view","type":"function","name":"setStatus","outputs":[{"internalType":"bool","name":"active","type":"bool"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"setTouch","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"bytes32","name":"data","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"setUpdate","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"}],"stateMutability":"nonpayable","type":"function","name":"setUpgrade","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]}],"devdoc":{"kind":"dev","methods":{"setContract(uint64)":{"params":{"id":"Set ID"},"returns":{"code":"Address of the deployed contract"}},"setDescriptor(uint64,uint32)":{"params":{"id":"Set ID","rev0":"Revision to query (0 = latest)"},"returns":{"desc":"Descriptor of the set at the specified revision"}},"setOwner(uint64)":{"params":{"id":"Set ID"},"returns":{"owner":"Owner address"}},"setRegister(bytes32)":{"params":{"data":"Hash of external content (e.g. metadata or schema)"},"returns":{"desc":"Descriptor after registration","id":"ID of the new set"}},"setRevision(uint64,uint32)":{"params":{"id":"Set ID","rev0":"Requested revision (0 = latest)"},"returns":{"rev":"Validated revision (0 if not found)"}},"setSnapshot(uint64,uint32)":{"params":{"id":"Set ID","rev0":"Revision to query (0 = latest)"},"returns":{"desc":"Descriptor at the revision","elems":"Packed element list"}},"setSota(uint64)":{"params":{"id":"Set ID"},"returns":{"desc":"Latest descriptor","owner":"Current owner"}},"setStatus(uint64[])":{"params":{"ids":"List of set IDs"},"returns":{"active":"True if all sets have a revision > 0"}},"setTouch()":{"params":{"id":"ID of the set"},"returns":{"desc":"Descriptor after touch","id":"ID of the set"}},"setUpdate(bytes32)":{"params":{"data":"New data hash"},"returns":{"desc":"Updated descriptor","id":"ID of the updated set"}},"setUpgrade(uint32,uint32)":{"params":{"kindRev":"New kind revision (0 to skip)","setRev":"New set revision (0 to skip)"},"returns":{"desc":"Descriptor after upgrade","id":"ID of the set"}}},"version":1},"userdoc":{"kind":"user","methods":{"setContract(uint64)":{"notice":"Returns the contract address associated with a set"},"setDescriptor(uint64,uint32)":{"notice":"Returns the descriptor at a given revision"},"setOwner(uint64)":{"notice":"Returns the current owner of a set"},"setRegister(bytes32)":{"notice":"Registers a new set"},"setRevision(uint64,uint32)":{"notice":"Resolves and validates a specific revision"},"setSnapshot(uint64,uint32)":{"notice":"Returns descriptor and elements of a set at a specific revision"},"setSota(uint64)":{"notice":"Returns the latest descriptor and current owner"},"setStatus(uint64[])":{"notice":"Checks whether all provided set IDs are active"},"setTouch()":{"notice":"Touches a set (increments revision without any changes)"},"setUpdate(bytes32)":{"notice":"Updates the data hash of an existing set"},"setUpgrade(uint32,uint32)":{"notice":"Upgrades the kind or set revision"}},"version":1}},"settings":{"remappings":["@create3-factory/=lib/create3-factory/src/","@everyprotocol/core/=contracts/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/","@solmate/=lib/solmate/src/","create3-factory/=lib/create3-factory/","ds-test/=lib/solmate/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/interfaces/core/ISetRegistry.sol":"ISetRegistry"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"contracts/interfaces/core/ISetRegistry.sol":{"keccak256":"0x8e2ef94f79b1840e270c9db69e74b94945af61ca20cc48a46cd9b28fb52e2373","urls":["bzz-raw://d541628c8b8c46cce3d048c86349d5e405e0d1754ebfde623fb3c71ab2f1c7cf","dweb:/ipfs/QmYHhy2xe3RJC3EFfQvqXFm7nptYZUyKARjcjfrKGumHiV"],"license":"BUSL-1.1"},"contracts/types/Descriptor.sol":{"keccak256":"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4","urls":["bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1","dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT"],"license":"BUSL-1.1"}},"version":1},"id":32}
@@ -0,0 +1 @@
1
+ {"abi":[{"type":"function","name":"registerSet","inputs":[{"name":"data","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"touchSet","inputs":[],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"updateSet","inputs":[{"name":"data","type":"bytes32","internalType":"bytes32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"upgradeSet","inputs":[{"name":"kindRev0","type":"uint32","internalType":"uint32"},{"name":"setRev0","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"id","type":"uint64","internalType":"uint64"},{"name":"desc","type":"tuple","internalType":"struct Descriptor","components":[{"name":"traits","type":"uint32","internalType":"uint32"},{"name":"rev","type":"uint32","internalType":"uint32"},{"name":"kindRev","type":"uint32","internalType":"uint32"},{"name":"setRev","type":"uint32","internalType":"uint32"},{"name":"kindId","type":"uint64","internalType":"uint64"},{"name":"setId","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"registerSet(bytes32)":"361fecb5","touchSet()":"7f484bc8","updateSet(bytes32)":"5c33839f","upgradeSet(uint32,uint32)":"9c044dbb"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.28+commit.7893614a\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"name\":\"registerSet\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"touchSet\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"data\",\"type\":\"bytes32\"}],\"name\":\"updateSet\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"kindRev0\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev0\",\"type\":\"uint32\"}],\"name\":\"upgradeSet\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"id\",\"type\":\"uint64\"},{\"components\":[{\"internalType\":\"uint32\",\"name\":\"traits\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"rev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"kindRev\",\"type\":\"uint32\"},{\"internalType\":\"uint32\",\"name\":\"setRev\",\"type\":\"uint32\"},{\"internalType\":\"uint64\",\"name\":\"kindId\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"setId\",\"type\":\"uint64\"}],\"internalType\":\"struct Descriptor\",\"name\":\"desc\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"All methods operate on the set represented by the calling contract and must be access-controlled\",\"kind\":\"dev\",\"methods\":{\"registerSet(bytes32)\":{\"params\":{\"data\":\"Content hash (e.g., metadata or schema)\"},\"returns\":{\"desc\":\"Descriptor of the registered set\",\"id\":\"Newly assigned set ID\"}},\"touchSet()\":{\"returns\":{\"desc\":\"Descriptor after revision bump\",\"id\":\"Set ID\"}},\"updateSet(bytes32)\":{\"params\":{\"data\":\"New content hash\"},\"returns\":{\"desc\":\"Updated descriptor\",\"id\":\"Set ID\"}},\"upgradeSet(uint32,uint32)\":{\"details\":\"Pass 0 to skip updating either revision\",\"params\":{\"kindRev0\":\"New kind revision (0 = no change)\",\"setRev0\":\"New set revision (0 = no change)\"},\"returns\":{\"desc\":\"Descriptor after upgrade\",\"id\":\"Set ID\"}}},\"title\":\"ISetRegistryAdmin\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"registerSet(bytes32)\":{\"notice\":\"Registers the set represented by the calling contract\"},\"touchSet()\":{\"notice\":\"Increments the revision of the set represented by the calling contract\"},\"updateSet(bytes32)\":{\"notice\":\"Updates the content hash for the set represented by the calling contract\"},\"upgradeSet(uint32,uint32)\":{\"notice\":\"Upgrades the kind or set revision of the set represented by the calling contract\"}},\"notice\":\"Interface for privileged set registration and upgrade operations\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/interfaces/user/ISetRegistryAdmin.sol\":\"ISetRegistryAdmin\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[\":@create3-factory/=lib/create3-factory/src/\",\":@everyprotocol/core/=contracts/\",\":@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/\",\":@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/\",\":@solmate/=lib/solmate/src/\",\":create3-factory/=lib/create3-factory/\",\":ds-test/=lib/solmate/lib/ds-test/src/\",\":erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/\",\":forge-std/=lib/forge-std/src/\",\":halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/\",\":openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/\",\":openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/\",\":solmate/=lib/solmate/src/\"],\"viaIR\":true},\"sources\":{\"contracts/interfaces/user/ISetRegistryAdmin.sol\":{\"keccak256\":\"0x6ee06b2fcb0856304764b4eb760b2f865ccb807a58b77f2ffbcac2b3c76f4fa9\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://9f03fac28e88bef35f7086a0c65279051dcdae97fdb0831e3b27e7d405f6e864\",\"dweb:/ipfs/QmVEaQHQjSRrfA4wzS7LNM1duRQgD3UZMDob7CT8tAhKry\"]},\"contracts/types/Descriptor.sol\":{\"keccak256\":\"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4\",\"license\":\"BUSL-1.1\",\"urls\":[\"bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1\",\"dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.28+commit.7893614a"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes32","name":"data","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"registerSet","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"touchSet","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"bytes32","name":"data","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"updateSet","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]},{"inputs":[{"internalType":"uint32","name":"kindRev0","type":"uint32"},{"internalType":"uint32","name":"setRev0","type":"uint32"}],"stateMutability":"nonpayable","type":"function","name":"upgradeSet","outputs":[{"internalType":"uint64","name":"id","type":"uint64"},{"internalType":"struct Descriptor","name":"desc","type":"tuple","components":[{"internalType":"uint32","name":"traits","type":"uint32"},{"internalType":"uint32","name":"rev","type":"uint32"},{"internalType":"uint32","name":"kindRev","type":"uint32"},{"internalType":"uint32","name":"setRev","type":"uint32"},{"internalType":"uint64","name":"kindId","type":"uint64"},{"internalType":"uint64","name":"setId","type":"uint64"}]}]}],"devdoc":{"kind":"dev","methods":{"registerSet(bytes32)":{"params":{"data":"Content hash (e.g., metadata or schema)"},"returns":{"desc":"Descriptor of the registered set","id":"Newly assigned set ID"}},"touchSet()":{"returns":{"desc":"Descriptor after revision bump","id":"Set ID"}},"updateSet(bytes32)":{"params":{"data":"New content hash"},"returns":{"desc":"Updated descriptor","id":"Set ID"}},"upgradeSet(uint32,uint32)":{"details":"Pass 0 to skip updating either revision","params":{"kindRev0":"New kind revision (0 = no change)","setRev0":"New set revision (0 = no change)"},"returns":{"desc":"Descriptor after upgrade","id":"Set ID"}}},"version":1},"userdoc":{"kind":"user","methods":{"registerSet(bytes32)":{"notice":"Registers the set represented by the calling contract"},"touchSet()":{"notice":"Increments the revision of the set represented by the calling contract"},"updateSet(bytes32)":{"notice":"Updates the content hash for the set represented by the calling contract"},"upgradeSet(uint32,uint32)":{"notice":"Upgrades the kind or set revision of the set represented by the calling contract"}},"version":1}},"settings":{"remappings":["@create3-factory/=lib/create3-factory/src/","@everyprotocol/core/=contracts/","@openzeppelin/contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/contracts/","@openzeppelin/contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/contracts/","@solmate/=lib/solmate/src/","create3-factory/=lib/create3-factory/","ds-test/=lib/solmate/lib/ds-test/src/","erc4626-tests/=lib/openzeppelin-contracts-upgradeable/lib/erc4626-tests/","forge-std/=lib/forge-std/src/","halmos-cheatcodes/=lib/openzeppelin-contracts-upgradeable/lib/halmos-cheatcodes/src/","openzeppelin-contracts-upgradeable/=lib/openzeppelin-contracts-upgradeable/","openzeppelin-contracts/=lib/openzeppelin-contracts-upgradeable/lib/openzeppelin-contracts/","solmate/=lib/solmate/src/"],"optimizer":{"enabled":true,"runs":200},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"contracts/interfaces/user/ISetRegistryAdmin.sol":"ISetRegistryAdmin"},"evmVersion":"cancun","libraries":{},"viaIR":true},"sources":{"contracts/interfaces/user/ISetRegistryAdmin.sol":{"keccak256":"0x6ee06b2fcb0856304764b4eb760b2f865ccb807a58b77f2ffbcac2b3c76f4fa9","urls":["bzz-raw://9f03fac28e88bef35f7086a0c65279051dcdae97fdb0831e3b27e7d405f6e864","dweb:/ipfs/QmVEaQHQjSRrfA4wzS7LNM1duRQgD3UZMDob7CT8tAhKry"],"license":"BUSL-1.1"},"contracts/types/Descriptor.sol":{"keccak256":"0x37d21c3ba2b6fc1d92c0f90d4b5b9b6d8c9b16c9d36d769a7be93d16c0402fe4","urls":["bzz-raw://683a0796984d0e8a0ba15f01fa3ed8abfcd69d12f61b2eb84b7e3a41dfe48aa1","dweb:/ipfs/QmU4L5AFk9NzYtj8nXELhjhyGiCrZH4kycpdKWeJQir3bT"],"license":"BUSL-1.1"}},"version":1},"id":40}