Challenge

Optional feature to prevent human error during outcome reporting

DIVA Protocol integrates an optional challenge feature which can be activated by the data provider to allow position token holders to request a review of the submitted final value if deemed inaccurate. The main goal of the challenge functionality is to help fix unintentional errors made by the data provider such as fat finger mistake or incorrect accounting for stock or token split.

The challenge feature is NOT meant to prevent malicious data providers from submitting wrong values.

The challenge feature can be valuable when DIVA Protocol is used within a trusted and process-driven environment, such as a traditional bank. It is not expected to be used by decentralized oracles like Tellor, Chainlink or UniswapV3, which cannot realistically review their submitted values.

Enabling the challenge feature

Data providers have the flexibility to choose whether to enable the challenge functionality each time they submit a value during the settlement process, including the initial submission, submission period, or subsequent reviews. To enhance transparency and build user trust, data providers can establish a predefined challenge policy through a separate smart contract, which can be assigned as the data provider. By implementing this approach, pool creators will have clear visibility at the time of pool creation, enabling them to determine whether a submitted value can be challenged or not, thus avoiding any unexpected surprises for users.

Who can challenge?

Each account that has a non-zero position token holder of the underlying pool can submit a challenge including a value that they deem correct. For more details, refer to the DIVA Protocol smart contract documentation.

How to challenge a value?

Users can challenge a reported value by calling the challengeFinalReferenceValue function.

Responding to challenges

If a value submission was challenged, the data provider has the following four options to react during the 5-day review period:

  • Option 1: Submit a new value and enable the possibility to challenge. This will trigger a new challenge period.

  • Option 2: Submit a new value and disable the possibility to challenge. In this case the new (revisited) value is directly confirmed and position token holders can redeem their tokens.

  • Option 3: Submit the same value as before and thereby confirm the previously submitted value. Users can start redeem their position tokens.

  • Option 4: Don't submit any value. In that case, users will be able to redeem their position tokens after the end of the review period at the originally submitted value.

Option 4 is the only option that allows the data provider to confirm the previously submitted value without spending any gas. While cost-efficient for data providers, position token holders will have to wait 5 days before they can start redeeming their tokens.

Last updated