Skip to content

subsequent calls of chai.dai() display that tokens lacking  #12

Description

@akolotov

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions