On testnet, contract index 50 was initialised in block 16325, where a logged event was emitted to mint 0 tokens (without tokenID) to this account.
In this transaction (block 16331), 5M tokens were minted and added to the same account.
In this transaction (block 16384), another 5M tokens were minted and added to the same account.
CCDScan reports 10M tokens for this account here.
However, this smart contract does not appear to support CIS-1/2/3, as there is no “supports” method available.
What are the rules here to adhere to? Should I process logged events from contracts that are not CIS compliant?
That’s really up to you.
The chain cannot enforce anything about what the smart contract does. It could implement everything apart from the supports method and be a good token contract, it just does not adhere to CIS2.
This contract is from a time before CIS2 was complete, so it is not implementing the full spec unfortunately.
There is nothing “bad” about this.
I would recommend that for the explorer you only list CIS2 tokens which claim taht they are CIS2 tokens, i.e., have the supports function which returns
true on “do you supports CIS2” request.
This is what is currently implemented, however, this creates a disparity to CCDScan? Or is CCDScan going to clean up it’s token database to also only include CIS2 tokens?