From a4a07719fb9fa736264284b884a0de4ad685319f Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Tue, 8 Feb 2022 15:50:54 -0500 Subject: [PATCH 01/12] feat: allow anyone to close allocation after max allocation period --- contracts/staking/Staking.sol | 8 +++----- test/lib/testHelpers.ts | 6 ++++++ test/staking/allocation.test.ts | 18 ++++++++---------- 3 files changed, 17 insertions(+), 15 deletions(-) diff --git a/contracts/staking/Staking.sol b/contracts/staking/Staking.sol index 3e207cbbc..e40449bee 100644 --- a/contracts/staking/Staking.sol +++ b/contracts/staking/Staking.sol @@ -134,7 +134,7 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { * An amount of `tokens` get unallocated from `subgraphDeploymentID`. * The `effectiveAllocation` are the tokens allocated from creation to closing. * This event also emits the POI (proof of indexing) submitted by the indexer. - * `isDelegator` is true if the sender was one of the indexer's delegators. + * `isPublic` is true if the sender was someone other than the indexer. */ event AllocationClosed( address indexed indexer, @@ -145,7 +145,7 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { uint256 effectiveAllocation, address sender, bytes32 poi, - bool isDelegator + bool isPublic ); /** @@ -1176,9 +1176,7 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { // Indexer or operator can close an allocation // Delegators are also allowed but only after maxAllocationEpochs passed bool isIndexer = _isAuth(alloc.indexer); - if (epochs > maxAllocationEpochs) { - require(isIndexer || isDelegator(alloc.indexer, msg.sender), "!auth-or-del"); - } else { + if (epochs <= maxAllocationEpochs) { require(isIndexer, "!auth"); } diff --git a/test/lib/testHelpers.ts b/test/lib/testHelpers.ts index 7fd322719..945e0ac37 100644 --- a/test/lib/testHelpers.ts +++ b/test/lib/testHelpers.ts @@ -84,6 +84,12 @@ export const advanceToNextEpoch = async (epochManager: EpochManager): Promise => { + for (let i = 0; i < n + 1; i++) { + await advanceToNextEpoch(epochManager) + } +} + export const evmSnapshot = async (): Promise => provider().send('evm_snapshot', []) export const evmRevert = async (id: number): Promise => provider().send('evm_revert', [id]) diff --git a/test/staking/allocation.test.ts b/test/staking/allocation.test.ts index 962efa969..df6aae039 100644 --- a/test/staking/allocation.test.ts +++ b/test/staking/allocation.test.ts @@ -15,6 +15,7 @@ import { toBN, toGRT, Account, + advanceEpochs, } from '../lib/testHelpers' const { AddressZero, HashZero } = constants @@ -581,16 +582,14 @@ describe('Staking:Allocation', () => { await staking.connect(me.signer).closeAllocation(allocationID, poi) }) - it('should close an allocation (by delegator)', async function () { + it('should close an allocation (by public)', async function () { + // Reject to close if public address and under max allocation epochs + const tx1 = staking.connect(me.signer).closeAllocation(allocationID, poi) + await expect(tx1).revertedWith(' { // Setup await grt.connect(governor.signer).mint(me.address, toGRT('1')) await grt.connect(me.signer).approve(staking.address, toGRT('1')) - await staking.connect(me.signer).delegate(indexer.address, toGRT('1')) - // Should close by delegator + // Should close by public const tx = staking.connect(me.signer).closeAllocation(allocationID, poi) await expect(tx) .emit(staking, 'AllocationClosed') From 9f1c92e1775ee5c1235b1943d170ee6520408cd3 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Fri, 11 Mar 2022 10:35:31 -0300 Subject: [PATCH 02/12] feat: allow zero token allocation --- contracts/staking/Staking.sol | 45 +++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/contracts/staking/Staking.sol b/contracts/staking/Staking.sol index e40449bee..6ee38d320 100644 --- a/contracts/staking/Staking.sol +++ b/contracts/staking/Staking.sol @@ -1105,9 +1105,6 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { ) private { require(_isAuth(_indexer), "!auth"); - // Only allocations with a non-zero token amount are allowed - require(_tokens > 0, "!tokens"); - // Check allocation require(_allocationID != address(0), "!alloc"); require(_getAllocationState(_allocationID) == AllocationState.Null, "!null"); @@ -1119,7 +1116,9 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { require(ECDSA.recover(digest, _proof) == _allocationID, "!proof"); // Needs to have free capacity not used for other purposes to allocate - require(getIndexerCapacity(_indexer) >= _tokens, "!capacity"); + if (_tokens > 0) { + require(getIndexerCapacity(_indexer) >= _tokens, "!capacity"); + } // Creates an allocation // Allocation identifiers are not reused @@ -1136,14 +1135,16 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { ); allocations[_allocationID] = alloc; - // Mark allocated tokens as used - stakes[_indexer].allocate(alloc.tokens); + if (_tokens > 0) { + // Mark allocated tokens as used + stakes[_indexer].allocate(alloc.tokens); - // Track total allocations per subgraph - // Used for rewards calculations - subgraphAllocations[alloc.subgraphDeploymentID] = subgraphAllocations[ - alloc.subgraphDeploymentID - ].add(alloc.tokens); + // Track total allocations per subgraph + // Used for rewards calculations + subgraphAllocations[alloc.subgraphDeploymentID] = subgraphAllocations[ + alloc.subgraphDeploymentID + ].add(alloc.tokens); + } emit AllocationCreated( _indexer, @@ -1206,14 +1207,16 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { _updateRewards(alloc.subgraphDeploymentID); } - // Free allocated tokens from use - stakes[alloc.indexer].unallocate(alloc.tokens); + if (alloc.tokens > 0) { + // Free allocated tokens from use + stakes[alloc.indexer].unallocate(alloc.tokens); - // Track total allocations per subgraph - // Used for rewards calculations - subgraphAllocations[alloc.subgraphDeploymentID] = subgraphAllocations[ - alloc.subgraphDeploymentID - ].sub(alloc.tokens); + // Track total allocations per subgraph + // Used for rewards calculations + subgraphAllocations[alloc.subgraphDeploymentID] = subgraphAllocations[ + alloc.subgraphDeploymentID + ].sub(alloc.tokens); + } emit AllocationClosed( alloc.indexer, @@ -1255,8 +1258,8 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { // Purge allocation data except for: // - indexer: used in disputes and to avoid reusing an allocationID // - subgraphDeploymentID: used in disputes - allocations[_allocationID].tokens = 0; // This avoid collect(), close() and claim() to be called - allocations[_allocationID].createdAtEpoch = 0; + allocations[_allocationID].tokens = 0; + allocations[_allocationID].createdAtEpoch = 0; // This avoid collect(), close() and claim() to be called allocations[_allocationID].closedAtEpoch = 0; allocations[_allocationID].collectedFees = 0; allocations[_allocationID].effectiveAllocation = 0; @@ -1526,7 +1529,7 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { if (alloc.indexer == address(0)) { return AllocationState.Null; } - if (alloc.tokens == 0) { + if (alloc.createdAtEpoch == 0) { return AllocationState.Claimed; } From aed7323e9f2bf475c325ac05ca5d794ff2dc0e3a Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 04:20:39 -0300 Subject: [PATCH 03/12] feat: epochs to start on number 1 instead of 0 if we use createdAtEpoch as allocation state --- contracts/epochs/EpochManager.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/epochs/EpochManager.sol b/contracts/epochs/EpochManager.sol index 9ac49474a..a59478270 100644 --- a/contracts/epochs/EpochManager.sol +++ b/contracts/epochs/EpochManager.sol @@ -104,7 +104,7 @@ contract EpochManager is EpochManagerV1Storage, GraphUpgradeable, IEpochManager * @return The current epoch based on epoch length */ function currentEpoch() public view override returns (uint256) { - return lastLengthUpdateEpoch.add(epochsSinceUpdate()); + return lastLengthUpdateEpoch.add(epochsSinceUpdate()).add(1); } /** From 83338da13475cc3e2b0a77eae9cb158764367cc6 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 04:21:16 -0300 Subject: [PATCH 04/12] feat: manage edge case of a rebate with zero stake --- contracts/staking/libs/Rebates.sol | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/contracts/staking/libs/Rebates.sol b/contracts/staking/libs/Rebates.sol index c41db407d..084ad23e8 100644 --- a/contracts/staking/libs/Rebates.sol +++ b/contracts/staking/libs/Rebates.sol @@ -14,6 +14,7 @@ import "./Cobbs.sol"; */ library Rebates { using SafeMath for uint256; + using Rebates for Rebates.Pool; // Tracks stats for allocations closed on a particular epoch for claiming // The pool also keeps tracks of total query fees collected and stake used @@ -86,7 +87,7 @@ library Rebates { uint256 rebateReward = 0; // Calculate the rebate rewards for the indexer - if (pool.fees > 0) { + if (pool.fees > 0 && _indexerEffectiveAllocatedStake > 0) { rebateReward = LibCobbDouglas.cobbDouglas( pool.fees, // totalRewards _indexerFees, @@ -98,7 +99,7 @@ library Rebates { ); // Under NO circumstance we will reward more than total fees in the pool - uint256 _unclaimedFees = pool.fees.sub(pool.claimedRewards); + uint256 _unclaimedFees = pool.unclaimedFees(); if (rebateReward > _unclaimedFees) { rebateReward = _unclaimedFees; } From f6df35f614bb9f794df97fcdbf2d8720ee3c271e Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 04:22:12 -0300 Subject: [PATCH 05/12] chore: fix tests for zero allocation --- test/staking/allocation.test.ts | 571 +++++++++++++++++--------------- 1 file changed, 297 insertions(+), 274 deletions(-) diff --git a/test/staking/allocation.test.ts b/test/staking/allocation.test.ts index df6aae039..8677c96a7 100644 --- a/test/staking/allocation.test.ts +++ b/test/staking/allocation.test.ts @@ -54,6 +54,7 @@ describe('Staking:Allocation', () => { let staking: Staking // Test values + const indexerTokens = toGRT('1000') const tokensToStake = toGRT('100') const tokensToAllocate = toGRT('100') @@ -65,6 +66,7 @@ describe('Staking:Allocation', () => { const poi = randomHexBytes() // Helpers + const allocate = async (tokens: BigNumber) => { return staking .connect(indexer.signer) @@ -77,6 +79,177 @@ describe('Staking:Allocation', () => { ) } + const shouldAllocate = async (tokensToAllocate: BigNumber) => { + // Before state + const beforeStake = await staking.stakes(indexer.address) + + // Allocate + const currentEpoch = await epochManager.currentEpoch() + const tx = allocate(tokensToAllocate) + await expect(tx) + .emit(staking, 'AllocationCreated') + .withArgs( + indexer.address, + subgraphDeploymentID, + currentEpoch, + tokensToAllocate, + allocationID, + metadata, + ) + + // After state + const afterStake = await staking.stakes(indexer.address) + const afterAlloc = await staking.getAllocation(allocationID) + + // Stake updated + expect(afterStake.tokensAllocated).eq(beforeStake.tokensAllocated.add(tokensToAllocate)) + // Allocation updated + expect(afterAlloc.indexer).eq(indexer.address) + expect(afterAlloc.subgraphDeploymentID).eq(subgraphDeploymentID) + expect(afterAlloc.tokens).eq(tokensToAllocate) + expect(afterAlloc.createdAtEpoch).eq(currentEpoch) + expect(afterAlloc.collectedFees).eq(toGRT('0')) + expect(afterAlloc.closedAtEpoch).eq(toBN('0')) + expect(afterAlloc.effectiveAllocation).eq(toGRT('0')) + } + + // Claim and perform checks + const shouldClaim = async function (allocationID: string, restake: boolean) { + // Should have a particular state before claiming + expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Finalized) + + // Advance blocks to get the allocation in epoch where it can be claimed + await advanceToNextEpoch(epochManager) + + // Before state + const beforeStake = await staking.stakes(indexer.address) + const beforeAlloc = await staking.allocations(allocationID) + const beforeRebatePool = await staking.rebates(beforeAlloc.closedAtEpoch) + const beforeIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + const beforeIndexerTokens = await grt.balanceOf(indexer.address) + + // Claim rebates + const tokensToClaim = beforeAlloc.effectiveAllocation.eq(0) + ? toBN(0) + : beforeAlloc.collectedFees + const currentEpoch = await epochManager.currentEpoch() + const tx = staking.connect(indexer.signer).claim(allocationID, restake) + await expect(tx) + .emit(staking, 'RebateClaimed') + .withArgs( + indexer.address, + subgraphDeploymentID, + allocationID, + currentEpoch, + beforeAlloc.closedAtEpoch, + tokensToClaim, + beforeRebatePool.unclaimedAllocationsCount - 1, + toGRT('0'), + ) + + // After state + const afterBalance = await grt.balanceOf(indexer.address) + const afterStake = await staking.stakes(indexer.address) + const afterAlloc = await staking.allocations(allocationID) + const afterRebatePool = await staking.rebates(beforeAlloc.closedAtEpoch) + + // Funds distributed to indexer + if (restake) { + expect(afterBalance).eq(beforeIndexerTokens) + } else { + expect(afterBalance).eq(beforeIndexerTokens.add(tokensToClaim)) + } + // Stake updated + if (restake) { + expect(afterStake.tokensStaked).eq(beforeStake.tokensStaked.add(tokensToClaim)) + } else { + expect(afterStake.tokensStaked).eq(beforeStake.tokensStaked) + } + // Allocation updated (purged) + expect(afterAlloc.tokens).eq(toGRT('0')) + expect(afterAlloc.createdAtEpoch).eq(toGRT('0')) + expect(afterAlloc.closedAtEpoch).eq(toGRT('0')) + expect(afterAlloc.collectedFees).eq(toGRT('0')) + expect(afterAlloc.effectiveAllocation).eq(toGRT('0')) + expect(afterAlloc.accRewardsPerAllocatedToken).eq(toGRT('0')) + // Rebate updated + expect(afterRebatePool.unclaimedAllocationsCount).eq( + beforeRebatePool.unclaimedAllocationsCount - 1, + ) + if (afterRebatePool.unclaimedAllocationsCount === 0) { + // Rebate pool is empty and then pruned + expect(afterRebatePool.effectiveAllocatedStake).eq(toGRT('0')) + expect(afterRebatePool.fees).eq(toGRT('0')) + } else { + // There are still more unclaimed allocations in the rebate pool + expect(afterRebatePool.effectiveAllocatedStake).eq(beforeRebatePool.effectiveAllocatedStake) + expect(afterRebatePool.fees).eq(beforeRebatePool.fees.sub(tokensToClaim)) + } + + if (restake) { + // Verify that the claimed tokens are restaked + const afterIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + expect(afterIndexerStake).eq(beforeIndexerStake.add(tokensToClaim)) + } else { + // Verify that the claimed tokens are transferred to the indexer + const afterIndexerTokens = await grt.balanceOf(indexer.address) + expect(afterIndexerTokens).eq(beforeIndexerTokens.add(tokensToClaim)) + } + } + + // This function tests collect with state updates + const shouldCollect = async (tokensToCollect: BigNumber) => { + // Before state + const beforeTokenSupply = await grt.totalSupply() + const beforePool = await curation.pools(subgraphDeploymentID) + const beforeAlloc = await staking.getAllocation(allocationID) + + // Advance blocks to get the allocation in epoch where it can be closed + await advanceToNextEpoch(epochManager) + + // Collect fees and calculate expected results + let rebateFees = tokensToCollect + const protocolPercentage = await staking.protocolPercentage() + const protocolFees = rebateFees.mul(protocolPercentage).div(MAX_PPM) + rebateFees = rebateFees.sub(protocolFees) + + const curationPercentage = await staking.curationPercentage() + const curationFees = rebateFees.mul(curationPercentage).div(MAX_PPM) + rebateFees = rebateFees.sub(curationFees) + + // Collect tokens from allocation + const tx = staking.connect(assetHolder.signer).collect(tokensToCollect, allocationID) + await expect(tx) + .emit(staking, 'AllocationCollected') + .withArgs( + indexer.address, + subgraphDeploymentID, + await epochManager.currentEpoch(), + tokensToCollect, + allocationID, + assetHolder.address, + curationFees, + rebateFees, + ) + + // After state + const afterTokenSupply = await grt.totalSupply() + const afterPool = await curation.pools(subgraphDeploymentID) + const afterAlloc = await staking.getAllocation(allocationID) + + // Check that protocol fees are burnt + expect(afterTokenSupply).eq(beforeTokenSupply.sub(protocolFees)) + // Check that curation reserves increased for the SubgraphDeployment + expect(afterPool.tokens).eq(beforePool.tokens.add(curationFees)) + // Verify allocation is updated and allocation cleaned + expect(afterAlloc.tokens).eq(beforeAlloc.tokens) + expect(afterAlloc.createdAtEpoch).eq(beforeAlloc.createdAtEpoch) + expect(afterAlloc.closedAtEpoch).eq(toBN('0')) + expect(afterAlloc.collectedFees).eq(beforeAlloc.collectedFees.add(rebateFees)) + } + + // -- Tests -- + before(async function () { ;[me, governor, indexer, slasher, assetHolder] = await getAccounts() @@ -164,46 +337,6 @@ describe('Staking:Allocation', () => { * Allocate */ describe('allocate', function () { - const shouldAllocate = async (tokensToAllocate: BigNumber) => { - // Before state - const beforeStake = await staking.stakes(indexer.address) - - // Allocate - const currentEpoch = await epochManager.currentEpoch() - const tx = allocate(tokensToAllocate) - await expect(tx) - .emit(staking, 'AllocationCreated') - .withArgs( - indexer.address, - subgraphDeploymentID, - currentEpoch, - tokensToAllocate, - allocationID, - metadata, - ) - - // After state - const afterStake = await staking.stakes(indexer.address) - const afterAlloc = await staking.getAllocation(allocationID) - - // Stake updated - expect(afterStake.tokensAllocated).eq(beforeStake.tokensAllocated.add(tokensToAllocate)) - // Allocation updated - expect(afterAlloc.indexer).eq(indexer.address) - expect(afterAlloc.subgraphDeploymentID).eq(subgraphDeploymentID) - expect(afterAlloc.tokens).eq(tokensToAllocate) - expect(afterAlloc.createdAtEpoch).eq(currentEpoch) - expect(afterAlloc.collectedFees).eq(toGRT('0')) - expect(afterAlloc.closedAtEpoch).eq(toBN('0')) - expect(afterAlloc.effectiveAllocation).eq(toGRT('0')) - } - - it('reject allocate zero tokens', async function () { - const zeroTokens = toGRT('0') - const tx = allocate(zeroTokens) - await expect(tx).revertedWith('!tokens') - }) - it('reject allocate with invalid allocationID', async function () { const tx = staking .connect(indexer.signer) @@ -232,6 +365,12 @@ describe('Staking:Allocation', () => { await shouldAllocate(tokensToAllocate) }) + it('should allow allocation of zero tokens', async function () { + const zeroTokens = toGRT('0') + const tx = allocate(zeroTokens) + await tx + }) + it('should allocate on behalf of indexer', async function () { const proof = await channelKey.generateProof(indexer.address) @@ -304,57 +443,6 @@ describe('Staking:Allocation', () => { * Collect */ describe('collect', function () { - // This function tests collect with state updates - const shouldCollect = async (tokensToCollect: BigNumber) => { - // Before state - const beforeTokenSupply = await grt.totalSupply() - const beforePool = await curation.pools(subgraphDeploymentID) - const beforeAlloc = await staking.getAllocation(allocationID) - - // Advance blocks to get the allocation in epoch where it can be closed - await advanceToNextEpoch(epochManager) - - // Collect fees and calculate expected results - let rebateFees = tokensToCollect - const protocolPercentage = await staking.protocolPercentage() - const protocolFees = rebateFees.mul(protocolPercentage).div(MAX_PPM) - rebateFees = rebateFees.sub(protocolFees) - - const curationPercentage = await staking.curationPercentage() - const curationFees = rebateFees.mul(curationPercentage).div(MAX_PPM) - rebateFees = rebateFees.sub(curationFees) - - // Collect tokens from allocation - const tx = staking.connect(assetHolder.signer).collect(tokensToCollect, allocationID) - await expect(tx) - .emit(staking, 'AllocationCollected') - .withArgs( - indexer.address, - subgraphDeploymentID, - await epochManager.currentEpoch(), - tokensToCollect, - allocationID, - assetHolder.address, - curationFees, - rebateFees, - ) - - // After state - const afterTokenSupply = await grt.totalSupply() - const afterPool = await curation.pools(subgraphDeploymentID) - const afterAlloc = await staking.getAllocation(allocationID) - - // Check that protocol fees are burnt - expect(afterTokenSupply).eq(beforeTokenSupply.sub(protocolFees)) - // Check that curation reserves increased for the SubgraphDeployment - expect(afterPool.tokens).eq(beforePool.tokens.add(curationFees)) - // Verify allocation is updated and allocation cleaned - expect(afterAlloc.tokens).eq(beforeAlloc.tokens) - expect(afterAlloc.createdAtEpoch).eq(beforeAlloc.createdAtEpoch) - expect(afterAlloc.closedAtEpoch).eq(toBN('0')) - expect(afterAlloc.collectedFees).eq(beforeAlloc.collectedFees.add(rebateFees)) - } - beforeEach(async function () { // Create the allocation await staking.connect(indexer.signer).stake(tokensToStake) @@ -690,78 +778,9 @@ describe('Staking:Allocation', () => { * Claim */ describe('claim', function () { - // Claim and perform checks - const shouldClaim = async function (allocationID: string, restake: boolean) { - // Advance blocks to get the allocation in epoch where it can be claimed - await advanceToNextEpoch(epochManager) - - // Before state - const beforeBalance = await grt.balanceOf(indexer.address) - const beforeStake = await staking.stakes(indexer.address) - const beforeAlloc = await staking.allocations(allocationID) - const beforeRebatePool = await staking.rebates(beforeAlloc.closedAtEpoch) - - // Claim rebates - const tokensToClaim = beforeAlloc.collectedFees - const currentEpoch = await epochManager.currentEpoch() - const tx = staking.connect(indexer.signer).claim(allocationID, restake) - await expect(tx) - .emit(staking, 'RebateClaimed') - .withArgs( - indexer.address, - subgraphDeploymentID, - allocationID, - currentEpoch, - beforeAlloc.closedAtEpoch, - tokensToClaim, - beforeRebatePool.unclaimedAllocationsCount - 1, - toGRT('0'), - ) - - // After state - const afterBalance = await grt.balanceOf(indexer.address) - const afterStake = await staking.stakes(indexer.address) - const afterAlloc = await staking.allocations(allocationID) - const afterRebatePool = await staking.rebates(beforeAlloc.closedAtEpoch) - - // Funds distributed to indexer - if (restake) { - expect(afterBalance).eq(beforeBalance) - } else { - expect(afterBalance).eq(beforeBalance.add(tokensToClaim)) - } - // Stake updated - if (restake) { - expect(afterStake.tokensStaked).eq(beforeStake.tokensStaked.add(tokensToClaim)) - } else { - expect(afterStake.tokensStaked).eq(beforeStake.tokensStaked) - } - // Allocation updated (purged) - expect(afterAlloc.tokens).eq(toGRT('0')) - expect(afterAlloc.createdAtEpoch).eq(toGRT('0')) - expect(afterAlloc.closedAtEpoch).eq(toGRT('0')) - expect(afterAlloc.collectedFees).eq(toGRT('0')) - expect(afterAlloc.effectiveAllocation).eq(toGRT('0')) - expect(afterAlloc.accRewardsPerAllocatedToken).eq(toGRT('0')) - // Rebate updated - expect(afterRebatePool.unclaimedAllocationsCount).eq( - beforeRebatePool.unclaimedAllocationsCount - 1, - ) - if (afterRebatePool.unclaimedAllocationsCount === 0) { - // Rebate pool is empty and then pruned - expect(afterRebatePool.effectiveAllocatedStake).eq(toGRT('0')) - expect(afterRebatePool.fees).eq(toGRT('0')) - } else { - // There are still more unclaimed allocations in the rebate pool - expect(afterRebatePool.effectiveAllocatedStake).eq(beforeRebatePool.effectiveAllocatedStake) - expect(afterRebatePool.fees).eq(beforeRebatePool.fees.sub(tokensToClaim)) - } - } - beforeEach(async function () { - // Stake and allocate + // Stake await staking.connect(indexer.signer).stake(tokensToStake) - await allocate(tokensToAllocate) // Set channel dispute period to one epoch await staking.connect(governor.signer).setChannelDisputeEpochs(toBN('1')) @@ -771,122 +790,126 @@ describe('Staking:Allocation', () => { await grt.connect(assetHolder.signer).approve(staking.address, tokensToCollect) }) - it('reject claim for non-existing allocation', async function () { - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Active) - const invalidAllocationID = randomHexBytes(20) - const tx = staking.connect(indexer.signer).claim(invalidAllocationID, false) - await expect(tx).revertedWith('!finalized') - }) - - it('reject claim if allocation is not closed', async function () { - expect(await staking.getAllocationState(allocationID)).not.eq(AllocationState.Closed) - const tx = staking.connect(indexer.signer).claim(allocationID, false) - await expect(tx).revertedWith('!finalized') - }) - - context('> when allocation closed', function () { - beforeEach(async function () { - // Collect some funds - await staking.connect(assetHolder.signer).collect(tokensToCollect, allocationID) - - // Advance blocks to get the allocation in epoch where it can be closed - await advanceToNextEpoch(epochManager) - - // Close the allocation - await staking.connect(indexer.signer).closeAllocation(allocationID, poi) - }) - - it('reject claim if closed but channel dispute epochs has not passed', async function () { - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Closed) - const tx = staking.connect(indexer.signer).claim(allocationID, false) - await expect(tx).revertedWith('!finalized') - }) - - it('should claim rebate', async function () { - // Advance blocks to get the allocation finalized - await advanceToNextEpoch(epochManager) - - // Before state - const beforeIndexerTokens = await grt.balanceOf(indexer.address) - - // Claim with no restake - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Finalized) - await shouldClaim(allocationID, false) - - // Verify that the claimed tokens are transferred to the indexer - const afterIndexerTokens = await grt.balanceOf(indexer.address) - expect(afterIndexerTokens).eq(beforeIndexerTokens.add(tokensToCollect)) - }) - - it('should claim rebate with restake', async function () { - // Advance blocks to get the allocation finalized - await advanceToNextEpoch(epochManager) - - // Before state - const beforeIndexerStake = await staking.getIndexerStakedTokens(indexer.address) - - // Claim with restake - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Finalized) - await shouldClaim(allocationID, true) - - // Verify that the claimed tokens are restaked - const afterIndexerStake = await staking.getIndexerStakedTokens(indexer.address) - expect(afterIndexerStake).eq(beforeIndexerStake.add(tokensToCollect)) - }) - - it('should claim rebate (by public)', async function () { - // Advance blocks to get the allocation in epoch where it can be claimed - await advanceToNextEpoch(epochManager) - - // Should claim by public, but cannot restake - const beforeIndexerStake = await staking.stakes(indexer.address) - await staking.connect(me.signer).claim(allocationID, true) - const afterIndexerStake = await staking.stakes(indexer.address) - expect(afterIndexerStake.tokensStaked).eq(beforeIndexerStake.tokensStaked) - }) - - it('should claim rebate (by operator)', async function () { - // Advance blocks to get the allocation in epoch where it can be claimed - await advanceToNextEpoch(epochManager) - - // Add as operator - await staking.connect(indexer.signer).setOperator(me.address, true) - - // Should claim if given operator auth and can do restake - const beforeIndexerStake = await staking.stakes(indexer.address) - await staking.connect(me.signer).claim(allocationID, true) - const afterIndexerStake = await staking.stakes(indexer.address) - expect(afterIndexerStake.tokensStaked).not.eq(beforeIndexerStake.tokensStaked) - }) - - it('should claim many rebates with restake', async function () { - // Advance blocks to get the allocation in epoch where it can be claimed - await advanceToNextEpoch(epochManager) - - // Before state - const beforeIndexerStake = await staking.getIndexerStakedTokens(indexer.address) - - // Claim with restake - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Finalized) - await staking.connect(indexer.signer).claimMany([allocationID], true) - - // Verify that the claimed tokens are restaked - const afterIndexerStake = await staking.getIndexerStakedTokens(indexer.address) - expect(afterIndexerStake).eq(beforeIndexerStake.add(tokensToCollect)) - }) + for (const tokensToAllocate of [toBN(100), toBN(0)]) { + context(`> with ${tokensToAllocate} allocated tokens`, async function () { + beforeEach(async function () { + // Allocate + await allocate(tokensToAllocate) + }) - it('reject claim if already claimed', async function () { - // Advance blocks to get the allocation finalized - await advanceToNextEpoch(epochManager) + it('reject claim for non-existing allocation', async function () { + expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Active) + const invalidAllocationID = randomHexBytes(20) + const tx = staking.connect(indexer.signer).claim(invalidAllocationID, false) + await expect(tx).revertedWith('!finalized') + }) - // First claim - await shouldClaim(allocationID, false) + it('reject claim if allocation is not closed', async function () { + expect(await staking.getAllocationState(allocationID)).not.eq(AllocationState.Closed) + const tx = staking.connect(indexer.signer).claim(allocationID, false) + await expect(tx).revertedWith('!finalized') + }) - // Try to claim again - expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Claimed) - const tx = staking.connect(indexer.signer).claim(allocationID, false) - await expect(tx).revertedWith('!finalized') + context('> when allocation closed', function () { + beforeEach(async function () { + // Collect some funds + await staking.connect(assetHolder.signer).collect(tokensToCollect, allocationID) + + // Advance blocks to get the allocation in epoch where it can be closed + await advanceToNextEpoch(epochManager) + + // Close the allocation + await staking.connect(indexer.signer).closeAllocation(allocationID, poi) + }) + + it('reject claim if closed but channel dispute epochs has not passed', async function () { + expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Closed) + const tx = staking.connect(indexer.signer).claim(allocationID, false) + await expect(tx).revertedWith('!finalized') + }) + + it('should claim rebate', async function () { + // Advance blocks to get the allocation finalized + await advanceToNextEpoch(epochManager) + + // Claim with no restake + await shouldClaim(allocationID, false) + }) + + it('should claim rebate with restake', async function () { + // Advance blocks to get the allocation finalized + await advanceToNextEpoch(epochManager) + + // Claim with restake + await shouldClaim(allocationID, true) + }) + + it('should claim rebate (by public)', async function () { + // Advance blocks to get the allocation in epoch where it can be claimed + await advanceToNextEpoch(epochManager) + + // Should claim by public, but cannot restake + const beforeIndexerStake = await staking.stakes(indexer.address) + await staking.connect(me.signer).claim(allocationID, true) + const afterIndexerStake = await staking.stakes(indexer.address) + expect(afterIndexerStake.tokensStaked).eq(beforeIndexerStake.tokensStaked) + }) + + it('should claim rebate (by operator)', async function () { + // Advance blocks to get the allocation in epoch where it can be claimed + await advanceToNextEpoch(epochManager) + + // Before state + const beforeIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + const beforeAlloc = await staking.allocations(allocationID) + + // Add as operator + // Should claim if given operator auth and can do restake + await staking.connect(indexer.signer).setOperator(me.address, true) + await staking.connect(me.signer).claim(allocationID, true) + + // Verify that the claimed tokens are restaked + const afterIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + const tokensToClaim = beforeAlloc.effectiveAllocation.eq(0) + ? toBN(0) + : beforeAlloc.collectedFees + expect(afterIndexerStake).eq(beforeIndexerStake.add(tokensToClaim)) + }) + + it('should claim many rebates with restake', async function () { + // Advance blocks to get the allocation in epoch where it can be claimed + await advanceToNextEpoch(epochManager) + + // Before state + const beforeIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + const beforeAlloc = await staking.allocations(allocationID) + + // Claim with restake + expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Finalized) + await staking.connect(indexer.signer).claimMany([allocationID], true) + + // Verify that the claimed tokens are restaked + const afterIndexerStake = await staking.getIndexerStakedTokens(indexer.address) + const tokensToClaim = beforeAlloc.effectiveAllocation.eq(0) + ? toBN(0) + : beforeAlloc.collectedFees + expect(afterIndexerStake).eq(beforeIndexerStake.add(tokensToClaim)) + }) + + it('reject claim if already claimed', async function () { + // Advance blocks to get the allocation finalized + await advanceToNextEpoch(epochManager) + + // First claim + await shouldClaim(allocationID, false) + + // Try to claim again + expect(await staking.getAllocationState(allocationID)).eq(AllocationState.Claimed) + const tx = staking.connect(indexer.signer).claim(allocationID, false) + await expect(tx).revertedWith('!finalized') + }) + }) }) - }) + } }) }) From 9f3f87bf31ea3f3742999502aed9205d9ec6fb07 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 19:50:25 -0300 Subject: [PATCH 06/12] feat: skip unnecessary code paths for rewards calculation under zero-allocation --- contracts/staking/Staking.sol | 42 +++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/contracts/staking/Staking.sol b/contracts/staking/Staking.sol index 6ee38d320..78c50d4ae 100644 --- a/contracts/staking/Staking.sol +++ b/contracts/staking/Staking.sol @@ -1115,9 +1115,13 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { bytes32 digest = ECDSA.toEthSignedMessageHash(messageHash); require(ECDSA.recover(digest, _proof) == _allocationID, "!proof"); - // Needs to have free capacity not used for other purposes to allocate if (_tokens > 0) { + // Needs to have free capacity not used for other purposes to allocate require(getIndexerCapacity(_indexer) >= _tokens, "!capacity"); + } else { + // Allocating zero-tokens still needs to have stake + // Minimum indexer stake is managed by stake/unstake + require(stakes[_indexer].tokensSecureStake() > 0, "!stake"); } // Creates an allocation @@ -1131,10 +1135,13 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { 0, // closedAtEpoch 0, // Initialize collected fees 0, // Initialize effective allocation - _updateRewards(_subgraphDeploymentID) // Initialize accumulated rewards per stake allocated + (_tokens > 0) ? _updateRewards(_subgraphDeploymentID) : 0 // Initialize accumulated rewards per stake allocated ); allocations[_allocationID] = alloc; + // -- Rewards Distribution -- + + // Process non-zero-allocation rewards tracking if (_tokens > 0) { // Mark allocated tokens as used stakes[_indexer].allocate(alloc.tokens); @@ -1175,22 +1182,26 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking { require(epochs > 0, " 0) { + // Distribute rewards if proof of indexing was presented by the indexer or operator + if (isIndexer && _poi != 0) { + _distributeRewards(_allocationID, alloc.indexer); + } else { + _updateRewards(alloc.subgraphDeploymentID); + } + // Free allocated tokens from use stakes[alloc.indexer].unallocate(alloc.tokens); From 24fbdcd7fc910f835d5a16d43f0f4532f0173307 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 19:51:27 -0300 Subject: [PATCH 07/12] feat: use rebate pool total stake to skip calculations when zero --- contracts/staking/libs/Rebates.sol | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/staking/libs/Rebates.sol b/contracts/staking/libs/Rebates.sol index 084ad23e8..9323a9747 100644 --- a/contracts/staking/libs/Rebates.sol +++ b/contracts/staking/libs/Rebates.sol @@ -87,7 +87,7 @@ library Rebates { uint256 rebateReward = 0; // Calculate the rebate rewards for the indexer - if (pool.fees > 0 && _indexerEffectiveAllocatedStake > 0) { + if (pool.fees > 0 && pool.effectiveAllocatedStake > 0) { rebateReward = LibCobbDouglas.cobbDouglas( pool.fees, // totalRewards _indexerFees, From 9385b40faedd77c9af14eb6703b9c3f459e30949 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sun, 13 Mar 2022 19:52:02 -0300 Subject: [PATCH 08/12] chore: improve and complete rebate pool tests --- contracts/tests/RebatePoolMock.sol | 2 +- test/staking/allocation.test.ts | 341 +++++++++++++++-------------- test/staking/rebate.test.ts | 22 +- 3 files changed, 202 insertions(+), 163 deletions(-) diff --git a/contracts/tests/RebatePoolMock.sol b/contracts/tests/RebatePoolMock.sol index b1a46a1ac..5a30f4767 100644 --- a/contracts/tests/RebatePoolMock.sol +++ b/contracts/tests/RebatePoolMock.sol @@ -48,7 +48,7 @@ contract RebatePoolMock { uint32 _alphaNumerator, uint32 _alphaDenominator ) external pure returns (uint256) { - if (_totalFees == 0) { + if (_totalFees == 0 || _totalStake == 0) { return 0; } diff --git a/test/staking/allocation.test.ts b/test/staking/allocation.test.ts index 8677c96a7..288365988 100644 --- a/test/staking/allocation.test.ts +++ b/test/staking/allocation.test.ts @@ -345,11 +345,15 @@ describe('Staking:Allocation', () => { }) it('reject allocate if no tokens staked', async function () { - const tokensOverCapacity = tokensToStake.add(toBN('1')) - const tx = allocate(tokensOverCapacity) + const tx = allocate(toBN('1')) await expect(tx).revertedWith('!capacity') }) + it('reject allocate zero tokens if no tokens staked', async function () { + const tx = allocate(toBN('0')) + await expect(tx).revertedWith('!stake') + }) + context('> when staked', function () { beforeEach(async function () { await staking.connect(indexer.signer).stake(tokensToStake) @@ -563,185 +567,200 @@ describe('Staking:Allocation', () => { beforeEach(async function () { // Stake and allocate await staking.connect(indexer.signer).stake(tokensToStake) - await allocate(tokensToAllocate) - }) - - it('reject close a non-existing allocation', async function () { - const invalidAllocationID = randomHexBytes(20) - const tx = staking.connect(indexer.signer).closeAllocation(invalidAllocationID, poi) - await expect(tx).revertedWith('!active') }) - it('reject close before at least one epoch has passed', async function () { - const tx = staking.connect(indexer.signer).closeAllocation(allocationID, poi) - await expect(tx).revertedWith(' with ${tokensToAllocate} allocated tokens`, async function () { + beforeEach(async function () { + await allocate(tokensToAllocate) + }) - // Close allocation - const tx = staking.connect(me.signer).closeAllocation(allocationID, poi) - await expect(tx).revertedWith('!auth') - }) + it('reject close a non-existing allocation', async function () { + const invalidAllocationID = randomHexBytes(20) + const tx = staking.connect(indexer.signer).closeAllocation(invalidAllocationID, poi) + await expect(tx).revertedWith('!active') + }) - it('reject close if allocation is already closed', async function () { - // Move at least one epoch to be able to close - await advanceToNextEpoch(epochManager) + it('reject close before at least one epoch has passed', async function () { + const tx = staking.connect(indexer.signer).closeAllocation(allocationID, poi) + await expect(tx).revertedWith(' 0 + const alloc = await staking.getAllocation(allocationID) + if (alloc.tokens.gt(0)) { + // Calculations + const beforeAlloc = await staking.getAllocation(allocationID) + const currentEpoch = await epochManager.currentEpoch() + const epochs = currentEpoch.sub(beforeAlloc.createdAtEpoch) + const effectiveAllocation = calculateEffectiveAllocation( + beforeAlloc.tokens, + epochs, + toBN(maxAllocationEpochs), + ) - it('should close many allocations in batch', async function () { - // Setup a second allocation - await staking.connect(indexer.signer).stake(tokensToAllocate) - const channelKey2 = deriveChannelKey() - const allocationID2 = channelKey2.address - await staking - .connect(indexer.signer) - .allocate( - subgraphDeploymentID, - tokensToAllocate, - allocationID2, - metadata, - await channelKey2.generateProof(indexer.address), - ) + // Setup + await grt.connect(governor.signer).mint(me.address, toGRT('1')) + await grt.connect(me.signer).approve(staking.address, toGRT('1')) + + // Should close by public + const tx = staking.connect(me.signer).closeAllocation(allocationID, poi) + await expect(tx) + .emit(staking, 'AllocationClosed') + .withArgs( + indexer.address, + subgraphDeploymentID, + currentEpoch, + beforeAlloc.tokens, + allocationID, + effectiveAllocation, + me.address, + poi, + true, + ) + } else { + // closing by the public on a zero allocation is not authorized + const tx = staking.connect(me.signer).closeAllocation(allocationID, poi) + await expect(tx).revertedWith('!auth') + } + }) - // Move at least one epoch to be able to close - await advanceToNextEpoch(epochManager) - await advanceToNextEpoch(epochManager) + it('should close many allocations in batch', async function () { + // Setup a second allocation + await staking.connect(indexer.signer).stake(tokensToStake) + const channelKey2 = deriveChannelKey() + const allocationID2 = channelKey2.address + await staking + .connect(indexer.signer) + .allocate( + subgraphDeploymentID, + tokensToAllocate, + allocationID2, + metadata, + await channelKey2.generateProof(indexer.address), + ) - // Close multiple allocations in one tx - const requests = [ - { - allocationID: allocationID, - poi: poi, - }, - { - allocationID: allocationID2, - poi: poi, - }, - ] - await staking.connect(indexer.signer).closeAllocationMany(requests) - }) + // Move at least one epoch to be able to close + await advanceToNextEpoch(epochManager) + await advanceToNextEpoch(epochManager) + + // Close multiple allocations in one tx + const requests = [ + { + allocationID: allocationID, + poi: poi, + }, + { + allocationID: allocationID2, + poi: poi, + }, + ] + await staking.connect(indexer.signer).closeAllocationMany(requests) + }) + }) + } }) describe('closeAndAllocate', function () { diff --git a/test/staking/rebate.test.ts b/test/staking/rebate.test.ts index 416992716..2668b29f4 100644 --- a/test/staking/rebate.test.ts +++ b/test/staking/rebate.test.ts @@ -44,6 +44,14 @@ describe('Staking:Rebate', () => { { totalRewards: 0, fees: 0, totalFees: 0, stake: 1200, totalStake: 7300 }, ] + // Edge case #2 - Closed allocations with queries but no stake + const edgeCases2: RebateTestCase[] = [ + { totalRewards: 1300, fees: 100, totalFees: 1300, stake: 0, totalStake: 0 }, + { totalRewards: 1300, fees: 0, totalFees: 1300, stake: 0, totalStake: 0 }, + { totalRewards: 1300, fees: 200, totalFees: 1300, stake: 0, totalStake: 0 }, + { totalRewards: 1300, fees: 1000, totalFees: 1300, stake: 0, totalStake: 0 }, + ] + // This function calculates the Cobb-Douglas formula in Typescript so we can compare against // the Solidity implementation // TODO: consider using bignumber.js to get extra precision @@ -56,7 +64,7 @@ describe('Staking:Rebate', () => { alphaNumerator: number, alphaDenominator: number, ) { - if (totalFees === 0) { + if (totalFees === 0 || totalStake === 0) { return 0 } const feeRatio = fees / totalFees @@ -201,6 +209,10 @@ describe('Staking:Rebate', () => { describe('edge #1 test case', function () { testAlphas(shouldMatchFormulas, edgeCases1) }) + + describe('edge #2 test case', function () { + testAlphas(shouldMatchFormulas, edgeCases2) + }) }) describe('should match rewards out from rebates', function () { @@ -211,6 +223,10 @@ describe('Staking:Rebate', () => { describe('edge #1 test case', function () { testAlphas(shouldMatchOut, edgeCases1) }) + + describe('edge #2 test case', function () { + testAlphas(shouldMatchFormulas, edgeCases2) + }) }) describe('should always be that sum of rebate rewards obtained <= to total rewards', function () { @@ -221,5 +237,9 @@ describe('Staking:Rebate', () => { describe('edge #1 test case', function () { testAlphas(shouldConserveBalances, edgeCases1) }) + + describe('edge #2 test case', function () { + testAlphas(shouldMatchFormulas, edgeCases2) + }) }) }) From e112c85a9ae02af35761dd67446b5ff57899f21c Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Sat, 7 May 2022 11:56:04 -0300 Subject: [PATCH 09/12] docs: add audit report --- ...h-altruistic-alloc-and-query-versioning.pdf | Bin 0 -> 267720 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 audits/ConsenSysDiligence/2022-03-graph-altruistic-alloc-and-query-versioning.pdf diff --git a/audits/ConsenSysDiligence/2022-03-graph-altruistic-alloc-and-query-versioning.pdf b/audits/ConsenSysDiligence/2022-03-graph-altruistic-alloc-and-query-versioning.pdf new file mode 100644 index 0000000000000000000000000000000000000000..cb9f1329fc509993c5ca7d52c3cd464811ff7439 GIT binary patch literal 267720 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�`n% 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
    Gced4yq)U!oI&;^X24 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 literal 0 HcmV?d00001 From b352e49c4aabec381f412b0f9b5306d0638ac385 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Fri, 27 May 2022 14:00:22 -0300 Subject: [PATCH 10/12] refactor: init epoch to 1 and add a note to make it clear why this is that way --- contracts/epochs/EpochManager.sol | 6 ++++-- test/epochs.test.ts | 5 +++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/contracts/epochs/EpochManager.sol b/contracts/epochs/EpochManager.sol index a59478270..3f022d4af 100644 --- a/contracts/epochs/EpochManager.sol +++ b/contracts/epochs/EpochManager.sol @@ -29,7 +29,9 @@ contract EpochManager is EpochManagerV1Storage, GraphUpgradeable, IEpochManager Managed._initialize(_controller); - lastLengthUpdateEpoch = 0; + // NOTE: We make the first epoch to be one instead of zero to avoid any issue + // with composing contracts that may use zero as an empty value + lastLengthUpdateEpoch = 1; lastLengthUpdateBlock = blockNum(); epochLength = _epochLength; @@ -104,7 +106,7 @@ contract EpochManager is EpochManagerV1Storage, GraphUpgradeable, IEpochManager * @return The current epoch based on epoch length */ function currentEpoch() public view override returns (uint256) { - return lastLengthUpdateEpoch.add(epochsSinceUpdate()).add(1); + return lastLengthUpdateEpoch.add(epochsSinceUpdate()); } /** diff --git a/test/epochs.test.ts b/test/epochs.test.ts index 7ac178c33..2ff87084a 100644 --- a/test/epochs.test.ts +++ b/test/epochs.test.ts @@ -68,6 +68,11 @@ describe('EpochManager', () => { }) describe('calculations', () => { + it('first epoch should be 1', async function () { + const currentEpoch = await epochManager.currentEpoch() + expect(currentEpoch).eq(1) + }) + it('should return correct block number', async function () { const currentBlock = await latestBlock() expect(await epochManager.blockNum()).eq(currentBlock) From 3e0b6bdc791a0672662a2493e96987d497d65403 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Fri, 1 Jul 2022 10:38:28 -0300 Subject: [PATCH 11/12] feat: require minimum stake to allocate zero tokens --- contracts/staking/Staking.sol | 8 +++++--- test/staking/allocation.test.ts | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/contracts/staking/Staking.sol b/contracts/staking/Staking.sol index e22d8b0b1..2bcc8d74d 100644 --- a/contracts/staking/Staking.sol +++ b/contracts/staking/Staking.sol @@ -1120,9 +1120,11 @@ contract Staking is StakingV2Storage, GraphUpgradeable, IStaking, Multicall { // Needs to have free capacity not used for other purposes to allocate require(getIndexerCapacity(_indexer) >= _tokens, "!capacity"); } else { - // Allocating zero-tokens still needs to have stake - // Minimum indexer stake is managed by stake/unstake - require(stakes[_indexer].tokensSecureStake() > 0, "!stake"); + // Allocating zero-tokens still needs to comply with stake requirements + require( + stakes[_indexer].tokensSecureStake() >= minimumIndexerStake, + "!minimumIndexerStake" + ); } // Creates an allocation diff --git a/test/staking/allocation.test.ts b/test/staking/allocation.test.ts index 8f6f275f7..9b0c846ec 100644 --- a/test/staking/allocation.test.ts +++ b/test/staking/allocation.test.ts @@ -357,9 +357,9 @@ describe('Staking:Allocation', () => { await expect(tx).revertedWith('!capacity') }) - it('reject allocate zero tokens if no tokens staked', async function () { + it('reject allocate zero tokens if no minimum stake', async function () { const tx = allocate(toBN('0')) - await expect(tx).revertedWith('!stake') + await expect(tx).revertedWith('!minimumIndexerStake') }) context('> when staked', function () { From 97df72ba0554db432ce4d42c8cd51db3d1a1a684 Mon Sep 17 00:00:00 2001 From: Ariel Barmat Date: Tue, 12 Jul 2022 18:28:07 -0300 Subject: [PATCH 12/12] test: remove extra loop from advance epochs helper --- test/lib/testHelpers.ts | 2 +- test/staking/allocation.test.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/lib/testHelpers.ts b/test/lib/testHelpers.ts index 8da817c2c..ee7c87322 100644 --- a/test/lib/testHelpers.ts +++ b/test/lib/testHelpers.ts @@ -84,7 +84,7 @@ export const advanceToNextEpoch = async (epochManager: EpochManager): Promise => { - for (let i = 0; i < n + 1; i++) { + for (let i = 0; i < n; i++) { await advanceToNextEpoch(epochManager) } } diff --git a/test/staking/allocation.test.ts b/test/staking/allocation.test.ts index 9b0c846ec..67e9120e6 100644 --- a/test/staking/allocation.test.ts +++ b/test/staking/allocation.test.ts @@ -696,7 +696,7 @@ describe('Staking:Allocation', () => { // Move max allocation epochs to close by delegator const maxAllocationEpochs = await staking.maxAllocationEpochs() - await advanceEpochs(epochManager, maxAllocationEpochs) + await advanceEpochs(epochManager, maxAllocationEpochs + 1) // Closing should only be possible if allocated tokens > 0 const alloc = await staking.getAllocation(allocationID)