From a287ad88fcca0c67e67b38f4cecd4b1b3bd2b64c Mon Sep 17 00:00:00 2001 From: jeuryink Date: Sat, 28 Feb 2026 13:21:13 -0500 Subject: [PATCH 1/3] add claim builder fee stuff --- docs/source/builder-integration.rst | 24 ++++++++++++++++++++++++ nado_protocol/contracts/__init__.py | 20 ++++++++++++++++++++ 2 files changed, 44 insertions(+) diff --git a/docs/source/builder-integration.rst b/docs/source/builder-integration.rst index 7bfe732..e296ca1 100644 --- a/docs/source/builder-integration.rst +++ b/docs/source/builder-integration.rst @@ -240,6 +240,29 @@ Querying Match Events print(f"Sequencer Fee: {match.sequencer_fee}") print(f"Builder Fee: {match.builder_fee}") +Querying Claimable Fees +----------------------- + +Before claiming, check how much you've accumulated using ``get_claimable_builder_fee``: + +.. code-block:: python + + from nado_protocol.contracts import NadoContracts, NadoContractsContext + from nado_protocol.contracts.loader import load_deployment + + deployment = load_deployment("mainnet") # or "testnet" + nado_contracts = NadoContracts( + node_url=deployment.node_url, + contracts_context=NadoContractsContext(**deployment.dict()), + ) + + builder_id = 2 # Your builder ID + claimable = nado_contracts.get_claimable_builder_fee(builder_id) + print(f"Claimable: {claimable / 1e18} USDC") + +This calls the ``getClaimableBuilderFee(quoteId, builderId)`` view function on the OffchainExchange contract. +The return value is in **x18 format** (divide by 10^18 to get USDC), e.g. ``5000000000000000000`` = 5 USDC. + Claiming Builder Fees --------------------- @@ -446,6 +469,7 @@ Slow Mode Functions Contract Methods ~~~~~~~~~~~~~~~~ +- :meth:`nado_protocol.contracts.NadoContracts.get_claimable_builder_fee` - Query claimable fee amount - :meth:`nado_protocol.contracts.NadoContracts.claim_builder_fee` - Claim accumulated builder fees - :meth:`nado_protocol.contracts.NadoContracts.get_builder_info` - Query builder configuration diff --git a/nado_protocol/contracts/__init__.py b/nado_protocol/contracts/__init__.py index 173fdb0..185b534 100644 --- a/nado_protocol/contracts/__init__.py +++ b/nado_protocol/contracts/__init__.py @@ -340,6 +340,26 @@ def claim_builder_fee( signer, ) + def get_claimable_builder_fee(self, builder_id: int) -> int: + """ + Gets the claimable builder fee for a given builder ID. + + Args: + builder_id (int): The builder ID to query. + + Returns: + int: The claimable fee amount in x18 format (divide by 1e18 to get USDC). + + Raises: + Exception: If the OffchainExchange contract is not initialized. + """ + if self.offchain_exchange is None: + raise Exception("OffchainExchange contract not initialized") + + return self.offchain_exchange.functions.getClaimableBuilderFee( + 0, builder_id + ).call() + def get_builder_info(self, builder_id: int) -> BuilderInfo: """ Gets builder information from the OffchainExchange contract. From 2399ae9018e8caaa6a765cebc9031425d2007e1c Mon Sep 17 00:00:00 2001 From: jeuryink Date: Sat, 28 Feb 2026 13:30:15 -0500 Subject: [PATCH 2/3] update icon --- docs/source/conf.py | 1 + docs/source/nado-icon.svg | 4 ++++ 2 files changed, 5 insertions(+) create mode 100644 docs/source/nado-icon.svg diff --git a/docs/source/conf.py b/docs/source/conf.py index 986a183..2086017 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -65,5 +65,6 @@ autosummary_generate = True html_favicon = "nado.ico" +html_logo = "nado-icon.svg" pygments_style = "sphinx" diff --git a/docs/source/nado-icon.svg b/docs/source/nado-icon.svg new file mode 100644 index 0000000..d501276 --- /dev/null +++ b/docs/source/nado-icon.svg @@ -0,0 +1,4 @@ + + + + From 92764200953cf4e95a56b0b69ef5fba22ff7b76f Mon Sep 17 00:00:00 2001 From: jeuryink Date: Sat, 28 Feb 2026 13:32:06 -0500 Subject: [PATCH 3/3] bump --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 9069d14..ee4ce34 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "nado-protocol" -version = "0.3.3" +version = "0.3.4" description = "Nado Protocol SDK" authors = ["Jeury Mejia "] homepage = "https://nado.xyz"