Skip to main content

📄 dAPI Pricing MT Signing Checklist

TODO

This page could benefit from a description under H1 here. OR in frontMatter.description then display in whole or in part, example: {frontmatter.description} And further more you can proceed to ...

â„šī¸ In case you encounter an issue while pushing signatures or pulling the most recent changes, it is advised to restart the checklist steps from the beginning (i.e. Reclone the repo ...)

Checklist Steps​

  • Identify the correct PR: Identified the correct PR related to the MT update (e.g., Dint-2024-05-17).

  • Checkout the PR locally: Clone or switch to the correct branch (e.g., git clone -b Dint-2024-05-17 https://github.com/api3dao/data-feeds.git or git checkout Dint-2024-05-17).

  • Run the dapi-management FE locally: Navigate to packages/dapi-management and execute pnpm frontend:prod

  • Access the dAPI Pricing menu on the dapi-management FE and connect your relevant signing wallet address as recorded in dapi-management/data/dapi-pricing-merkle-tree-root/hash-signers.json.

  • Review FE Data:

    • Review Config Data: Click on the View Config button and review key config data (such as historyEndDate, historyStartDate, nativeCurrencyUsdRates, dapiNameToSubstituteForHistoricalUpdateCounts, and chainAliasToHardcodedGasCostPerUpdateInEthers).

    • Subscriptions Fees Overview: Review the data of each tabs of the Subscription Fees Overview menu:

      • Chains: In the Chains tab, review the % changes in average daily subscription fees for chains (biggest % changes are sorted to the top for the Fee Increases and Fee Decreases tables) between the previous and current dAPI Pricing MTs.

      • New Chains: In the New Chains tab, review the Average Daily Price (in USD) values for the new chains added and perform sanity checks to ensure the amount are reasonable.

      • dAPIs: In the dAPIs tab, review the % changes in average daily subscription fees for dAPIs (biggest % changes are sorted to the top for the Fee Increases and Fee Decreases tables) between the previous and current dAPI Pricing MTs.

      • New dAPIs: In the New dAPIs tab, compare the Price Index values of new dAPIs against the Reference dAPIs Price Indexes. Verify that most volatile new dAPIs have a Price Index higher than the standard reference (ETH/USD) but lower than the most volatile reference (e.g. TAIKO/USD), while least volative dAPIs such as stablecoins maintain indices closer to the stable reference (USDC/USD). Confirm the values are reasonable and perform sanity checks accordingly. For further guidance, refer to the "How to Use Reference dAPIs" tooltip.

      • Plans: In the Plans tab, review key values such as the % Change from Expected Price values, identify any unexpected values, and evaluate the reasons based on key findings from the Chains and dAPIs tabs. Discuss the findings with the team if necessary before signing.

    • Verify additional requirements: Ensure additional notes (e.g. addition or removal of hardcoded prices for chains and dAPIs) present in the issue description or in the comments, that are relevant to the dAPI pricing MT are addressed.

    • Review Logdata Miner FE Menu:

      • Update Fees: If some chains pricing values are hardcoded or if chains pricing anomalies are identified and need to be debugged, review the Logdata Miner/Update Fees menu for historical chains prices data. Ensure the hardcoded values and any identified anomalies are consistent with the expected values.

      • Update Counts: Similarly, if some dAPIs pricing values are hardcoded or if dAPIs pricing anomalies are identified and need to be debugged, review the Logdata Miner/Update Counts menu for for historical dAPIs prices data. Verify that the update counts align with the expected patterns and address any discrepancies found during the review process.

  • CI Checks Before Signing: Pull the latest PR updates to avoid signature conflicts. Check CI status, CI might fail due to missing signatures. If CI fails for reasons other than missing signatures, investigate and resolve before signing.

  • Sign and Confirm CI:

    • Hash signers: click "sign root" and sign with your wallet.
    • Delegates: click "sign root as delegate", choose the hash signer's name you're delegate for from the dropdown, and sign with your wallet.
    • Perform a final sanity check of the CI and config through the popup modals that appear after clicking the "sign root" button.
    • Commit and push your signature to the PR and ensure CI tests pass.

Owner: UNKNOWN