Skip to content

fix(fassets): RedemptionPerformed requestId is uint256, not uint64 - #1455

Open
Pratiikpy wants to merge 1 commit into
flare-foundation:mainfrom
Pratiikpy:fix-redemptionperformed-requestid-type
Open

fix(fassets): RedemptionPerformed requestId is uint256, not uint64#1455
Pratiikpy wants to merge 1 commit into
flare-foundation:mainfrom
Pratiikpy:fix-redemptionperformed-requestid-type

Conversation

@Pratiikpy

Copy link
Copy Markdown

What

RedemptionPerformed is documented with uint64 indexed requestId. The deployed contract declares uint256.

Why it matters

requestId is an indexed parameter, so its type is part of the event signature and therefore part of topic0:

Declaration topic0
RedemptionPerformed(address,address,uint64,bytes32,uint256,int256) 0x80b49fdd7580ee833ccd36349a80427cff16f09d4520f8a2b49983e6b106b5da
RedemptionPerformed(address,address,uint256,bytes32,uint256,int256) 0xd5150395b21c5be6cbb37ea167761efe7a013baccbd1bb7e5922fa261ccc3331

These are different topics. An indexer written faithfully from this page subscribes to the first one and matches nothing — so every redemption looks permanently open and no completion is ever recorded. It fails silently, which is the worst way for it to fail: there is no error to debug, just an empty result set that looks like "no redemptions completed yet".

I hit this building a redemption monitor and lost a while assuming my filter was wrong before checking the source.

Source of truth

contracts/userInterfaces/IAssetManagerEvents.sol:

event RedemptionPerformed(
    address indexed agentVault,
    address indexed redeemer,
    uint256 indexed requestId,
    bytes32 transactionHash,
    uint256 redemptionAmountUBA,
    int256 spentUnderlyingUBA);

Scope

One line. I diffed every event signature on this page against IAssetManagerEvents.sol and this is the only type mismatch among the 25 documented events — the rest match exactly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant