Let’s evaluate subgraph on the example.
https://thegraph.com/explorer/subgraph/dkirsche/yearn-vault-transfers
1) This subgraph has no description and github link. We need to understand what subgraph does, so let’s check github using authors nickname or subgraph name.
2) If we google “yearn vaults” we can find yearn.finance/vaults, so we suppose that subgraph indexes some data about different vaults (Vaults represent different automated strategies of yield farming).
3) We found our subgraph using author`s nickname: https://github.com/dkirsche/subgraph-y
4) Readme file doesn’t explain much, it only names 3 entities of the subgraph.
5) So we need to check subgraph manifest — subgraph.yaml and subgraph schema — schema.graphql.
6) Let`s explore manifest and compare it to the manifest on ipfs.io using link to subgraph ID -QmcA7P4imA1X4VzF5kkhbnTem1fF2UBQZJc9etiS8VCYhx (which is shown above playground on subgraph page) https://ipfs.io/ipfs/QmcA7P4imA1X4VzF5kkhbnTem1fF2UBQZJc9etiS8VCYhx
7) As we can see manifests are the same so we found the correct github version.
8) The manifest is pretty long but it consists of small repeating parts just showing information about transfers from different vaults.
9) Each part has its name in the manifest like yUSDVault, yTUSDVault, yWSBTCVault and so on.
10) Looking at the corresponding contracts at etherscan (they are shown in the following way in the manifest “address: ` 0x5dbcf33d8c2e976c6b560249878e6f1491bca25c`”) and comparing them to yearn.finance/vaults, we can see that vaults are the same.
11) Let`s check what data subgraph indexes from the blockchain, looking at the event string in the manifest “event: ‘Transfer(indexed address,indexed address,uint256)’ ”. As we can see subgraph only looks at the transfers between addresses in different vaults.
12) While checking schema and manifest, we can find out that entities like deposit and withdraw are actually present in the manifest and schema, but they are not indexed and do not work in the schema.
13) We can also see that there is a chain of forks of subgraphs on github for yearn.finance project, each one adding or removing some features or fix bugs. This particular one simplifies previous, removing some features which are not important for the author.
14) To conclude we can say that graph is pretty simple, indexing only several raw pieces of data. There were no updates after deployment of subgraph. It`s not complete and not accurately implemented, since deposit and withdraw queries are not working, only on github author commented not to use them.