From 13a41490d538743ae68b60be6d2449766e10ba35 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Mon, 30 Aug 2021 14:47:44 -0300 Subject: [PATCH 01/11] feat: transferrable subgraphs using an NFT - make the subgraph to use a single primary key - major refactor of data structures - refactor variable names and add migrate legacy subgraph - get subgraph data depending if legacy or new subgraph - improve validations - refactor all subgraph checks - update tests - NFT burn and mint --- contracts/base/SubgraphNFT.sol | 9 + contracts/discovery/GNS.sol | 743 ++++++++++++++--------------- contracts/discovery/GNSStorage.sol | 39 +- contracts/discovery/IGNS.sol | 80 ++-- package.json | 1 + test/gns.test.ts | 741 +++++++++++++--------------- test/lib/deployment.ts | 3 +- test/staking/delegation.test.ts | 3 + yarn.lock | 5 + 9 files changed, 777 insertions(+), 847 deletions(-) create mode 100644 contracts/base/SubgraphNFT.sol diff --git a/contracts/base/SubgraphNFT.sol b/contracts/base/SubgraphNFT.sol new file mode 100644 index 000000000..54286c986 --- /dev/null +++ b/contracts/base/SubgraphNFT.sol @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +pragma solidity ^0.7.4; + +import "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol"; + +abstract contract SubgraphNFT is ERC721Upgradeable { + function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {} +} diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index 1b36f8cfa..075833b3b 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -16,13 +16,13 @@ import "./GNSStorage.sol"; /** * @title GNS * @dev The Graph Name System contract provides a decentralized naming system for subgraphs - * used in the scope of the Graph Network. It translates subgraph names into subgraph versions. + * used in the scope of the Graph Network. It translates Subgraphs into Subgraph Versions. * Each version is associated with a Subgraph Deployment. The contract has no knowledge of * human-readable names. All human readable names emitted in events. * The contract implements a multicall behaviour to support batching multiple calls in a single * transaction. */ -contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { +contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { using SafeMath for uint256; // -- Constants -- @@ -48,96 +48,73 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { ); /** - * @dev Emitted when graph account sets a subgraphs metadata on IPFS + * @dev Emitted when the subgraph metadata is updated. */ - event SubgraphMetadataUpdated( - address indexed graphAccount, - uint256 indexed subgraphNumber, - bytes32 subgraphMetadata - ); + event SubgraphMetadataUpdated(uint256 indexed subgraphID, bytes32 subgraphMetadata); /** - * @dev Emitted when a `graph account` publishes a `subgraph` with a `version`. - * Every time this event is emitted, indicates a new version has been created. - * The event also emits a `metadataHash` with subgraph details and version details. + * @dev Emitted when a subgraph version is updated. */ - event SubgraphPublished( - address indexed graphAccount, - uint256 indexed subgraphNumber, + event SubgraphVersionUpdated( + uint256 indexed subgraphID, bytes32 indexed subgraphDeploymentID, bytes32 versionMetadata ); /** - * @dev Emitted when a graph account deprecated one of its subgraphs - */ - event SubgraphDeprecated(address indexed graphAccount, uint256 indexed subgraphNumber); - - /** - * @dev Emitted when a graphAccount creates an nSignal bonding curve that - * points to a subgraph deployment - */ - event NameSignalEnabled( - address indexed graphAccount, - uint256 indexed subgraphNumber, - bytes32 indexed subgraphDeploymentID, - uint32 reserveRatio - ); - - /** - * @dev Emitted when a name curator deposits its vSignal into an nSignal curve to mint nSignal + * @dev Emitted when a curator mints signal. */ - event NSignalMinted( - address indexed graphAccount, - uint256 indexed subgraphNumber, - address indexed nameCurator, + event SignalMinted( + uint256 indexed subgraphID, + address indexed curator, uint256 nSignalCreated, uint256 vSignalCreated, uint256 tokensDeposited ); /** - * @dev Emitted when a name curator burns its nSignal, which in turn burns - * the vSignal, and receives GRT + * @dev Emitted when a curator burns signal. */ - event NSignalBurned( - address indexed graphAccount, - uint256 indexed subgraphNumber, - address indexed nameCurator, + event SignalBurned( + uint256 indexed subgraphID, + address indexed curator, uint256 nSignalBurnt, uint256 vSignalBurnt, uint256 tokensReceived ); /** - * @dev Emitted when a graph account upgrades its nSignal curve to point to a new + * @dev Emitted when a subgraph is created. + */ + event SubgraphCreated( + uint256 indexed subgraphID, + bytes32 indexed subgraphDeploymentID, + uint32 reserveRatio + ); + + /** + * @dev Emitted when a subgraph is upgraded to point to a new * subgraph deployment, burning all the old vSignal and depositing the GRT into the - * new vSignal curve, creating new nSignal + * new vSignal curve. */ - event NameSignalUpgrade( - address indexed graphAccount, - uint256 indexed subgraphNumber, - uint256 newVSignalCreated, + event SubgraphUpgraded( + uint256 indexed subgraphID, + uint256 vSignalCreated, uint256 tokensSignalled, bytes32 indexed subgraphDeploymentID ); /** - * @dev Emitted when an nSignal curve has been permanently disabled + * @dev Emitted when a subgraph is deprecated. */ - event NameSignalDisabled( - address indexed graphAccount, - uint256 indexed subgraphNumber, - uint256 withdrawableGRT - ); + event SubgraphDeprecated(uint256 indexed subgraphID, uint256 withdrawableGRT); /** - * @dev Emitted when a nameCurator withdraws its GRT from a deprecated name signal pool + * @dev Emitted when a curator withdraws GRT from a deprecated subgraph */ event GRTWithdrawn( - address indexed graphAccount, - uint256 indexed subgraphNumber, - address indexed nameCurator, + uint256 indexed subgraphID, + address indexed curator, uint256 nSignalBurnt, uint256 withdrawnGRT ); @@ -145,20 +122,15 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { // -- Modifiers -- /** - * @dev Check if the owner is the graph account - * @param _graphAccount Address of the graph account + * @dev Emitted when a legacy subgraph is claimed */ - function _isGraphAccountOwner(address _graphAccount) private view { - address graphAccountOwner = erc1056Registry.identityOwner(_graphAccount); - require(graphAccountOwner == msg.sender, "GNS: Only graph account owner can call"); - } + event LegacySubgraphClaimed(address indexed graphAccount, uint256 subgraphNumber); /** - * @dev Modifier that allows a function to be called by owner of a graph account - * @param _graphAccount Address of the graph account + * @dev Modifier that allows only a subgraph operator to be the caller */ - modifier onlyGraphAccountOwner(address _graphAccount) { - _isGraphAccountOwner(_graphAccount); + modifier onlySubgraphAuth(uint256 _subgraphID) { + require(_isApprovedOrOwner(msg.sender, _subgraphID), "GNS: Must be authorized"); _; } @@ -167,15 +139,12 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { /** * @dev Initialize this contract. */ - function initialize( - address _controller, - address _bondingCurve, - address _didRegistry - ) external onlyImpl { + function initialize(address _controller, address _bondingCurve) external onlyImpl { Managed._initialize(_controller); bondingCurve = _bondingCurve; - erc1056Registry = IEthereumDIDRegistry(_didRegistry); + // TODO: review token symbol + __ERC721_init("Subgraph", "SUB"); // Settings _setOwnerTaxPercentage(500000); @@ -220,325 +189,263 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { uint8 _nameSystem, bytes32 _nameIdentifier, string calldata _name - ) external override onlyGraphAccountOwner(_graphAccount) { + ) external override { + require(_graphAccount == msg.sender, "GNS: Only can set your own name"); emit SetDefaultName(_graphAccount, _nameSystem, _nameIdentifier, _name); } /** - * @dev Allows a graph account update the metadata of a subgraph they have published - * @param _graphAccount Account that owns the subgraph - * @param _subgraphNumber Subgraph number + * @dev Allows a subgraph owner to update the metadata of a subgraph they have published + * @param _subgraphID Subgraph ID * @param _subgraphMetadata IPFS hash for the subgraph metadata */ - function updateSubgraphMetadata( - address _graphAccount, - uint256 _subgraphNumber, - bytes32 _subgraphMetadata - ) public override onlyGraphAccountOwner(_graphAccount) { - emit SubgraphMetadataUpdated(_graphAccount, _subgraphNumber, _subgraphMetadata); + function updateSubgraphMetadata(uint256 _subgraphID, bytes32 _subgraphMetadata) + public + override + onlySubgraphAuth(_subgraphID) + { + emit SubgraphMetadataUpdated(_subgraphID, _subgraphMetadata); } /** - * @dev Allows a graph account to publish a new subgraph, which means a new subgraph number - * will be used. - * @param _graphAccount Account that is publishing the subgraph - * @param _subgraphDeploymentID Subgraph deployment ID of the version, linked to the name + * @dev Publish a new subgraph. + * @param _subgraphDeploymentID Subgraph deployment for the subgraph * @param _versionMetadata IPFS hash for the subgraph version metadata * @param _subgraphMetadata IPFS hash for the subgraph metadata */ function publishNewSubgraph( - address _graphAccount, bytes32 _subgraphDeploymentID, bytes32 _versionMetadata, bytes32 _subgraphMetadata - ) external override notPaused onlyGraphAccountOwner(_graphAccount) { - uint256 subgraphNumber = graphAccountSubgraphNumbers[_graphAccount]; - _publishVersion(_graphAccount, subgraphNumber, _subgraphDeploymentID, _versionMetadata); - graphAccountSubgraphNumbers[_graphAccount] = graphAccountSubgraphNumbers[_graphAccount].add( - 1 - ); - updateSubgraphMetadata(_graphAccount, subgraphNumber, _subgraphMetadata); - _enableNameSignal(_graphAccount, subgraphNumber); + ) external override notPaused { + // Subgraph deployment must be non-empty + require(_subgraphDeploymentID != 0, "GNS: Cannot set deploymentID to 0 in publish"); + + // Init the subgraph + address subgraphOwner = msg.sender; + uint256 subgraphID = _nextSubgraphID(subgraphOwner); + SubgraphData storage subgraphData = _getSubgraphData(subgraphID); + subgraphData.subgraphDeploymentID = _subgraphDeploymentID; + subgraphData.reserveRatio = defaultReserveRatio; + + // Mint the NFT. Use the subgraphID as tokenId. + // This function will check the if tokenId already exists. + _mint(subgraphOwner, subgraphID); + + emit SubgraphCreated(subgraphID, _subgraphDeploymentID, defaultReserveRatio); + emit SubgraphMetadataUpdated(subgraphID, _subgraphMetadata); + emit SubgraphVersionUpdated(subgraphID, _subgraphDeploymentID, _versionMetadata); } /** - * @dev Allows a graph account to publish a new version of its subgraph. - * Version is derived from the occurrence of SubgraphPublished being emitted. - * The first time SubgraphPublished is called would be Version 0 - * @param _graphAccount Account that is publishing the subgraph - * @param _subgraphNumber Subgraph number for the account - * @param _subgraphDeploymentID Subgraph deployment ID of the version, linked to the name + * @dev Publish a new version of an existing subgraph. + * @param _subgraphID Subgraph ID + * @param _subgraphDeploymentID Subgraph deployment ID of the new version * @param _versionMetadata IPFS hash for the subgraph version metadata */ function publishNewVersion( - address _graphAccount, - uint256 _subgraphNumber, + uint256 _subgraphID, bytes32 _subgraphDeploymentID, bytes32 _versionMetadata - ) external override notPaused onlyGraphAccountOwner(_graphAccount) { - require( - isPublished(_graphAccount, _subgraphNumber), - "GNS: Cannot update version if not published, or has been deprecated" - ); - bytes32 oldSubgraphDeploymentID = subgraphs[_graphAccount][_subgraphNumber]; - require( - _subgraphDeploymentID != oldSubgraphDeploymentID, - "GNS: Cannot publish a new version with the same subgraph deployment ID" - ); + ) external override notPaused onlySubgraphAuth(_subgraphID) { + // Perform the upgrade from the current subgraph deployment to the new one. + // This involves burning all signal from the old deployment and using the funds to buy + // from the new deployment. + // This will also make the change to target to the new deployment. - _publishVersion(_graphAccount, _subgraphNumber, _subgraphDeploymentID, _versionMetadata); - _upgradeNameSignal(_graphAccount, _subgraphNumber, _subgraphDeploymentID); - } + // Subgraph check + SubgraphData storage subgraphData = _getSubgraphOrRevert(_subgraphID); - /** - * @dev Private function used by both external publishing functions - * @param _graphAccount Account that is publishing the subgraph - * @param _subgraphNumber Subgraph number for the account - * @param _subgraphDeploymentID Subgraph deployment ID of the version, linked to the name - * @param _versionMetadata IPFS hash for the subgraph version metadata - */ - function _publishVersion( - address _graphAccount, - uint256 _subgraphNumber, - bytes32 _subgraphDeploymentID, - bytes32 _versionMetadata - ) private { + // New subgraph deployment must be non-empty require(_subgraphDeploymentID != 0, "GNS: Cannot set deploymentID to 0 in publish"); - // Stores a subgraph deployment ID, which indicates a version has been created - subgraphs[_graphAccount][_subgraphNumber] = _subgraphDeploymentID; - - // Emit version and name data - emit SubgraphPublished( - _graphAccount, - _subgraphNumber, - _subgraphDeploymentID, - _versionMetadata + // New subgraph deployment must be different than current + require( + _subgraphDeploymentID != subgraphData.subgraphDeploymentID, + "GNS: Cannot publish a new version with the same subgraph deployment ID" ); - } - /** - * @dev Deprecate a subgraph. Can only be done by the graph account owner. - * @param _graphAccount Account that is deprecating the subgraph - * @param _subgraphNumber Subgraph number for the account - */ - function deprecateSubgraph(address _graphAccount, uint256 _subgraphNumber) - external - override - notPaused - onlyGraphAccountOwner(_graphAccount) - { + // This is to prevent the owner from front running its name curators signal by posting + // its own signal ahead, bringing the name curators in, and dumping on them + ICuration curation = curation(); require( - isPublished(_graphAccount, _subgraphNumber), - "GNS: Cannot deprecate a subgraph which does not exist" + !curation.isCurated(_subgraphDeploymentID), + "GNS: Owner cannot point to a subgraphID that has been pre-curated" ); - delete subgraphs[_graphAccount][_subgraphNumber]; - emit SubgraphDeprecated(_graphAccount, _subgraphNumber); + // Move all signal from previous version to new version + // NOTE: We will only do this as long as there is signal on the subgraph + if (subgraphData.nSignal > 0) { + // Burn all version signal in the name pool for tokens (w/no slippage protection) + uint256 tokens = curation.burn( + subgraphData.subgraphDeploymentID, + subgraphData.vSignal, + 0 + ); - _disableNameSignal(_graphAccount, _subgraphNumber); - } + // Take the owner cut of the curation tax, add it to the total + // Upgrade is only callable by the owner, we asume then that msg.sender = owner + address subgraphOwner = msg.sender; + uint256 tokensWithTax = _chargeOwnerTax( + tokens, + subgraphOwner, + curation.curationTaxPercentage() + ); - /** - * @dev Enable name signal on a graph accounts numbered subgraph, which points to a subgraph - * deployment - * @param _graphAccount Graph account enabling name signal - * @param _subgraphNumber Subgraph number being used - */ - function _enableNameSignal(address _graphAccount, uint256 _subgraphNumber) private { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - namePool.subgraphDeploymentID = subgraphs[_graphAccount][_subgraphNumber]; - namePool.reserveRatio = defaultReserveRatio; + // Update pool: constant nSignal, vSignal can change (w/no slippage protection) + subgraphData.subgraphDeploymentID = _subgraphDeploymentID; + (subgraphData.vSignal, ) = curation.mint( + subgraphData.subgraphDeploymentID, + tokensWithTax, + 0 + ); + emit SubgraphUpgraded( + _subgraphID, + subgraphData.vSignal, + tokensWithTax, + _subgraphDeploymentID + ); + } - emit NameSignalEnabled( - _graphAccount, - _subgraphNumber, - namePool.subgraphDeploymentID, - namePool.reserveRatio - ); + emit SubgraphVersionUpdated(_subgraphID, _subgraphDeploymentID, _versionMetadata); } /** - * @dev Update a name signal on a graph accounts numbered subgraph - * @param _graphAccount Graph account updating name signal - * @param _subgraphNumber Subgraph number being used - * @param _newSubgraphDeploymentID Deployment ID being upgraded to + * @dev Deprecate a subgraph. The bonding curve is destroyed, the vSignal is burned, and the GNS + * contract holds the GRT from burning the vSignal, which all curators can withdraw manually. + * Can only be done by the subgraph owner. + * @param _subgraphID Subgraph ID */ - function _upgradeNameSignal( - address _graphAccount, - uint256 _subgraphNumber, - bytes32 _newSubgraphDeploymentID - ) private { - // This is to prevent the owner from front running its name curators signal by posting - // its own signal ahead, bringing the name curators in, and dumping on them - ICuration curation = curation(); - require( - !curation.isCurated(_newSubgraphDeploymentID), - "GNS: Owner cannot point to a subgraphID that has been pre-curated" - ); - - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - require( - namePool.nSignal > 0, - "GNS: There must be nSignal on this subgraph for curve math to work" - ); - require(namePool.disabled == false, "GNS: Cannot be disabled"); - - // Burn all version signal in the name pool for tokens - uint256 tokens = curation.burn(namePool.subgraphDeploymentID, namePool.vSignal, 0); + function deprecateSubgraph(uint256 _subgraphID) + external + override + notPaused + onlySubgraphAuth(_subgraphID) + { + // Subgraph check + SubgraphData storage subgraphData = _getSubgraphOrRevert(_subgraphID); + + // Burn signal only if it has any available + if (subgraphData.nSignal > 0) { + subgraphData.withdrawableGRT = curation().burn( + subgraphData.subgraphDeploymentID, + subgraphData.vSignal, + 0 + ); + } - // Take the owner cut of the curation tax, add it to the total - uint32 curationTaxPercentage = curation.curationTaxPercentage(); - uint256 tokensWithTax = _chargeOwnerTax(tokens, _graphAccount, curationTaxPercentage); + // Deprecate the subgraph and do cleanup + subgraphData.disabled = true; + subgraphData.vSignal = 0; + subgraphData.reserveRatio = 0; + // NOTE: We don't reset the following variable as we use it to test if the Subgraph was ever created + // subgraphData.subgraphDeploymentID = 0; - // Update pool: constant nSignal, vSignal can change - namePool.subgraphDeploymentID = _newSubgraphDeploymentID; - (namePool.vSignal, ) = curation.mint(namePool.subgraphDeploymentID, tokensWithTax, 0); + // Burn the NFT + _burn(_subgraphID); - emit NameSignalUpgrade( - _graphAccount, - _subgraphNumber, - namePool.vSignal, - tokensWithTax, - _newSubgraphDeploymentID - ); + emit SubgraphDeprecated(_subgraphID, subgraphData.withdrawableGRT); } /** - * @dev Allow a name curator to mint some nSignal by depositing GRT - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number + * @dev Deposit GRT into a subgraph and mint signal. + * @param _subgraphID Subgraph ID * @param _tokensIn The amount of tokens the nameCurator wants to deposit * @param _nSignalOutMin Expected minimum amount of name signal to receive */ - function mintNSignal( - address _graphAccount, - uint256 _subgraphNumber, + function mintSignal( + uint256 _subgraphID, uint256 _tokensIn, uint256 _nSignalOutMin ) external override notPartialPaused { - // Pool checks - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - require(namePool.disabled == false, "GNS: Cannot be disabled"); - require( - namePool.subgraphDeploymentID != 0, - "GNS: Must deposit on a name signal that exists" - ); + // Subgraph checks + SubgraphData storage subgraphData = _getSubgraphOrRevert(_subgraphID); // Pull tokens from sender + address curator = msg.sender; TokenUtils.pullTokens(graphToken(), msg.sender, _tokensIn); // Get name signal to mint for tokens deposited - (uint256 vSignal, ) = curation().mint(namePool.subgraphDeploymentID, _tokensIn, 0); - uint256 nSignal = vSignalToNSignal(_graphAccount, _subgraphNumber, vSignal); + (uint256 vSignal, ) = curation().mint(subgraphData.subgraphDeploymentID, _tokensIn, 0); + uint256 nSignal = vSignalToNSignal(_subgraphID, vSignal); // Slippage protection require(nSignal >= _nSignalOutMin, "GNS: Slippage protection"); // Update pools - namePool.vSignal = namePool.vSignal.add(vSignal); - namePool.nSignal = namePool.nSignal.add(nSignal); - namePool.curatorNSignal[msg.sender] = namePool.curatorNSignal[msg.sender].add(nSignal); + subgraphData.vSignal = subgraphData.vSignal.add(vSignal); + subgraphData.nSignal = subgraphData.nSignal.add(nSignal); + subgraphData.curatorNSignal[curator] = subgraphData.curatorNSignal[curator].add(nSignal); - emit NSignalMinted(_graphAccount, _subgraphNumber, msg.sender, nSignal, vSignal, _tokensIn); + emit SignalMinted(_subgraphID, curator, nSignal, vSignal, _tokensIn); } /** - * @dev Allow a nameCurator to burn some of its nSignal and get GRT in return - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators + * @dev Burn signal for a subgraph and return the GRT. + * @param _subgraphID Subgraph ID * @param _nSignal The amount of nSignal the nameCurator wants to burn * @param _tokensOutMin Expected minimum amount of tokens to receive */ - function burnNSignal( - address _graphAccount, - uint256 _subgraphNumber, + function burnSignal( + uint256 _subgraphID, uint256 _nSignal, uint256 _tokensOutMin ) external override notPartialPaused { - // Pool checks - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - require(namePool.disabled == false, "GNS: Cannot be disabled"); + // Subgraph checks + SubgraphData storage subgraphData = _getSubgraphOrRevert(_subgraphID); // Curator balance checks - uint256 curatorNSignal = namePool.curatorNSignal[msg.sender]; + address curator = msg.sender; + uint256 curatorNSignal = subgraphData.curatorNSignal[curator]; require( _nSignal <= curatorNSignal, "GNS: Curator cannot withdraw more nSignal than they have" ); // Get tokens for name signal amount to burn - uint256 vSignal = nSignalToVSignal(_graphAccount, _subgraphNumber, _nSignal); - uint256 tokens = curation().burn(namePool.subgraphDeploymentID, vSignal, _tokensOutMin); + uint256 vSignal = nSignalToVSignal(_subgraphID, _nSignal); + uint256 tokens = curation().burn(subgraphData.subgraphDeploymentID, vSignal, _tokensOutMin); // Update pools - namePool.vSignal = namePool.vSignal.sub(vSignal); - namePool.nSignal = namePool.nSignal.sub(_nSignal); - namePool.curatorNSignal[msg.sender] = namePool.curatorNSignal[msg.sender].sub(_nSignal); - - // Return the tokens to the curator - TokenUtils.pushTokens(graphToken(), msg.sender, tokens); - - emit NSignalBurned(_graphAccount, _subgraphNumber, msg.sender, _nSignal, vSignal, tokens); - } - - /** - * @dev Owner disables the subgraph. This means the subgraph-number combination can no longer - * be used for name signal. The nSignal curve is destroyed, the vSignal is burned, and the GNS - * contract holds the GRT from burning the vSignal, which all curators can withdraw manually. - * @param _graphAccount Account that is deprecating its name curation - * @param _subgraphNumber Subgraph number - */ - function _disableNameSignal(address _graphAccount, uint256 _subgraphNumber) private { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - - // If no nSignal, then no need to burn vSignal - if (namePool.nSignal != 0) { - // Note: No slippage, burn at any cost - namePool.withdrawableGRT = curation().burn( - namePool.subgraphDeploymentID, - namePool.vSignal, - 0 - ); - namePool.vSignal = 0; - } + subgraphData.vSignal = subgraphData.vSignal.sub(vSignal); + subgraphData.nSignal = subgraphData.nSignal.sub(_nSignal); + subgraphData.curatorNSignal[curator] = subgraphData.curatorNSignal[curator].sub(_nSignal); - // Set the NameCurationPool fields to make it disabled - namePool.disabled = true; + // Return the tokens to the nameCurator + require(graphToken().transfer(curator, tokens), "GNS: Error sending tokens"); - emit NameSignalDisabled(_graphAccount, _subgraphNumber, namePool.withdrawableGRT); + emit SignalBurned(_subgraphID, curator, _nSignal, vSignal, tokens); } /** - * @dev When the subgraph curve is disabled, all nameCurators can call this function and - * withdraw the GRT they are entitled for its original deposit of vSignal - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators + * @dev Withdraw tokens from a deprecated subgraph. + * When the subgraph is deprecated, any curator can call this function and + * withdraw the GRT they are entitled for its original deposit + * @param _subgraphID Subgraph ID */ - function withdraw(address _graphAccount, uint256 _subgraphNumber) - external - override - notPartialPaused - { - // Pool checks - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - require(namePool.disabled == true, "GNS: Name bonding curve must be disabled first"); - require(namePool.withdrawableGRT > 0, "GNS: No more GRT to withdraw"); + function withdraw(uint256 _subgraphID) external override notPartialPaused { + // Subgraph validations + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); + require(subgraphData.disabled == true, "GNS: Must be disabled first"); + require(subgraphData.withdrawableGRT > 0, "GNS: No more GRT to withdraw"); - // Curator balance checks - uint256 curatorNSignal = namePool.curatorNSignal[msg.sender]; - require(curatorNSignal > 0, "GNS: Curator must have some nSignal to withdraw GRT"); + // Curator validations + address curator = msg.sender; + uint256 curatorNSignal = subgraphData.curatorNSignal[curator]; + require(curatorNSignal > 0, "GNS: No signal to withdraw GRT"); // Get curator share of tokens to be withdrawn - uint256 tokensOut = curatorNSignal.mul(namePool.withdrawableGRT).div(namePool.nSignal); - namePool.curatorNSignal[msg.sender] = 0; - namePool.nSignal = namePool.nSignal.sub(curatorNSignal); - namePool.withdrawableGRT = namePool.withdrawableGRT.sub(tokensOut); + uint256 tokensOut = curatorNSignal.mul(subgraphData.withdrawableGRT).div( + subgraphData.nSignal + ); + subgraphData.curatorNSignal[curator] = 0; + subgraphData.nSignal = subgraphData.nSignal.sub(curatorNSignal); + subgraphData.withdrawableGRT = subgraphData.withdrawableGRT.sub(tokensOut); // Return tokens to the curator - TokenUtils.pushTokens(graphToken(), msg.sender, tokensOut); + TokenUtils.pushTokens(graphToken(), curator, tokensOut); - emit GRTWithdrawn(_graphAccount, _subgraphNumber, msg.sender, curatorNSignal, tokensOut); + emit GRTWithdrawn(_subgraphID, curator, curatorNSignal, tokensOut); } /** @@ -584,17 +491,12 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { } /** - * @dev Calculate name signal to be returned for an amount of tokens. - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators - * @param _tokensIn Tokens being exchanged for name signal - * @return Amount of name signal and curation tax + * @dev Calculate subgraph signal to be returned for an amount of tokens. + * @param _subgraphID Subgraph ID + * @param _tokensIn Tokens being exchanged for subgraph signal + * @return Amount of subgraph signal and curation tax */ - function tokensToNSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _tokensIn - ) + function tokensToNSignal(uint256 _subgraphID, uint256 _tokensIn) public view override @@ -604,110 +506,207 @@ contract GNS is GNSV1Storage, GraphUpgradeable, IGNS, Multicall { uint256 ) { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); (uint256 vSignal, uint256 curationTax) = curation().tokensToSignal( - namePool.subgraphDeploymentID, + subgraphData.subgraphDeploymentID, _tokensIn ); - uint256 nSignal = vSignalToNSignal(_graphAccount, _subgraphNumber, vSignal); + uint256 nSignal = vSignalToNSignal(_subgraphID, vSignal); return (vSignal, nSignal, curationTax); } /** - * @dev Calculate tokens returned for an amount of name signal. - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators - * @param _nSignalIn Name signal being exchanged for tokens - * @return Amount of tokens returned for an amount of nSignal + * @dev Calculate tokens returned for an amount of subgraph signal. + * @param _subgraphID Subgraph ID + * @param _nSignalIn Subgraph signal being exchanged for tokens + * @return Amount of tokens returned for an amount of subgraph signal */ - function nSignalToTokens( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _nSignalIn - ) public view override returns (uint256, uint256) { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; - uint256 vSignal = nSignalToVSignal(_graphAccount, _subgraphNumber, _nSignalIn); - uint256 tokensOut = curation().signalToTokens(namePool.subgraphDeploymentID, vSignal); + function nSignalToTokens(uint256 _subgraphID, uint256 _nSignalIn) + public + view + override + returns (uint256, uint256) + { + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); + uint256 vSignal = nSignalToVSignal(_subgraphID, _nSignalIn); + uint256 tokensOut = curation().signalToTokens(subgraphData.subgraphDeploymentID, vSignal); return (vSignal, tokensOut); } /** - * @dev Calculate nSignal to be returned for an amount of vSignal. - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators - * @param _vSignalIn Amount of vSignal to exchange for name signal - * @return Amount of nSignal that can be bought + * @dev Calculate subgraph signal to be returned for an amount of subgraph deployment signal. + * @param _subgraphID Subgraph ID + * @param _vSignalIn Amount of subgraph deployment signal to exchange for subgraph signal + * @return Amount of subgraph signal that can be bought */ - function vSignalToNSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _vSignalIn - ) public view override returns (uint256) { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; + function vSignalToNSignal(uint256 _subgraphID, uint256 _vSignalIn) + public + view + override + returns (uint256) + { + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); // Handle initialization by using 1:1 version to name signal - if (namePool.vSignal == 0) { + if (subgraphData.vSignal == 0) { return _vSignalIn; } return BancorFormula(bondingCurve).calculatePurchaseReturn( - namePool.nSignal, - namePool.vSignal, - namePool.reserveRatio, + subgraphData.nSignal, + subgraphData.vSignal, + subgraphData.reserveRatio, _vSignalIn ); } /** - * @dev Calculate vSignal to be returned for an amount of name signal. - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators - * @param _nSignalIn Name signal being exchanged for vSignal - * @return Amount of vSignal that can be returned + * @dev Calculate subgraph deployment signal to be returned for an amount of subgraph signal. + * @param _subgraphID Subgraph ID + * @param _nSignalIn Subgraph signal being exchanged for subgraph deployment signal + * @return Amount of subgraph deployment signal that can be returned */ - function nSignalToVSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _nSignalIn - ) public view override returns (uint256) { - NameCurationPool storage namePool = nameSignals[_graphAccount][_subgraphNumber]; + function nSignalToVSignal(uint256 _subgraphID, uint256 _nSignalIn) + public + view + override + returns (uint256) + { + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); return BancorFormula(bondingCurve).calculateSaleReturn( - namePool.nSignal, - namePool.vSignal, - namePool.reserveRatio, + subgraphData.nSignal, + subgraphData.vSignal, + subgraphData.reserveRatio, _nSignalIn ); } /** - * @dev Get the amount of name signal a curator has on a name pool. - * @param _graphAccount Subgraph owner - * @param _subgraphNumber Subgraph owners subgraph number which was curated on by nameCurators - * @param _curator Curator to look up to see n signal balance - * @return Amount of name signal owned by a curator for the name pool + * @dev Get the amount of subgraph signal a curator has. + * @param _subgraphID Subgraph ID + * @param _curator Curator address + * @return Amount of subgraph signal owned by a curator */ - function getCuratorNSignal( - address _graphAccount, - uint256 _subgraphNumber, - address _curator - ) public view override returns (uint256) { - return nameSignals[_graphAccount][_subgraphNumber].curatorNSignal[_curator]; + function getCuratorSignal(uint256 _subgraphID, address _curator) + public + view + override + returns (uint256) + { + return _getSubgraphData(_subgraphID).curatorNSignal[_curator]; + } + + /** + * @dev Create subgraphID for legacy subgraph and mint ownership NFT. + * @param _graphAccount Account that created the subgraph + * @param _subgraphNumber The sequence number of the created subgraph + */ + function migrateLegacySubgraph(address _graphAccount, uint256 _subgraphNumber) external { + // Must be an existing legacy subgraph + bool legacySubgraphExists = legacySubgraphData[_graphAccount][_subgraphNumber] + .subgraphDeploymentID != 0; + require(legacySubgraphExists == true, "GNS: Subgraph does not exist"); + + // Must not be a claimed subgraph + uint256 subgraphID = _buildSubgraphID(_graphAccount, _subgraphNumber); + require( + legacySubgraphKeys[subgraphID].account == address(0), + "GNS: Subgraph was already claimed" + ); + + // Store a reference for a legacy subgraph + legacySubgraphKeys[subgraphID] = IGNS.LegacySubgraphKey({ + account: _graphAccount, + accountSeqID: _subgraphNumber + }); + + // Delete state for legacy subgraph + legacySubgraphs[_graphAccount][_subgraphNumber] = 0; + + // Mint the NFT and send to owner + // The subgraph owner is the graph account that created it + _mint(_graphAccount, subgraphID); + + emit LegacySubgraphClaimed(_graphAccount, _subgraphNumber); } /** - * @dev Return whether a subgraph name is published. - * @param _graphAccount Account being checked - * @param _subgraphNumber Subgraph number being checked for publishing + * @dev Return whether a subgraph is published. + * @param _subgraphID Subgraph ID * @return Return true if subgraph is currently published */ - function isPublished(address _graphAccount, uint256 _subgraphNumber) - public + function isPublished(uint256 _subgraphID) public view override returns (bool) { + return _isPublished(_getSubgraphData(_subgraphID)); + } + + /** + * @dev Build a subgraph ID based on the account creating it and a sequence number for that account. + * Subgraph ID is the keccak hash of account+seqID + * @return Subgraph ID + */ + function _buildSubgraphID(address _account, uint256 _seqID) internal pure returns (uint256) { + return uint256(keccak256(abi.encodePacked(_account, _seqID))); + } + + /** + * @dev Return the next subgraphID given the account that is creating the subgraph. + * NOTE: This function updates the sequence ID for the account + * @return Sequence ID for the account + */ + function _nextSubgraphID(address _account) internal returns (uint256) { + return _buildSubgraphID(_account, _nextAccountSeqID(_account)); + } + + /** + * @dev Return a new consecutive sequence ID for an account and update to the next value. + * NOTE: This function updates the sequence ID for the account + * @return Sequence ID for the account + */ + function _nextAccountSeqID(address _account) internal returns (uint256) { + uint256 seqID = nextAccountSeqID[_account]; + nextAccountSeqID[_account] = nextAccountSeqID[_account].add(1); + return seqID; + } + + /** + * @dev Get subgraph data. + * This function will first look for a v1 subgraph and return it if found. + * @param _subgraphID Subgraph ID + * @return Subgraph Data + */ + function _getSubgraphData(uint256 _subgraphID) private view returns (SubgraphData storage) { + // If there is a legacy subgraph created return it + LegacySubgraphKey storage legacySubgraphKey = legacySubgraphKeys[_subgraphID]; + if (legacySubgraphKey.account != address(0)) { + return legacySubgraphData[legacySubgraphKey.account][legacySubgraphKey.accountSeqID]; + } + // Return new subgraph type + return subgraphs[_subgraphID]; + } + + /** + * @dev Return whether a subgraph is published. + * @param _subgraphData Subgraph Data + * @return Return true if subgraph is currently published + */ + function _isPublished(SubgraphData storage _subgraphData) internal view returns (bool) { + return _subgraphData.subgraphDeploymentID != 0 && _subgraphData.disabled == false; + } + + /** + * @dev Return the subgraph data or revert if not published or deprecated. + * @param _subgraphID Subgraph ID + * @return Subgraph Data + */ + function _getSubgraphOrRevert(uint256 _subgraphID) + internal view - override - returns (bool) + returns (SubgraphData storage) { - return subgraphs[_graphAccount][_subgraphNumber] != 0; + SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); + require(_isPublished(subgraphData) == true, "GNS: Must be active"); + return subgraphData; } } diff --git a/contracts/discovery/GNSStorage.sol b/contracts/discovery/GNSStorage.sol index 96afbb4f4..232485d0b 100644 --- a/contracts/discovery/GNSStorage.sol +++ b/contracts/discovery/GNSStorage.sol @@ -3,12 +3,13 @@ pragma solidity ^0.7.6; pragma abicoder v2; +import "../base/SubgraphNFT.sol"; import "../governance/Managed.sol"; import "./erc1056/IEthereumDIDRegistry.sol"; import "./IGNS.sol"; -contract GNSV1Storage is Managed { +abstract contract GNSV1Storage is Managed { // -- State -- // In parts per hundred @@ -17,17 +18,33 @@ contract GNSV1Storage is Managed { // Bonding curve formula address public bondingCurve; - // graphAccountID => subgraphNumber => subgraphDeploymentID - // subgraphNumber = A number associated to a graph accounts deployed subgraph. This - // is used to point to a subgraphID (graphAccountID + subgraphNumber) - mapping(address => mapping(uint256 => bytes32)) public subgraphs; + // Stores what subgraph deployment a particular legacy subgraph targets + // A subgraph is defined by (graphAccountID, subgraphNumber) + // A subgraph can target one subgraph deployment (bytes32 hash) + // (graphAccountID, subgraphNumber) => subgraphDeploymentID + mapping(address => mapping(uint256 => bytes32)) internal legacySubgraphs; - // graphAccountID => subgraph deployment counter - mapping(address => uint256) public graphAccountSubgraphNumbers; + // Every time an account creates a subgraph it increases a per-account sequence ID + // account => seqID + mapping(address => uint256) public nextAccountSeqID; - // graphAccountID => subgraphNumber => NameCurationPool - mapping(address => mapping(uint256 => IGNS.NameCurationPool)) public nameSignals; + // Stores all the signal deposited on a legacy subgraph + // (graphAccountID, subgraphNumber) => SubgraphData + mapping(address => mapping(uint256 => IGNS.SubgraphData)) public legacySubgraphData; - // ERC-1056 contract reference - IEthereumDIDRegistry public erc1056Registry; + // [DEPRECATED] ERC-1056 contract reference + // This contract is used for managing identities + IEthereumDIDRegistry private __DEPRECATED_erc1056Registry; +} + +abstract contract GNSV2Storage is GNSV1Storage, SubgraphNFT { + // TODO: review order of storage + + // Use it whenever a legacy (v1) subgraph NFT was claimed to maintain compatibility + // Keep a reference from subgraphID => (graphAccount, subgraphNumber) + mapping(uint256 => IGNS.LegacySubgraphKey) public legacySubgraphKeys; + + // Store data for all NFT-based (v2) subgraphs + // subgraphID => SubgraphData + mapping(uint256 => IGNS.SubgraphData) public subgraphs; } diff --git a/contracts/discovery/IGNS.sol b/contracts/discovery/IGNS.sol index 8bb1ac773..f1dc3c81c 100644 --- a/contracts/discovery/IGNS.sol +++ b/contracts/discovery/IGNS.sol @@ -5,9 +5,9 @@ pragma solidity ^0.7.6; interface IGNS { // -- Pool -- - struct NameCurationPool { - uint256 vSignal; // The token of the subgraph deployment bonding curve - uint256 nSignal; // The token of the name curation bonding curve + struct SubgraphData { + uint256 vSignal; // The token of the subgraph-deployment bonding curve + uint256 nSignal; // The token of the subgraph bonding curve mapping(address => uint256) curatorNSignal; bytes32 subgraphDeploymentID; uint32 reserveRatio; @@ -15,6 +15,11 @@ interface IGNS { uint256 withdrawableGRT; } + struct LegacySubgraphKey { + address account; + uint256 accountSeqID; + } + // -- Configuration -- function approveAll() external; @@ -30,53 +35,41 @@ interface IGNS { string calldata _name ) external; - function updateSubgraphMetadata( - address _graphAccount, - uint256 _subgraphNumber, - bytes32 _subgraphMetadata - ) external; + function updateSubgraphMetadata(uint256 _subgraphID, bytes32 _subgraphMetadata) external; function publishNewSubgraph( - address _graphAccount, bytes32 _subgraphDeploymentID, bytes32 _versionMetadata, bytes32 _subgraphMetadata ) external; function publishNewVersion( - address _graphAccount, - uint256 _subgraphNumber, + uint256 _subgraphID, bytes32 _subgraphDeploymentID, bytes32 _versionMetadata ) external; - function deprecateSubgraph(address _graphAccount, uint256 _subgraphNumber) external; + function deprecateSubgraph(uint256 _subgraphID) external; // -- Curation -- - function mintNSignal( - address _graphAccount, - uint256 _subgraphNumber, + function mintSignal( + uint256 _subgraphID, uint256 _tokensIn, uint256 _nSignalOutMin ) external; - function burnNSignal( - address _graphAccount, - uint256 _subgraphNumber, + function burnSignal( + uint256 _subgraphID, uint256 _nSignal, uint256 _tokensOutMin ) external; - function withdraw(address _graphAccount, uint256 _subgraphNumber) external; + function withdraw(uint256 _subgraphID) external; // -- Getters -- - function tokensToNSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _tokensIn - ) + function tokensToNSignal(uint256 _subgraphID, uint256 _tokensIn) external view returns ( @@ -85,32 +78,25 @@ interface IGNS { uint256 ); - function nSignalToTokens( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _nSignalIn - ) external view returns (uint256, uint256); - - function vSignalToNSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _vSignalIn - ) external view returns (uint256); + function nSignalToTokens(uint256 _subgraphID, uint256 _nSignalIn) + external + view + returns (uint256, uint256); - function nSignalToVSignal( - address _graphAccount, - uint256 _subgraphNumber, - uint256 _nSignalIn - ) external view returns (uint256); + function vSignalToNSignal(uint256 _subgraphID, uint256 _vSignalIn) + external + view + returns (uint256); - function getCuratorNSignal( - address _graphAccount, - uint256 _subgraphNumber, - address _curator - ) external view returns (uint256); + function nSignalToVSignal(uint256 _subgraphID, uint256 _nSignalIn) + external + view + returns (uint256); - function isPublished(address _graphAccount, uint256 _subgraphNumber) + function getCuratorSignal(uint256 _subgraphID, address _curator) external view - returns (bool); + returns (uint256); + + function isPublished(uint256 _subgraphID) external view returns (bool); } diff --git a/package.json b/package.json index 40df0d1b0..dfadc7281 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "@nomiclabs/hardhat-etherscan": "^2.1.1", "@nomiclabs/hardhat-waffle": "^2.0.1", "@openzeppelin/contracts": "^3.4.1", + "@openzeppelin/contracts-upgradeable": "3.4.2", "@openzeppelin/hardhat-upgrades": "^1.6.0", "@tenderly/hardhat-tenderly": "^1.0.11", "@typechain/ethers-v5": "^7.0.0", diff --git a/test/gns.test.ts b/test/gns.test.ts index 00817dc3f..2fbb5cfb2 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -1,5 +1,6 @@ import { expect } from 'chai' import { ethers, ContractTransaction, BigNumber, Event } from 'ethers' +import { solidityKeccak256 } from 'ethers/lib/utils' import { GNS } from '../build/types/GNS' import { GraphToken } from '../build/types/GraphToken' @@ -9,21 +10,35 @@ import { getAccounts, randomHexBytes, Account, toGRT } from './lib/testHelpers' import { NetworkFixture } from './lib/fixtures' import { toBN, formatGRT } from './lib/testHelpers' -interface Subgraph { - graphAccount: Account +// Entities +interface PublishSubgraph { subgraphDeploymentID: string - subgraphNumber: BigNumber versionMetadata: string subgraphMetadata: string } +interface Subgraph { + vSignal: BigNumber + nSignal: BigNumber + subgraphDeploymentID: string + reserveRatio: number + disabled: boolean + withdrawableGRT: BigNumber + id?: string +} + interface AccountDefaultName { name: string nameIdentifier: string } +// Utils + +const DEFAULT_RESERVE_RATIO = 1000000 const toFloat = (n: BigNumber) => parseFloat(formatGRT(n)) const toRound = (n: number) => n.toFixed(12) +const buildSubgraphID = (account: string, seqID: BigNumber): string => + solidityKeccak256(['address', 'uint256'], [account, seqID]) describe('GNS', () => { let me: Account @@ -40,16 +55,14 @@ describe('GNS', () => { const tokens10000 = toGRT('10000') const tokens100000 = toGRT('100000') const curationTaxPercentage = 50000 - let subgraph0: Subgraph - let subgraph1: Subgraph + + let newSubgraph0: PublishSubgraph + let newSubgraph1: PublishSubgraph let defaultName: AccountDefaultName - const createSubgraph = (account: Account, subgraphNumber: string): Subgraph => { + const buildSubgraph = (): PublishSubgraph => { return { - graphAccount: account, subgraphDeploymentID: randomHexBytes(), - subgraphNumber: BigNumber.from(subgraphNumber), - versionMetadata: randomHexBytes(), subgraphMetadata: randomHexBytes(), } @@ -62,9 +75,9 @@ describe('GNS', () => { } } - const getTokensAndVSignal = async (subgraphID: string): Promise> => { - const curationPool = await curation.pools(subgraphID) - const vSignal = await curation.getCurationPoolSignal(subgraphID) + const getTokensAndVSignal = async (subgraphDeploymentID: string): Promise> => { + const curationPool = await curation.pools(subgraphDeploymentID) + const vSignal = await curation.getCurationPoolSignal(subgraphDeploymentID) return [curationPool.tokens, vSignal] } @@ -125,59 +138,59 @@ describe('GNS', () => { const publishNewSubgraph = async ( account: Account, - graphAccount: string, - subgraphNumber: number, - subgraphToPublish = subgraph0, // Defaults to subgraph created in before() - ): Promise => { + newSubgraph: PublishSubgraph, // Defaults to subgraph created in before() + ): Promise => { + const subgraphID = buildSubgraphID(account.address, await gns.nextAccountSeqID(account.address)) + + // Send tx const tx = gns .connect(account.signer) .publishNewSubgraph( - graphAccount, - subgraphToPublish.subgraphDeploymentID, - subgraphToPublish.versionMetadata, - subgraphToPublish.subgraphMetadata, + newSubgraph.subgraphDeploymentID, + newSubgraph.versionMetadata, + newSubgraph.subgraphMetadata, ) + + // Check events await expect(tx) - .emit(gns, 'SubgraphPublished') - .withArgs( - subgraphToPublish.graphAccount.address, - subgraphNumber, - subgraphToPublish.subgraphDeploymentID, - subgraphToPublish.versionMetadata, - ) - .emit(gns, 'NameSignalEnabled') - .withArgs(graphAccount, subgraphNumber, subgraphToPublish.subgraphDeploymentID, 1000000) + .emit(gns, 'SubgraphCreated') + .withArgs(subgraphID, newSubgraph.subgraphDeploymentID, DEFAULT_RESERVE_RATIO) .emit(gns, 'SubgraphMetadataUpdated') - .withArgs( - subgraphToPublish.graphAccount.address, - subgraphNumber, - subgraphToPublish.subgraphMetadata, - ) - - const pool = await gns.nameSignals(graphAccount, subgraphNumber) - const reserveRatio = pool[3] - expect(reserveRatio).eq(1000000) - return tx + .withArgs(subgraphID, newSubgraph.subgraphMetadata) + .emit(gns, 'SubgraphVersionUpdated') + .withArgs(subgraphID, newSubgraph.subgraphDeploymentID, newSubgraph.versionMetadata) + + // Check state + const subgraph = await gns.subgraphs(subgraphID) + expect(subgraph.vSignal).eq(0) + expect(subgraph.nSignal).eq(0) + expect(subgraph.subgraphDeploymentID).eq(newSubgraph.subgraphDeploymentID) + expect(subgraph.reserveRatio).eq(DEFAULT_RESERVE_RATIO) + expect(subgraph.disabled).eq(false) + expect(subgraph.withdrawableGRT).eq(0) + + // Check NFT issuance + const owner = await gns.ownerOf(subgraphID) + expect(owner).eq(account.address) + + return { ...subgraph, id: subgraphID } } const publishNewVersion = async ( account: Account, - graphAccount: string, - subgraphNumber: number, - subgraphToPublish = subgraph0, // Defaults to subgraph created in before() + subgraphID: string, + newSubgraph: PublishSubgraph, ) => { - // Before stats for the old vSignal curve + // Before state const ownerTaxPercentage = await gns.ownerTaxPercentage() const curationTaxPercentage = await curation.curationTaxPercentage() - // Before stats for the name curve - const namePoolBefore = await gns.nameSignals(graphAccount, subgraphNumber) + const beforeSubgraph = await gns.subgraphs(subgraphID) // Check what selling all nSignal, which == selling all vSignal, should return for tokens // NOTE - no tax on burning on nSignal const { 1: tokensReceivedEstimate } = await gns.nSignalToTokens( - graphAccount, - subgraphNumber, - namePoolBefore.nSignal, + subgraphID, + beforeSubgraph.nSignal, ) // Example: // Deposit 100, 5 is taxed, 95 GRT in curve @@ -192,98 +205,85 @@ describe('GNS', () => { const taxOnOriginal = tokensReceivedEstimate.mul(curationTaxPercentage).div(MAX_PPM) const totalWithoutOwnerTax = tokensReceivedEstimate.sub(taxOnOriginal) const ownerTax = taxOnOriginal.mul(ownerTaxPercentage).div(MAX_PPM) - const totalWithOwnerTax = totalWithoutOwnerTax.add(ownerTax) - const totalAdjustedUp = totalWithOwnerTax.mul(MAX_PPM).div(MAX_PPM - curationTaxPercentage) // Re-estimate amount of signal to get considering the owner tax paid by the owner const { 0: newVSignalEstimate, 1: newCurationTaxEstimate } = await curation.tokensToSignal( - subgraphToPublish.subgraphDeploymentID, + newSubgraph.subgraphDeploymentID, totalAdjustedUp, ) - // Send transaction + // Send tx const tx = gns .connect(account.signer) - .publishNewVersion( - graphAccount, - subgraphNumber, - subgraphToPublish.subgraphDeploymentID, - subgraphToPublish.versionMetadata, - ) + .publishNewVersion(subgraphID, newSubgraph.subgraphDeploymentID, newSubgraph.versionMetadata) await expect(tx) - .emit(gns, 'SubgraphPublished') - .withArgs( - subgraphToPublish.graphAccount.address, - subgraphNumber, - subgraphToPublish.subgraphDeploymentID, - subgraphToPublish.versionMetadata, - ) - .emit(gns, 'NameSignalUpgrade') - .withArgs( - graphAccount, - subgraphNumber, - newVSignalEstimate, - totalAdjustedUp, - subgraphToPublish.subgraphDeploymentID, - ) + .emit(gns, 'SubgraphUpgraded') + .withArgs(subgraphID, newVSignalEstimate, totalAdjustedUp, newSubgraph.subgraphDeploymentID) + .emit(gns, 'SubgraphVersionUpdated') + .withArgs(subgraphID, newSubgraph.subgraphDeploymentID, newSubgraph.versionMetadata) // Check curation vSignal old are set to zero - const [tokensAfterOldCuration, vSignalAfterOldCuration] = await getTokensAndVSignal( - subgraph0.subgraphDeploymentID, + const [afterTokensOldCuration, afterVSignalOldCuration] = await getTokensAndVSignal( + beforeSubgraph.subgraphDeploymentID, ) - expect(tokensAfterOldCuration).eq(0) - expect(vSignalAfterOldCuration).eq(0) + expect(afterTokensOldCuration).eq(0) + expect(afterVSignalOldCuration).eq(0) - // Check the vSignal of the new curation curve, amd tokens - const [tokensAfterNewCurve, vSignalAfterNewCurve] = await getTokensAndVSignal( - subgraphToPublish.subgraphDeploymentID, + // Check the vSignal of the new curation curve, and tokens + const [afterTokensNewCurve, afterVSignalNewCurve] = await getTokensAndVSignal( + newSubgraph.subgraphDeploymentID, ) - expect(tokensAfterNewCurve).eq(totalAdjustedUp.sub(newCurationTaxEstimate)) - expect(vSignalAfterNewCurve).eq(newVSignalEstimate) + expect(afterTokensNewCurve).eq(totalAdjustedUp.sub(newCurationTaxEstimate)) + expect(afterVSignalNewCurve).eq(newVSignalEstimate) // Check the nSignal pool - const namePoolAfter = await gns.nameSignals(graphAccount, subgraphNumber) - expect(namePoolAfter.vSignal).eq(vSignalAfterNewCurve).eq(newVSignalEstimate) - expect(namePoolAfter.nSignal).eq(namePoolBefore.nSignal) // should not change - expect(namePoolAfter.subgraphDeploymentID).eq(subgraphToPublish.subgraphDeploymentID) + const afterSubgraph = await gns.subgraphs(subgraphID) + expect(afterSubgraph.vSignal).eq(afterVSignalNewCurve).eq(newVSignalEstimate) + expect(afterSubgraph.nSignal).eq(beforeSubgraph.nSignal) // should not change + expect(afterSubgraph.subgraphDeploymentID).eq(newSubgraph.subgraphDeploymentID) + + // Check NFT should not change owner + const owner = await gns.ownerOf(subgraphID) + expect(owner).eq(account.address) return tx } - const deprecateSubgraph = async ( - account: Account, - graphAccount: string, - subgraphNumber0: number, - ) => { - const [tokensBefore] = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) + const deprecateSubgraph = async (account: Account, subgraphID: string) => { + // Before state + const beforeSubgraph = await gns.subgraphs(subgraphID) + const [beforeTokens] = await getTokensAndVSignal(beforeSubgraph.subgraphDeploymentID) + // We can use the whole amount, since in this test suite all vSignal is used to be staked on nSignal const ownerBalanceBefore = await grt.balanceOf(account.address) - const tx = gns.connect(account.signer).deprecateSubgraph(graphAccount, subgraphNumber0) - await expect(tx).emit(gns, 'SubgraphDeprecated').withArgs(subgraph0.graphAccount.address, 0) - await expect(tx) - .emit(gns, 'NameSignalDisabled') - .withArgs(graphAccount, subgraphNumber0, tokensBefore) + // Send tx + const tx = gns.connect(account.signer).deprecateSubgraph(subgraphID) + await expect(tx).emit(gns, 'SubgraphDeprecated').withArgs(subgraphID, beforeTokens) - const deploymentID = await gns.subgraphs(subgraph0.graphAccount.address, 0) - expect(ethers.constants.HashZero).eq(deploymentID) + // After state + const afterSubgraph = await gns.subgraphs(subgraphID) + // Check marked as deprecated + expect(afterSubgraph.disabled).eq(true) + // Signal for the deployment must be all burned + expect(afterSubgraph.vSignal.eq(toBN('0'))) + // Cleanup reserve ratio + expect(afterSubgraph.reserveRatio).eq(0) + // Should be equal since owner pays curation tax + expect(afterSubgraph.withdrawableGRT).eq(beforeTokens) - // Check that vSignal is set to 0 - const poolAfter = await gns.nameSignals(graphAccount, subgraphNumber0) - const poolVSignalAfter = poolAfter.vSignal - expect(poolVSignalAfter.eq(toBN('0'))) + // Check balance of GNS increased by curation tax from owner being added + const afterGNSBalance = await grt.balanceOf(gns.address) + expect(afterGNSBalance).eq(afterSubgraph.withdrawableGRT) // Check that the owner balance decreased by the curation tax const ownerBalanceAfter = await grt.balanceOf(account.address) expect(ownerBalanceBefore.eq(ownerBalanceAfter)) - // Should be equal since owner pays curation tax - expect(poolAfter.withdrawableGRT).eq(tokensBefore) - // Check that deprecated is true - expect(poolAfter.disabled).eq(true) - // Check balance of gns increase by curation tax from owner being added - const gnsBalanceAfter = await grt.balanceOf(gns.address) - expect(gnsBalanceAfter).eq(poolAfter.withdrawableGRT) + + // Check NFT was burned + await expect(gns.ownerOf(subgraphID)).revertedWith('ERC721: owner query for nonexistent token') + return tx } @@ -295,9 +295,9 @@ describe('GNS', () => { newSubgraphDeplyomentID: string, ): Promise => { // Before stats for the old vSignal curve - const tokensBeforeVSigOldCuration = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) - const tokensBeforeOldCuration = tokensBeforeVSigOldCuration[0] - const vSigBeforeOldCuration = tokensBeforeVSigOldCuration[1] + const beforeTokensVSigOldCuration = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) + const beforeTokensOldCuration = beforeTokensVSigOldCuration[0] + const beforeVSignalOldCuration = beforeTokensVSigOldCuration[1] // Before stats for the name curve const poolBefore = await gns.nameSignals(graphAccount, subgraphNumber0) @@ -337,17 +337,17 @@ describe('GNS', () => { ) // Check curation vSignal old was lowered and tokens too - const [tokensAfterOldCuration, vSigAfterOldCuration] = await getTokensAndVSignal( + const [afterTokensOldCuration, vSigAfterOldCuration] = await getTokensAndVSignal( subgraph0.subgraphDeploymentID, ) - expect(tokensAfterOldCuration).eq(tokensBeforeOldCuration.sub(upgradeTokenReturn)) - expect(vSigAfterOldCuration).eq(vSigBeforeOldCuration.sub(vSignalBurnEstimate)) + expect(afterTokensOldCuration).eq(beforeTokensOldCuration.sub(upgradeTokenReturn)) + expect(vSigAfterOldCuration).eq(beforeVSignalOldCuration.sub(vSignalBurnEstimate)) // Check the vSignal of the new curation curve, amd tokens - const [tokensAfterNewCurve, vSigAfterNewCurve] = await getTokensAndVSignal( + const [afterTokensNewCurve, vSigAfterNewCurve] = await getTokensAndVSignal( newSubgraphDeplyomentID, ) - expect(tokensAfterNewCurve).eq(upgradeTokenReturn) + expect(afterTokensNewCurve).eq(upgradeTokenReturn) expect(vSigAfterNewCurve).eq(newVSignalEstimate) // Check the nSignal pool @@ -363,142 +363,103 @@ describe('GNS', () => { } */ - const mintNSignal = async ( + const mintSignal = async ( account: Account, - graphAccount: string, - subgraphNumber0: number, - graphTokens: BigNumber, + subgraphID: string, + tokensIn: BigNumber, ): Promise => { // Before state - const [tokensBefore, vSignalBefore] = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) - const namePoolBefore = await gns.nameSignals(graphAccount, subgraphNumber0) + const beforeSubgraph = await gns.subgraphs(subgraphID) + const [beforeTokens, beforeVSignal] = await getTokensAndVSignal( + beforeSubgraph.subgraphDeploymentID, + ) // Deposit const { 0: vSignalExpected, 1: nSignalExpected, 2: curationTax, - } = await gns.tokensToNSignal(graphAccount, subgraphNumber0, graphTokens) - const tx = gns - .connect(account.signer) - .mintNSignal(graphAccount, subgraphNumber0, graphTokens, 0) + } = await gns.tokensToNSignal(subgraphID, tokensIn) + const tx = gns.connect(account.signer).mintSignal(subgraphID, tokensIn, 0) await expect(tx) - .emit(gns, 'NSignalMinted') - .withArgs( - graphAccount, - subgraphNumber0, - account.address, - nSignalExpected, - vSignalExpected, - graphTokens, - ) + .emit(gns, 'SignalMinted') + .withArgs(subgraphID, account.address, nSignalExpected, vSignalExpected, tokensIn) // After state - const [tokensAfter, vSignalAfter] = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) - const namePoolAfter = await gns.nameSignals(graphAccount, subgraphNumber0) + const afterSubgraph = await gns.subgraphs(subgraphID) + const [afterTokens, afterVSignal] = await getTokensAndVSignal( + afterSubgraph.subgraphDeploymentID, + ) - expect(tokensAfter).eq(tokensBefore.add(graphTokens.sub(curationTax))) - expect(vSignalAfter).eq(vSignalBefore.add(vSignalExpected)) - expect(namePoolAfter.nSignal).eq(namePoolBefore.nSignal.add(nSignalExpected)) - expect(namePoolAfter.vSignal).eq(vSignalBefore.add(vSignalExpected)) + // Check state + expect(afterTokens).eq(beforeTokens.add(tokensIn.sub(curationTax))) + expect(afterVSignal).eq(beforeVSignal.add(vSignalExpected)) + expect(afterSubgraph.nSignal).eq(beforeSubgraph.nSignal.add(nSignalExpected)) + expect(afterSubgraph.vSignal).eq(beforeVSignal.add(vSignalExpected)) return tx } - const burnNSignal = async ( - account: Account, - graphAccount: string, - subgraphNumber0: number, - ): Promise => { - // Before checks - const [tokensBefore, vSigBefore] = await getTokensAndVSignal(subgraph0.subgraphDeploymentID) - const namePoolBefore = await gns.nameSignals(graphAccount, subgraphNumber0) - const usersNSignalBefore = await gns.getCuratorNSignal( - graphAccount, - subgraphNumber0, - account.address, + const burnSignal = async (account: Account, subgraphID: string): Promise => { + // Before state + const beforeSubgraph = await gns.subgraphs(subgraphID) + const [beforeTokens, beforeVSignal] = await getTokensAndVSignal( + beforeSubgraph.subgraphDeploymentID, ) + const beforeUsersNSignal = await gns.getCuratorSignal(subgraphID, account.address) // Withdraw const { 0: vSignalExpected, 1: tokensExpected } = await gns.nSignalToTokens( - graphAccount, - subgraphNumber0, - usersNSignalBefore, + subgraphID, + beforeUsersNSignal, ) - // Do withdraw tx - const tx = gns - .connect(account.signer) - .burnNSignal(graphAccount, subgraphNumber0, usersNSignalBefore, 0) + // Send tx + const tx = gns.connect(account.signer).burnSignal(subgraphID, beforeUsersNSignal, 0) await expect(tx) - .emit(gns, 'NSignalBurned') - .withArgs( - graphAccount, - subgraphNumber0, - account.address, - usersNSignalBefore, - vSignalExpected, - tokensExpected, - ) + .emit(gns, 'SignalBurned') + .withArgs(subgraphID, account.address, beforeUsersNSignal, vSignalExpected, tokensExpected) - // After checks - const [tokensAfter, vSignalCurationAfter] = await getTokensAndVSignal( - subgraph0.subgraphDeploymentID, + // After state + const afterSubgraph = await gns.subgraphs(subgraphID) + const [afterTokens, afterVSignalCuration] = await getTokensAndVSignal( + afterSubgraph.subgraphDeploymentID, ) - const namePoolAfter = await gns.nameSignals(graphAccount, subgraphNumber0) - expect(tokensAfter).eq(tokensBefore.sub(tokensExpected)) - expect(vSignalCurationAfter).eq(vSigBefore.sub(vSignalExpected)) - expect(namePoolAfter.nSignal).eq(namePoolBefore.nSignal.sub(usersNSignalBefore)) + // Check state + expect(afterTokens).eq(beforeTokens.sub(tokensExpected)) + expect(afterVSignalCuration).eq(beforeVSignal.sub(vSignalExpected)) + expect(afterSubgraph.nSignal).eq(beforeSubgraph.nSignal.sub(beforeUsersNSignal)) return tx } - const withdraw = async ( - account: Account, - graphAccount: string, - subgraphNumber0: number, - ): Promise => { - const curatorNSignalBefore = await gns.getCuratorNSignal( - graphAccount, - subgraphNumber0, - account.address, - ) - const poolBefore = await gns.nameSignals(graphAccount, subgraphNumber0) - const gnsBalanceBefore = await grt.balanceOf(gns.address) - const tokensEstimate = poolBefore.withdrawableGRT - .mul(curatorNSignalBefore) - .div(poolBefore.nSignal) - - // Run tx - const tx = gns.connect(account.signer).withdraw(graphAccount, subgraphNumber0) + const withdraw = async (account: Account, subgraphID: string): Promise => { + // Before state + const beforeCuratorNSignal = await gns.getCuratorSignal(subgraphID, account.address) + const beforeSubgraph = await gns.subgraphs(subgraphID) + const beforeGNSBalance = await grt.balanceOf(gns.address) + const tokensEstimate = beforeSubgraph.withdrawableGRT + .mul(beforeCuratorNSignal) + .div(beforeSubgraph.nSignal) + + // Send tx + const tx = gns.connect(account.signer).withdraw(subgraphID) await expect(tx) .emit(gns, 'GRTWithdrawn') - .withArgs( - graphAccount, - subgraphNumber0, - account.address, - curatorNSignalBefore, - tokensEstimate, - ) + .withArgs(subgraphID, account.address, beforeCuratorNSignal, tokensEstimate) // curator nSignal should be updated - const curatorNSignalAfter = await gns.getCuratorNSignal( - graphAccount, - subgraphNumber0, - account.address, - ) - - expect(curatorNSignalAfter).eq(toBN(0)) + const afterCuratorNSignal = await gns.getCuratorSignal(subgraphID, account.address) + expect(afterCuratorNSignal).eq(toBN(0)) // overall n signal should be updated - const poolAfter = await gns.nameSignals(graphAccount, subgraphNumber0) - expect(poolAfter.nSignal).eq(poolBefore.nSignal.sub(curatorNSignalBefore)) - // withdrawableGRT should be updated + const afterSubgraph = await gns.subgraphs(subgraphID) + expect(afterSubgraph.nSignal).eq(beforeSubgraph.nSignal.sub(beforeCuratorNSignal)) // Token balance should be updated - const gnsBalanceAfter = await grt.balanceOf(gns.address) - expect(gnsBalanceAfter).eq(gnsBalanceBefore.sub(tokensEstimate)) + const afterGNSBalance = await grt.balanceOf(gns.address) + expect(afterGNSBalance).eq(beforeGNSBalance.sub(tokensEstimate)) return tx } @@ -507,8 +468,8 @@ describe('GNS', () => { ;[me, other, governor] = await getAccounts() fixture = new NetworkFixture() ;({ grt, curation, gns } = await fixture.load(governor.signer)) - subgraph0 = createSubgraph(me, '0') - subgraph1 = createSubgraph(me, '1') + newSubgraph0 = buildSubgraph() + newSubgraph1 = buildSubgraph() defaultName = createDefaultName('graph') // Give some funds to the signers and approve gns contract to use funds on signers behalf await grt.connect(governor.signer).mint(me.address, tokens100000) @@ -537,279 +498,258 @@ describe('GNS', () => { .setDefaultName(me.address, 0, defaultName.nameIdentifier, defaultName.name) await expect(tx) .emit(gns, 'SetDefaultName') - .withArgs(subgraph0.graphAccount.address, 0, defaultName.nameIdentifier, defaultName.name) + .withArgs(me.address, 0, defaultName.nameIdentifier, defaultName.name) }) it('setDefaultName fails if not owner', async function () { const tx = gns .connect(other.signer) .setDefaultName(me.address, 0, defaultName.nameIdentifier, defaultName.name) - await expect(tx).revertedWith('GNS: Only graph account owner can call') + await expect(tx).revertedWith('GNS: Only can set your own name') }) }) describe('updateSubgraphMetadata', function () { + let subgraph: Subgraph + + beforeEach(async function () { + subgraph = await publishNewSubgraph(me, newSubgraph0) + }) + it('updateSubgraphMetadata emits the event', async function () { const tx = gns .connect(me.signer) - .updateSubgraphMetadata(me.address, 0, subgraph0.subgraphMetadata) + .updateSubgraphMetadata(subgraph.id, newSubgraph0.subgraphMetadata) await expect(tx) .emit(gns, 'SubgraphMetadataUpdated') - .withArgs(subgraph0.graphAccount.address, 0, subgraph0.subgraphMetadata) + .withArgs(subgraph.id, newSubgraph0.subgraphMetadata) }) it('updateSubgraphMetadata fails if not owner', async function () { const tx = gns .connect(other.signer) - .updateSubgraphMetadata(me.address, 0, subgraph0.subgraphMetadata) - await expect(tx).revertedWith('GNS: Only graph account owner can call') + .updateSubgraphMetadata(subgraph.id, newSubgraph0.subgraphMetadata) + await expect(tx).revertedWith('GNS: Must be authorized') }) }) + describe('isPublished', function () { it('should return if the subgraph is published', async function () { - expect(await gns.isPublished(subgraph0.graphAccount.address, 0)).eq(false) - await publishNewSubgraph(me, me.address, 0) - expect(await gns.isPublished(subgraph0.graphAccount.address, 0)).eq(true) + const subgraphID = buildSubgraphID(me.address, toBN(0)) + expect(await gns.isPublished(subgraphID)).eq(false) + await publishNewSubgraph(me, newSubgraph0) + expect(await gns.isPublished(subgraphID)).eq(true) }) }) describe('publishNewSubgraph', async function () { it('should publish a new subgraph and first version with it', async function () { - await publishNewSubgraph(me, me.address, 0) - // State updated - const deploymentID = await gns.subgraphs(subgraph0.graphAccount.address, 0) - expect(subgraph0.subgraphDeploymentID).eq(deploymentID) + await publishNewSubgraph(me, newSubgraph0) }) it('should publish a new subgraph with an incremented value', async function () { - await publishNewSubgraph(me, me.address, 0) - await publishNewSubgraph(me, me.address, 1, subgraph1) - const deploymentID = await gns.subgraphs(subgraph1.graphAccount.address, 1) - expect(subgraph1.subgraphDeploymentID).eq(deploymentID) - }) - - it('should reject publish if not sent from owner', async function () { - const tx = gns - .connect(other.signer) - .publishNewSubgraph( - subgraph0.graphAccount.address, - ethers.constants.HashZero, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, - ) - await expect(tx).revertedWith('GNS: Only graph account owner can call') + const subgraph1 = await publishNewSubgraph(me, newSubgraph0) + const subgraph2 = await publishNewSubgraph(me, newSubgraph1) + expect(subgraph1.id).not.eq(subgraph2.id) }) it('should prevent subgraphDeploymentID of 0 to be used', async function () { const tx = gns .connect(me.signer) .publishNewSubgraph( - subgraph0.graphAccount.address, ethers.constants.HashZero, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, + newSubgraph0.versionMetadata, + newSubgraph0.subgraphMetadata, ) await expect(tx).revertedWith('GNS: Cannot set deploymentID to 0 in publish') }) }) describe('publishNewVersion', async function () { + let subgraph: Subgraph + beforeEach(async () => { - await publishNewSubgraph(me, me.address, 0) - await mintNSignal(me, me.address, 0, tokens10000) + subgraph = await publishNewSubgraph(me, newSubgraph0) + await mintSignal(me, subgraph.id, tokens10000) }) it('should publish a new version on an existing subgraph', async function () { - await publishNewVersion(me, me.address, 0, subgraph1) + await publishNewVersion(me, subgraph.id, newSubgraph1) }) it('should reject a new version with the same subgraph deployment ID', async function () { const tx = gns .connect(me.signer) .publishNewVersion( - subgraph0.graphAccount.address, - 0, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, + subgraph.id, + newSubgraph0.subgraphDeploymentID, + newSubgraph0.versionMetadata, ) await expect(tx).revertedWith( 'GNS: Cannot publish a new version with the same subgraph deployment ID', ) }) - it('should reject publishing a version to a numbered subgraph that does not exist', async function () { - const wrongNumberedSubgraph = 9999 + it('should reject publishing a version to a subgraph that does not exist', async function () { const tx = gns .connect(me.signer) .publishNewVersion( - subgraph1.graphAccount.address, - wrongNumberedSubgraph, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + randomHexBytes(32), + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith( - 'GNS: Cannot update version if not published, or has been deprecated', - ) + await expect(tx).revertedWith('ERC721: operator query for nonexistent token') }) it('reject if not the owner', async function () { const tx = gns .connect(other.signer) .publishNewVersion( - subgraph1.graphAccount.address, - 0, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + subgraph.id, + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith('GNS: Only graph account owner can call') + await expect(tx).revertedWith('GNS: Must be authorized') }) it('should fail when upgrade tries to point to a pre-curated', async function () { - await curation.connect(me.signer).mint(subgraph1.subgraphDeploymentID, tokens1000, 0) + // Curate directly to the deployment + await curation.connect(me.signer).mint(newSubgraph1.subgraphDeploymentID, tokens1000, 0) + + // Target a pre-curated subgraph deployment const tx = gns .connect(me.signer) .publishNewVersion( - me.address, - 0, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + subgraph.id, + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) await expect(tx).revertedWith( 'GNS: Owner cannot point to a subgraphID that has been pre-curated', ) }) - it('should fail when trying to upgrade when there is no nSignal', async function () { - await burnNSignal(me, me.address, 0) + it('should upgrade version when there is no signal with no signal migration', async function () { + await burnSignal(me, subgraph.id) const tx = gns .connect(me.signer) .publishNewVersion( - me.address, - 0, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + subgraph.id, + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith( - 'GNS: There must be nSignal on this subgraph for curve math to work', - ) + await expect(tx) + .emit(gns, 'SubgraphVersionUpdated') + .withArgs(subgraph.id, newSubgraph1.subgraphDeploymentID, newSubgraph1.versionMetadata) }) it('should fail when subgraph is deprecated', async function () { - await deprecateSubgraph(me, me.address, 0) + await deprecateSubgraph(me, subgraph.id) const tx = gns .connect(me.signer) .publishNewVersion( - me.address, - 0, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + subgraph.id, + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith( - 'GNS: Cannot update version if not published, or has been deprecated', - ) + // NOTE: deprecate burns the Subgraph NFT, when someone wants to publish a new version it won't find it + await expect(tx).revertedWith('ERC721: operator query for nonexistent token') }) }) describe('deprecateSubgraph', async function () { + let subgraph: Subgraph + beforeEach(async () => { - await publishNewSubgraph(me, me.address, 0) - await mintNSignal(me, me.address, 0, tokens10000) + subgraph = await publishNewSubgraph(me, newSubgraph0) + await mintSignal(me, subgraph.id, tokens10000) }) it('should deprecate a subgraph', async function () { - await deprecateSubgraph(me, me.address, 0) + await deprecateSubgraph(me, subgraph.id) }) it('should prevent a deprecated subgraph from being republished', async function () { - await deprecateSubgraph(me, me.address, 0) + await deprecateSubgraph(me, subgraph.id) const tx = gns .connect(me.signer) .publishNewVersion( - subgraph1.graphAccount.address, - 1, - subgraph1.subgraphDeploymentID, - subgraph1.versionMetadata, + subgraph.id, + newSubgraph1.subgraphDeploymentID, + newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith( - 'Cannot update version if not published, or has been deprecated', - ) + // NOTE: deprecate burns the Subgraph NFT, when someone wants to publish a new version it won't find it + await expect(tx).revertedWith('ERC721: operator query for nonexistent token') }) it('reject if the subgraph does not exist', async function () { - const wrongNumberedSubgraph = 2340 - const tx = gns - .connect(me.signer) - .deprecateSubgraph(subgraph1.graphAccount.address, wrongNumberedSubgraph) - await expect(tx).revertedWith('GNS: Cannot deprecate a subgraph which does not exist') + const subgraphID = randomHexBytes(32) + const tx = gns.connect(me.signer).deprecateSubgraph(subgraphID) + await expect(tx).revertedWith('ERC721: operator query for nonexistent token') }) it('reject deprecate if not the owner', async function () { - const tx = gns - .connect(other.signer) - .deprecateSubgraph(subgraph0.graphAccount.address, subgraph0.subgraphNumber) - await expect(tx).revertedWith('GNS: Only graph account owner can call') + const tx = gns.connect(other.signer).deprecateSubgraph(subgraph.id) + await expect(tx).revertedWith('GNS: Must be authorized') }) }) }) - describe('Curating on names', async function () { - const subgraphNumber0 = 0 - describe('mintNSignal()', async function () { + describe('Curating on names', async function () { + describe('mintSignal()', async function () { it('should deposit into the name signal curve', async function () { - await publishNewSubgraph(me, me.address, subgraphNumber0) - await mintNSignal(other, me.address, subgraphNumber0, tokens10000) + const subgraph = await publishNewSubgraph(me, newSubgraph0) + await mintSignal(other, subgraph.id, tokens10000) }) it('should fail when name signal is disabled', async function () { - await publishNewSubgraph(me, me.address, subgraphNumber0) - await deprecateSubgraph(me, me.address, 0) - const tx = gns.connect(me.signer).mintNSignal(me.address, subgraphNumber0, tokens1000, 0) - await expect(tx).revertedWith('GNS: Cannot be disabled') + const subgraph = await publishNewSubgraph(me, newSubgraph0) + await deprecateSubgraph(me, subgraph.id) + const tx = gns.connect(me.signer).mintSignal(subgraph.id, tokens1000, 0) + await expect(tx).revertedWith('GNS: Must be active') }) it('should fail if you try to deposit on a non existing name', async function () { - const tx = gns.connect(me.signer).mintNSignal(me.address, subgraphNumber0, tokens1000, 0) - await expect(tx).revertedWith('GNS: Must deposit on a name signal that exists') + const subgraphID = randomHexBytes(32) + const tx = gns.connect(me.signer).mintSignal(subgraphID, tokens1000, 0) + await expect(tx).revertedWith('GNS: Must be active') }) it('reject minting if under slippage', async function () { // First publish the subgraph - await publishNewSubgraph(me, me.address, subgraphNumber0) + const subgraph = await publishNewSubgraph(me, newSubgraph0) // Set slippage to be 1 less than expected result to force reverting - const { 1: expectedNSignal } = await gns.tokensToNSignal( - me.address, - subgraphNumber0, - tokens1000, - ) + const { 1: expectedNSignal } = await gns.tokensToNSignal(subgraph.id, tokens1000) const tx = gns .connect(me.signer) - .mintNSignal(me.address, subgraphNumber0, tokens1000, expectedNSignal.add(1)) + .mintSignal(subgraph.id, tokens1000, expectedNSignal.add(1)) await expect(tx).revertedWith('Slippage protection') }) }) - describe('burnNSignal()', async function () { + describe('burnSignal()', async function () { + let subgraph: Subgraph + beforeEach(async () => { - await publishNewSubgraph(me, me.address, subgraphNumber0) - await mintNSignal(other, me.address, subgraphNumber0, tokens10000) + subgraph = await publishNewSubgraph(me, newSubgraph0) + await mintSignal(other, subgraph.id, tokens10000) }) it('should withdraw from the name signal curve', async function () { - await burnNSignal(other, me.address, subgraphNumber0) + await burnSignal(other, subgraph.id) }) it('should fail when name signal is disabled', async function () { - await deprecateSubgraph(me, me.address, 0) + await deprecateSubgraph(me, subgraph.id) // just test 1 since it will fail - const tx = gns.connect(me.signer).burnNSignal(me.address, subgraphNumber0, 1, 0) - await expect(tx).revertedWith('GNS: Cannot be disabled') + const tx = gns.connect(me.signer).burnSignal(subgraph.id, 1, 0) + await expect(tx).revertedWith('GNS: Must be active') }) it('should fail when the curator tries to withdraw more nSignal than they have', async function () { - const tx = gns.connect(me.signer).burnNSignal( - me.address, - subgraphNumber0, + const tx = gns.connect(me.signer).burnSignal( + subgraph.id, // 1000000 * 10^18 nSignal is a lot, and will cause fail toBN('1000000000000000000000000'), 0, @@ -819,54 +759,48 @@ describe('GNS', () => { it('reject burning if under slippage', async function () { // Get current curator name signal - const curatorNSignal = await gns.getCuratorNSignal( - me.address, - subgraphNumber0, - other.address, - ) + const curatorNSignal = await gns.getCuratorSignal(subgraph.id, other.address) // Withdraw - const { 1: expectedTokens } = await gns.nSignalToTokens( - me.address, - subgraphNumber0, - curatorNSignal, - ) + const { 1: expectedTokens } = await gns.nSignalToTokens(subgraph.id, curatorNSignal) // Force a revert by asking 1 more token than the function will return const tx = gns .connect(other.signer) - .burnNSignal(me.address, subgraphNumber0, curatorNSignal, expectedTokens.add(1)) + .burnSignal(subgraph.id, curatorNSignal, expectedTokens.add(1)) await expect(tx).revertedWith('Slippage protection') }) }) describe('withdraw()', async function () { + let subgraph: Subgraph + beforeEach(async () => { - await publishNewSubgraph(me, me.address, subgraphNumber0) - await mintNSignal(other, me.address, subgraphNumber0, tokens10000) + subgraph = await publishNewSubgraph(me, newSubgraph0) + await mintSignal(other, subgraph.id, tokens10000) }) it('should withdraw GRT from a disabled name signal', async function () { - await deprecateSubgraph(me, me.address, 0) - await withdraw(other, me.address, subgraphNumber0) + await deprecateSubgraph(me, subgraph.id) + await withdraw(other, subgraph.id) }) it('should fail if not disabled', async function () { - const tx = gns.connect(other.signer).withdraw(me.address, subgraphNumber0) - await expect(tx).revertedWith('GNS: Name bonding curve must be disabled first') + const tx = gns.connect(other.signer).withdraw(subgraph.id) + await expect(tx).revertedWith('GNS: Must be disabled first') }) it('should fail when there is no more GRT to withdraw', async function () { - await deprecateSubgraph(me, me.address, 0) - await withdraw(other, me.address, subgraphNumber0) - const tx = gns.connect(other.signer).withdraw(me.address, subgraphNumber0) + await deprecateSubgraph(me, subgraph.id) + await withdraw(other, subgraph.id) + const tx = gns.connect(other.signer).withdraw(subgraph.id) await expect(tx).revertedWith('GNS: No more GRT to withdraw') }) it('should fail if the curator has no nSignal', async function () { - await deprecateSubgraph(me, me.address, 0) - const tx = gns.connect(me.signer).withdraw(me.address, subgraphNumber0) - await expect(tx).revertedWith('GNS: Curator must have some nSignal to withdraw GRT') + await deprecateSubgraph(me, subgraph.id) + const tx = gns.connect(me.signer).withdraw(subgraph.id) + await expect(tx).revertedWith('GNS: No signal to withdraw GRT') }) }) @@ -882,24 +816,24 @@ describe('GNS', () => { toGRT('2000'), toGRT('123'), ] - await publishNewSubgraph(me, me.address, 0) + const subgraph = await publishNewSubgraph(me, newSubgraph0) // State updated const curationTaxPercentage = await curation.curationTaxPercentage() for (const tokensToDeposit of tokensToDepositMany) { - const poolOld = await gns.nameSignals(me.address, 0) - expect(subgraph0.subgraphDeploymentID).eq(poolOld.subgraphDeploymentID) + const beforeSubgraph = await gns.subgraphs(subgraph.id) + expect(newSubgraph0.subgraphDeploymentID).eq(beforeSubgraph.subgraphDeploymentID) const curationTax = toBN(curationTaxPercentage).mul(tokensToDeposit).div(toBN(1000000)) const expectedNSignal = await calcGNSBondingCurve( - poolOld.nSignal, - poolOld.vSignal, - poolOld.reserveRatio, + beforeSubgraph.nSignal, + beforeSubgraph.vSignal, + beforeSubgraph.reserveRatio, tokensToDeposit.sub(curationTax), - poolOld.subgraphDeploymentID, + beforeSubgraph.subgraphDeploymentID, ) - const tx = await mintNSignal(me, me.address, 0, tokensToDeposit) + const tx = await mintSignal(me, subgraph.id, tokensToDeposit) const receipt = await tx.wait() const event: Event = receipt.events.pop() const nSignalCreated = event.args['nSignalCreated'] @@ -924,11 +858,11 @@ describe('GNS', () => { toGRT('1'), // should mint below minimum deposit ] - await publishNewSubgraph(me, me.address, 0) + const subgraph = await publishNewSubgraph(me, newSubgraph0) // State updated for (const tokensToDeposit of tokensToDepositMany) { - await mintNSignal(me, me.address, 0, tokensToDeposit) + await mintSignal(me, subgraph.id, tokensToDeposit) } }) @@ -959,28 +893,14 @@ describe('GNS', () => { await curation.setMinimumCurationDeposit(toGRT('1')) // Publish a named subgraph-0 -> subgraphDeployment0 - await gns - .connect(me.signer) - .publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, - ) + const subgraph0 = await publishNewSubgraph(me, newSubgraph0) // Curate on the first subgraph - await gns.connect(me.signer).mintNSignal(me.address, 0, toGRT('90000'), 0) + await gns.connect(me.signer).mintSignal(subgraph0.id, toGRT('90000'), 0) // Publish a named subgraph-1 -> subgraphDeployment0 - await gns - .connect(me.signer) - .publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, - ) + const subgraph1 = await publishNewSubgraph(me, newSubgraph0) // Curate on the second subgraph should work - await gns.connect(me.signer).mintNSignal(me.address, 1, toGRT('10'), 0) + await gns.connect(me.signer).mintSignal(subgraph1.id, toGRT('10'), 0) }) }) @@ -988,19 +908,13 @@ describe('GNS', () => { it('should publish new subgraph and mint signal in single transaction', async function () { // Create a subgraph const tx1 = await gns.populateTransaction.publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, + newSubgraph0.subgraphDeploymentID, + newSubgraph0.versionMetadata, + newSubgraph0.subgraphMetadata, ) // Curate on the subgraph - const subgraphNumber = await gns.graphAccountSubgraphNumbers(me.address) - const tx2 = await gns.populateTransaction.mintNSignal( - me.address, - subgraphNumber, - toGRT('90000'), - 0, - ) + const subgraphID = buildSubgraphID(me.address, await gns.nextAccountSeqID(me.address)) + const tx2 = await gns.populateTransaction.mintSignal(subgraphID, toGRT('90000'), 0) // Batch send transaction await gns.connect(me.signer).multicall([tx1.data, tx2.data]) @@ -1012,10 +926,9 @@ describe('GNS', () => { // Create a subgraph const tx2 = await gns.populateTransaction.publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, + newSubgraph0.subgraphDeploymentID, + newSubgraph0.versionMetadata, + newSubgraph0.subgraphMetadata, ) // Batch send transaction @@ -1025,14 +938,13 @@ describe('GNS', () => { it('should revert if batching a call to initialize', async function () { // Call a forbidden function - const tx1 = await gns.populateTransaction.initialize(me.address, me.address, me.address) + const tx1 = await gns.populateTransaction.initialize(me.address, me.address) // Create a subgraph const tx2 = await gns.populateTransaction.publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, + newSubgraph0.subgraphDeploymentID, + newSubgraph0.versionMetadata, + newSubgraph0.subgraphMetadata, ) // Batch send transaction @@ -1051,10 +963,9 @@ describe('GNS', () => { // Create a subgraph const tx2 = await gns.populateTransaction.publishNewSubgraph( - me.address, - subgraph0.subgraphDeploymentID, - subgraph0.versionMetadata, - subgraph0.subgraphMetadata, + newSubgraph0.subgraphDeploymentID, + newSubgraph0.versionMetadata, + newSubgraph0.subgraphMetadata, ) // Batch send transaction diff --git a/test/lib/deployment.ts b/test/lib/deployment.ts index f04ba5b81..1c4aa187f 100644 --- a/test/lib/deployment.ts +++ b/test/lib/deployment.ts @@ -174,14 +174,13 @@ export async function deployGNS( proxyAdmin: GraphProxyAdmin, ): Promise { // Dependency - const didRegistry = await deployEthereumDIDRegistry(deployer) const bondingCurve = (await deployContract('BancorFormula', deployer)) as unknown as BancorFormula // Deploy return network.deployContractWithProxy( proxyAdmin, 'GNS', - [controller, bondingCurve.address, didRegistry.address], + [controller, bondingCurve.address], deployer, ) as unknown as GNS } diff --git a/test/staking/delegation.test.ts b/test/staking/delegation.test.ts index 130a38b5a..613e709c8 100644 --- a/test/staking/delegation.test.ts +++ b/test/staking/delegation.test.ts @@ -593,6 +593,9 @@ describe('Staking::Delegation', () => { }) it('should send delegation cut of query fees to delegation pool', async function () { + // Use long enough epochs to avoid jumping to the next epoch involuntarily on our test + await epochManager.setEpochLength(toBN((60 * 60) / 15)) + // 1:10 delegation capacity await staking.connect(governor.signer).setDelegationRatio(10) diff --git a/yarn.lock b/yarn.lock index 92c7f6944..9c0b94745 100644 --- a/yarn.lock +++ b/yarn.lock @@ -905,6 +905,11 @@ "@types/sinon-chai" "^3.2.3" "@types/web3" "1.0.19" +"@openzeppelin/contracts-upgradeable@3.4.2": + version "3.4.2" + resolved "https://registry.yarnpkg.com/@openzeppelin/contracts-upgradeable/-/contracts-upgradeable-3.4.2.tgz#2c2a1b0fa748235a1f495b6489349776365c51b3" + integrity sha512-mDlBS17ymb2wpaLcrqRYdnBAmP1EwqhOXMvqWk2c5Q1N1pm5TkiCtXM9Xzznh4bYsQBq0aIWEkFFE2+iLSN1Tw== + "@openzeppelin/contracts@^3.4.1": version "3.4.2" resolved "https://registry.yarnpkg.com/@openzeppelin/contracts/-/contracts-3.4.2.tgz#d81f786fda2871d1eb8a8c5a73e455753ba53527" From 396d06b120e7d7a528ce053fc28313eff617a128 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 10 Oct 2021 12:10:19 -0300 Subject: [PATCH 02/11] feat: add NFT descriptor for a subgraph --- contracts/base/ISubgraphNFTDescriptor.sol | 15 ++++++ contracts/base/SubgraphNFT.sol | 33 +++++++++++- contracts/base/SubgraphNFTDescriptor.sol | 23 ++++++++ contracts/discovery/GNS.sol | 51 ++++++++++++++++-- contracts/discovery/GNSStorage.sol | 2 - contracts/discovery/IGNS.sol | 6 +++ test/gns.test.ts | 65 +++++++++++++++-------- test/lib/deployment.ts | 3 +- 8 files changed, 169 insertions(+), 29 deletions(-) create mode 100644 contracts/base/ISubgraphNFTDescriptor.sol create mode 100644 contracts/base/SubgraphNFTDescriptor.sol diff --git a/contracts/base/ISubgraphNFTDescriptor.sol b/contracts/base/ISubgraphNFTDescriptor.sol new file mode 100644 index 000000000..fc7e2fecc --- /dev/null +++ b/contracts/base/ISubgraphNFTDescriptor.sol @@ -0,0 +1,15 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +pragma solidity ^0.7.6; + +import "../discovery/IGNS.sol"; + +/// @title Describes subgraph NFT tokens via URI +interface ISubgraphNFTDescriptor { + /// @notice Produces the URI describing a particular token ID for a Subgraph + /// @dev Note this URI may be a data: URI with the JSON contents directly inlined + /// @param _gns GNS contract that holds the Subgraph data + /// @param _subgraphID The ID of the subgraph NFT for which to produce a description, which may not be valid + /// @return The URI of the ERC721-compliant metadata + function tokenURI(IGNS _gns, uint256 _subgraphID) external view returns (string memory); +} diff --git a/contracts/base/SubgraphNFT.sol b/contracts/base/SubgraphNFT.sol index 54286c986..b1e2a94f9 100644 --- a/contracts/base/SubgraphNFT.sol +++ b/contracts/base/SubgraphNFT.sol @@ -1,9 +1,38 @@ // SPDX-License-Identifier: GPL-2.0-or-later -pragma solidity ^0.7.4; +pragma solidity ^0.7.6; import "@openzeppelin/contracts-upgradeable/token/ERC721/ERC721Upgradeable.sol"; +import "./ISubgraphNFTDescriptor.sol"; + abstract contract SubgraphNFT is ERC721Upgradeable { - function tokenURI(uint256 tokenId) public view virtual override returns (string memory) {} + ISubgraphNFTDescriptor public tokenDescriptor; + + // -- Events -- + + event TokenDescriptorUpdated(address tokenDescriptor); + + // -- Functions -- + + /** + * @dev Initializes the contract by setting a `name`, `symbol` and `descriptor` to the token collection. + */ + function __SubgraphNFT_init(address _tokenDescriptor) internal initializer { + __ERC721_init("Subgraph", "SG"); + _setTokenDescriptor(address(_tokenDescriptor)); + } + + /** + * @dev Set the token descriptor contract used to create the ERC-721 metadata URI + * @param _tokenDescriptor Address of the contract that creates the NFT token URI + */ + function _setTokenDescriptor(address _tokenDescriptor) internal { + require( + _tokenDescriptor != address(0) && AddressUpgradeable.isContract(_tokenDescriptor), + "NFT: Invalid token descriptor" + ); + tokenDescriptor = ISubgraphNFTDescriptor(_tokenDescriptor); + emit TokenDescriptorUpdated(_tokenDescriptor); + } } diff --git a/contracts/base/SubgraphNFTDescriptor.sol b/contracts/base/SubgraphNFTDescriptor.sol new file mode 100644 index 000000000..6809ccc03 --- /dev/null +++ b/contracts/base/SubgraphNFTDescriptor.sol @@ -0,0 +1,23 @@ +// SPDX-License-Identifier: GPL-2.0-or-later + +pragma solidity ^0.7.6; + +import "./ISubgraphNFTDescriptor.sol"; + +/// @title Describes subgraph NFT tokens via URI +contract SubgraphNFTDescriptor is ISubgraphNFTDescriptor { + /// @inheritdoc ISubgraphNFTDescriptor + function tokenURI(IGNS _gns, uint256 _subgraphID) + external + view + override + returns (string memory) + { + // TODO: fancy implementation + // uint256 signal = _gns.subgraphSignal(_subgraphID); + // uint256 tokens = _gns.subgraphTokens(_subgraphID); + // id + // owner + return ""; + } +} diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index 075833b3b..b5527e685 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -6,6 +6,7 @@ pragma abicoder v2; import "@openzeppelin/contracts/math/SafeMath.sol"; import "../base/Multicall.sol"; +import "../base/SubgraphNFT.sol"; import "../bancor/BancorFormula.sol"; import "../upgrades/GraphUpgradeable.sol"; import "../utils/TokenUtils.sol"; @@ -139,12 +140,16 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { /** * @dev Initialize this contract. */ - function initialize(address _controller, address _bondingCurve) external onlyImpl { + function initialize( + address _controller, + address _bondingCurve, + address _tokenDescriptor + ) external onlyImpl { Managed._initialize(_controller); + // Dependencies bondingCurve = _bondingCurve; - // TODO: review token symbol - __ERC721_init("Subgraph", "SUB"); + __SubgraphNFT_init(_tokenDescriptor); // Settings _setOwnerTaxPercentage(500000); @@ -166,6 +171,14 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { _setOwnerTaxPercentage(_ownerTaxPercentage); } + /** + * @dev Set the token descriptor contract. + * @param _tokenDescriptor Address of the contract that creates the NFT token URI + */ + function setTokenDescriptor(address _tokenDescriptor) external override onlyGovernor { + _setTokenDescriptor(_tokenDescriptor); + } + /** * @dev Internal: Set the owner tax percentage. This is used to prevent a subgraph owner to drain all * the name curators tokens while upgrading or deprecating and is configurable in parts per hundred. @@ -598,6 +611,38 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { return _getSubgraphData(_subgraphID).curatorNSignal[_curator]; } + /** + * @dev Return the total signal on the subgraph. + * @param _subgraphID Subgraph ID + * @return Total signal on the subgraph + */ + function subgraphSignal(uint256 _subgraphID) external view override returns (uint256) { + return _getSubgraphData(_subgraphID).nSignal; + } + + /** + * @dev Return the total tokens on the subgraph at current value. + * @param _subgraphID Subgraph ID + * @return Total tokens on the subgraph + */ + function subgraphTokens(uint256 _subgraphID) external view override returns (uint256) { + uint256 signal = _getSubgraphData(_subgraphID).nSignal; + if (signal > 0) { + (, uint256 tokens) = nSignalToTokens(_subgraphID, signal); + return tokens; + } + return 0; + } + + /** + * @dev Return the URI describing a particular token ID for a Subgraph. + * @param _subgraphID Subgraph ID + * @return The URI of the ERC721-compliant metadata + */ + function tokenURI(uint256 _subgraphID) public view override returns (string memory) { + return tokenDescriptor.tokenURI(this, _subgraphID); + } + /** * @dev Create subgraphID for legacy subgraph and mint ownership NFT. * @param _graphAccount Account that created the subgraph diff --git a/contracts/discovery/GNSStorage.sol b/contracts/discovery/GNSStorage.sol index 232485d0b..ee5973719 100644 --- a/contracts/discovery/GNSStorage.sol +++ b/contracts/discovery/GNSStorage.sol @@ -38,8 +38,6 @@ abstract contract GNSV1Storage is Managed { } abstract contract GNSV2Storage is GNSV1Storage, SubgraphNFT { - // TODO: review order of storage - // Use it whenever a legacy (v1) subgraph NFT was claimed to maintain compatibility // Keep a reference from subgraphID => (graphAccount, subgraphNumber) mapping(uint256 => IGNS.LegacySubgraphKey) public legacySubgraphKeys; diff --git a/contracts/discovery/IGNS.sol b/contracts/discovery/IGNS.sol index f1dc3c81c..02926bb11 100644 --- a/contracts/discovery/IGNS.sol +++ b/contracts/discovery/IGNS.sol @@ -26,6 +26,8 @@ interface IGNS { function setOwnerTaxPercentage(uint32 _ownerTaxPercentage) external; + function setTokenDescriptor(address _tokenDescriptor) external; + // -- Publishing -- function setDefaultName( @@ -69,6 +71,10 @@ interface IGNS { // -- Getters -- + function subgraphSignal(uint256 _subgraphID) external view returns (uint256); + + function subgraphTokens(uint256 _subgraphID) external view returns (uint256); + function tokensToNSignal(uint256 _subgraphID, uint256 _tokensIn) external view diff --git a/test/gns.test.ts b/test/gns.test.ts index 2fbb5cfb2..e70a641c7 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -10,6 +10,8 @@ import { getAccounts, randomHexBytes, Account, toGRT } from './lib/testHelpers' import { NetworkFixture } from './lib/fixtures' import { toBN, formatGRT } from './lib/testHelpers' +const { AddressZero } = ethers.constants + // Entities interface PublishSubgraph { subgraphDeploymentID: string @@ -490,6 +492,47 @@ describe('GNS', () => { await fixture.tearDown() }) + describe('Configuration', async function () { + describe('setOwnerTaxPercentage', function () { + const newValue = 10 + + it('should set `ownerTaxPercentage`', async function () { + // Can set if allowed + await gns.connect(governor.signer).setOwnerTaxPercentage(newValue) + expect(await gns.ownerTaxPercentage()).eq(newValue) + }) + + it('reject set `ownerTaxPercentage` if out of bounds', async function () { + const tx = gns.connect(governor.signer).setOwnerTaxPercentage(1000001) + await expect(tx).revertedWith('Owner tax must be MAX_PPM or less') + }) + + it('reject set `ownerTaxPercentage` if not allowed', async function () { + const tx = gns.connect(me.signer).setOwnerTaxPercentage(newValue) + await expect(tx).revertedWith('Caller must be Controller governor') + }) + }) + + describe('setTokenDescriptor', function () { + it('should set `tokenDescriptor`', async function () { + const newTokenDescriptor = gns.address // I just use any contract address + const tx = gns.connect(governor.signer).setTokenDescriptor(newTokenDescriptor) + await expect(tx).emit(gns, 'TokenDescriptorUpdated').withArgs(newTokenDescriptor) + expect(await gns.tokenDescriptor()).eq(newTokenDescriptor) + }) + + it('revert set to empty address', async function () { + const tx = gns.connect(governor.signer).setTokenDescriptor(AddressZero) + await expect(tx).revertedWith('NFT: Invalid token descriptor') + }) + + it('revert set to non-contract', async function () { + const tx = gns.connect(governor.signer).setTokenDescriptor(randomHexBytes(20)) + await expect(tx).revertedWith('NFT: Invalid token descriptor') + }) + }) + }) + describe('Publishing names and versions', function () { describe('setDefaultName', function () { it('setDefaultName emits the event', async function () { @@ -865,26 +908,6 @@ describe('GNS', () => { await mintSignal(me, subgraph.id, tokensToDeposit) } }) - - describe('setOwnerTaxPercentage', function () { - const newValue = 10 - - it('should set `ownerTaxPercentage`', async function () { - // Can set if allowed - await gns.connect(governor.signer).setOwnerTaxPercentage(newValue) - expect(await gns.ownerTaxPercentage()).eq(newValue) - }) - - it('reject set `ownerTaxPercentage` if out of bounds', async function () { - const tx = gns.connect(governor.signer).setOwnerTaxPercentage(1000001) - await expect(tx).revertedWith('Owner tax must be MAX_PPM or less') - }) - - it('reject set `ownerTaxPercentage` if not allowed', async function () { - const tx = gns.connect(me.signer).setOwnerTaxPercentage(newValue) - await expect(tx).revertedWith('Caller must be Controller governor') - }) - }) }) }) @@ -938,7 +961,7 @@ describe('GNS', () => { it('should revert if batching a call to initialize', async function () { // Call a forbidden function - const tx1 = await gns.populateTransaction.initialize(me.address, me.address) + const tx1 = await gns.populateTransaction.initialize(me.address, me.address, me.address) // Create a subgraph const tx2 = await gns.populateTransaction.publishNewSubgraph( diff --git a/test/lib/deployment.ts b/test/lib/deployment.ts index 1c4aa187f..e04daacbd 100644 --- a/test/lib/deployment.ts +++ b/test/lib/deployment.ts @@ -175,12 +175,13 @@ export async function deployGNS( ): Promise { // Dependency const bondingCurve = (await deployContract('BancorFormula', deployer)) as unknown as BancorFormula + const subgraphDescriptor = await deployContract('SubgraphNFTDescriptor', deployer) // Deploy return network.deployContractWithProxy( proxyAdmin, 'GNS', - [controller, bondingCurve.address], + [controller, bondingCurve.address, subgraphDescriptor.address], deployer, ) as unknown as GNS } From c152f484b2005fe1cd2d4a37a889bd0d405fd6af Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 30 Oct 2021 00:42:58 +0100 Subject: [PATCH 03/11] fix: correct function doc --- contracts/discovery/GNS.sol | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..78fcfd39e 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -164,7 +164,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { /** * @dev Set the owner fee percentage. This is used to prevent a subgraph owner to drain all - * the name curators tokens while upgrading or deprecating and is configurable in parts per hundred. + * the name curators tokens while upgrading or deprecating and is configurable in parts per million. * @param _ownerTaxPercentage Owner tax percentage */ function setOwnerTaxPercentage(uint32 _ownerTaxPercentage) external override onlyGovernor { @@ -181,7 +181,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { /** * @dev Internal: Set the owner tax percentage. This is used to prevent a subgraph owner to drain all - * the name curators tokens while upgrading or deprecating and is configurable in parts per hundred. + * the name curators tokens while upgrading or deprecating and is configurable in parts per million. * @param _ownerTaxPercentage Owner tax percentage */ function _setOwnerTaxPercentage(uint32 _ownerTaxPercentage) private { From c66614ade263c1e947ad7d0bd986b0627660dfb9 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 30 Oct 2021 01:05:03 +0100 Subject: [PATCH 04/11] feat: update subgraph authorization policy to only allow the NFT owner to operate --- contracts/discovery/GNS.sol | 2 +- test/gns.test.ts | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..1da625977 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -131,7 +131,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { * @dev Modifier that allows only a subgraph operator to be the caller */ modifier onlySubgraphAuth(uint256 _subgraphID) { - require(_isApprovedOrOwner(msg.sender, _subgraphID), "GNS: Must be authorized"); + require(ownerOf(_subgraphID) == msg.sender, "GNS: Must be authorized"); _; } diff --git a/test/gns.test.ts b/test/gns.test.ts index e70a641c7..910ca9c45 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -641,7 +641,7 @@ describe('GNS', () => { newSubgraph1.subgraphDeploymentID, newSubgraph1.versionMetadata, ) - await expect(tx).revertedWith('ERC721: operator query for nonexistent token') + await expect(tx).revertedWith('ERC721: owner query for nonexistent token') }) it('reject if not the owner', async function () { @@ -696,7 +696,7 @@ describe('GNS', () => { newSubgraph1.versionMetadata, ) // NOTE: deprecate burns the Subgraph NFT, when someone wants to publish a new version it won't find it - await expect(tx).revertedWith('ERC721: operator query for nonexistent token') + await expect(tx).revertedWith('ERC721: owner query for nonexistent token') }) }) @@ -722,13 +722,13 @@ describe('GNS', () => { newSubgraph1.versionMetadata, ) // NOTE: deprecate burns the Subgraph NFT, when someone wants to publish a new version it won't find it - await expect(tx).revertedWith('ERC721: operator query for nonexistent token') + await expect(tx).revertedWith('ERC721: owner query for nonexistent token') }) it('reject if the subgraph does not exist', async function () { const subgraphID = randomHexBytes(32) const tx = gns.connect(me.signer).deprecateSubgraph(subgraphID) - await expect(tx).revertedWith('ERC721: operator query for nonexistent token') + await expect(tx).revertedWith('ERC721: owner query for nonexistent token') }) it('reject deprecate if not the owner', async function () { From 6ec4065216c90b7710dffce7efa4da62760fbabb Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 30 Oct 2021 01:12:05 +0100 Subject: [PATCH 05/11] fix: correct typos --- contracts/discovery/GNS.sol | 4 ++-- test/gns.test.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..5b24e8fef 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -203,7 +203,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { bytes32 _nameIdentifier, string calldata _name ) external override { - require(_graphAccount == msg.sender, "GNS: Only can set your own name"); + require(_graphAccount == msg.sender, "GNS: Only you can set your name"); emit SetDefaultName(_graphAccount, _nameSystem, _nameIdentifier, _name); } @@ -297,7 +297,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { ); // Take the owner cut of the curation tax, add it to the total - // Upgrade is only callable by the owner, we asume then that msg.sender = owner + // Upgrade is only callable by the owner, we assume then that msg.sender = owner address subgraphOwner = msg.sender; uint256 tokensWithTax = _chargeOwnerTax( tokens, diff --git a/test/gns.test.ts b/test/gns.test.ts index e70a641c7..6a3a66529 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -548,7 +548,7 @@ describe('GNS', () => { const tx = gns .connect(other.signer) .setDefaultName(me.address, 0, defaultName.nameIdentifier, defaultName.name) - await expect(tx).revertedWith('GNS: Only can set your own name') + await expect(tx).revertedWith('GNS: Only you can set your name') }) }) From 66d6e5ee82769e2b32d94d2cd8a4a03072fcf25a Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 30 Oct 2021 01:18:53 +0100 Subject: [PATCH 06/11] refactor: use curator variable instead of msg.sender --- contracts/discovery/GNS.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..b8e8d4531 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -376,7 +376,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { // Pull tokens from sender address curator = msg.sender; - TokenUtils.pullTokens(graphToken(), msg.sender, _tokensIn); + TokenUtils.pullTokens(graphToken(), curator, _tokensIn); // Get name signal to mint for tokens deposited (uint256 vSignal, ) = curation().mint(subgraphData.subgraphDeploymentID, _tokensIn, 0); From 321c29b98ce1f1b6495da8e6ca4832a25cd6c154 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 30 Oct 2021 22:01:36 +0100 Subject: [PATCH 07/11] fix: validate nSignalToTokens reverting when subgraph is not published --- contracts/discovery/GNS.sol | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..3fdeaff33 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -540,7 +540,9 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { override returns (uint256, uint256) { - SubgraphData storage subgraphData = _getSubgraphData(_subgraphID); + // Get subgraph or revert if not published + // It does not make sense to convert signal from a disabled or non-existing one + SubgraphData storage subgraphData = _getSubgraphOrRevert(_subgraphID); uint256 vSignal = nSignalToVSignal(_subgraphID, _nSignalIn); uint256 tokensOut = curation().signalToTokens(subgraphData.subgraphDeploymentID, vSignal); return (vSignal, tokensOut); From 3482568292855cf1c54fe6b509d2289c36a0cc9b Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Wed, 10 Nov 2021 03:14:11 -0300 Subject: [PATCH 08/11] fix: update the target deployment even if the Subgraph has never minted signal --- contracts/discovery/GNS.sol | 13 +++++++------ test/gns.test.ts | 20 ++++++++++++-------- 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..a57703323 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -290,6 +290,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { // NOTE: We will only do this as long as there is signal on the subgraph if (subgraphData.nSignal > 0) { // Burn all version signal in the name pool for tokens (w/no slippage protection) + // Sell all signal from the old deployment uint256 tokens = curation.burn( subgraphData.subgraphDeploymentID, subgraphData.vSignal, @@ -306,12 +307,9 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { ); // Update pool: constant nSignal, vSignal can change (w/no slippage protection) - subgraphData.subgraphDeploymentID = _subgraphDeploymentID; - (subgraphData.vSignal, ) = curation.mint( - subgraphData.subgraphDeploymentID, - tokensWithTax, - 0 - ); + // Buy all signal from the new deployment + (subgraphData.vSignal, ) = curation.mint(_subgraphDeploymentID, tokensWithTax, 0); + emit SubgraphUpgraded( _subgraphID, subgraphData.vSignal, @@ -320,6 +318,9 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { ); } + // Update target deployment + subgraphData.subgraphDeploymentID = _subgraphDeploymentID; + emit SubgraphVersionUpdated(_subgraphID, _subgraphDeploymentID, _versionMetadata); } diff --git a/test/gns.test.ts b/test/gns.test.ts index e70a641c7..dd70d9358 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -190,10 +190,9 @@ describe('GNS', () => { // Check what selling all nSignal, which == selling all vSignal, should return for tokens // NOTE - no tax on burning on nSignal - const { 1: tokensReceivedEstimate } = await gns.nSignalToTokens( - subgraphID, - beforeSubgraph.nSignal, - ) + const tokensReceivedEstimate = beforeSubgraph.nSignal.gt(0) + ? (await gns.nSignalToTokens(subgraphID, beforeSubgraph.nSignal))[1] + : toBN(0) // Example: // Deposit 100, 5 is taxed, 95 GRT in curve // Upgrade - calculate 5% tax on 95 --> 4.75 GRT @@ -211,10 +210,10 @@ describe('GNS', () => { const totalAdjustedUp = totalWithOwnerTax.mul(MAX_PPM).div(MAX_PPM - curationTaxPercentage) // Re-estimate amount of signal to get considering the owner tax paid by the owner - const { 0: newVSignalEstimate, 1: newCurationTaxEstimate } = await curation.tokensToSignal( - newSubgraph.subgraphDeploymentID, - totalAdjustedUp, - ) + + const { 0: newVSignalEstimate, 1: newCurationTaxEstimate } = beforeSubgraph.nSignal.gt(0) + ? await curation.tokensToSignal(newSubgraph.subgraphDeploymentID, totalAdjustedUp) + : [toBN(0), toBN(0)] // Send tx const tx = gns @@ -620,6 +619,11 @@ describe('GNS', () => { await publishNewVersion(me, subgraph.id, newSubgraph1) }) + it('should publish a new version on an existing subgraph with no current signal', async function () { + const emptySignalSubgraph = await publishNewSubgraph(me, buildSubgraph()) + await publishNewVersion(me, emptySignalSubgraph.id, newSubgraph1) + }) + it('should reject a new version with the same subgraph deployment ID', async function () { const tx = gns .connect(me.signer) From 483add112ca719345955362ec84d57e0eec14314 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Wed, 10 Nov 2021 03:35:23 -0300 Subject: [PATCH 09/11] refactor: use SubgraphPublished event --- contracts/discovery/GNS.sol | 4 ++-- test/gns.test.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/contracts/discovery/GNS.sol b/contracts/discovery/GNS.sol index b5527e685..08ac45e6d 100644 --- a/contracts/discovery/GNS.sol +++ b/contracts/discovery/GNS.sol @@ -87,7 +87,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { /** * @dev Emitted when a subgraph is created. */ - event SubgraphCreated( + event SubgraphPublished( uint256 indexed subgraphID, bytes32 indexed subgraphDeploymentID, uint32 reserveRatio @@ -245,7 +245,7 @@ contract GNS is GNSV2Storage, GraphUpgradeable, IGNS, Multicall { // This function will check the if tokenId already exists. _mint(subgraphOwner, subgraphID); - emit SubgraphCreated(subgraphID, _subgraphDeploymentID, defaultReserveRatio); + emit SubgraphPublished(subgraphID, _subgraphDeploymentID, defaultReserveRatio); emit SubgraphMetadataUpdated(subgraphID, _subgraphMetadata); emit SubgraphVersionUpdated(subgraphID, _subgraphDeploymentID, _versionMetadata); } diff --git a/test/gns.test.ts b/test/gns.test.ts index e70a641c7..b118d0019 100644 --- a/test/gns.test.ts +++ b/test/gns.test.ts @@ -155,7 +155,7 @@ describe('GNS', () => { // Check events await expect(tx) - .emit(gns, 'SubgraphCreated') + .emit(gns, 'SubgraphPublished') .withArgs(subgraphID, newSubgraph.subgraphDeploymentID, DEFAULT_RESERVE_RATIO) .emit(gns, 'SubgraphMetadataUpdated') .withArgs(subgraphID, newSubgraph.subgraphMetadata) From 0719e540f10caef63e001f26ed43eccab01daf9e Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Wed, 10 Nov 2021 03:44:11 -0300 Subject: [PATCH 10/11] chore: update deployment script to initialize the new GNS --- cli/commands/migrate.ts | 1 + graph.config.yml | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cli/commands/migrate.ts b/cli/commands/migrate.ts index 9a77ca78c..77d2d4341 100644 --- a/cli/commands/migrate.ts +++ b/cli/commands/migrate.ts @@ -24,6 +24,7 @@ const allContracts = [ 'GraphToken', 'ServiceRegistry', 'Curation', + 'SubgraphNFTDescriptor', 'GNS', 'Staking', 'RewardsManager', diff --git a/graph.config.yml b/graph.config.yml index 7eb2faccd..d50743f3e 100644 --- a/graph.config.yml +++ b/graph.config.yml @@ -62,7 +62,7 @@ contracts: init: controller: "${{Controller.address}}" bondingCurve: "${{BancorFormula.address}}" - didRegistry: "0xdca7ef03e98e0dc2b855be647c39abe984fcf21b" + tokenDescriptor: "${{SubgraphNFTDescriptor.address}}" calls: - fn: "approveAll" Staking: @@ -89,4 +89,4 @@ contracts: proxy: true init: controller: "${{Controller.address}}" - issuanceRate: "1000000012184945188" # 3% annual rate (per block increase of total supply, blocks in a year = 365*60*60*24/13) \ No newline at end of file + issuanceRate: "1000000012184945188" # 3% annual rate (per block increase of total supply, blocks in a year = 365*60*60*24/13) From 1c15e48d04d66c802bfab862c4c43e14b25738cb Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Wed, 1 Dec 2021 13:58:17 -0300 Subject: [PATCH 11/11] docs: add audit report for transferrable subgraph --- .../2021-11-graph-gns-transferrable-owner.pdf | Bin 0 -> 493492 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 audits/OpenZeppelin/2021-11-graph-gns-transferrable-owner.pdf diff --git a/audits/OpenZeppelin/2021-11-graph-gns-transferrable-owner.pdf b/audits/OpenZeppelin/2021-11-graph-gns-transferrable-owner.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5bd846e55eafc05c22414b89a6147b9a46e3e23d GIT binary patch literal 493492 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

Ci9s^g|K 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 z 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�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 literal 0 HcmV?d00001