We are observing a strange situation with drawing tokens from the chai contract.
Here is the transaction: https://etherscan.io/tx/0xafde98025b80382855871045b81570dba5b833cfeb3c411d99617dee4d3ea627
The logs of the transactions represents that 100010000000000000000 Dai was minted to 0x4aa42145aa6ebf72e164c9bbc74fbd3788045016, so I would expect that the Dai balance invested in Chai will differ on this value.
But if you check the value returned by chai.dai() before this transaction and after it you will check that the difference is more than 100.01 Dai.
Firstly, let's get the value for the block 9780635:
curl https://url.to.rpc.node -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params": [{"to":"0x06AF07097C9Eeb7fD685c692751D5C66dB49c215","data":"0x6c25b3460000000000000000000000004aa42145aa6ebf72e164c9bbc74fbd3788045016"}, "0x953d9b"],"id":1}'
returns
{"jsonrpc":"2.0","result":"0x00000000000000000000000000000000000000000000088b0be7d408ff70d3f7","id":1}
Next, - for the block 9780637:
curl https://url.to.rpc.node -X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_call","params": [{"to":"0x06AF07097C9Eeb7fD685c692751D5C66dB49c215","data":"0x6c25b3460000000000000000000000004aa42145aa6ebf72e164c9bbc74fbd3788045016"}, "0x953d9d"],"id":1}'
returns
{"jsonrpc":"2.0","result":"0x0000000000000000000000000000000000000000000008859ffceee92c9fd3f6","id":1}
The difference between 0x88b0be7d408ff70d3f7 and 0x8859ffceee92c9fd3f6 is 100010000000000000001 (0x56beae51fd2d10001) rather than 100010000000000000000 as expected.
The issue here is that with DSR=0 we would expect that the Dai balance invested to Chai is not reduced. We are building logic of our contracts relying on this statement and see that our transactions are being failed since it is not true: https://etherscan.io/tx/0x236ea5de2c8957c9706f78f2f0347feb9b5b2757a59c285bfcda9ff008aeb178.
We are observing a strange situation with drawing tokens from the chai contract.
Here is the transaction: https://etherscan.io/tx/0xafde98025b80382855871045b81570dba5b833cfeb3c411d99617dee4d3ea627
The logs of the transactions represents that
100010000000000000000Dai was minted to0x4aa42145aa6ebf72e164c9bbc74fbd3788045016, so I would expect that the Dai balance invested in Chai will differ on this value.But if you check the value returned by
chai.dai()before this transaction and after it you will check that the difference is more than100.01Dai.Firstly, let's get the value for the block
9780635:returns
Next, - for the block
9780637:returns
The difference between
0x88b0be7d408ff70d3f7and0x8859ffceee92c9fd3f6is100010000000000000001(0x56beae51fd2d10001) rather than100010000000000000000as expected.The issue here is that with DSR=0 we would expect that the Dai balance invested to Chai is not reduced. We are building logic of our contracts relying on this statement and see that our transactions are being failed since it is not true: https://etherscan.io/tx/0x236ea5de2c8957c9706f78f2f0347feb9b5b2757a59c285bfcda9ff008aeb178.