From 579e8af12b226897136338ff68cbb56407cbf019 Mon Sep 17 00:00:00 2001 From: alexander-sei Date: Wed, 3 Jun 2026 14:49:59 +0300 Subject: [PATCH] docs: fix broken external links (#20) Resolves the 23 broken-link errors flagged by the weekly lychee check. Genuinely dead links, repointed to live targets: - ai/x402.mdx: the sei-js.docs.sei.io subdomain was decommissioned (now 301s to docs.sei.io without the x402 pages). Repoint the 6 package links to their npm pages and the concept links to the canonical sei-protocol/sei-x402 repo docs. - evm/usdc-on-sei.mdx: the Replit CCTP template 404s; repoint to Circle's maintained circlefin/circle-cctp-crosschain-transfer sample app. False positives (live sites that block automated checkers), handled in lychee.toml: - Accept 405 for JSON-RPC endpoints like evm-rpc.sei-apis.com that reject the checker's GET but are alive. - Exclude silostaking.io (402 to bots), dashboard.pimlico.io (404 to bots), and blog.thirdweb.com (cert chain lychee's TLS rejects). Verified with lychee 0.24.2 against all previously-failing files: 0 errors. Co-Authored-By: Claude Opus 4.8 --- ai/x402.mdx | 24 ++++++++++++------------ evm/usdc-on-sei.mdx | 2 +- lychee.toml | 13 +++++++++++-- 3 files changed, 24 insertions(+), 15 deletions(-) diff --git a/ai/x402.mdx b/ai/x402.mdx index 3d9bf97..7c4efce 100644 --- a/ai/x402.mdx +++ b/ai/x402.mdx @@ -30,23 +30,23 @@ The x402 protocol enables a wide range of monetization strategies for web servic ## sei-js Integration -The `sei-js` library provides a suite of packages to simplify working with x402 on Sei. You can find more details in the [sei-js x402 documentation](https://sei-js.docs.sei.io/x402/introduction). +The `sei-js` library provides a suite of packages to simplify working with x402 on Sei. You can find more details in the [sei-js x402 repository](https://github.com/sei-protocol/sei-x402). ### Core Concepts -- [**Protocol Overview**](https://sei-js.docs.sei.io/x402/overview): Learn about the architecture of x402. -- [**Quickstart Guide**](https://sei-js.docs.sei.io/x402/quickstart): Build your first paid API. -- [**Facilitators**](https://sei-js.docs.sei.io/x402/facilitators/introduction): Understanding payment facilitators. -- [**Client Integration**](https://sei-js.docs.sei.io/x402/clients/fetch): How to integrate x402 in your frontend. +- [**Protocol Overview**](https://github.com/sei-protocol/sei-x402/blob/main/docs/core-concepts/client-server.md): Learn about the architecture of x402. +- [**Quickstart Guide**](https://github.com/sei-protocol/sei-x402/blob/main/docs/getting-started/quickstart-for-sellers.md): Build your first paid API. +- [**Facilitators**](https://github.com/sei-protocol/sei-x402/blob/main/docs/core-concepts/facilitator.md): Understanding payment facilitators. +- [**Client Integration**](https://github.com/sei-protocol/sei-x402/blob/main/docs/getting-started/quickstart-for-buyers.md): How to integrate x402 in your frontend. ### Available Packages -- [**x402**](https://sei-js.docs.sei.io/x402/packages/x402): The core protocol implementation. -- [**x402-fetch**](https://sei-js.docs.sei.io/x402/packages/x402-fetch): A fetch wrapper for making x402-compliant requests. -- [**x402-axios**](https://sei-js.docs.sei.io/x402/packages/x402-axios): Axios interceptors for x402 payments. -- [**x402-express**](https://sei-js.docs.sei.io/x402/packages/x402-express): Express middleware for serving paid content. -- [**x402-hono**](https://sei-js.docs.sei.io/x402/packages/x402-hono): Middleware for Hono applications. -- [**x402-next**](https://sei-js.docs.sei.io/x402/packages/x402-next): Components and utilities for Next.js applications. +- [**x402**](https://www.npmjs.com/package/@sei-js/x402): The core protocol implementation. +- [**x402-fetch**](https://www.npmjs.com/package/@sei-js/x402-fetch): A fetch wrapper for making x402-compliant requests. +- [**x402-axios**](https://www.npmjs.com/package/@sei-js/x402-axios): Axios interceptors for x402 payments. +- [**x402-express**](https://www.npmjs.com/package/@sei-js/x402-express): Express middleware for serving paid content. +- [**x402-hono**](https://www.npmjs.com/package/@sei-js/x402-hono): Middleware for Hono applications. +- [**x402-next**](https://www.npmjs.com/package/@sei-js/x402-next): Components and utilities for Next.js applications. These packages help streamline both the client-side (paying) and server-side (charging) aspects of the protocol. @@ -416,5 +416,5 @@ Please try again or check your wallet balance for USDC tokens needed for the pay ## Tutorials & Resources -- **[Sei-js X402 Documentation](https://sei-js.docs.sei.io/x402/introduction)**: Comprehensive guide on using the x402 protocol with the sei-js library, including package details and examples. +- **[Sei-js X402 Repository](https://github.com/sei-protocol/sei-x402)**: Comprehensive guide on using the x402 protocol with the sei-js library, including package details and examples. - **[AxiomKit X402 Demo Repository](https://github.com/AxiomKit/axiomkit-showcase)**: The complete source code for the Axiom integration demo used in this guide, including installation and configuration instructions. diff --git a/evm/usdc-on-sei.mdx b/evm/usdc-on-sei.mdx index e39d487..887d480 100644 --- a/evm/usdc-on-sei.mdx +++ b/evm/usdc-on-sei.mdx @@ -22,7 +22,7 @@ This guide walks you through building a standalone index.js script using **Viem* - Node.js v18+ with "type": "module" in package.json - viem and dotenv installed - Sei wallet with USDC and SEI for gas on your selected network (default: testnet). -- To get testnet USDC on Sei, use the [Circle Faucet](https://faucet.circle.com) or use [Circle’s CCTP v2](https://replit.com/@buildoncircle/cctp-v2-web-app?v=1#README.md) Sample application to transfer USDC cross-chain to your Sei wallet. +- To get testnet USDC on Sei, use the [Circle Faucet](https://faucet.circle.com) or use [Circle’s CCTP v2](https://github.com/circlefin/circle-cctp-crosschain-transfer) Sample application to transfer USDC cross-chain to your Sei wallet. - Private key and recipient address stored in a .env file - Optional: set `SEI_NETWORK=testnet|mainnet` (defaults to `testnet`) diff --git a/lychee.toml b/lychee.toml index 0d86963..4946bef 100644 --- a/lychee.toml +++ b/lychee.toml @@ -21,8 +21,10 @@ timeout = 20 # A real browser UA avoids naive bot-blocks. user_agent = "Mozilla/5.0 (compatible; lychee link checker; +https://github.com/sei-protocol/sei-docs)" -# Treat rate-limiting / bot-challenge responses as OK rather than broken. -accept = ["200..=206", "301", "302", "304", "403", "429"] +# Treat rate-limiting / bot-challenge responses as OK rather than broken. 405 +# (Method Not Allowed) covers JSON-RPC endpoints like evm-rpc.sei-apis.com that +# reject the checker's GET but are very much alive. +accept = ["200..=206", "301", "302", "304", "403", "405", "429"] # Don't flag these — local/example hosts and domains that hard-block automated # requests (so a failure here is a false positive, not real rot). @@ -39,6 +41,13 @@ exclude = [ "^https?://(www\\.)?linkedin\\.com", "^https?://(www\\.)?reddit\\.com", "^https?://(t\\.me|discord\\.gg|discord\\.com)", + # Live sites that hard-block automated checkers (verified reachable in a browser): + # silostaking.io → 402 Payment Required to bots + # dashboard.pimlico.io → 404 to bots (client-rendered app shell) + # blog.thirdweb.com → cert chain rejected by lychee's TLS, fine in browsers + "^https?://(www\\.)?silostaking\\.io", + "^https?://dashboard\\.pimlico\\.io", + "^https?://blog\\.thirdweb\\.com", ] # Don't check mailto: links (this is the default; set explicitly for clarity).