diff --git a/.gitignore b/.gitignore index e2f7da094..17adee01b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ node_modules yarn.lock .obsidian docs/.obsidian -build \ No newline at end of file +build +/static/llms.txt \ No newline at end of file diff --git a/docs/bridges/About Token Bridges/usds-xdaibridge-migration.md b/docs/bridges/About Token Bridges/usds-xdaibridge-migration.md deleted file mode 100644 index d2f4b54ac..000000000 --- a/docs/bridges/About Token Bridges/usds-xdaibridge-migration.md +++ /dev/null @@ -1,196 +0,0 @@ ---- -title: xDai Bridge - USDS migration -sidebar_position: 5 -description: Replacing DAI to USDS as collateral on Foreign xDAI bridge -keywords: [xdai bridge, bridge, dai, ethereum, gnosis bridge] ---- - -# USDS migration on xDai Bridge - -:::info -To address a potential front-running issue from the previous design\*, a new implementation has been introduced. -The key changes includes ⚠️: - -1. New USDS deposit contract on Gnosis Chain -2. New `token` parameter is introduced in the `UserRequestForSignature` event on Gnosis Chain xDAI Bridge (HomeBridgeErcToNative.sol) -3. The `executeSignaturesUSDS` function from the previous design is removed from the BridgeRouter.sol and XDaiForeignBridge.sol contract. - -\*refer to Omega audit XDFB1. -::: - -:::danger - -The bridge migration is targeting on 28 October 2025. -Target audiences: - -1. 3rd party applications: please refer to [Call To Action](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/USDSMigration.md#call-to-action-update-your-code--indexer). -2. User: No action required. -3. Bridge validator: update the validator image to latest version(WIP). - -::: - -## 1. General Overview - -- **What changed?** - **Etherum -> Gnosis Chain** - - - The [xDAI bridge on Ethereum](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016) no longer accepts DAI as collateral. It now uses [USDS](https://etherscan.io/address/0xdC035D45d973E3EC169d2276DDab16f1e407384F). - - On Gnosis Chain, users still receive xDAI as usual. - - The Bridge Router serves as the entry point for token relay transactions, routing them to the appropriate bridge contract on Ethereum (xDAI Bridge or Omnibridge). - - **Gnosis Chain -> Ethereum** - - - To get USDS on Ethereum, one MUST switch to USDSDepositContract on Gnosis Chain when initiating the transaction. - - To get DAI on Ethereum, one MUST remain calling the Home xDAI Bridge (HomeBridgeErcToNative) as it is. - - Claiming token on Ethereum remains the same function executeSignatures(bytes memory message, bytes memory signatures). - -- **Why it matters?** - - - Any application sending or claiming DAI must adapt to the new USDS flows. - - To send or claim tokens on Ethereum, you interact with the **BridgeRouter** contract, which directs transactions to the right bridge logic. - - To send xDAI on Gnosis Chain, you interact with the **Home xDAI bridge** to receive DAI on Ethereum, or with **USDS Deposit Contract** to receive USDS on Ethereum. - -- **When will it happen?** - - **The exact date for the migration is 28 October 2025** - ---- - -## 2. Key Contracts & Addresses - -| Contract | Chain | Address | -| ------------------- | ------------ | -------------------------------------------- | -| BridgeRouter Proxy | Ethereum | `0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0` | -| XDaiForeignBridge | Ethereum | `0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016` | -| HomeErcToNative | Gnosis Chain | `0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6` | -| USDSDepositContract | Gnosis Chain | `0x5C183C8A49aBA6e31049997a56D75600E27FF8c9` | - ---- - -## 3. Technical Details - -:::info -Please refer to [here](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/USDSMigration.md) for details regarding the contracts, workflow pre & post migration. -::: - -**How it works after the migration** - -**Relay tokens from Ethereum** -![](../../../static/img/bridges/xdaibridge/bridge-router-relay-token.svg) - -**Claim tokens on Ethreum** -![](../../../static/img/bridges/xdaibridge/bridge-router-claim-token.svg) - -**Relay xDAI from Gnosis** -![](../../../static/img/bridges/xdaibridge/xdai-transfer-usds-contract.svg) - -**Callflow** -![](../../../static/img/bridges/xdaibridge/bridge-router-callflow.svg) - -### 3.1 How to Relay Tokens from Ethereum - -1. **Approve** the BridgeRouter to spend your token: - - ```solidity - // if sending DAI or USDS: - IERC20(token).approve(BridgeRouterAddress, amount); - ``` - -2. **Call** `relayTokens` on BridgeRouter: - - ```solidity - BridgeRouter.relayTokens( - address token, // address of DAI or USDS - address recipient, // who receives xDAI on Gnosis Chain - uint256 amount // how much to send - ); - ``` - -- **What happens inside?** - - - If `token` is DAI: it's converted to USDS, then locked in xDAI Foreign Bridge cotntract. - - If `token` is USDS: it's locked in xDAI Foreign Bridge cotntract directly. - - If `token` is any other ERC20 or ETH: it goes through Omnibridge as before. - ---- - -### 3.2 How to Claim Tokens on Ethereum - -Once your tokens have been initiated from Gnosis Chain, you can claim them back on Ethereum: - -- **Claim DAI:** - - ```solidity - BridgeRouter.executeSignatures(message, signatures); - ``` - - - return USDS or swap USDS -> DAI for recipient - -- **Other tokens:** - - ```solidity - BridgeRouter.safeExecuteSignaturesWithAutoGasLimit(message, signatures); - ``` - - - Same process as before via Omnibridge. - -- To fetch the `message` and `signatures` parameters, please check the guide for xDai Bridge [here](./xdai-bridge.md#how-to-claim-dai-on-ethereum), for AMB/Omnibridge [here](./amb-bridge.md#how-to-call-executesignatures-on-foreign-amb-ethereum). - ---- - -### 3.3 How to Relay Tokens from Gnosis Chain - -1. Interact with the correct contract based on the received token on Ethereum - **To get DAI on Ethereum** - - ```solidity - HomeBridgeErcToNative.relayTokens{value: msg.value}(address recipient) - // Or transfer xDAI directly - HomeBridgeErcToNative.call{value: msg.value}("") - ``` - - **To get USDS on Ethereum** - - ```solidity - USDSDepositContract.relayTokens{value: msg.value}(address recipient) - // Or transfer xDAI directly - USDSDepositContract.call{value: msg.value}("") - ``` - -## 4. Next Steps - -- **Update your code**: - - - Replace direct xDAI Foreign bridge calls with **BridgeRouter** methods (`relayTokens`, `executeSignatures`). - - Switch to USDS Deposit contract on Gnosis Chain if you want to receive USDS on Ethereum. - -### 4.1 How to test with post migration environment - -To simulate the actual mainnet environment, we use Tenderly Virtual TestNets for both Ethereum and Gnosis Chain. Third-party applications are encouraged to use the following RPC endpoints to simulate the post-migration environment. - -Switch your RPC: - -| Chain | Description | URL | -| ------------ | ----------- | -------------------------------------------------------------------------------- | -| Ethereum | RPC | https://virtual.mainnet.eu.rpc.tenderly.co/f3e5e498-bd28-4b49-a8f6-93f033e6fa6e | -| Ethereum | Explorer | https://dashboard.tenderly.co/explorer/vnet/f3e5e498-bd28-4b49-a8f6-93f033e6fa6e | -| Gnosis Chain | RPC | https://virtual.gnosis.eu.rpc.tenderly.co/4c9e4122-6c01-46bd-a44a-e08133d2d2cc | -| Gnosis Chain | Explorer | https://dashboard.tenderly.co/explorer/vnet/4c9e4122-6c01-46bd-a44a-e08133d2d2cc | - -If you run into any issues or have any questions, please reach out to our comms channel: [Telegram](https://t.me/gnosischain), [X](https://x.com/gnosischain), [Discord](https://discord.com/invite/gnosis) for assistance. - -## 5. Glossary - -1. BridgeRouter: Entry point contract after the migration on Ethereum, facilitating routing and token swapping. - 1. address: [0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0](https://etherscan.io/address/0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0) - 2. contract: [BridgeRouter.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/contracts/upgradeable_contracts/erc20_to_native/BridgeRouter.sol) -2. xDAIForeignBridge / Foreign xDAI bridge: xDAI bridge on Ethereum. - 1. address: [0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016#readProxyContract) - 2. contract: [XDaiForeignBridge.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/contracts/upgradeable_contracts/erc20_to_native/XDaiForeignBridge.sol) -3. HomeBridgeErcToNative / Home xDAI Bridge : xDAI bridge on Gnosis Chain. - 1. address: [0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6#address-tabs) ( - 2. contract: [HomeBridgeErcToNative.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/contracts/upgradeable_contracts/erc20_to_native/HomeBridgeErcToNative.sol) -4. USDS deposit contract: Deposit contract on Gnosis Chain that acts as an entry point contract if user wants to receive USDS on Ethereum. - 1. address: [0x5C183C8A49aBA6e31049997a56D75600E27FF8c9](https://gnosisscan.io/address/0x5C183C8A49aBA6e31049997a56D75600E27FF8c9#code) - 2. contract: [USDSDepositContract.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdai-usds-migration/contracts/USDSDepositContract.sol) -5. Foreign Chain : Ethereum -6. Home Chain: Gnosis Chain diff --git a/docs/bridges/About Token Bridges/xdai-bridge.md b/docs/bridges/About Token Bridges/xdai-bridge.md index 1654fa959..0f0ea5f00 100644 --- a/docs/bridges/About Token Bridges/xdai-bridge.md +++ b/docs/bridges/About Token Bridges/xdai-bridge.md @@ -13,15 +13,15 @@ Please avoid using the legacy xDai bridge: https://bridge.legacy.gnosischain.com ::: -:::danger +:::info -xDAI bridge contract is undergoing a critical upgrade: DAI will be replaced with USDS as the default accepted token on Ethereum, while xDAI will continue to be minted on Gnosis Chain. Please refer to [xDaiBridge-usds-migration page](usds-xdaibridge-migration.md) for more details. +DAI is replaced with USDS as the default accepted token on Ethereum, while xDAI will continue to be minted on Gnosis Chain. Please refer to [here](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdaibridge/USDSMigration.md) for details regarding the contracts, workflow pre & post migration. ::: -The [xDai bridge](https://bridge.gnosischain.com) is a native DAI bridge from Ethereum that is used to mint and burn [xDai](/about/tokens/xdai), the native asset used for gas and transaction fees on Gnosis. +The [xDai bridge](https://bridge.gnosischain.com) is a native bridge from Ethereum that is used to mint and burn [xDai](/about/tokens/xdai), the native asset used for gas and transaction fees on Gnosis. -Once Dai is bridged into the xDai bridge, the xDai bridge contract on Gnosis notifies the [block rewards contract](https://gnosis.blockscout.com/address/0x481c034c6d9441db23Ea48De68BCAe812C5d39bA). The consensus algorithm then mints xDai to the user's corresponding address on Gnosis in the next block. +Once USDS is bridged into the xDai bridge, the xDai bridge contract on Gnosis notifies the [block rewards contract](https://gnosis.blockscout.com/address/0x481c034c6d9441db23Ea48De68BCAe812C5d39bA). The consensus algorithm then mints xDai to the user's corresponding address on Gnosis in the next block. ## Key Information @@ -47,6 +47,7 @@ Once Dai is bridged into the xDai bridge, the xDai bridge contract on Gnosis not | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | | xDAI Bridge Contract | [eth:0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016#readProxyContract) | | Validator Management Contract | [eth:0xe1579dEbdD2DF16Ebdb9db8694391fa74EeA201E](https://etherscan.io/address/0xe1579dEbdD2DF16Ebdb9db8694391fa74EeA201E#code) | +| BridgeRouter Proxy | [eth:0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0](https://etherscan.io/address/0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0de) | @@ -58,7 +59,8 @@ Once Dai is bridged into the xDai bridge, the xDai bridge contract on Gnosis not | xDAI Bridge Contract | [gno:0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6#address-tabs) | | Block Reward Contract | [gno:0x481c034c6d9441db23Ea48De68BCAe812C5d39bA](https://gnosis.blockscout.com/address/0x481c034c6d9441db23Ea48De68BCAe812C5d39bA) | | Validator Management Contract | [gno:0xB289f0e6fBDFf8EEE340498a56e1787B303F1B6D](https://gnosis.blockscout.com/address/0xB289f0e6fBDFf8EEE340498a56e1787B303F1B6D/read-proxy) | -| ERC20ToNative Helper Contract | [gno:0x2D51EAa266eafcb59bB36dD3c7E99C515e58113A](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a#readContract) | +| ERC20ToNative Helper Contract | [gno:0xe30269bc61E677cD60aD163a221e464B7022fbf5](https://gnosis.blockscout.com/address/0xe30269bc61E677cD60aD163a221e464B7022fbf5#readContract) | +| USDSDepositContract | [gno:0x5C183C8A49aBA6e31049997a56D75600E27FF8c9](https://gnosis.blockscout.com/address/0x5C183C8A49aBA6e31049997a56D75600E27FF8c9) | @@ -66,7 +68,6 @@ Once Dai is bridged into the xDai bridge, the xDai bridge contract on Gnosis not ### Sepolia - Chiado - | Contract | Address | | ------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------- | | xDAI Bridge Contract (Sepolia) | [0x180ff98e734415ecd35fac3d32940e1b45fad0a2](https://sepolia.etherscan.io/address/0x180ff98e734415ecd35fac3d32940e1b45fad0a2) | @@ -75,13 +76,12 @@ Once Dai is bridged into the xDai bridge, the xDai bridge contract on Gnosis not | Validator Contract (Chiado) | [0x138190e157d7604B8f89637AA10508Abd4c673B2](https://gnosis-chiado.blockscout.com/address/0x138190e157d7604B8f89637AA10508Abd4c673B2) | | ERC20ToNative Helper Contract | [0x9866D9d242Ac9D7EC4AC56ce61D0d957A02FD8e2](https://gnosis-chiado.blockscout.com/address/0x9866D9d242Ac9D7EC4AC56ce61D0d957A02FD8e2#readContract) | - :::info -The current deployment of xDAI bridge contract is from https://github.com/gnosischain/tokenbridge-contracts/tree/xdaibridge, with the commit hash `fb6bae7589a102613b48c12addb425b72836574e` +The current deployment of xDAI bridge contract is from https://github.com/gnosischain/tokenbridge-contracts/tree/xdaibridge, with the commit hash `f53666fd4f832b1dde479b701d39eddc10b6877c` ::: References: @@ -103,6 +103,18 @@ Daily Limit is reset according to the following logic: the smart contract stores ## How it Works +**Relay tokens from Ethereum** +![](../../../static/img/bridges/xdaibridge/bridge-router-relay-token.svg) + +**Claim tokens on Ethreum** +![](../../../static/img/bridges/xdaibridge/bridge-router-claim-token.svg) + +**Relay xDAI from Gnosis** +![](../../../static/img/bridges/xdaibridge/xdai-transfer-usds-contract.svg) + +**Callflow** +![](../../../static/img/bridges/xdaibridge/bridge-router-callflow.svg) + ### Ethereum -> Gnosis Chain. ![](/img/bridges/diagrams/dai-bridge-01.png) @@ -148,12 +160,14 @@ Example: https://gnosis.blockscout.com/tx/0x5892a695860f6087a2d93140f05e6365142f ![](/img/bridges/diagrams/dai-bridge-02.png) -1. User transfer xDAI to or call `relayTokens(address receiver, uint256 value)` on [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) on Gnosis Chain. The equivalent amount of xDAI is burned. -2. `UserRequestForSignature(address recipient, uint256 value, bytes32 nonce)` event is emitted from [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6). [Example](https://gnosis.blockscout.com/tx/0x2657493921d5dd1f6d225e23ab578a0d0c6e19c2dfaaef36f305cf4a333686fc?tab=logs) -3. Bridge validators observe the event and call `submitSignature(bytes signature, bytes message)` function on [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) on Gnosis Chain. Hashi acts as an additional bridge valdiator who validates transactions but no actually calling `submitSignature` on Home xDAI Bridge. For more details about how Hashi works in this case, check out [here](./hashi-integration.md). +1. Based on the received token on Ethereum + 1. To receive DAI on Ethereum: User transfer xDAI to or call `relayTokens(address receiver, uint256 value)` on [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) on Gnosis Chain. The equivalent amount of xDAI is burned. + 1. To receive USDS on Ethereum: User transfer xDAI to or call `relayTokens(address receiver, uint256 value)` on [USDS Deposit Contract](https://gnosis.blockscout.com/address/0x5C183C8A49aBA6e31049997a56D75600E27FF8c9) on Gnosis Chain. The equivalent amount of xDAI is burned. +2. `UserRequestForSignature(address recipient, uint256 value, bytes32 nonce, address token)` event is emitted from [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6). [Example](https://gnosisscan.io/tx/0xca6fa9395f734501a9497f409db12699782b0a068dc4463d736561572eda8441#eventlog) +3. Bridge validators observe the event and call `submitSignature(bytes signature, bytes message)` function on [Home xDAI bridge contract](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) on Gnosis Chain. 4. After enough signatures are collected, `CollectedSignatures` event is emitted/ -5. Anyone can execute the withdrawal on Ethereum by calling `executeSignatures(bytes message, bytes signatures)` on [Foreign xDAI bridge](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016) on Ethereum. To fetch the calldata value, please check the [guideline below](#how-to-claim-dai-on-ethereum). DAI\*\* is unlocked to the receiver on Ethereum. -6. `RelayedMessage(address recipient, uint256 value, bytes32 transactionHash)` emitted on Foreign xDAI Bridge. Please be aware that after Hashi upgrade, `transactionHash` has been replaced with the value of `nonce`. Please check [here](./hashi-integration.md) for more information on how it works. +5. Anyone can execute the withdrawal on Ethereum by calling `executeSignatures(bytes message, bytes signatures)` on [Foreign xDAI bridge](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016) on Ethereum. To fetch the calldata value, please check the [guideline below](#how-to-claim-dai-on-ethereum). **USDS** is unlocked to the receiver or swap to **DAI** to the receive. +6. `RelayedMessage(address recipient, uint256 value, bytes32 transactionHash)` emitted on Foreign xDAI Bridge. Please be aware that after Hashi upgrade, `transactionHash` has been replaced with the value of `nonce`. Please check [here](../hashi/hashi-integration.md) for more information on how it works. ### Savings xDAI @@ -258,13 +272,30 @@ The second contract is the Interest Receiver. This will be the address provided ### How to claim DAI on Ethereum -1. Fetch the value of `recipient`, `value` and `nonce` from `UserRequestForSignature(address recipient, uint256 value, bytes32 nonce)` from the transction which is emitted by [Home xDAI Bridge](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) Gnosis Chain. - ![](../../../static/img/bridges/xdaibridge/gc-xdai-tx.png) -2. Go to the [xDAI bridge helper contract on Gnosis Chain](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a#readContract). +1. Fetch the value of `recipient`, `value`, `nonce` and `token` from `UserRequestForSignature(address recipient, uint256 value, bytes32 nonce, address token)` from the transction emitted by [Home xDAI Bridge](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6) Gnosis Chain. + ![](../../../static/img/bridges/xdaibridge/gc-xdai-tx-post-usds.png) +2. Go to the [xDAI bridge helper contract on Gnosis Chain](https://gnosis.blockscout.com/address/0xe30269bc61E677cD60aD163a221e464B7022fbf5#readContract). - 1. Call [`getMessageHash(address _recipient, uint256 _value, _origTxHash)`](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a?tab=read_write_contract#0x30322ce7) : with `recipient` and `value` from the `UserRequestForSignature` and `_origTxHash` as `nonce` from `UserRequestForSignature` (not the transaction hash!). Fetch the returned message hash. - 2. Call [`getMessage(bytes32 _msgHash)`](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a?tab=read_write_contract#0x0139a221) & [`getSignatures(bytes32 _msgHash)`](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a?tab=read_write_contract#0x9bc51068) with the message hash from the previous step. - ![](../../../static/img/bridges/xdaibridge/xdai-helper.png) + 1. Call [`getMessageHash(address _recipient, uint256 _value, _origTxHash, address _token)`](https://gnosis.blockscout.com/address/0xe30269bc61E677cD60aD163a221e464B7022fbf5?tab=read_contract#0xe4a02bdd) : with `recipient`, `value` and `token` from the `UserRequestForSignature` and `_origTxHash` as `nonce` from `UserRequestForSignature` (not the transaction hash!). Fetch the returned message hash. + 2. Call [`getMessage(bytes32 _msgHash)`](https://gnosis.blockscout.com/address/0x2d51eaa266eafcb59bb36dd3c7e99c515e58113a?tab=read_write_contract#0x0139a221) & [`getSignatures(bytes32 _msgHash)`](https://gnosis.blockscout.com/address/0xe30269bc61E677cD60aD163a221e464B7022fbf5?tab=read_contract#0x0139a221) with the message hash from the previous step. + ![](../../../static/img/bridges/xdaibridge/xdai-helper-post-usds.png) 3. Use the value returned from the previous step to call `executeSignatures(bytes message, bytes signatures)` on [xDAI Foreign Bridge on Ethereum](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016#writeProxyContract#F7). - ![](../../../static/img/bridges/xdaibridge/xdai-execute-signatures.png) + ![](../../../static/img/bridges/xdaibridge/xdai-execute-signatures-post-usds.png) + +## 5. Glossary + +1. BridgeRouter: Entry point contract after the migration on Ethereum, facilitating routing and token swapping. + 1. address: [0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0](https://etherscan.io/address/0x9a873656c19Efecbfb4f9FAb5B7acdeAb466a0B0) + 2. contract: [BridgeRouter.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdaibridge/contracts/upgradeable_contracts/erc20_to_native/BridgeRouter.sol) +2. xDAIForeignBridge / Foreign xDAI bridge: xDAI bridge on Ethereum. + 1. address: [0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016](https://etherscan.io/address/0x4aa42145Aa6Ebf72e164C9bBC74fbD3788045016#readProxyContract) + 2. contract: [XDaiForeignBridge.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdaibridge/contracts/upgradeable_contracts/erc20_to_native/XDaiForeignBridge.sol) +3. HomeBridgeErcToNative / Home xDAI Bridge : xDAI bridge on Gnosis Chain. + 1. address: [0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6](https://gnosis.blockscout.com/address/0x7301CFA0e1756B71869E93d4e4Dca5c7d0eb0AA6#address-tabs) + 2. contract: [HomeBridgeErcToNative.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdaibridge/contracts/upgradeable_contracts/erc20_to_native/HomeBridgeErcToNative.sol) +4. USDS deposit contract: Deposit contract on Gnosis Chain that acts as an entry point contract if user wants to receive USDS on Ethereum. + 1. address: [0x5C183C8A49aBA6e31049997a56D75600E27FF8c9](https://gnosisscan.io/address/0x5C183C8A49aBA6e31049997a56D75600E27FF8c9#code) + 2. contract: [USDSDepositContract.sol](https://github.com/gnosischain/tokenbridge-contracts/blob/feat/xdaibridge/contracts/USDSDepositContract.sol) +5. Foreign Chain : Ethereum +6. Home Chain: Gnosis Chain diff --git a/docs/bridges/management/decisions.md b/docs/bridges/management/decisions.md index 3d0e37b49..c24d2aa19 100644 --- a/docs/bridges/management/decisions.md +++ b/docs/bridges/management/decisions.md @@ -8,6 +8,59 @@ keywords: [governance board, bridge governance] The [Bridge Governance Board](./#current-bridge-governors) is responsible for enacting updates related to bridge functionality, contract upgrades, and other parameters impacting bridge operations. The following items have been implemented by the board. +## USDS migration on xDAI Bridge: sDAI replaced by sUSDS + +🗳 Justification: + +1. This is the follow up from [GIP-118: Should sDAI be replaced by sUSDS in the bridge?](https://forum.gnosis.io/t/gip-118-should-sdai-be-replaced-by-susds-in-the-bridge/9354). xDAI bridge on both Ethereum and Gnosis Chain is upgraded to new implementation. + +Upgrade Tx on Ethereum: [url](https://app.safe.global/transactions/tx?safe=eth:0x42F38ec5A75acCEc50054671233dfAC9C0E7A3F6&id=multisig_0x42F38ec5A75acCEc50054671233dfAC9C0E7A3F6_0x7309151c47d50ea0bac9eac0b28a13b8c2904857d7ddd6c65653336d9b53acc0) +Upgrade Tx on Gnosis Chain: [url](https://app.safe.global/transactions/tx?safe=gno:0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd&id=multisig_0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd_0xb6d709f3f6fe73958bf4de18a2d8ba81b8981a18e0c17c9f608e61c03ec0e166) + +✅ Implemented: Nov 7, 2025 + +## Unfreeze outflow of major tokens on canonical bridges + +🗳 Justification: + +1. The softfork is completed and the outflow of tokens on the canonical bridges are reopened. + +Tx on Gnosis Chain: [url](https://app.safe.global/transactions/tx?safe=gno:0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd&id=multisig_0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd_0xcfa0aafdbc3406e625805148ee2d68404497f16be1bfbc78f84bdfdfc6791c7f) + +✅ Implemented: Nov 7, 2025 + +## Freeze outflow of major tokens on canonical bridges + +🗳 Justification: + +1. Due to the [BalancerV2 exploit](https://x.com/Balancer/status/1986104426667401241), we decided to halt the outflow ot major tokens on Omnibridge & xDAI bridge from Gnosis Chain to Ethereum as precautionary measure. + |Token | Address on Gnosis Chain | + |------------|---------------------------------------------| + | GNO | 0x9C58BAcC331c9aa871AFD802DB6379a98e80CEdb | + | wstETH | 0x6C76971f98945AE98dD7d4DFcA8711ebea946eA6 | + | USDC | 0xDDAfbb505ad214D7b80b1f830fcCc89B60fb7A83 | + | WETH | 0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1 | + | TRACE | 0xEddd81E0792E764501AaE206EB432399a0268DB5 | + | COW | 0x177127622c4A00F3d409B75571e12cB3c8973d3c | + | WBTC | 0x8e5bBbb09Ed1ebdE8674Cda39A0c169401db425 | + | HOPR | 0xD057604A14982FE8D88c5fC25Aac3267eA142a08 | + | USDT | 0x4ECaBa5870353805a9F068101A40E0f32ed605C6 | + | BDT | 0x778aa03021B0CD2b798b0b506403e070125D81C9 | + | OLAS | 0xcE11e14225575945b8E6Dc0D4F2dD4C570f79d9f | + | SAFE | 0x4d18815D14fe5c3304e87B3FA18318baa5c23820 | + | ROCKETPOOL | 0xc791240D1F2dEf5938E2031364Ff4ed887133C3d | + | GIVETH | 0x4f4F9b8D5B4d0Dc10506e5551B0513B61fD59e75 | + | PNK | 0x37b60f4E9A31A64cCc0024dce7D0fD07eAA0F7B3 | + | CLNY | 0xc9B6218AffE8Aba68a13899Cbf7cF7f14DDd304C | + | EURC | 0x54E4cB2a4Fa0ee46E3d9A98D13Bea119666E09f6 | + | LINK | 0xE2e73A1c69ecF83F464EFCE6A5be353a37cA09b2 | + | BAL | 0x7eF541E2a22058048904fE5744f9c7E4C57AF717 | + | xDAI | Native token on Gnosis Chain | + +Tx on Gnosis Chain: [url](https://app.safe.global/transactions/tx?safe=gno:0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd&id=multisig_0x7a48Dac683DA91e4faa5aB13D91AB5fd170875bd_0x472e844f33471d49f93af3e106cea45f855e70804a239cc6959be89b721f4fd3) + +✅ Implemented: Nov 3, 2025 + ## Upgrading Deposit Contract: Introducing new batchDeposit function 🗳 Justification: diff --git a/docs/bridges/roadmap.md b/docs/bridges/roadmap.md index 4cfcd11f2..6dfa735de 100644 --- a/docs/bridges/roadmap.md +++ b/docs/bridges/roadmap.md @@ -4,8 +4,6 @@ sidebar_position: 6 description: Gnosis is investing significant resources into trust-minimization of its Bridges, to ensure trust and safety of users. keywords: [bridge roadmap, trustless bridge, light client, zksnark] --- -:::info -🚨 The Hashi integration initiative — originally approved under [GIP‑93](https://forum.gnosis.io/t/gip-93-should-gnosisdao-support-the-integration-of-hashi-within-gnosis-chains-canonical-bridges/8245) and subsequently implemented across both the AMB & xDAI bridges—will be formally **deprecated**. :::warning 🚨 The Hashi integration initiative — originally approved under [GIP‑93](https://forum.gnosis.io/t/gip-93-should-gnosisdao-support-the-integration-of-hashi-within-gnosis-chains-canonical-bridges/8245) and subsequently implemented across both the AMB & xDAI bridges—is formally **deprecated**. @@ -13,7 +11,6 @@ keywords: [bridge roadmap, trustless bridge, light client, zksnark] Read the entire forum details [here](https://forum.gnosis.io/t/deprecation-notice-hashi-on-gnosis-canonical-bridges-ends-maintenance/11467) ::: - ### Hashi - A cross chain protocol based on distributed trust of the underlying security mechanisms ✅ Hashi, a cross chain protocol based on distributed trust of the underlying security mechanisms diff --git a/docs/developers/quickstart.md b/docs/developers/quickstart.md index a13488f89..16bbf518e 100644 --- a/docs/developers/quickstart.md +++ b/docs/developers/quickstart.md @@ -1,4 +1,4 @@ ---- +--- sidebar_position: 2 description: Learn how to deploy your first contract on Gnosis Chain keywords: [gnosis chain, quickstart] @@ -37,7 +37,7 @@ Lastly, top up the wallet with xDAI that you'll use for contract deployments on Testnets on any EVM-compatible chains don't require real funds to pay for transactions. Instead, they use faucets that represent free tokens. You can use the following faucets to get xDAI on the Chiado testnet: - [Chiado faucet](https://faucet.chiadochain.net/) -- [Gnosis Chain Faucet](https://gnosisfaucet.com/) +- [Gnosis Chain Faucet](https://faucet.gnosischain.com/) ![faucet](/img/developers/quickstart/faucet.png) diff --git a/docs/node/README.md b/docs/node/README.md index 99e7ac47f..704f96de3 100644 --- a/docs/node/README.md +++ b/docs/node/README.md @@ -5,9 +5,14 @@ sidebar_position : 1 # Run a Node -![Screenshot 2025-04-09 at 09 55 38](https://github.com/user-attachments/assets/98a33f0a-37b3-4c14-8536-7ee91e67b100) +Screenshot 2025-10-22 at 15 15 33 + +**Image:** GGeographic visualization of peer-to-peer network connections October 2025 + +:::tip +**Hint:** To quickly access comprehensive general information and view easy-to-digest, side-by-side comparisons, check out [validategnosis.com](https://www.validategnosis.com/) +::: -**Image:** Gnosis nodes around the world, circa April 9 2025 ## Open Infrastructure Powered by Solo Stakers @@ -122,7 +127,7 @@ Requirements vary client to client, for more detail see the associated system re | Lodestar | [Lodestar: Specifications](https://chainsafe.github.io/lodestar/#specifications) | | Nimbus | [Nimbus: Hardware](https://nimbus.guide/hardware.html) | | Teku | TBD | -| Prysm | [Prysm: Prerequisites](https://docs.prylabs.network/docs/install/install-with-script/#step-1-review-prerequisites-and-best-practices) | +| Prysm | [Prysm: Prerequisites](https://prysm.offchainlabs.com/docs/install-prysm/install-with-script/#step-1-review-prerequisites-and-best-practices) | **Gnosis Chain doesn't support Prysm at the moment.** diff --git a/docs/node/management/migrating-validator.md b/docs/node/management/migrating-validator.md index 82af69da3..2f69b049b 100644 --- a/docs/node/management/migrating-validator.md +++ b/docs/node/management/migrating-validator.md @@ -105,7 +105,7 @@ You can import it as follows using any installation method for your Prysm valida prysm.sh validator slashing-protection-history import --datadir=/path/to/your/validator/db --slashing-protection-json-file=/path/to/desiredimportfile ``` -- For more info, see the Prysm [Import & export slashing protection history](https://docs.prylabs.network/docs/wallet/slashing-protection) doc. +- For more info, see the Prysm [Import & export slashing protection history](https://prysm.offchainlabs.com/docs/backup-and-migration/slashing-protection/) doc. ## Teku diff --git a/docs/node/management/monitoring-node.md b/docs/node/management/monitoring-node.md index faf48fae2..19e9348ce 100644 --- a/docs/node/management/monitoring-node.md +++ b/docs/node/management/monitoring-node.md @@ -96,7 +96,7 @@ https://nimbus.guide/metrics-pretty-pictures.html#simple-metrics -https://docs.prylabs.network/docs/prysm-usage/monitoring/grafana-dashboard/ +https://prysm.offchainlabs.com/docs/monitoring-alerts-metrics/grafana-dashboard/ diff --git a/docs/node/management/monitoring-validators.md b/docs/node/management/monitoring-validators.md index 33f4684cc..9edbaf029 100644 --- a/docs/node/management/monitoring-validators.md +++ b/docs/node/management/monitoring-validators.md @@ -1,30 +1,29 @@ ---- -title: Monitoring Validators ---- +# Monitoring Validators -After setting up your validators, ensuring they are running and, most importantly, performing correctly is essential. +After setting up your validators, it’s essential to ensure they are running properly and performing as expected. ## Tool -The [bootnode.dev](https://www.bootnode.dev/) team has created a [Telegram bot](https://t.me/gbc_validators_bot) to assist you. Anyone running validators can set it up by just providing withdrawal address(es). The Bot will retrieve all the validators for you. Once registered, the bot will update you on your validators' performance and alert you if any issue occurs. +[node-sentinel.xyz](https://www.node-sentinel.xyz/) provides a [monitoring tool](https://t.me/gbc_validators_bot) to help you keep track of your validators. +It runs entirely through a Telegram bot and is free for everyone. You can register your validators by messaging the bot and providing your withdrawal address(es). The bot will automatically load all your validators and start delivering real-time stats and alerts. -### Continuously updated information on +![Node Sentinel Dashboard](/img/node/management/node-sentinel-dashboard.png) -- The number of validators you're running and their statuses (active, inactive, slashed, exited). -- The total effective balance of all your validators, combined. -- Validator’s overall performance(daily, weekly, and monthly) based on the last 100 attestations. -- Rewards earned in GNO (daily, weekly, and monthly). -- The total amount of rewards you can claim. -- Additionally, the Bot provides subsidized rewards claims, sponsored by [bootnode.dev](https://www.bootnode.dev/). +### The dashboard keeps you updated in real time with: -### Immediate alert when +- The number of validators you operate and their statuses (active, inactive, slashed, exited). +- The total effective balance of all your validators combined. +- Validator performance (daily, weekly, monthly) based on the last 100 attestations. +- Rewards earned in GNO (daily, weekly, monthly). +- The total amount of rewards available to claim. +- Subsidized reward claims, sponsored by [node-sentinel.xyz](https://www.node-sentinel.xyz/). +- A web dashboard with additional stats. -You'll receive notifications in the following situations: +### You’ll receive alerts when: -- If a validator misses more than 5 attestations consecutively. -- If the overall performance falls below 90%. -- If a validator's status changes from active to inactive, or vice versa. +- A validator changes status (e.g., from active to inactive). +- Overall performance drops. :::note -This Bot is compatible with all consensus and execution clients. +This bot is compatible with all consensus and execution clients. ::: diff --git a/docs/node/management/voluntary-exit.md b/docs/node/management/voluntary-exit.md index 9f6065be9..07d72af8b 100644 --- a/docs/node/management/voluntary-exit.md +++ b/docs/node/management/voluntary-exit.md @@ -52,13 +52,13 @@ build/nimbus_beacon_node deposits exit --data-dir=build/data/shared_gnosis_0 --v ### Prysm -Use [prysmctl tool](https://docs.prylabs.network/docs/prysm-usage/prysmctl) to voluntarily exit your validator. +Use [prysmctl tool](https://prysm.offchainlabs.com/docs/configure-prysm/prysmctl/) to voluntarily exit your validator. ```bash prysmctl validator exit --wallet-dir= --beacon-rpc-provider=<127.0.0.1:4000> ``` -- For more info, see the Prysm [Exit your validator](https://docs.prylabs.network/docs/wallet/exiting-a-validator/) doc. +- For more info, see the Prysm [Exit your validator](https://prysm.offchainlabs.com/docs/manage-validator/exiting-a-validator/) doc. ### Teku diff --git a/docs/tools/Data Indexing/covalent.md b/docs/tools/Data Indexing/covalent.md index 79c593788..a735a7713 100644 --- a/docs/tools/Data Indexing/covalent.md +++ b/docs/tools/Data Indexing/covalent.md @@ -1,170 +1,18 @@ # GoldRush - powered by Covalent -[GoldRush](https://goldrush.dev/?utm_source=gnosis-chain&utm_medium=partner-docs) is a set of data tools that enable easy web3 development across [200+ supported blockchains](https://goldrush.dev/docs/networks/?utm_source=gnosis-chain&utm_medium=partner-docs), -including Gnosis Chain. The mission of GoldRush is to improve the lives of developers by providing structured onchain data for dapps. +GoldRush (powered by Covalent) offers the most comprehensive Blockchain Data API suite for developers, analysts, and enterprises. Whether you are building a DeFi dashboard, a wallet, a trading bot, an AI agent or a compliance platform, the Data APIs provide fast, accurate, and developer-friendly access to the essential on-chain data you need. -Developers can utilize GoldRush via SDKs, APIs, UI Kits, human-readable transactions and pre-built templates for a number of web3 use cases. The GoldRush suite is powered by Covalent, which is decentralized and cryptographically secure. Whether you are fetching NFTs, DeFi transactions, or other onchain data, GoldRush helps scale hundreds of projects from crypto native teams to Fortune 500 companies. +GoldRush consists of the following self-serve products that can be used independently or together to power your application: -With GoldRush, you have access to: +| **Product Name** | **Description** | **Key Data Feeds** | **Use Cases** | +| --- | --- | --- | --- | +| **Foundational API** | Access structured historical blockchain data across 100+ chains via REST APIs | | | +| **Streaming API** | Subscribe to real-time blockchain events with sub-second latency using GraphQL over WebSockets | | | -- Every wallet's token balances -- Full transaction histories -- Every contract log event -- All NFTs including assets and metadata +--- +The **[GoldRush TypeScript SDK](https://www.npmjs.com/package/@covalenthq/client-sdk)** is the fastest way to integrate the GoldRush APIs. Install with: -**Use GoldRush if you need:** - -- Wallet, Transactions, NFT, DEX, Staking or core blockchain data (i.e. log events, blocks, gas) -- Normalized, aggregated and enhanced multichain data, well beyond what you get from RPC providers -- Enterprise-grade performance - -> [Sign up to start building on Gnosis Chain](https://goldrush.dev/platform/?utm_source=gnosis-chain&utm_medium=partner-docs) - -## APIs - -The GoldRush APIs enables developers to quickly and easily access structured onchain data. This means consistent response schemas that are blockchain agnostic. Available APIs and corresponding use cases include: - -### Wallet API - -- **Features:** All token balances (ERC20, 721, 1155, native), token transfers and prices (spot and -historical) for a wallet. -- **Use cases:** [Wallets, portfolio trackers](https://goldrush-wallet-portfolio-ui.vercel.app/?utm_source=gnosis-chain&utm_medium=partner-docs), token gating, airdrop snapshots. - -### Transactions API - -- **Features:** All historical transactions with human-readable log events. Includes gas usage/spend -summaries. -- **Use cases:** [Accounting and tax tools](https://bit.ly/crypto-tax-tool), branded in-app [transaction receipts](https://goldrush-dfk-tx-receipt-ui.vercel.app/tx/defi-kingdoms-mainnet/0x4e5c0af28b2cea27d06677fae1f573572e0ff863c43ae42d2959ca67b90c4390/?utm_source=gnosis-chain&utm_medium=partner-docs). - -### NFT API - -- **Features:** Media assets, metadata, sales, owners, trait & attribute filters, thumbnails, and -previews. -- **Use cases:** [NFT galleries and marketplaces](https://goldrush-nft-gallery-ui.vercel.app/?utm_source=gnosis-chain&utm_medium=partner-docs), real world asset (RWA) tracking, token gating. - -### Cross-Chain Activity API - -- **Features:** Single API call to fetch a list of active chains and the latest transaction date on each for an address. -- **Use cases:** [App onboarding](https://goldrush-wallet-portfolio-ui.vercel.app/activity/0xfc43f5f9dd45258b3aff31bdbe6561d97e8b71de/?utm_source=gnosis-chain&utm_medium=partner-docs). - -### Security API - -- **Features:** NFT and ERC20 token allowances, including value-at-risk. -- **Use cases:** [Revoke features](https://goldrush-revokehub.vercel.app/?utm_source=gnosis-chain&utm_medium=partner-docs) in wallets, security applications. - -### Blockchain API - -- **Features:** Block details, log events by contract address or topic hash, gas prices, token prices and holders. -- **Use cases:** [Custom block explorers](https://goldrush-block-explorer.vercel.app/?utm_source=gnosis-chain>&utm_medium=partner-docs). - -## Developer Tools - -There are 4 primary developer tools for using the APIs: - -1. [GoldRush API](https://goldrush.dev/docs/api/?utm_source=gnosis-chain&utm_medium=partner-docs) - REST API with enterprise-grade endpoints to use with any programming language. Switch blockchains with one path parameter. - - ```bash - curl -X GET https://api.covalenthq.com/v1/gnosis-mainnet/address/0x2C6900b24221dE2B4A45c8c89482fFF96FFB7E55/balances_v2/ \ - -H 'Content-Type: application/json' \ - -u YOUR_API_KEY: - ``` - -2. [GoldRush SDKs](https://goldrush.dev/docs/unified-api/sdk/?utm_source=gnosis-chain&utm_medium=partner-docs) - official client libraries including TypeScript, Python, Go and Viem. - ```jsx - npm install @covalenthq/client-sdk - ``` - - - ```jsx - import { CovalentClient } from "@covalenthq/client-sdk"; - - (async () => { - try { - const client = new CovalentClient("YOUR_API_KEY"); - const transactions = client.TransactionService.getAllTransactionsForAddress("gnosis-mainnet", "0x2C6900b24221dE2B4A45c8c89482fFF96FFB7E55"); - - for await (const tx of transactions) { - console.log("tx", tx); - } - } catch (error) { - console.log(error.message); - } - })(); - ``` - -3. [GoldRush UI Kit](https://github.com/covalenthq/goldrush-kit/?utm_source=gnosis-chain&utm_medium=partner-docs) - beautifully designed React components for your dApp frontend. - - [![GoldRush Component Example](https://www.datocms-assets.com/86369/1711147954-goldrush_wallet_ui_example.png)](https://goldrush-wallet-portfolio-ui.vercel.app/dashboard/balance/0xfc43f5f9dd45258b3aff31bdbe6561d97e8b71de/transfers/eth-mainnet/0xf8c3527cc04340b208c854e985240c02f7b7793f) - -4. [GoldRush Decoder](https://github.com/covalenthq/goldrush-decoder/?utm_source=gnosis-chain&utm_medium=partner-docs) - decode any raw event logs into human-readable structured data. - - **Request:** - ```bash - curl -X POST http://localhost:8080/api/v1/tx/decode \ - -H 'Content-Type: application/json' \ - -d '{ - "chain_name": "gnosis-mainnet", - "tx_hash": "0xe9e807d78673ad214ce51d0c13d13cf15f2ddf8e85498db64e6ffad75e12733f" - }' - ``` - - **Custom decoded response:** - ```json - { - "success": true, - "events": [ - { - "action": "Account Abstraction Transaction", - "category": "Others", - "name": "User Operation Event", - "protocol": { - "logo": "https://logos.covalenthq.com/tokens/100/0x5ff137d4b0fdcd49dca30c7cf57e578a026d2789.png", - "name": "4337 Entry Point" - }, - "details": [ - { - "heading": "Gas Cost", - "value": "2504932000000000", - "type": "text" - }, - { - "heading": "Gas Used", - "value": "1252466", - "type": "text" - }, - { - "heading": "Paymaster", - "value": "0x00000f79B7FaF42EEBAdbA19aCc07cD08Af44789", - "type": "address" - }, - { - "heading": "Sender", - "value": "0x1B19D70F192bEb4E1fc4FCf72219E742b0B3661c", - "type": "address" - }, - { - "heading": "User Operation Hash", - "value": "0x31ec6a8084b4f3677120313986f0f2dc9dffdb5c15d4eccf2094603a690efcb6", - "type": "address" - } - ] - } - ], - "tx_metadata": { - ... - }, - "explorers": [ - { - "label": null, - "url": "https://gnosis.blockscout.com/tx/0xe9e807d78673ad214ce51d0c13d13cf15f2ddf8e85498db64e6ffad75e12733f" - } - ] - } - } - ``` - -## Get started - -- [API Key](https://goldrush.dev/platform/auth/register/?utm_source=gnosis-chain&utm_medium=partner-docs) - sign up for free -- [Docs](https://goldrush.dev/docs/unified-api/?utm_source=gnosis-chain&utm_medium=partner-docs) - comprehensive knowledge base for all things GoldRush -- [Guides](https://goldrush.dev/docs/unified-api/guides/?utm_source=gnosis-chain&utm_medium=partner-docs) - learn how to build for various use cases and expand your onchain knowledge +```bash +npm install @covalenthq/client-sdk +``` +Learn more about GoldRush's integration with Gnosis chain [here](https://goldrush.dev/docs/chains/gnosis?utm_source=gnosis&utm_medium=partner-docs) diff --git a/docs/tools/RPC Providers/README.md b/docs/tools/RPC Providers/README.md index 6b39ed82a..31d8ed8ec 100644 --- a/docs/tools/RPC Providers/README.md +++ b/docs/tools/RPC Providers/README.md @@ -114,6 +114,15 @@ high throughput for your production grade projects. Free API keys after signing up. +## dRPC + +dRPC NodeCloud offers an AI-powered load-balancer, 180+ network endpoints, flat-rate pricing +(20 CUs/method), usage analytics, and team features. PAYG from $10 — full speed, no limits. + +- [Gnosis endpoints](https://drpc.org/chainlist/gnosis-mainnet-rpc) +- [Docs](https://drpc.org/docs) +- [Chainlist](https://drpc.org/chainlist) + ## Quicknode - [Quicknode's Docs for Gnosis RPCs](https://www.quicknode.com/docs/gnosis) diff --git a/docusaurus.config.js b/docusaurus.config.js index 889c03dcc..7c540962b 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -21,7 +21,7 @@ const config = { ], scripts: [ { - src: '/js/analytics-consent.js', + src: "/js/analytics-consent.js", async: true, }, ], @@ -82,7 +82,8 @@ const config = { image: "img/thumbnail.png", announcementBar: { id: "usds_upgrade", - content: 'Update: USDS migration on xDAI bridge. Learn more', + content: + 'Update: USDS migration on xDAI bridge is completed.Learn more', backgroundColor: "#fafbfc", textColor: "#091E42", isCloseable: true, diff --git a/static/img/bridges/xdaibridge/gc-xdai-tx-post-usds.png b/static/img/bridges/xdaibridge/gc-xdai-tx-post-usds.png new file mode 100644 index 000000000..8d791506c Binary files /dev/null and b/static/img/bridges/xdaibridge/gc-xdai-tx-post-usds.png differ diff --git a/static/img/bridges/xdaibridge/xdai-execute-signatures-post-usds.png b/static/img/bridges/xdaibridge/xdai-execute-signatures-post-usds.png new file mode 100644 index 000000000..bc6c811f1 Binary files /dev/null and b/static/img/bridges/xdaibridge/xdai-execute-signatures-post-usds.png differ diff --git a/static/img/bridges/xdaibridge/xdai-helper-post-usds.png b/static/img/bridges/xdaibridge/xdai-helper-post-usds.png new file mode 100644 index 000000000..710a44cfb Binary files /dev/null and b/static/img/bridges/xdaibridge/xdai-helper-post-usds.png differ diff --git a/static/img/node/management/node-sentinel-dashboard.png b/static/img/node/management/node-sentinel-dashboard.png new file mode 100644 index 000000000..1cb6e7515 Binary files /dev/null and b/static/img/node/management/node-sentinel-dashboard.png differ diff --git a/static/llms.txt b/static/llms.txt index b28aa1391..aabf5bad9 100644 --- a/static/llms.txt +++ b/static/llms.txt @@ -7710,7 +7710,7 @@ Requirements vary client to client, for more detail see the associated system re | Lodestar | [Lodestar: Specifications](https://chainsafe.github.io/lodestar/#specifications) | | Nimbus | [Nimbus: Hardware](https://nimbus.guide/hardware.html) | | Teku | TBD | -| Prysm | [Prysm: Prerequisites](https://docs.prylabs.network/docs/install/install-with-script/#step-1-review-prerequisites-and-best-practices) | +| Prysm | [Prysm: Prerequisites](https://prysm.offchainlabs.com/docs/install-prysm/install-with-script/#step-1-review-prerequisites-and-best-practices) | **Gnosis Chain doesn't support Prysm at the moment.** @@ -8134,7 +8134,7 @@ You can import it as follows using any installation method for your Prysm valida prysm.sh validator slashing-protection-history import --datadir=/path/to/your/validator/db --slashing-protection-json-file=/path/to/desiredimportfile ``` -- For more info, see the Prysm [Import & export slashing protection history](https://docs.prylabs.network/docs/wallet/slashing-protection) doc. +- For more info, see the Prysm [Import & export slashing protection history](https://prysm.offchainlabs.com/docs/backup-and-migration/slashing-protection/) doc. ## Teku @@ -8258,7 +8258,7 @@ https://nimbus.guide/metrics-pretty-pictures.html#simple-metrics -https://docs.prylabs.network/docs/prysm-usage/monitoring/grafana-dashboard/ +https://prysm.offchainlabs.com/docs/monitoring-alerts-metrics/grafana-dashboard/ @@ -8419,13 +8419,13 @@ build/nimbus_beacon_node deposits exit --data-dir=build/data/shared_gnosis_0 --v ### Prysm -Use [prysmctl tool](https://docs.prylabs.network/docs/prysm-usage/prysmctl) to voluntarily exit your validator. +Use [prysmctl tool](https://prysm.offchainlabs.com/docs/configure-prysm/prysmctl/) to voluntarily exit your validator. ```bash prysmctl validator exit --wallet-dir= --beacon-rpc-provider=<127.0.0.1:4000> ``` -- For more info, see the Prysm [Exit your validator](https://docs.prylabs.network/docs/wallet/exiting-a-validator/) doc. +- For more info, see the Prysm [Exit your validator](https://prysm.offchainlabs.com/docs/manage-validator/exiting-a-validator/) doc. ### Teku