diff --git a/apps/developer-hub/content/docs/price-feeds/core/contract-addresses/evm.mdx b/apps/developer-hub/content/docs/price-feeds/core/contract-addresses/evm.mdx
index 76932a65d8..e3db6e81c5 100644
--- a/apps/developer-hub/content/docs/price-feeds/core/contract-addresses/evm.mdx
+++ b/apps/developer-hub/content/docs/price-feeds/core/contract-addresses/evm.mdx
@@ -101,6 +101,7 @@ Pyth is currently available on the EVM networks below using Pyth Stable price so
| Ble testnet | |
| Boba Sepolia (testnet) | |
| Celo Alfajores (testnet) | |
+| Celo Sepolia (testnet) | |
| Chiado (Gnosis testnet) | |
| Chiliz testnet | |
| Conflux eSpace testnet | |
diff --git a/apps/developer-hub/content/docs/price-feeds/pro/payload-reference.mdx b/apps/developer-hub/content/docs/price-feeds/pro/payload-reference.mdx
index b9519ad37d..ac9ddc1bee 100644
--- a/apps/developer-hub/content/docs/price-feeds/pro/payload-reference.mdx
+++ b/apps/developer-hub/content/docs/price-feeds/pro/payload-reference.mdx
@@ -239,13 +239,13 @@ Based on the [API documentation](https://pyth-lazer.dourolabs.app/docs), you can
Pyth Pro offers multiple delivery channels to match your latency and frequency requirements:
-| Channel | Description | Use Cases |
-| ------------------ | ---------------------------------------------------------------------------------------------- | ------------------------------------------- |
-| `real_time` | Updates sent immediately when new price is available (no faster than 1ms, no slower than 50ms) | High-frequency trading, real-time analytics |
-| `fixed_rate@1ms` | Updates every 1 millisecond | Ultra-low latency applications |
-| `fixed_rate@50ms` | Updates every 50 milliseconds | Low-latency trading systems |
-| `fixed_rate@200ms` | Updates every 200 milliseconds | Standard trading applications |
-| `fixed_rate@1000ms` | Updates every 1 second | General applications, dashboards |
+| Channel | Description | Use Cases |
+| ------------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------------- |
+| `real_time` | Updates sent immediately when new price is available (no faster than 1ms, no slower than 50ms) | High-frequency trading, real-time analytics |
+| `fixed_rate@1ms` | Updates every 1 millisecond | Ultra-low latency applications |
+| `fixed_rate@50ms` | Updates every 50 milliseconds | Low-latency trading systems |
+| `fixed_rate@200ms` | Updates every 200 milliseconds | Standard trading applications |
+| `fixed_rate@1000ms` | Updates every 1 second | General applications, dashboards |
## Signature Schemes and Binary Formats
diff --git a/contract_manager/scripts/common.ts b/contract_manager/scripts/common.ts
index 2e4f74ab57..bcf8e93ed1 100644
--- a/contract_manager/scripts/common.ts
+++ b/contract_manager/scripts/common.ts
@@ -14,7 +14,7 @@ import { existsSync, readFileSync, writeFileSync } from "node:fs";
import path from "node:path";
import Web3 from "web3";
-import { Contract } from "web3-eth-contract";
+import type { Contract } from "web3-eth-contract";
import type { InferredOptionType } from "yargs";
import type { PrivateKey } from "../src/core/base";
diff --git a/contract_manager/src/store/chains/EvmChains.json b/contract_manager/src/store/chains/EvmChains.json
index 680556f271..b4141292b4 100644
--- a/contract_manager/src/store/chains/EvmChains.json
+++ b/contract_manager/src/store/chains/EvmChains.json
@@ -1384,5 +1384,12 @@
"rpcUrl": "https://subnets.avax.network/orange/mainnet/rpc",
"networkId": 1510,
"type": "EvmChain"
+ },
+ {
+ "id": "celo_sepolia_testnet",
+ "mainnet": false,
+ "rpcUrl": "https://forno.celo-sepolia.celo-testnet.org",
+ "networkId": 11142220,
+ "type": "EvmChain"
}
]
diff --git a/contract_manager/src/store/contracts/EvmPriceFeedContracts.json b/contract_manager/src/store/contracts/EvmPriceFeedContracts.json
index 27df5c5ff4..8a1dac1c31 100644
--- a/contract_manager/src/store/contracts/EvmPriceFeedContracts.json
+++ b/contract_manager/src/store/contracts/EvmPriceFeedContracts.json
@@ -913,5 +913,10 @@
"chain": "orange",
"address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
"type": "EvmPriceFeedContract"
+ },
+ {
+ "chain": "celo_sepolia_testnet",
+ "address": "0x2880aB155794e7179c9eE2e38200202908C17B43",
+ "type": "EvmPriceFeedContract"
}
]
\ No newline at end of file
diff --git a/contract_manager/src/store/contracts/EvmWormholeContracts.json b/contract_manager/src/store/contracts/EvmWormholeContracts.json
index 2d79485ca9..34e33d34b7 100644
--- a/contract_manager/src/store/contracts/EvmWormholeContracts.json
+++ b/contract_manager/src/store/contracts/EvmWormholeContracts.json
@@ -923,5 +923,10 @@
"chain": "orange",
"address": "0xb27e5ca259702f209a29225d0eDdC131039C9933",
"type": "EvmWormholeContract"
+ },
+ {
+ "chain": "celo_sepolia_testnet",
+ "address": "0xb27e5ca259702f209a29225d0eDdC131039C9933",
+ "type": "EvmWormholeContract"
}
]
\ No newline at end of file
diff --git a/governance/xc_admin/packages/xc_admin_common/src/chains.ts b/governance/xc_admin/packages/xc_admin_common/src/chains.ts
index ee767504ba..9da975939c 100644
--- a/governance/xc_admin/packages/xc_admin_common/src/chains.ts
+++ b/governance/xc_admin/packages/xc_admin_common/src/chains.ts
@@ -266,6 +266,7 @@ export const RECEIVER_CHAINS = {
hoodi: 50134, // Ethereum hoodi, the new Ethereum testnet
taiko_hoodi: 50135,
morph_hoodi: 50136,
+ celo_sepolia_testnet: 50137,
};
// If there is any overlapping value the receiver chain will replace the wormhole
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1743627efc..5f3c1862ac 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -2844,6 +2844,9 @@ importers:
ts-node:
specifier: 'catalog:'
version: 10.9.2(@swc/core@1.15.3)(@types/node@22.14.0)(typescript@5.9.3)
+ tsx:
+ specifier: 'catalog:'
+ version: 4.20.6
web3:
specifier: ^1.2.2
version: 1.10.4(bufferutil@4.0.7)(encoding@0.1.13)(utf-8-validate@6.0.3)
@@ -17758,6 +17761,7 @@ packages:
next@15.5.7:
resolution: {integrity: sha512-+t2/0jIJ48kUpGKkdlhgkv+zPTEOoXyr60qXe68eB/pl3CMJaLeIGjzp5D6Oqt25hCBiBTt8wEeeAzfJvUKnPQ==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
+ deprecated: This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/CVE-2025-66478 for more details.
hasBin: true
peerDependencies:
'@opentelemetry/api': ^1.1.0
diff --git a/target_chains/ethereum/contracts/deploy.sh b/target_chains/ethereum/contracts/deploy.sh
index 0f2880bc18..1f7469add9 100755
--- a/target_chains/ethereum/contracts/deploy.sh
+++ b/target_chains/ethereum/contracts/deploy.sh
@@ -44,7 +44,7 @@ pnpm turbo build --filter @pythnetwork/pyth-evm-contract
echo "=========== Deploying the contracts ==========="
-pnpm --filter=@pythnetwork/contract-manager exec ts-node scripts/deploy_evm_pricefeed_contracts.ts --std-output-dir $stdoutputdir --private-key $PK --chain "$@"
+pnpm --filter=@pythnetwork/contract-manager exec tsx scripts/deploy_evm_pricefeed_contracts.ts --std-output-dir $stdoutputdir --private-key $PK --chain "$@"
echo "=========== Cleaning up ==========="
if [ -n "${tmpdir:-}" ]; then
diff --git a/target_chains/ethereum/contracts/package.json b/target_chains/ethereum/contracts/package.json
index ee5b3a45bd..eb7e38ac80 100644
--- a/target_chains/ethereum/contracts/package.json
+++ b/target_chains/ethereum/contracts/package.json
@@ -30,11 +30,11 @@
"@matterlabs/hardhat-zksync": "^1.1.0",
"@matterlabs/hardhat-zksync-deploy": "^0.6.6",
"@matterlabs/hardhat-zksync-solc": "^0.3.14",
+ "@nomad-xyz/excessively-safe-call": "^0.0.1-rc.1",
"@nomiclabs/hardhat-etherscan": "^3.1.7",
"@openzeppelin/contracts": "=4.8.1",
"@openzeppelin/contracts-upgradeable": "=4.8.1",
"@openzeppelin/hardhat-upgrades": "^1.22.1",
- "@nomad-xyz/excessively-safe-call": "^0.0.1-rc.1",
"@pythnetwork/contract-manager": "workspace:*",
"@pythnetwork/entropy-sdk-solidity": "workspace:*",
"@pythnetwork/pulse-sdk-solidity": "workspace:*",
@@ -49,6 +49,7 @@
"lodash": "^4.17.21",
"solc": "0.8.4",
"ts-node": "catalog:",
+ "tsx": "catalog:",
"web3": "^1.2.2",
"web3-eth-abi": "^1.2.2",
"web3-utils": "^1.2.2",