Skip to content

Commit 272d735

Browse files
f: add update indexing agreement event
1 parent f336e4e commit 272d735

File tree

2 files changed

+42
-0
lines changed

2 files changed

+42
-0
lines changed

packages/subgraph-service/contracts/libraries/IndexingAgreement.sol

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,24 @@ library IndexingAgreement {
143143
bytes versionTerms
144144
);
145145

146+
/**
147+
* @notice Emitted when an indexing agreement is updated
148+
* @param indexer The address of the indexer
149+
* @param payer The address of the payer
150+
* @param agreementId The id of the agreement
151+
* @param allocationId The id of the allocation
152+
* @param version The version of the indexing agreement
153+
* @param versionTerms The version data of the indexing agreement
154+
*/
155+
event IndexingAgreementUpdated(
156+
address indexed indexer,
157+
address indexed payer,
158+
bytes16 indexed agreementId,
159+
address allocationId,
160+
IndexingAgreementVersion version,
161+
bytes versionTerms
162+
);
163+
146164
/**
147165
* @notice Thrown when trying to interact with an agreement with an invalid version
148166
* @param version The invalid version
@@ -274,6 +292,15 @@ library IndexingAgreement {
274292
require(metadata.version == IndexingAgreementVersion.V1, InvalidIndexingAgreementVersion(metadata.version));
275293
_setTermsV1(self, signedRCAU.rcau.agreementId, metadata.terms);
276294

295+
emit IndexingAgreementUpdated({
296+
indexer: wrapper.collectorAgreement.serviceProvider,
297+
payer: wrapper.collectorAgreement.payer,
298+
agreementId: signedRCAU.rcau.agreementId,
299+
allocationId: wrapper.agreement.allocationId,
300+
version: metadata.version,
301+
versionTerms: metadata.terms
302+
});
303+
277304
_directory().recurringCollector().update(signedRCAU);
278305
}
279306

packages/subgraph-service/test/unit/subgraphService/indexing-agreement/update.sol renamed to packages/subgraph-service/test/unit/subgraphService/indexing-agreement/update.t.sol

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,21 @@ contract SubgraphServiceIndexingAgreementUpgradeTest is SubgraphServiceIndexingA
148148
IRecurringCollector.SignedRCA memory accepted = _withAcceptedIndexingAgreement(ctx, indexerState);
149149
IRecurringCollector.SignedRCAU memory acceptableUpdate = _generateAcceptableSignedRCAU(ctx, accepted.rca);
150150

151+
IndexingAgreement.UpdateIndexingAgreementMetadata memory metadata = abi.decode(
152+
acceptableUpdate.rcau.metadata,
153+
(IndexingAgreement.UpdateIndexingAgreementMetadata)
154+
);
155+
156+
vm.expectEmit(address(subgraphService));
157+
emit IndexingAgreement.IndexingAgreementUpdated(
158+
accepted.rca.serviceProvider,
159+
accepted.rca.payer,
160+
acceptableUpdate.rcau.agreementId,
161+
indexerState.allocationId,
162+
metadata.version,
163+
metadata.terms
164+
);
165+
151166
resetPrank(indexerState.addr);
152167
_getSubgraphServiceExtension().updateIndexingAgreement(indexerState.addr, acceptableUpdate);
153168
}

0 commit comments

Comments
 (0)