From 7d0da8d51fb2f858d31ab75b0129adf9b922f184 Mon Sep 17 00:00:00 2001 From: "prompt.ac/@jeffrey" Date: Tue, 16 Jun 2026 18:08:40 -0700 Subject: [PATCH] keeps: switch dead ecadinfra RPC to Foundation tzbeta / teztnets mainnet.ecadinfra.com no longer resolves (getaddrinfo ENOTFOUND), failing the on-chain mint step. Match tezos/keeps.mjs's already-fixed endpoints: mainnet -> https://rpc.tzbeta.net (verified live) ghostnet -> https://rpc.ghostnet.teztnets.com Updated keep-prepare-background, keep-mint, keep-update, keeps-config. Co-Authored-By: Claude Opus 4.8 --- system/netlify/functions/keep-mint.mjs | 4 ++-- system/netlify/functions/keep-prepare-background.mjs | 4 ++-- system/netlify/functions/keep-update.mjs | 4 ++-- system/netlify/functions/keeps-config.mjs | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/system/netlify/functions/keep-mint.mjs b/system/netlify/functions/keep-mint.mjs index af7ee681cc..26002a174e 100644 --- a/system/netlify/functions/keep-mint.mjs +++ b/system/netlify/functions/keep-mint.mjs @@ -39,8 +39,8 @@ const NETWORK = process.env.TEZOS_NETWORK || "mainnet"; const OVEN_URL = process.env.OVEN_URL || "https://oven.aesthetic.computer"; const OVEN_FALLBACK_URL = "https://oven.aesthetic.computer"; // Always available fallback const RPC_URL = NETWORK === "mainnet" - ? "https://mainnet.ecadinfra.com" - : "https://ghostnet.ecadinfra.com"; + ? "https://rpc.tzbeta.net" + : "https://rpc.ghostnet.teztnets.com"; // IPFS Gateway configuration // When USE_GATEWAY_URLS is true, metadata will use full HTTPS URLs instead of ipfs:// URIs diff --git a/system/netlify/functions/keep-prepare-background.mjs b/system/netlify/functions/keep-prepare-background.mjs index 9822cf8fa6..31dc2575db 100644 --- a/system/netlify/functions/keep-prepare-background.mjs +++ b/system/netlify/functions/keep-prepare-background.mjs @@ -36,8 +36,8 @@ const NETWORK = process.env.TEZOS_NETWORK || "mainnet"; const OVEN_URL = process.env.OVEN_URL || "https://oven.aesthetic.computer"; const OVEN_FALLBACK_URL = "https://oven.aesthetic.computer"; const RPC_URL = NETWORK === "mainnet" - ? "https://mainnet.ecadinfra.com" - : "https://ghostnet.ecadinfra.com"; + ? "https://rpc.tzbeta.net" + : "https://rpc.ghostnet.teztnets.com"; const VERSION_BY_PROFILE = { v11: "11.0.0", diff --git a/system/netlify/functions/keep-update.mjs b/system/netlify/functions/keep-update.mjs index e0000e591b..32197b01fe 100644 --- a/system/netlify/functions/keep-update.mjs +++ b/system/netlify/functions/keep-update.mjs @@ -24,8 +24,8 @@ if (dev) { const NETWORK = process.env.TEZOS_NETWORK || "mainnet"; const TZKT_API = NETWORK === "mainnet" ? "https://api.tzkt.io/v1" : `https://api.${NETWORK}.tzkt.io/v1`; const RPC_URL = NETWORK === "mainnet" - ? "https://mainnet.ecadinfra.com" - : "https://ghostnet.ecadinfra.com"; + ? "https://rpc.tzbeta.net" + : "https://rpc.ghostnet.teztnets.com"; // Helper to convert string to bytes (for Tezos metadata) function stringToBytes(str) { diff --git a/system/netlify/functions/keeps-config.mjs b/system/netlify/functions/keeps-config.mjs index 93b7aa187e..046260fe56 100644 --- a/system/netlify/functions/keeps-config.mjs +++ b/system/netlify/functions/keeps-config.mjs @@ -66,7 +66,7 @@ function resolveVersion(secretDoc, profile, network) { } function rpcForNetwork(network) { - return network === "mainnet" ? "https://mainnet.ecadinfra.com" : "https://ghostnet.ecadinfra.com"; + return network === "mainnet" ? "https://rpc.tzbeta.net" : "https://rpc.ghostnet.teztnets.com"; } function tzktForNetwork(network) { -- 2.51.2