From b8652329f1da08c74a880404d081ad93fbddb76c Mon Sep 17 00:00:00 2001 From: tattarw <61598610+tattarw@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:25:54 +0000 Subject: [PATCH 1/5] ci: add .github/workflows/ci.yml --- .github/workflows/ci.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..8027008 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,18 @@ +name: ci +on: + push: + branches: [main] + pull_request: +permissions: + contents: read +jobs: + link-check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Markdown link check + uses: gaurav-nelson/github-action-markdown-link-check@v1 + with: + use-quiet-mode: 'yes' + use-verbose-mode: 'yes' + config-file: '.github/mlc_config.json' From 70a5fa9d0d398b2e97786b0b4271b697b223e9c0 Mon Sep 17 00:00:00 2001 From: tattarw <61598610+tattarw@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:25:56 +0000 Subject: [PATCH 2/5] ci: add .github/mlc_config.json --- .github/mlc_config.json | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .github/mlc_config.json diff --git a/.github/mlc_config.json b/.github/mlc_config.json new file mode 100644 index 0000000..1e0040b --- /dev/null +++ b/.github/mlc_config.json @@ -0,0 +1,11 @@ +{ + "ignorePatterns": [ + { "pattern": "^http://localhost" }, + { "pattern": "^http://127\\.0\\.0\\.1" } + ], + "timeout": "10s", + "retryOn429": true, + "retryCount": 2, + "fallbackRetryDelay": "30s", + "aliveStatusCodes": [200, 206, 301, 302, 403, 429] +} From 7b30c8d94c9480d0edebf9eeb8a9d1d12848f9c1 Mon Sep 17 00:00:00 2001 From: tattarw <61598610+tattarw@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:27:28 +0000 Subject: [PATCH 3/5] ci: add .github/workflows/ci.yml From 9ff5719a25d5113e7a7f7103c69b28bb9b58a3ab Mon Sep 17 00:00:00 2001 From: tattarw <61598610+tattarw@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:27:29 +0000 Subject: [PATCH 4/5] ci: add .github/mlc_config.json From 97aa074c3a9d820c95113f42e5b23eaa8f853e6a Mon Sep 17 00:00:00 2001 From: tattarw <61598610+tattarw@users.noreply.github.com> Date: Wed, 10 Jun 2026 08:29:37 +0000 Subject: [PATCH 5/5] ci: make link check informational + add UTF-8 sanity gate --- .github/workflows/ci.yml | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 8027008..08e07f1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,9 +10,25 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - - name: Markdown link check + - name: Markdown link check (informational) + continue-on-error: true uses: gaurav-nelson/github-action-markdown-link-check@v1 with: use-quiet-mode: 'yes' use-verbose-mode: 'yes' config-file: '.github/mlc_config.json' + - name: Markdown syntax sanity + shell: bash + run: | + # Every .md must be readable UTF-8 and contain at least 1 byte. + set -e + shopt -s globstar nullglob + fail=0 + for f in **/*.md *.md; do + [ -f "$f" ] || continue + if [ ! -s "$f" ]; then echo "EMPTY: $f"; fail=1; continue; fi + if ! python3 -c "open('$f',encoding='utf-8').read()" 2>/dev/null; then + echo "NOT-UTF8: $f"; fail=1 + fi + done + exit $fail