Contract Service reliability and performance improvements

Arsenii

We're continuing to ship further improvements across the board with a focus on enhancing contract metadata retrieval and verification. Before diving into this release’s updates, here’s a quick reminder of this part of the thirdweb platform:


Our contract service is a crucial backend tool for managing smart contracts and on-chain interactions within the thirdweb platform and beyond. It streamlines key tasks such as fetching and aggregating comprehensive contract metadata (including ABIs and compilation details) and automates the publishing and verification of contracts on popular blockchain explorers.

By removing the often complex, manual steps involved in contract verification, the service makes it far easier for developers to interact with and deploy smart contracts. We'll be unveiling more information about this service in the future, as we consider making this logic a public good, if you know what we mean ;)


But back to our updates:

  • Fix parsing issues with dynamic contracts: Resolved issues with parsing complex dynamic contracts, particularly those utilising the Diamond pattern, improving ABI resolution accuracy.
  • Correct propagation of internal 4XX errors: Improved inter-service communication and correct handling of errors caused by , ensuring proper communication of errors to clients.
  • Fix logging error messages: Corrected logging issues to enhance observability, ensuring more accurate error tracking and monitoring.
  • XrpLedger explorers update: Addressed verification issues on the XrpLedger chain by updating the explorer configurations.
  • Clean up tests: Improved the test suite for better reliability and maintainability of the codebase.
  • Introduce versioning: Implemented versioning to enhance transparency and accountability, paving the way for future open-source contributions.

As for the remarkable highlight, due to the changes made in recent weeks, this service has witnessed drastic improvements in Service Level Objectives (SLOs):

  • Error rate when resolving metadata improved from 62.4% to 97.9%.
  • Latency improved from 70.2% to 93.2%.

Stay tuned as we continue refining and expanding features for contract metadata retrievals and verifications.