Skip to content

docs(partners): link provider address catalogs instead of hardcoding partner contract addresses - #2278

Merged
GigaHierz merged 2 commits into
mainfrom
GigaHierz/2277-partner-addresses
Aug 26, 2026
Merged

docs(partners): link provider address catalogs instead of hardcoding partner contract addresses#2278
GigaHierz merged 2 commits into
mainfrom
GigaHierz/2277-partner-addresses

Conversation

@GigaHierz

Copy link
Copy Markdown
Contributor

The hole, and the fix

Partner contract addresses hardcoded in our pages rot invisibly — nothing watches on-chain activity. Verified via Blockscout on 2026-08-24: the Witnet price-feed proxy we list (0x1111AbA2…) has been quiet on mainnet since 2026-01-23 while another WitnetProxy (0x3210564c…) has posted daily since and is active today; of the two Witnet randomness contracts, the newer WitRandomnessV3's last recorded tx (2026-02-27) predates WitnetRandomnessV2's (2026-04-22) — which one is canonical is the provider's call, not ours. Both benchmarked docs sets already avoid this class of bug: Optimism's oracles page links each provider's own address catalog; Base lists no partner addresses at all. Our Chainlink / RedStone / Supra / DIA / Quex pages already carry zero addresses — Witnet and Band were the outliers.

Changes (3 of the 6 pages inventoried in #2277 needed edits):

  • tooling/oracles/wit-oracle.mdx — both address blocks (price-feed proxy incl. the hardcoded address in the code sample, and randomness) replaced with links to Witnet's canonical pages (Celo price feeds, randomness contract addresses, feeds.witnet.io/celo — all returned 200 today). The retired-Alfajores bullets went with them.
  • tooling/oracles/band-protocol.mdx — the two inline literals dropped; the text already told readers to check Band's page for the current address, now it only does that.
  • build-on-celo/build-with-farcaster.mdx — the swap example's router 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D is Ethereum's Uniswap V2 router; eth_getCode on Celo mainnet returns 0 bytes, so the example as written could not work. Replaced with a placeholder + link to Uniswap contracts on Celo and a Warning that the ABI must match a router actually deployed on Celo (v3/v4). The two Anvil test recipients are now labelled // example recipient — replace.

Reviewed, deliberately unchanged (the other 3 pages from the inventory): build-with-usat.mdx (USA₮ token 0xD2ab… + adapter 0x0357… are Celo fee-allowlist entries; the adapter was verified in the on-chain FeeCurrencyDirectory in #2273's evidence), nightfall.mdx (CELO token-duality address, Sepolia USD₮ matching fee-currencies.mdx:74, and a clearly-scoped example variable), ledger/to-celo-cli.mdx (0x…0001 test recipient in a test command).

The policy sentence itself ("partner addresses live with the provider; Celo-core tables stay; example addresses are labelled") is added to AGENTS.md as a commit on #2269, where that file is already under review.

What this does NOT do / residual risk

Judgement calls

Issues

Refs #2277 — closes the three-page fix and the three-page review; the AGENTS.md box closes when #2269 merges; the "#2253 waits" note is already posted.

Stacking / conflicts

Branched off main, independent of my other open PRs (none touches these three files). The AGENTS.md policy commit rides on #2269.

Verification evidence

Blockscout api/v2, 2026-08-24:
0x1111AbA2… WitnetProxy        last tx 2026-01-23   (the address we listed)
0x3210564c… WitnetProxy        last tx 2026-08-24   (active; not listed by us)
0xC0FFEE98… WitnetRandomnessV2 last tx 2026-04-22
0xc0ffee69… WitRandomnessV3    last tx 2026-02-27
eth_getCode 0x7a250d…88D on https://forno.celo.org -> 0 bytes
$ grep -rn '0x1111AbA2\|0xC0FFEE98\|0x8c064bCf\|0xDA7a001b\|0x7a250d56' <the three pages>
(none)
$ mint broken-links   # on e3eed36d
success no broken links found

All five provider-catalog URLs linked returned 200 today.

Remaining ops steps

  • none

Checklist

  • Title is the commit message I want on main
  • Every claim above measured (Blockscout / eth_getCode / curl), commands in evidence
  • mint broken-links passes
  • Judgement calls flagged above
  • No secrets in the diff

…partner contract addresses

Witnet and Band pages linked stale/rotating addresses; the Farcaster swap example used Ethereum's Uniswap V2 router, which has no code on Celo. Replace hardcoded partner addresses with links to the providers' canonical catalogs, placeholder-and-link for the router, and label example recipient addresses.

Refs #2277

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@GigaHierz
GigaHierz requested a review from palango August 25, 2026 11:56
@GigaHierz
GigaHierz enabled auto-merge (squash) August 26, 2026 12:22
@GigaHierz
GigaHierz merged commit ea9ba97 into main Aug 26, 2026
4 checks passed
@GigaHierz
GigaHierz deleted the GigaHierz/2277-partner-addresses branch August 26, 2026 12:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants