diff --git a/.github/workflows/README.md b/.github/workflows/README.md index 9e15661252d..b9744b0f996 100644 --- a/.github/workflows/README.md +++ b/.github/workflows/README.md @@ -23,7 +23,7 @@ This directory contains the workflows used to lint, deploy, and keep release met ## `latest-tags.yaml` — Latest Tags - **Triggers:** every 6 hours, or manual `workflow_dispatch` with `network`. -- **What it does:** for each network (`mainnet`, `arabica`, `mocha`), fetches the latest matching GitHub Release tags for `celestiaorg/celestia-app` and `celestiaorg/celestia-node`, resolves them to commit SHAs, updates `constants/_versions.json`, and opens a PR if values changed. +- **What it does:** for each network (`mainnet`, `mocha`), fetches the latest matching GitHub Release tags for `celestiaorg/celestia-app` and `celestiaorg/celestia-node`, resolves them to commit SHAs, updates `constants/_versions.json`, and opens a PR if values changed. - **Required secret:** `PAT_CREATE_PR` (token used by `peter-evans/create-pull-request` to push a branch and open a PR in this repo). Uses `GITHUB_TOKEN` for API reads. ## Notes diff --git a/.github/workflows/latest-tags.yaml b/.github/workflows/latest-tags.yaml index c5bf3b72c79..2a40b7c919f 100644 --- a/.github/workflows/latest-tags.yaml +++ b/.github/workflows/latest-tags.yaml @@ -9,7 +9,6 @@ on: type: choice options: - mainnet - - arabica - mocha schedule: - cron: '0 */6 * * *' @@ -24,7 +23,7 @@ jobs: strategy: fail-fast: false matrix: - network: ${{ fromJSON(github.event_name == 'workflow_dispatch' && format('["{0}"]', github.event.inputs.network) || '["mainnet","arabica","mocha"]') }} + network: ${{ fromJSON(github.event_name == 'workflow_dispatch' && format('["{0}"]', github.event.inputs.network) || '["mainnet","mocha"]') }} permissions: contents: write pull-requests: write @@ -47,7 +46,6 @@ jobs: const network = process.env.NETWORK; const networkSuffix = network === 'mainnet' ? null : `-${network}`; - const nonMainnetSuffixes = new Set(['-arabica', '-mocha']); async function getLatestReleaseTag(repo) { const releases = await github.paginate(github.rest.repos.listReleases, { @@ -64,10 +62,7 @@ jobs: if (networkSuffix) return tag.endsWith(networkSuffix); - for (const suffix of nonMainnetSuffixes) { - if (tag.endsWith(suffix)) return false; - } - return true; + return !tag.slice(1).includes('-'); }); if (!match) { diff --git a/README.md b/README.md index 5fcc86c53a9..232cf22ad4e 100644 --- a/README.md +++ b/README.md @@ -106,14 +106,13 @@ This section outlines the standards and guidelines for maintaining consistent, h - **Sentence case**: use sentence case for headings and titles (reference: https://github.com/celestiaorg/docs/issues/161) - **No “click here”**: avoid using “click here” for link text (reference: https://github.com/celestiaorg/docs/issues/1073) - **International English**: use international (common) English spelling and terminology -- **Network names**: use “Arabica devnet”, not “Arabica Devnet” - **Node types**: use lowercase for node types (e.g., “bridge node”, not “Bridge Node”) - **Politeness**: avoid using “please” in instructional content - **Unique headings**: ensure no duplicate headings within a document - **Network references**: use "Mainnet Beta" network (note the specific capitalization) - **Latin abbreviations**: use italicized _i.e._ or _e.g._ instead of plain i.e. or e.g. - **Code references**: use “celestia-app” in regular text (not inline code) when referring to the application name -- **Tab ordering**: when using tabs, order them as: Mainnet Beta, Mocha, Arabica +- **Tab ordering**: when using network tabs, order them as: Mainnet Beta, Mocha - **Placeholders**: use angle brackets with underscores for placeholders: `` not `` or `` ### Documentation update procedures diff --git a/app/learn/TIA/submit-data/page.mdx b/app/learn/TIA/submit-data/page.mdx index 7b55bb18101..92617f6ae2f 100644 --- a/app/learn/TIA/submit-data/page.mdx +++ b/app/learn/TIA/submit-data/page.mdx @@ -16,7 +16,7 @@ The _exact_ maximum total blob size in a transaction depends on: - the share version and layout rules, - and the fact that the **first sparse share has 478 bytes**, while **all subsequent sparse shares have 482 bytes**. -The current max square size on Arabica is 128 MiB, Mocha is 32 MiB, and Mainnet is 8 MiB. +The current max square size on Mocha and Mainnet Beta is 32 MiB. Under v6 and future upgrades, networks will use larger square sizes, so the absolute maximum blob capacity per transaction will increase correspondingly—up to the global **8 MiB transaction size limit**, which is now the binding constraint. @@ -178,7 +178,7 @@ state config in `config.toml`. Each mode has different throughput characteristic ### Default behavior (TxWorkerAccounts = 0) By default, `TxWorkerAccounts` is set to `0`, which means queued submission is disabled. All PayForBlobs transactions are submitted -immediately to the mempool without waiting for confirmations. This is the same behavior as versions prior to [v0.28.2-arabica](https://github.com/celestiaorg/celestia-node/releases/tag/v0.28.2-arabica). +immediately to the mempool without waiting for confirmations. This is the same behavior as versions before queued submission was introduced. The mempool maintains a fork of the canonical state each block, updating the sequence number (nonce) for each account that submits a transaction. If you wish to submit multiple transactions from the same account in quick succession, you must specify the nonce @@ -217,7 +217,7 @@ directly without waiting for confirmations. ### Parallel transaction submission (TxWorkerAccounts > 1) -This feature is currently available on Arabica devnet and Mocha testnet (v0.28.2-arabica and later). +This feature is currently available on Mocha testnet. For high-throughput applications that do not require sequential transaction ordering, you can enable parallel transaction submission diff --git a/app/operate/consensus-validators/consensus-node/page.mdx b/app/operate/consensus-validators/consensus-node/page.mdx index 8373d7a285b..4ae085601ba 100644 --- a/app/operate/consensus-validators/consensus-node/page.mdx +++ b/app/operate/consensus-validators/consensus-node/page.mdx @@ -36,7 +36,7 @@ Follow the tutorial on [installing `celestia-app`](/operate/consensus-validators To initialize the network, pick a "node-name" that describes your node. Keep in mind that this might change if a new testnet is deployed. - + ```bash celestia-appd init "node-name" --chain-id {{constants['mainnetChainId']}} @@ -47,16 +47,11 @@ node. Keep in mind that this might change if a new testnet is deployed. celestia-appd init "node-name" --chain-id {{constants['mochaChainId']}} ``` - - ```bash - celestia-appd init "node-name" --chain-id {{constants['arabicaChainId']}} - ``` - Download the `genesis.json` file: - + ```bash celestia-appd download-genesis {{constants['mainnetChainId']}} @@ -67,16 +62,11 @@ Download the `genesis.json` file: celestia-appd download-genesis {{constants['mochaChainId']}} ``` - - ```bash - celestia-appd download-genesis {{constants['arabicaChainId']}} - ``` - Set seeds in the `$HOME/.celestia-app/config/config.toml` file: - + ```bash SEEDS=$(curl -sL https://raw.githubusercontent.com/celestiaorg/networks/master/{{constants['mainnetChainId']}}/seeds.txt | tr '\n' ',') @@ -91,14 +81,6 @@ Set seeds in the `$HOME/.celestia-app/config/config.toml` file: sed -i.bak -e "s/^seeds *=.*/seeds = \"$SEEDS\"/" $HOME/.celestia-app/config/config.toml ``` - - ```bash - # For Arabica, you can set seeds manually in the - # `$HOME/.celestia-app/config/config.toml` file: - # Comma separated list of seed nodes to connect to - seeds = "" - ``` - @@ -109,9 +91,9 @@ Set seeds in the `$HOME/.celestia-app/config/config.toml` file: You can set persistent peers in your `config.toml` file. If you set persistent peers, your node will **always** try to connect to these peers. This is useful when running a local devnet, for example, when you would always want to connect to the same local nodes in your devnet. In production, setting persistent peers is advised only if you are running a [sentry node](https://hub.cosmos.network/main/validators/security.html#sentry-nodes-ddos-protection). -You can get the persistent peers from the [@cosmos/chain-registry](https://github.com/cosmos/chain-registry) repository (for Mainnet Beta) or [@celestiaorg/networks repository](https://github.com/celestiaorg/networks) repo (for Mocha and Arabica) with the following commands: +You can get the persistent peers from the [@cosmos/chain-registry](https://github.com/cosmos/chain-registry) repository (for Mainnet Beta) or [@celestiaorg/networks repository](https://github.com/celestiaorg/networks) repo (for Mocha) with the following commands: - + ```bash PERSISTENT_PEERS=$(curl -s https://raw.githubusercontent.com/cosmos/chain-registry/master/{{constants['mainnetChainId']}}/chain.json | jq -r '.peers.persistent_peers[].address' | tr '\n' ',' | sed 's/,$/\n/') @@ -126,13 +108,6 @@ You can get the persistent peers from the [@cosmos/chain-registry](https://githu sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PERSISTENT_PEERS\"/" $HOME/.celestia-app/config/config.toml ``` - - ```bash - PERSISTENT_PEERS=$(curl -sL https://raw.githubusercontent.com/celestiaorg/networks/master/{{constants['arabicaChainId']}}/peers.txt | tr '\n' ',') - echo $PERSISTENT_PEERS - sed -i.bak -e "s/^persistent_peers *=.*/persistent_peers = \"$PERSISTENT_PEERS\"/" $HOME/.celestia-app/config/config.toml - ``` - ## Storage and pruning configurations @@ -284,7 +259,7 @@ copied from. Run the following command to quick-sync from a snapshot: - + ```bash cd $HOME @@ -307,17 +282,6 @@ Run the following command to quick-sync from a snapshot: tar xf celestia-snap.tar -C ~/.celestia-app/data/ ``` - - ```bash - cd $HOME - rm -rf ~/.celestia-app/data - mkdir -p ~/.celestia-app/data - SNAP_NAME=$(curl -s https://snaps.qubelabs.io/celestia/ | \ - egrep -o ">{{constants['arabicaChainId']}}.*tar" | tr -d ">") - aria2c -x 16 -s 16 -o celestia-snap.tar "https://snaps.qubelabs.io/celestia/${SNAP_NAME}" - tar xf celestia-snap.tar -C ~/.celestia-app/data/ - ``` - @@ -339,7 +303,7 @@ celestia-appd start --rpc.grpc_laddr tcp://0.0.0.0:9098 If you are running celestia-app v2.x.x then you'll want to start the node with a `--v2-upgrade-height` that is dependent on the network. The `--v2-upgrade-height` flag is only needed during the v2 upgrade height so after your node has executed the upgrade (e.g. you see the log `upgraded from app version 1 to 2`), you don't need to provide this flag for future `celestia-appd start` invocations. - + ```sh celestia-appd start --v2-upgrade-height 2371495 @@ -350,11 +314,6 @@ If you are running celestia-app v2.x.x then you'll want to start the node with a celestia-appd start --v2-upgrade-height 2585031 ``` - - ```sh - celestia-appd start --v2-upgrade-height 1751707 - ``` - diff --git a/app/operate/consensus-validators/install-celestia-app/page.mdx b/app/operate/consensus-validators/install-celestia-app/page.mdx index 6f84c2da56a..fb19ba6ccc6 100644 --- a/app/operate/consensus-validators/install-celestia-app/page.mdx +++ b/app/operate/consensus-validators/install-celestia-app/page.mdx @@ -46,7 +46,7 @@ Be sure to select the correct network to install the binary for. ### Check out the desired version - + ```bash git checkout tags/{{mainnetVersions['app-latest-tag']}} @@ -57,11 +57,6 @@ Be sure to select the correct network to install the binary for. git checkout tags/{{mochaVersions['app-latest-tag']}} ``` - - ```bash - git checkout tags/{{arabicaVersions['app-latest-tag']}} - ``` - ### Build and install the `celestia-appd` binary with multiplexer support diff --git a/app/operate/consensus-validators/validator-node/page.mdx b/app/operate/consensus-validators/validator-node/page.mdx index 851e2fd09d5..e7a7d3eebea 100644 --- a/app/operate/consensus-validators/validator-node/page.mdx +++ b/app/operate/consensus-validators/validator-node/page.mdx @@ -61,10 +61,9 @@ is properly configured in your consensus node's `app.toml` file. The `[grpc]` section should have `enable = true` and the appropriate address setting for the bridge node to connect successfully. -Using an RPC of your own, or one from -[Mainnet Beta](/operate/networks/mainnet-beta#integrations), -[Mocha testnet](/operate/networks/mocha-testnet#rpc-for-da-bridge-full-and-light-nodes) or -[Arabica devnet](/operate/networks/arabica-devnet#integrations), +Using an RPC of your own, or one listed for +[Mainnet Beta](/operate/networks/mainnet-beta#integrations) or +[Mocha testnet](/operate/networks/mocha-testnet#rpc-for-da-bridge-full-and-light-nodes), initialize your node. ### Run the bridge node @@ -94,7 +93,7 @@ In order to create a validator on-chain, follow the steps below. 1. Export an environment variable for the chain ID you want to run on: - + ```bash export CHAIN_ID={{constants['mainnetChainId']}} @@ -105,11 +104,6 @@ In order to create a validator on-chain, follow the steps below. export CHAIN_ID={{constants['mochaChainId']}} ``` - - ```bash - export CHAIN_ID={{constants['arabicaChainId']}} - ``` - 1. Export more environment variables. @@ -125,26 +119,9 @@ In order to create a validator on-chain, follow the steps below. export VALIDATOR_PUBKEY=$(celestia-appd tendermint show-validator) ``` -1. If you want to create a validator on a testnet that is on app version 4 (currently only Arabica), you will need to create a `validator.json` file. - - **Arabica:** - ```bash - cat < validator.json - { - "pubkey": $VALIDATOR_PUBKEY, - "amount": "1000000utia", - "moniker": "$MONIKER", - "commission-rate": "0.1", - "commission-max-rate": "0.2", - "commission-max-change-rate": "0.01", - "min-self-delegation": "1" - } - EOF - ``` - 1. Create a validator - + ```bash celestia-appd tx staking create-validator \ @@ -189,16 +166,6 @@ In order to create a validator on-chain, follow the steps below. --yes ``` - - ```bash - celestia-appd tx staking create-validator validator.json \ - --from $VALIDATOR_WALLET \ - --keyring-backend test \ - --fees 21000utia \ - --gas=220000 \ - --yes - ``` - You should see output like: diff --git a/app/operate/data-availability/bridge-node/page.mdx b/app/operate/data-availability/bridge-node/page.mdx index 0050ff2a1fc..174fe06d8df 100644 --- a/app/operate/data-availability/bridge-node/page.mdx +++ b/app/operate/data-availability/bridge-node/page.mdx @@ -84,8 +84,7 @@ Refer to for information on which ports are required to be open on your machine. Using an RPC of your own, or one from the -[list on the Mocha testnet page](/operate/networks/mocha-testnet#community-rpc-endpoints) or -[list on the Arabica devnet page](/operate/networks/arabica-devnet#community-rpc-endpoints), +[list on the Mocha testnet page](/operate/networks/mocha-testnet#community-rpc-endpoints), start your node. Connecting to a consensus node endpoint (flag: `--core.ip string`) @@ -95,7 +94,7 @@ transactions, and other state-related queries). Here is an example of initializing the bridge node: - + ```sh celestia bridge init --core.ip --core.port @@ -107,12 +106,6 @@ Here is an example of initializing the bridge node: --p2p.network mocha ``` - - ```sh - celestia bridge init --core.ip --core.port \ - --p2p.network arabica - ``` - @@ -130,12 +123,6 @@ Here is an example of starting the bridge node on Mocha: celestia bridge start --core.ip rpc-mocha.pops.one --core.port 9090 --p2p.network mocha ``` -And on Arabica: - -```sh -celestia bridge start --core.ip validator-1.celestia-{{constants['arabicaChainId']}}.com \ - --p2p.network arabica --core.port 9090 -``` If you're connecting your bridge node to a localhost consensus node (`--core.ip localhost` or `--core.ip 127.0.0.1`), ensure that gRPC is enabled in your consensus node's `app.toml` configuration file. Look for the `[grpc]` section and verify that `enable = true` is set: @@ -170,7 +157,6 @@ You do not need to declare a network for Mainnet Beta. Refer to You can get testnet tokens from: - [Mocha](/operate/networks/mocha-testnet) -- [Arabica](/operate/networks/arabica-devnet) > **Note:** If you are running a bridge node for your validator, it is highly recommended to request Mocha testnet tokens as this is the testnet used to test out validator operations. @@ -183,7 +169,7 @@ In order to run a bridge node using a custom key: 2. The name of the custom key must be passed upon `start`, like so: - + ```sh celestia bridge start --core.ip --keyring.keyname \ @@ -196,12 +182,6 @@ In order to run a bridge node using a custom key: --p2p.network mocha --core.port ``` - - ```sh - celestia bridge start --core.ip --keyring.keyname \ - --p2p.network arabica --core.port - ``` - diff --git a/app/operate/data-availability/install-celestia-node/page.mdx b/app/operate/data-availability/install-celestia-node/page.mdx index 81c67977cc3..ecb90f67a26 100644 --- a/app/operate/data-availability/install-celestia-node/page.mdx +++ b/app/operate/data-availability/install-celestia-node/page.mdx @@ -39,7 +39,7 @@ commands: ### Check out the desired version - + ```bash git checkout tags/{{mainnetVersions['node-latest-tag']}} @@ -50,11 +50,6 @@ commands: git checkout tags/{{mochaVersions['node-latest-tag']}} ``` - - ```bash - git checkout tags/{{arabicaVersions['node-latest-tag']}} - ``` - ### Build the `celestia` binary diff --git a/app/operate/data-availability/light-node/advanced/page.mdx b/app/operate/data-availability/light-node/advanced/page.mdx index 3f46f16d4e5..d914da3a8fd 100644 --- a/app/operate/data-availability/light-node/advanced/page.mdx +++ b/app/operate/data-availability/light-node/advanced/page.mdx @@ -45,7 +45,7 @@ For key creation, backup, import/recover, and Docker setups, see [Create a wallet with celestia-node](/operate/keys-wallets/celestia-node-key). - + ```bash celestia light start --core.ip --core.port \ @@ -58,12 +58,6 @@ For key creation, backup, import/recover, and Docker setups, see --keyring.keyname --p2p.network mocha ``` - - ```bash - celestia light start --core.ip --core.port \ - --keyring.keyname --p2p.network arabica - ``` - --- diff --git a/app/operate/data-availability/light-node/quickstart/page.mdx b/app/operate/data-availability/light-node/quickstart/page.mdx index f568cf095cd..7cac5dbf165 100644 --- a/app/operate/data-availability/light-node/quickstart/page.mdx +++ b/app/operate/data-availability/light-node/quickstart/page.mdx @@ -64,7 +64,7 @@ Want to sync faster (skip sampling from genesis)? See [Fast sync with a trusted hash](/operate/data-availability/light-node/advanced#fast-sync-with-a-trusted-hash). - + ```bash celestia light init @@ -75,11 +75,6 @@ Want to sync faster (skip sampling from genesis)? See celestia light init --p2p.network mocha ``` - - ```bash - celestia light init --p2p.network arabica - ``` - ### Start the light node @@ -87,7 +82,7 @@ Want to sync faster (skip sampling from genesis)? See Light nodes connect to a consensus node **gRPC** endpoint (usually port `9090`) for state access (balances, submitting `PayForBlobs`, etc.). - + ```bash celestia light start --core.ip rpc.celestia.pops.one \ @@ -100,19 +95,12 @@ for state access (balances, submitting `PayForBlobs`, etc.). --core.port 9090 --p2p.network mocha ``` - - ```bash - celestia light start --core.ip validator-1.celestia-{{constants['arabicaChainId']}}.com \ - --core.port 9090 --p2p.network arabica - ``` - You can use any consensus node gRPC endpoint listed on -[Mainnet Beta](/operate/networks/mainnet-beta#integrations), -[Mocha testnet](/operate/networks/mocha-testnet#community-data-availability-da-grpc-endpoints-for-state-access), -or [Arabica devnet](/operate/networks/arabica-devnet#integrations). +either [Mainnet Beta](/operate/networks/mainnet-beta#integrations) or +[Mocha testnet](/operate/networks/mocha-testnet#community-data-availability-da-grpc-endpoints-for-state-access). If you're running on a server, make sure required ports are open. See @@ -129,7 +117,6 @@ celestia state account-address Then use a faucet: - [Mocha faucet](/operate/networks/mocha-testnet#mocha-testnet-faucet) -- [Arabica faucet](/operate/networks/arabica-devnet#arabica-devnet-faucet) On Mainnet Beta, fund this address with TIA to submit blobs. diff --git a/app/operate/data-availability/metrics/page.mdx b/app/operate/data-availability/metrics/page.mdx index 0c3d42f637c..0108aeafb1d 100644 --- a/app/operate/data-availability/metrics/page.mdx +++ b/app/operate/data-availability/metrics/page.mdx @@ -53,16 +53,6 @@ celestia start --metrics.tls=true \ --core.ip --core.port --p2p.network mocha ``` -### Arabica devnet - -Here is an example for Arabica devnet: - -```sh -celestia start --metrics.tls=true \ - --metrics --metrics.endpoint otel.arabica.celestia.observer \ - --core.ip --core.port --p2p.network arabica -``` - ### TLS connections The `--metrics.tls` flag enables or disables a TLS connection to the diff --git a/app/operate/data-availability/storage-optimization/page.mdx b/app/operate/data-availability/storage-optimization/page.mdx index eebc8609f1e..1aa3384aa13 100644 --- a/app/operate/data-availability/storage-optimization/page.mdx +++ b/app/operate/data-availability/storage-optimization/page.mdx @@ -118,7 +118,7 @@ zfs set compression=zstd-3 $ZFS_POOL_NAME/$ZFS_DATASET_NAME Set the custom path to the bridge data folder: - + ```sh # Add flag --node.store /celestia/bridge/.celestia-bridge to your command, example: @@ -131,12 +131,6 @@ Set the custom path to the bridge data folder: celestia bridge start --metrics.tls=true --metrics --metrics.endpoint otel.mocha.celestia.observer --p2p.metrics --node.store /celestia/bridge/.celestia-bridge-{{constants['mochaChainId']}} --p2p.network mocha ``` - - ```sh - # Add flag --node.store /celestia/bridge/.celestia-bridge-{{constants['arabicaChainId']}} to your command, example: - celestia bridge start --node.store /celestia/bridge/.celestia-bridge-{{constants['arabicaChainId']}} --p2p.network arabica - ``` - > **Note:** It is recommended to sync from scratch. In case of using a snapshot it is important to have your local route to `--data.store` identical to one in a snapshot. diff --git a/app/operate/getting-started/docker/page.mdx b/app/operate/getting-started/docker/page.mdx index 9f4320bf1cf..dc125180100 100644 --- a/app/operate/getting-started/docker/page.mdx +++ b/app/operate/getting-started/docker/page.mdx @@ -42,7 +42,7 @@ Ubuntu. You can Choose [the network](/operate/networks/overview) you would like to run your node on: - + ```bash export NETWORK=celestia @@ -53,11 +53,6 @@ Choose [the network](/operate/networks/overview) you would like to run your node export NETWORK=mocha ``` - - ```bash - export NETWORK=arabica - ``` - ### Set the node type @@ -82,9 +77,8 @@ Choose [the network](/operate/networks/overview) you would like to run your node ### Configure the RPC endpoint -Set an RPC endpoint for either [Mainnet Beta](/operate/networks/mainnet-beta#integrations), - [Mocha](/operate/networks/mocha-testnet#rpc-for-da-bridge-full-and-light-nodes), or - [Arabica](/operate/networks/arabica-devnet#integrations) +Set an RPC endpoint for either [Mainnet Beta](/operate/networks/mainnet-beta#integrations) + or [Mocha](/operate/networks/mocha-testnet#rpc-for-da-bridge-full-and-light-nodes) using the bare URL (without http or https): ```bash @@ -99,7 +93,7 @@ Then set the port for the RPC_URL: ### Run the container - + ```bash docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ @@ -114,13 +108,6 @@ Then set the port for the RPC_URL: celestia $NODE_TYPE start --core.ip $RPC_URL --core.port $RPC_PORT --p2p.network $NETWORK ``` - - ```bash - docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ - ghcr.io/celestiaorg/celestia-node:{{arabicaVersions['node-latest-tag']}} \ - celestia $NODE_TYPE start --core.ip $RPC_URL --core.port $RPC_PORT --p2p.network $NETWORK - ``` - Congratulations! You now have a celestia-node running! @@ -182,7 +169,7 @@ docker run [args...] -v $HOME/my-node-store:/home/celestia \ An example init command will look similar to below: - + ```bash docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ @@ -199,14 +186,6 @@ An example init command will look similar to below: celestia light init --p2p.network $NETWORK ``` - - ```bash - docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ - -v $HOME/my-node-store:/home/celestia \ - ghcr.io/celestiaorg/celestia-node:{{arabicaVersions['node-latest-tag']}} \ - celestia light init --p2p.network $NETWORK - ``` - ### Start the node @@ -221,7 +200,7 @@ docker run [...args] -v $HOME/my-node-store:/home/celestia \ A full start command will look similar to below. - + ```bash docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ @@ -238,14 +217,6 @@ A full start command will look similar to below. celestia light start --core.ip $RPC_URL --core.port $RPC_PORT --p2p.network $NETWORK ``` - - ```bash - docker run -e NODE_TYPE=$NODE_TYPE -e P2P_NETWORK=$NETWORK \ - -v $HOME/my-node-store:/home/celestia \ - ghcr.io/celestiaorg/celestia-node:{{arabicaVersions['node-latest-tag']}} \ - celestia light start --core.ip $RPC_URL --core.port $RPC_PORT --p2p.network $NETWORK - ``` - Congratulations! You now have a node running with persistent storage. diff --git a/app/operate/getting-started/environment-setup/page.mdx b/app/operate/getting-started/environment-setup/page.mdx index 0ba93b0708a..bdb798c866d 100644 --- a/app/operate/getting-started/environment-setup/page.mdx +++ b/app/operate/getting-started/environment-setup/page.mdx @@ -60,7 +60,6 @@ Set the version for your desired network: - Mainnet Beta: `ver="{{constants['golangNodeMainnet']}}"` - Mocha: `ver="{{constants['golangNodeMocha']}}"` -- Arabica: `ver="{{constants['golangNodeArabica']}}"` Download and install Golang: diff --git a/app/operate/keys-wallets/celestia-app-wallet/page.mdx b/app/operate/keys-wallets/celestia-app-wallet/page.mdx index b962c82bb15..87c2da952ea 100644 --- a/app/operate/keys-wallets/celestia-app-wallet/page.mdx +++ b/app/operate/keys-wallets/celestia-app-wallet/page.mdx @@ -93,7 +93,7 @@ After you set a password, your encrypted key will be displayed. For the public celestia address, you can fund the previously created wallet via [Discord](https://discord.com/invite/YsnTPcSfWQ) -by sending this message to either the #mocha-faucet or #arabica-faucet channel: +by sending this message to the #mocha-faucet channel: ```text $request celestia1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx diff --git a/app/operate/keys-wallets/celestia-node-key/page.mdx b/app/operate/keys-wallets/celestia-node-key/page.mdx index 3e9ca67f32e..4f58f0817de 100644 --- a/app/operate/keys-wallets/celestia-node-key/page.mdx +++ b/app/operate/keys-wallets/celestia-node-key/page.mdx @@ -73,14 +73,14 @@ This will load the key `` into the directory of the node. Further flags you can use to customize your key are the following: -- `--p2p.network`: Specifies which network you want the key for. Values - are `arabica` and `mocha`. Please note the default network will be `mocha`. +- `--p2p.network`: Specifies which network you want the key for. Use `mocha` + to target Mocha. Keep in mind that your celestia-node will only pick up keys that are inside the default directory under `/keys` so you should make sure to point `cel-key` utility to the correct directory via the `p2p.network` or `home` flags if you have specified a custom -directory or network other than Arabica, Mocha, or Mainnet Beta. +directory or network other than Mocha or Mainnet Beta. Also keep in mind that if you do not specify a network with `--p2p.network`, the default one will always be `celestia` (Mainnet Beta). diff --git a/app/operate/maintenance/network-upgrades/page.mdx b/app/operate/maintenance/network-upgrades/page.mdx index 649493e2318..afe1b218b53 100644 --- a/app/operate/maintenance/network-upgrades/page.mdx +++ b/app/operate/maintenance/network-upgrades/page.mdx @@ -31,7 +31,7 @@ The upgrade process can be broken down into a few steps: 1. [Celestia Improvement Proposals](https://cips.celestia.org) (CIPs) are created for consensus-breaking changes and features that impact user experience. These CIPs are included in a meta-CIP, which define the scope of the upgrade. 1. Celestia core developer teams implement the features defined in the CIPs. 1. A new binary is released with the new features to be tested on testnets. -1. Node operators upgrade to the new binary, on [Arabica devnet](/operate/networks/arabica-devnet), [Mocha testnet](/operate/networks/mocha-testnet), and finally on Celestia [Mainnet Beta](/operate/networks/mainnet-beta). +1. Node operators upgrade to the new binary on [Mocha testnet](/operate/networks/mocha-testnet), and finally on Celestia [Mainnet Beta](/operate/networks/mainnet-beta). - Upgrades using pre-programmed height (v2) activate at a predetermined block number. - Upgrades using in-protocol signaling (v3+) activate one week after 5/6 of the voting power has signaled for a particular version @@ -41,19 +41,6 @@ v7 (Hibiscus) was skipped on Mainnet Beta due to a bug discovered after testnet Version links point to Celenium upgrade status pages for signaling upgrades (v3+). v2 used a pre-programmed height and does not have a Celenium signaling page. -### Arabica devnet - -| Version | Name | CIP | Date and time | Upgrade height | Delay period | Parameters | -| --------------------------------------------------------------------------------------- | ---------- | ----------------------------------------------------------------------- | ----------------------- | ----------------------------------------------------------------------- | ------------ | ------------------------------------------------------------------- | -| v2 | Lemongrass | [CIP-17](https://github.com/celestiaorg/CIPs/blob/main/cips/cip-017.md) | 2024/08/19 14:00 UTC | [1751707](https://arabica.celenium.io/block/1751707) | — | [v2](https://celestiaorg.github.io/celestia-app/parameters_v2.html) | -| [v3](https://arabica.celenium.io/upgrade/3?tab=signals&page=1) | Ginger | [CIP-25](https://cips.celestia.org/cip-025.html) | 2024/11/05 21:55:13 UTC | [2348907](https://arabica.celenium.io/block/2348907) | — | [v3](https://celestiaorg.github.io/celestia-app/parameters_v3.html) | -| [v4](https://arabica.celenium.io/upgrade/4?tab=signals&page=1) | Lotus | [CIP-33](https://cips.celestia.org/cip-033.html) | 2025/05/16 07:51:35 UTC | [5975265](https://arabica.celenium.io/block/5975265) | 1 day | [v4](https://celestiaorg.github.io/celestia-app/parameters_v4.html) | -| [v5](https://arabica.celenium.io/upgrade/5?tab=signals&page=1) | — | — | 2025/07/29 19:59:00 UTC | [7316464](https://arabica.celenium.io/block/7316464) | 1 block | [v5](https://celestiaorg.github.io/celestia-app/parameters_v5.html) | -| [v6](https://arabica.celenium.io/upgrade/6?tab=signals&page=1) | Matcha | [CIP-42](https://cips.celestia.org/cip-042.html) | 2025/09/09 06:08:11 UTC | [8105605](https://arabica.celenium.io/block/8105605) | 1 day | [v6](https://celestiaorg.github.io/celestia-app/parameters_v6.html) | -| [v7](https://arabica.celenium.io/upgrade/7?tab=signals&page=1) | Hibiscus | [CIP-47](https://cips.celestia.org/cip-047.html) | 2026/02/14 02:36:26 UTC | [10133989](https://arabica.celenium.io/block/10133989?tab=transactions) | 1 day | [v7](https://celestiaorg.github.io/celestia-app/parameters_v7.html) | -| [v8](https://arabica.celenium.io/upgrade/8?tab=signals&page=1) | — | [CIP-49](https://cips.celestia.org/cip-049.html) | 2026/04/04 17:22:12 UTC | [10853352](https://arabica.celenium.io/block/10853352?tab=transactions) | 1 day | [v8](https://celestiaorg.github.io/celestia-app/parameters_v8.html) | -| [v9](https://arabica.celenium.io/upgrade/9?tab=signals&page=1) | — | [CIP-50](https://cips.celestia.org/cip-050.html) | 2026/05/28 12:00:22 UTC | [11636100](https://arabica.celenium.io/block/11636100?tab=transactions) | 1 day | [v9](https://celestiaorg.github.io/celestia-app/parameters_v9.html) | - ### Mocha testnet | Version | Name | CIP | Date and time | Upgrade height | Delay period | Parameters | diff --git a/app/operate/maintenance/troubleshooting/page.mdx b/app/operate/maintenance/troubleshooting/page.mdx index 2243e2bb91c..fed9de9bfea 100644 --- a/app/operate/maintenance/troubleshooting/page.mdx +++ b/app/operate/maintenance/troubleshooting/page.mdx @@ -34,7 +34,6 @@ _i.e._ no `--p2p.network string` flag is required for Mainnet Beta. | ------------ | -------------------------- | --------------------------------------- | | Mainnet Beta | {constants.mainnetChainId} | not required (`--p2p.network celestia`) | | Mocha | {constants.mochaChainId} | `--p2p.network mocha` | -| Arabica | {constants.arabicaChainId} | `--p2p.network arabica` | ## Ports @@ -73,7 +72,7 @@ manually specify the `--node.store` flag for each RPC request. **Assumptions:** - The presence of a lock signifies a running node. -- Networks are ordered as Mainnet Beta, Mocha, Arabica, private, custom. +- Networks are ordered as Mainnet Beta, Mocha, private, custom. - Node types are ordered as bridge and light. - Each network has only one running node type. - Multiple nodes of the same network and type are prohibited @@ -144,26 +143,6 @@ The request will go to the Mainnet Beta node, and a 401 will show in this node's logs. Note that a 401 is expected because this blob was posted to Mocha and neither the namespace nor the blob exist on Mainnet Beta. -#### Mocha bridge and Arabica light - -This example uses a Mocha bridge node and an Arabica light node. When -making the request: - -```bash -❯ celestia blob get 1318129 0x42690c204d39600fddd3 0MFhYKQUi2BU+U1jxPzG7QY2BVV1lb3kiU+zAK7nUiY= -{ - "result": { - "namespace": "AAAAAAAAAAAAAAAAAAAAAAAAAEJpDCBNOWAP3dM=", - "data": "0x676d", - "share_version": 0, - "commitment": "0MFhYKQUi2BU+U1jxPzG7QY2BVV1lb3kiU+zAK7nUiY=", - "index": 23 - } -} -``` - -The request will go to the Mocha bridge node, and result shown as expected. - #### Using a custom rpc.config address When using a custom RPC config address `0.0.0.1` and port `25231`, diff --git a/app/operate/maintenance/trusted-hash-recovery/page.mdx b/app/operate/maintenance/trusted-hash-recovery/page.mdx index 5dd925e74a4..2d19877ca19 100644 --- a/app/operate/maintenance/trusted-hash-recovery/page.mdx +++ b/app/operate/maintenance/trusted-hash-recovery/page.mdx @@ -7,7 +7,7 @@ import { Steps } from 'nextra/components' # Syncing a light node from a trusted hash This guide goes over how to sync a DA light node from a trusted hash. -The example uses the Mocha testnet. You will need to adjust the commands accordingly for Mainnet Beta, Arabica, or a custom network. +The example uses the Mocha testnet. You will need to adjust the commands accordingly for Mainnet Beta or a custom network. If you already have a data store for your node, you need to remove it before syncing from a trusted hash: diff --git a/app/operate/networks/_meta.js b/app/operate/networks/_meta.js index 76894795813..709aaaf59ff 100644 --- a/app/operate/networks/_meta.js +++ b/app/operate/networks/_meta.js @@ -2,7 +2,6 @@ const meta = { "overview": "Overview", "mainnet-beta": "Mainnet Beta", "mocha-testnet": "Mocha testnet", - "arabica-devnet": "Arabica devnet", "local-devnet": "Local devnet", }; diff --git a/app/operate/networks/arabica-devnet/page.mdx b/app/operate/networks/arabica-devnet/page.mdx deleted file mode 100644 index 59113ae67fd..00000000000 --- a/app/operate/networks/arabica-devnet/page.mdx +++ /dev/null @@ -1,179 +0,0 @@ ---- -description: A guide to Arabica devnet. ---- - -import { Callout } from 'nextra/components'; -import { constants, arabicaVersions } from '@/constants'; - -# Arabica devnet - -![arabica-devnet](/img/arabica-devnet.png) - -Arabica devnet is a testnet from Celestia Labs that is focused -exclusively on providing developers with enhanced performance and -the latest upgrades for testing their rollups and applications. - -Arabica does not focus on validator or consensus-level testing, rather, -that is what Mocha testnet is used for. If you are a validator, we -recommend testing your validator operations on the -[Mocha testnet](/operate/networks/mocha-testnet). - -## Network stability and upgrades - -Arabica has the latest updates from all Celestia's products deployed -on it, it can be subject to many changes. Therefore, as a fair warning, -Arabica can break unexpectedly, but given it will be continuously updated, -it is a useful way to keep testing the latest changes in the software. - -Developers can still deploy on Mocha testnet their sovereign rollups if they -chose to do so, it just will always lag behind Arabica devnet until Mocha -undergoes network upgrades in coordination with validators. - -## Network details - -| Detail | Value | -| ------------- | ------------------------------------------------------------------------------------------------------ | -| Chain ID | `{{constants['arabicaChainId']}}` | -| Genesis hash | `27122593765E07329BC348E8D16E92DCB4C75B34CCCB35C640FD7A4484D4C711` | -| Genesis file | https://github.com/celestiaorg/networks/blob/master/{constants.arabicaChainId}/genesis.json | -| Peers file | https://github.com/celestiaorg/networks/blob/master/{constants.arabicaChainId}/peers.txt | -| Validators | 4 | - -### Software version numbers - -| Software | Version | -| -------------- | ------------------------------------------------------------------------ | -| celestia-node | [{arabicaVersions['node-latest-tag']}](https://github.com/celestiaorg/celestia-node/releases/tag/{arabicaVersions['node-latest-tag']}) | -| celestia-app | [{arabicaVersions['app-latest-tag']}](https://github.com/celestiaorg/celestia-app/releases/tag/{arabicaVersions['app-latest-tag']}) | - -## Network status - -For real-time network status information, including uptime, incident reports, -and service availability, visit the -[official Celestia Arabica devnet status page](https://status.celestia.dev/status/arabica). - -## Network constants - -For the current Arabica devnet network constants, see -[arabica.celenium.io/constants](https://arabica.celenium.io/constants). - -## Integrations - -This guide contains the relevant sections for how to connect to Arabica -devnet, depending on the type of node you are running. Your best -approach to participating is to first determine which node you would -like to run. Each node’s guide will link to the relevant network in -order to show you how to connect to them. Learn about the different -endpoint types [in the Cosmos SDK documentation](https://docs.cosmos.network/sdk/v0.53/learn/advanced/grpc_rest). - -### Production RPC endpoints - -These RPC providers are meant to be used in production environments -and for specific use cases that require reliable access to full block -history, such as: - -- Running Bridge Nodes that download data from core RPC endpoints -- Applications that need Bridge Node endpoints with guaranteed uptime and SLAs -- Submitting blobs in production settings (free RPC endpoints have no guarantees, even for submitting transactions) - -| Provider | URL | -| --------- | ----------------------------------------------------------------------------------------- | -| QuickNode | [https://www.quicknode.com/chains/celestia](https://www.quicknode.com/chains/celestia) ([docs](https://quicknode.com/docs/celestia)) | - -### Community RPC endpoints - -> **Warning:** Do not rely on the free community endpoints listed below for production deployments. Production deployments should rely on [service providers with SLAs](#production-rpc-endpoints) or your own node. - -RPC endpoints and types of nodes you can run in order to participate in Arabica devnet: - -| Node type | Endpoint type | Endpoint | -| ---------------------------------------------------------------- | -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **Consensus nodes** ([full guide](/operate/consensus-validators/consensus-node)) | Consensus RPC | `https://rpc.celestia-arabica-11.com` | -| | API | `https://api.celestia-arabica-11.com` | -| | gRPC | `grpc.celestia-arabica-11.com:443` | -| | Direct endpoints with open ports | Open ports: 26656 (p2p), 26657 (RPC), 1317 (API), 9090 (GRPC) | -| | | `validator-1.celestia-arabica-11.com` | -| | | `validator-2.celestia-arabica-11.com` | -| | | `validator-3.celestia-arabica-11.com` | -| | | `validator-4.celestia-arabica-11.com` | -| | | | -| **Data availability nodes** | DA Bridge Node Endpoints | See the list of official Celestia bootstrappers in the [celestia-node GitHub repository](https://github.com/celestiaorg/celestia-node/blob/a87a17557223d88231b56d323d22ac9da31871db/nodebuilder/p2p/bootstrap.go#L39). | -| | `--core.ip string` endpoints | Refer to "Direct endpoints with open ports" above | - -You can [find the status of these endpoints](https://celestia-tools.brightlystake.com/). - -### Using consensus endpoints with DA nodes - -#### Data availability (DA) RPC endpoints for bridge node sync - -These RPC endpoints allow bridge nodes to sync blocks from the Celestia network. -For users, they will need to provide a `–core.ip string` -from a consensus node’s URL or IP that populates a default RPC port at 26657 -to their respective DA node. - -#### Data availability (DA) gRPC endpoints for state access - -These gRPC endpoints for DA nodes provide state access for querying the -chain’s state and broadcasting transactions (balances, blobs, etc.) to the -Celestia network. For users, they will need to provide a `–core.ip string` -from a consensus node’s URL or IP that populates a default gRPC port at 9090 -to their respective DA node. - - -Example command for starting a DA node with a consensus endpoint: - -```bash -celestia start --core.ip --core.port -``` - - -RPCs for DA nodes to initialise or start your celestia-node to -Arabica devnet with can be found in the table in the -"Direct endpoints with open ports" section above. - -As an example, this command will work to start a light node with state access, using default ports: - -```bash -celestia light start --p2p.network arabica \ - --core.ip validator-1.celestia-arabica-11.com \ - --core.port 9090 -``` - - -Not all RPC endpoints guarantee full block history. Find [an archive endpoint on the community dashboard](https://celestia-tools.brightlystake.com/) or run your own consensus node with no pruning for your bridge node. - - -## Arabica devnet faucet - -> **Warning:** Using this faucet does not entitle you to any airdrop or other distribution of mainnet Celestia tokens. - -### Discord - -You can request from Arabica devnet Faucet on the #arabica-faucet channel on -Celestia's Discord server with the following command: - -```text -$request -``` - -Where `` is a `celestia1******` generated address. - -> **Note:** Faucet has a limit of 10 tokens per week per address/Discord ID. - -### Web - -The web faucet is available at [https://arabica.celenium.io/faucet](https://arabica.celenium.io/faucet) and [https://faucet.celestia-arabica-11.com/](https://faucet.celestia-arabica-11.com/). - -## Explorers - -There are multiple explorers you can use for Arabica: - -- [https://arabica.celenium.io](https://arabica.celenium.io) - -## Network upgrades - -Join our [Telegram announcement channel](https://t.me/+smSFIA7XXLU4MjJh) -for network upgrades. - -See the [network upgrades page](/operate/maintenance/network-upgrades) to learn more -about specific upgrades like the [Ginger network upgrade](/operate/maintenance/network-upgrades#ginger-network-upgrade). diff --git a/app/operate/networks/mainnet-beta/page.mdx b/app/operate/networks/mainnet-beta/page.mdx index f2cc136d51c..50e2ae71243 100644 --- a/app/operate/networks/mainnet-beta/page.mdx +++ b/app/operate/networks/mainnet-beta/page.mdx @@ -57,21 +57,7 @@ Previously, in [CIP-28](https://cips.celestia.org/cip-028.html), there was a 2 M While individual transactions are limited to 8 MiB as of v6, a block can contain multiple transactions and has a much larger capacity. The maximum block size is determined by the effective maximum square size. -The current max square size on Arabica is 128 MiB, Mocha is 32 MiB, and Mainnet is 8 MiB. - -The following provides an approximation of the maximum blob capacity on Arabica: - -- The maximum square size is 512x512, which gives us 262,144 shares. -- One share is reserved for the PFB transaction, leaving us with 262,143 shares available for blob data. -- The first sparse share has 478 bytes available, and the remaining sparse shares have 482 bytes each. - -Approximate capacity: - -``` -First share: 1 x 478 bytes -Remaining shares: 262,142 x 482 bytes -Total bytes: 126,352,922 bytes -``` +The current max square size on Mocha and Mainnet Beta is 32 MiB. There is no precise, static upper bound on the maximum total blob size. It depends on several factors: diff --git a/app/operate/networks/mocha-testnet/page.mdx b/app/operate/networks/mocha-testnet/page.mdx index 22bccfb2d1e..c444902b5f1 100644 --- a/app/operate/networks/mocha-testnet/page.mdx +++ b/app/operate/networks/mocha-testnet/page.mdx @@ -11,9 +11,7 @@ import { constants, mochaVersions } from '@/constants'; This guide contains the relevant sections for how to connect to Mocha, depending on the type of node you are running. Mocha testnet is designed to help validators test out their infrastructure and node software. -Developers are encouraged to deploy their -sovereign rollups on Mocha, but we also recommend [Arabica devnet](/operate/networks/arabica-devnet) -for that as it is designed for development purposes. +Developers can also deploy sovereign rollups on Mocha. Mocha is a milestone in Celestia, allowing everyone to test out core functionalities on the network. Read [the announcement](https://blog.celestia.org/celestia-testnet-introduces-alpha-data-availability-api). diff --git a/app/operate/networks/overview/page.mdx b/app/operate/networks/overview/page.mdx index b150fbc5576..0d12e5a144a 100644 --- a/app/operate/networks/overview/page.mdx +++ b/app/operate/networks/overview/page.mdx @@ -1,6 +1,6 @@ # Participate in the Celestia networks -import { mainnetVersions, mochaVersions, arabicaVersions } from '@/constants'; +import { mainnetVersions, mochaVersions } from '@/constants'; ## Mainnet Beta @@ -20,30 +20,14 @@ reduced performance. ## Testnets -Celestia currently has two existing testnets that you can participate in: - -### Arabica Devnet - -[Arabica devnet](/operate/networks/arabica-devnet) is a devnet focused on developers who -want to deploy sovereign rollups on the latest changes from Celestia's codebase. -Arabica will be updated frequently and might be unstable at times given new updates. -Validators won't be able to validate on Arabica as it is not designed for -validators to participate. - -#### Compatible software versions for Arabica devnet - -| Software | Version | -| -------------- | ------------------------------------------------------------------------ | -| celestia-node | [{arabicaVersions['node-latest-tag']}](https://github.com/celestiaorg/celestia-node/releases/tag/{arabicaVersions['node-latest-tag']}) | -| celestia-app | [{arabicaVersions['app-latest-tag']}](https://github.com/celestiaorg/celestia-app/releases/tag/{arabicaVersions['app-latest-tag']}) | +Celestia currently has one public testnet that you can participate in: ### Mocha testnet [Mocha testnet](/operate/networks/mocha-testnet) is a testnet focused on enabling validators to test out their infrastructure by running nodes connected to the network. Developers -can also deploy sovereign rollups on Mocha, it just will always be behind Arabica -as Mocha upgrades are slower given they need to be done via breaking network upgrades -in coordination with the validator community on Mocha. +can also deploy sovereign rollups on Mocha. Breaking network upgrades are coordinated +with the validator community. ### Compatible software versions for Mocha testnet diff --git a/constants/arabica_versions.json b/constants/arabica_versions.json deleted file mode 100644 index 5a40daec855..00000000000 --- a/constants/arabica_versions.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "app-latest-tag": "v9.0.5-arabica", - "app-latest-sha": "caa667909d3037b457afc4747eff8db16d186c65", - "node-latest-tag": "v0.31.4-arabica", - "node-latest-sha": "275faa430d54848f63f8e3bda7bcb27702fb4d10" -} diff --git a/constants/general.json b/constants/general.json index 51d2bfb3e89..420b8b53e9c 100644 --- a/constants/general.json +++ b/constants/general.json @@ -1,15 +1,11 @@ { "golangNodeMainnet": "1.24.1", "golangNodeMocha": "1.24.1", - "golangNodeArabica": "1.24.1", - "arabicaChainId": "arabica-11", "mainnetChainId": "celestia", "mochaChainId": "mocha-4", "orchrelayVersion": "v1.0.1", "mochaRpcUrl": "https://rpc-mocha.pops.one/", "mochaRestUrl": "https://api-mocha.pops.one/", - "arabicaRpcUrl": "https://rpc.celestia-arabica-11.com/", - "arabicaRestUrl": "https://api.celestia-arabica-11.com", "mainnetRpcUrl": "https://rpc.lunaroasis.net/", "mainnetRestUrl": "https://api.lunaroasis.net/" } diff --git a/constants/index.ts b/constants/index.ts index 199c54c26fe..cf0dc82b133 100644 --- a/constants/index.ts +++ b/constants/index.ts @@ -1,7 +1,6 @@ // Import directly from JSON files - single source of truth import mainnetVersionsJson from './mainnet_versions.json'; import mochaVersionsJson from './mocha_versions.json'; -import arabicaVersionsJson from './arabica_versions.json'; import constantsJson from './general.json'; // Export with type assertions @@ -19,25 +18,14 @@ export const mochaVersions = mochaVersionsJson as { "node-latest-sha": string; }; -export const arabicaVersions = arabicaVersionsJson as { - "app-latest-tag": string; - "app-latest-sha": string; - "node-latest-tag": string; - "node-latest-sha": string; -}; - export const constants = constantsJson as { golangNodeMainnet: string; golangNodeMocha: string; - golangNodeArabica: string; - arabicaChainId: string; mainnetChainId: string; mochaChainId: string; orchrelayVersion: string; mochaRpcUrl: string; mochaRestUrl: string; - arabicaRpcUrl: string; - arabicaRestUrl: string; mainnetRpcUrl: string; mainnetRestUrl: string; }; diff --git a/plugins/remark-replace-variables.mjs b/plugins/remark-replace-variables.mjs index 5d88f01d256..01ea253d2cd 100644 --- a/plugins/remark-replace-variables.mjs +++ b/plugins/remark-replace-variables.mjs @@ -18,14 +18,12 @@ import { createRequire } from 'module'; const require = createRequire(import.meta.url); const mainnetVersions = require('../constants/mainnet_versions.json'); const mochaVersions = require('../constants/mocha_versions.json'); -const arabicaVersions = require('../constants/arabica_versions.json'); const constants = require('../constants/general.json'); // Create a context object with all available variables const variableContext = { mainnetVersions, mochaVersions, - arabicaVersions, constants, }; diff --git a/public/SKILL.md b/public/SKILL.md index 051eee9b68f..295205df0e9 100644 --- a/public/SKILL.md +++ b/public/SKILL.md @@ -133,8 +133,8 @@ Version scope: - `app/operate` for node operator and infrastructure content - Do not hardcode frequently changing versions or network values inline; prefer the constants-backed variable pattern from `constants/*.json`. -- Keep tab order as: Mainnet Beta, Mocha, Arabica. -- Use canonical network names where applicable (for example Mainnet Beta, Mocha testnet, Arabica devnet). +- Keep network tab order as: Mainnet Beta, Mocha. +- Use canonical network names where applicable (for example Mainnet Beta and Mocha testnet). - If chain IDs or network identifiers change, run a repo-wide search across MDX files before considering the task done. - Review release notes when a docs change may be driven by a breaking network or software change. diff --git a/public/img/arabica-devnet.png b/public/img/arabica-devnet.png deleted file mode 100644 index 2a91f8f8e0e..00000000000 Binary files a/public/img/arabica-devnet.png and /dev/null differ diff --git a/scripts/check-endpoints.mjs b/scripts/check-endpoints.mjs index 153a5711450..bdbadd88d01 100644 --- a/scripts/check-endpoints.mjs +++ b/scripts/check-endpoints.mjs @@ -3,8 +3,8 @@ /** * Community endpoint health checker. * - * Parses the three network MDX pages (mainnet-beta, mocha-testnet, - * arabica-devnet), extracts community endpoints, checks reachability, + * Parses the Mainnet Beta and Mocha network MDX pages, extracts community + * endpoints, checks reachability, * and removes unreachable endpoints from the files. * * Exit codes: @@ -23,7 +23,6 @@ const ROOT = path.resolve(__dirname, ".."); const NETWORK_FILES = [ "app/operate/networks/mainnet-beta/page.mdx", "app/operate/networks/mocha-testnet/page.mdx", - "app/operate/networks/arabica-devnet/page.mdx", ]; const TCP_TIMEOUT_MS = 10_000; @@ -77,7 +76,6 @@ function isOfficialEndpoint(s) { const hostname = getEndpointHost(s); return [ "celestia-mocha.com", - "celestia-arabica-11.com", "celestia.com", "quicknode.com", ].some((suffix) => matchesHostname(hostname, suffix)); @@ -256,65 +254,6 @@ function extractMainnetTableEndpoints(content) { return endpoints; } -/** - * Extract community endpoints from the Arabica table format. - * - * The table has: | Node type | Endpoint type | Endpoint | - */ -function extractArabicaTableEndpoints(content) { - const endpoints = []; - const lines = content.split("\n"); - let inSection = false; - let pastHeader = false; - let endpointKind = "rpc"; - - for (let i = 0; i < lines.length; i++) { - const line = lines[i]; - - if (/^#{2,3}\s+Community RPC endpoints/i.test(line)) { - inSection = true; - pastHeader = false; - continue; - } - if (inSection && /^#{1,3}\s+/.test(line) && !/^#{4,}\s+/.test(line)) { - inSection = false; - continue; - } - if (!inSection) continue; - if (!line.startsWith("|")) continue; - - if (!pastHeader) { - if (/Node type|Endpoint type/i.test(line)) { - pastHeader = true; - } - continue; - } - if (/^\|\s*[-:]+/.test(line)) continue; - - const cells = line - .split("|") - .slice(1, -1) - .map((c) => c.trim()); - if (cells[1]) endpointKind = inferEndpointKind(cells[1], endpointKind); - - // Extract backtick-wrapped endpoints from the row - const endpointEntries = []; - const re = /`([^`]+)`/g; - let match; - while ((match = re.exec(line)) !== null) { - const raw = match[1]; - if (hasTemplateVar(raw) || isOfficialEndpoint(raw)) continue; - // Skip things that aren't endpoints (e.g. "–core.ip string") - if (/^\-\-/.test(raw) || /^celestia\s/.test(raw)) continue; - endpointEntries.push({ raw, endpointKind }); - } - if (endpointEntries.length > 0) { - endpoints.push({ lineIndex: i, line, endpointEntries }); - } - } - return endpoints; -} - // --------------------------------------------------------------------------- // Endpoint → check descriptor // --------------------------------------------------------------------------- @@ -402,9 +341,7 @@ async function main() { const content = await fileHandle.readFile({ encoding: "utf-8" }); const networkName = relPath.includes("mainnet") ? "mainnet-beta" - : relPath.includes("mocha") - ? "mocha-testnet" - : "arabica-devnet"; + : "mocha-testnet"; console.log(`\n=== ${networkName} ===`); @@ -434,22 +371,6 @@ async function main() { }); } } - } else { - // arabica - const rows = extractArabicaTableEndpoints(content); - checkItems = []; - for (const row of rows) { - for (const entry of row.endpointEntries) { - checkItems.push({ - raw: entry.raw, - endpointKind: entry.endpointKind, - lineIndex: row.lineIndex, - line: row.line, - check: resolveCheck(entry.raw, entry.endpointKind), - rowEndpoints: row.endpointEntries.map((ep) => ep.raw), - }); - } - } } if (checkItems.length === 0) { diff --git a/scripts/check-links.mjs b/scripts/check-links.mjs index cf9d037a649..5dfcb29998b 100644 --- a/scripts/check-links.mjs +++ b/scripts/check-links.mjs @@ -172,13 +172,11 @@ let variableContext = {}; try { const mainnetVersions = require('../constants/mainnet_versions.json'); const mochaVersions = require('../constants/mocha_versions.json'); - const arabicaVersions = require('../constants/arabica_versions.json'); const constants = require('../constants/general.json'); variableContext = { mainnetVersions, mochaVersions, - arabicaVersions, constants, }; } catch (e) { diff --git a/scripts/generate-llms.js b/scripts/generate-llms.js index f50e8da87f2..ea1525dcda6 100644 --- a/scripts/generate-llms.js +++ b/scripts/generate-llms.js @@ -13,14 +13,12 @@ const LATEST_OPENRPC_SPEC = '/specs/openrpc-v0.28.4.json'; const require = createRequire(import.meta.url); const mainnetVersions = require('../constants/mainnet_versions.json'); const mochaVersions = require('../constants/mocha_versions.json'); -const arabicaVersions = require('../constants/arabica_versions.json'); const constants = require('../constants/general.json'); // Create a context object with all available variables const variableContext = { mainnetVersions, mochaVersions, - arabicaVersions, constants, }; @@ -28,8 +26,6 @@ const variableContext = { * Safely evaluates a variable expression like: * mainnetVersions['app-latest-tag'] * mochaVersions["node-latest-tag"] - * constants.arabicaChainId - * constants['arabicaChainId'] * * @param {string} expression - The expression to evaluate * @returns {string|null} - The resolved value or null if not found @@ -92,7 +88,7 @@ function replaceVariables(text) { // First replace {{...}} patterns (double braces) text = text.replace(/\{\{([^{}]+)\}\}/g, (match, expression) => { const trimmedExpr = expression.trim(); - if (!/^(mainnetVersions|mochaVersions|arabicaVersions|constants)(?:\[['"][^'"]+['"]\]|\.\w+)$/.test(trimmedExpr)) { + if (!/^(mainnetVersions|mochaVersions|constants)(?:\[['"][^'"]+['"]\]|\.\w+)$/.test(trimmedExpr)) { return match; } @@ -108,7 +104,7 @@ function replaceVariables(text) { // Then replace {expression} patterns (single braces) that match our variable patterns // Be careful to only match patterns that look like variable references - text = text.replace(/\{((?:mainnetVersions|mochaVersions|arabicaVersions|constants)(?:\[['"][^'"]+['"]\]|\.\w+))\}/g, (match, expression) => { + text = text.replace(/\{((?:mainnetVersions|mochaVersions|constants)(?:\[['"][^'"]+['"]\]|\.\w+))\}/g, (match, expression) => { const trimmedExpr = expression.trim(); const resolved = resolveExpression(trimmedExpr);