crypto fix
All checks were successful
Deploy / build-deploy (push) Successful in 2m26s

This commit is contained in:
Jorijn van der Graaf 2026-08-20 00:09:08 +02:00
commit 47d302a9a4
4 changed files with 364 additions and 39 deletions

View file

@ -88,12 +88,27 @@ if [ -n "$CHAINS_SRC" ]; then
[ -r "$CHAINS_SRC" ] || { echo "enable-eurc: cannot read chains file '$CHAINS_SRC'" >&2; exit 1; }
cp "$CHAINS_SRC" "$WORK/chains.json"
else
# Several endpoints per chain, from DIFFERENT operators, because a payment
# is confirmed only when min_confirmations of them independently agree that
# the money is there — no single node's word settles an order. Base gets
# three (Coinbase's own, Allnodes, Automata) so one being down still leaves
# a quorum; Ethereum gets two. All five were checked to answer
# eth_chainId AND a balanceOf eth_call at block_tag=finalized, which is
# what this rail actually asks of them (Cloudflare's endpoint refuses
# finalized eth_call, which is why it is not here).
cat > "$WORK/chains.json" <<'JSON'
{"chains": [
{"name": "base", "rpc": "https://mainnet.base.org",
{"name": "base",
"rpcs": ["https://mainnet.base.org",
"https://base-rpc.publicnode.com",
"https://1rpc.io/base"],
"min_confirmations": 2,
"contract": "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
"chain_id": 8453, "note": "lowest network fees"},
{"name": "ethereum", "rpc": "https://ethereum-rpc.publicnode.com",
{"name": "ethereum",
"rpcs": ["https://ethereum-rpc.publicnode.com",
"https://1rpc.io/eth"],
"min_confirmations": 2,
"contract": "0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c",
"chain_id": 1}
]}
@ -108,6 +123,8 @@ fi
if [ "$ASSUME_YES" -eq 0 ]; then
echo "About to install these chains ($COUNT addresses in the pool):"
sed 's/^/ /' "$WORK/chains.json"
echo "Each chain lists several independent endpoints; a payment settles only"
echo "when min_confirmations of them agree, so no single node can fake one."
echo "Verify every contract against Circle's list — the only source that counts:"
echo " $CIRCLE_URL"
printf 'Contracts verified? Type yes to continue: '