diff --git a/.github/workflows/fix-index-html-once.yml b/.github/workflows/fix-index-html-once.yml
new file mode 100644
index 0000000..f672818
--- /dev/null
+++ b/.github/workflows/fix-index-html-once.yml
@@ -0,0 +1,35 @@
+name: Caterium One-Time HTML Repair
+on:
+ push:
+ branches: ["fix/html-integrity-v1774"]
+permissions:
+ contents: write
+concurrency:
+ group: caterium-html-repair-v1774
+ cancel-in-progress: false
+jobs:
+ repair:
+ if: ${{ !contains(github.event.head_commit.message, '[html-repair]') }}
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ with:
+ ref: fix/html-integrity-v1774
+ fetch-depth: 0
+ - uses: actions/setup-node@v4
+ with:
+ node-version: 22
+ - run: node scripts/fix-index-html-once.mjs
+ - name: Commit repaired index
+ shell: bash
+ run: |
+ set -euo pipefail
+ if git diff --quiet -- public/index.html; then
+ echo "No index change required"
+ exit 0
+ fi
+ git config user.name "github-actions[bot]"
+ git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
+ git add public/index.html
+ git commit -m "fix: close mobile style block [html-repair]"
+ git push origin HEAD:fix/html-integrity-v1774