All notable changes to the Subgraph will be documented in this file.
This project adheres to Semantic Versioning.
- Fix
adjustmentFlowRateon Pool - Improve
poolTotalAmountReceivedUntilUpdatedAtaccuracy on PoolMember - Fix
poolTotalAmountDistributedUntilUpdatedAton PoolMember - Fix
totalNumberOfActivePoolson TokenStatistics - Fix
totalSubscriptionsWithUnitson TokenStatistics - Use declarative eth calls for indexing optimization
- Remove
receipt: truefrom handlers, resulting ingasUsedstaying null, but improving indexing performance - Disable indexing of
Sendevents. UseTransferinstead.
- Fix missing Token name/symbol in some cases
- Fix Pool's
totalAmountDistributedbeing wrong in some cases - Add
adminOfPoolCountto AccountTokenSnapshot to count how many pools the account is admin of - Add
balanceLastUpdatedFromRpcBlocknumberto AccountTokenSnapshot to track when last RPC call was made - Don't always make an RPC call when updating the balance of an AccountTokenSnapshot, use the balance delta for simple cases
- Account for GDA's adjustment flow when setting the
isLiquidationEstimateOptimisticflag on AccountTokenSnapshot
- Removed FlowNFT related entities and attributes
- Enabled history pruning which disables perfect time-travel queries.
- Support for vendor "airstack"
- Various GDA related fixes
- NFT specific event entities
- GDA event entities
- GDA HOL entities
- New properties on aggregate entities to distinguish between CFA and GDA data where applicable
scripts/buildNetworkConfig.tsadded for building network config from metadata in place of hardcoded config json filesgetHostedServiceNetworks.tsadded for getting the list of networks in place of hardcodednetworks.json, improves maintenance + adding
totalNumberOfAccountsandtotalNumberOfHoldersadded toTokenStatisticandTokenStatisticLogentities
- Deployment bash scripts refactored to explicitly handle subgraphs deployed to hosted service vs. satsuma
SuperTokenMinimumDepositChangedEventevent entityuserDataproperty added toStreamHOL entityTokenGovernanceConfigHOL entity addedactiveOutgoingStreamCount,activeIncomingStreamCount,inactiveOutgoingStreamCountandinactiveIncomingStreamCountproperties added toAccountTokenSnapshotaggregate entity
- TOGA events added
gasUsedproperty on event entitiesmostRecentStreamonStreamRevisionentity- data integrity tests: validates subgraph data against blockchain data (RPC calls)
- balance validation: validates feature subgraph balance data against v1 subgraph balance data
- Implemented Matchstick Unit tests in favor of slowly deprecating integration tests
- Added support for Satsuma deployment
- Updated README given all the changes
- Moved over from ganache to hardhat running tests
- Using docker-compose instead of graph-node fork for integration tests
- Updated
schema.graphqldocumentation - Removed hardcoded addresses and utilize new
deploy-test-frameworkscript - Simplified
addresses.template.ts - Bumped specVersion (0.0.3 => 0.0.5) and apiVersion (0.0.6 => 0.0.7) in manifest file (
subgraph.template.yaml) and include receipts in eventHandlers - Removed unnecessary
test-subgraph.template.yamlduplicate file
- Minor mapping fixes
- Support for
arbitrum-goerli,optimism-goerliadded
- Support for
kovan,arbitrum-rinkeby,optimism-kovanremoved
- isNativeAssetSuperToken property added to Token entity
- Handle
Setevent from Resolver contract - New
SetEventandResolverEntryentities
- Handles unlisting of tokens in resolver
totalAmountStreamedUntilUpdatedAtonAccountTokenSnapshotandtotalAmountStreamedonAccountTokenSnapshotLogare no longer calculating the total amount streamed out from an account, but the net amount streamed through an account- Migration: replace this with
totalAmountStreamedOutUntilUpdatedAtandtotalAmountStreamedOut, respectively
- Migration: replace this with
gasPriceadded to event entitiesgovernanceAddressadded to governance related entitiestotalAmountStreamedInUntilUpdatedAt,totalAmountStreamedOutUntilUpdatedAtadded toAccountTokenSnapshottotalAmountStreamedIn,totalAmountStreamedOutadded toAccountTokenSnapshotLogTokenStatisticLogentity added
- GovernanceAddress is no longer hardcoded and subgraph detects new events from newly set governance contracts
tokenproperty added toBurnedEvent,MintedEventandSentEvent
- BNB Chain support added
maybeCriticalAtTimestampis nullable
- Add back deprecated
rewardAccountfield onAgreementLiquidatedV2Evententity (userewardAmountReceiver)
rewardAccountrenamed torewardAmountReceiveronAgreementLiquidatedV2Evententity
- Was not properly updating
updatedAtTimestampandupdatedAtBlockNumber - Wasn't updating
totalAmountStreamedUntilUpdatedAtforTokenStatswhenever it was updated forAccountTokenSnapshot
- README updated to remove dead legacy endpoints, new v1/dev endpoints added
- Subgraph tests use hardhat node, config changed in
hardhat.config.ts
- Script to check if subgraph is deployed on every network
logIndexandorderproperties added to allEvententitiesmaybeCriticalAtTimestampandisLiquidationEstimateOptimisticproperties added toAccountTokenSnapshotentityAccountTokenSnapshotLogentity added (created on every update toAccountTokenSnapshot)- Tests added for new properties/entities
- Tests fixed up given subgraph logic
- Avalanche C-Chain network support
- Removed tests as they were not catching the issue
- Removed (immutable: true) from
FlowOperatorUpdatedentity - No operators should
- Zero address
AccountandAccountTokenSnapshotentities are not filtered out
- Global
eventsquery fixed: globaleventsquery was breaking due to theFlowUpdatedEvententity implementing theEventinterface, but not having the immutable property like the other events AccountTokenSnapshotquery withaccount { id }fixed. Was breaking due to faulty logic of creating anAccountTokenSnapshotwithout creating anAccountentity- Tests added to ensure this will be caught
- Most event entities are immutable (except FlowUpdated)
- New Access Control List (ACL) entities and properties added
FlowOperatorentityflowOperatorpropertydepositandtotalDepositproperties added to entities
- Properly handle zero address throughout
- Package updates (#550, #604)
- Subgraph tests use
sdk-coreinstead ofjs-sdkand general refactoring (#594, #621)
- Subgraph supports new entities:
PPPConfigurationChangedEvent,AgreementLiquidatedV2Event(#558) - Added complementary liquidation tests
- +1 to
getRandomFlowRateso flowRate is never 0 (#538) getLiquidationsscript null case fix (#557)- handle updating of total supply for native super token (#584)
- Support for new test networks:
arbitrum-rinkeby,optimism-kovanandavalanche-fuji.
- from property onto SentEvent (#493) Subgraph sfmeta entity (#491)
- Subgraph test added to canary build (#512)
- using js-sdk@0.5.7
- update subgraph dependency versions (target minor) (#509)
ci cd cleanup (#500)
- single network deploy implemented (#506)
- Due to subgraph schema version upgrades, isSet is now also a reserved keyword in the schema. Superfluid events
that had isSet argument are all changed to using isKeySet instead.
- Migration: use
isKeySetinstead
- Migration: use
- Add stream period entity
- Name and addresses properties added to event entities
- Subgraph v1 underlying token added to Token entity
- Decimals and underlying token added to Token entity
- Tests added for new entity and properties: StreamPeriod entity, name and addresses properties on events, decimal and underlyingToken properties on Token
- Complete set of Superfluid event entities
- HOL (Higher order level) entities
- Aggregate entities
- System testing suite for all entities
- Shiny new docs coming to you soon