diff --git a/.github/filters.yml b/.github/filters.yml
index 2b7f50af1aeee4bfefca770a2dccddcf7ae88f2f..3b145fd94acf8b78014ebe6feb3136b71ae94294 100644
--- a/.github/filters.yml
+++ b/.github/filters.yml
@@ -222,7 +222,6 @@
     "targets/targets.mk",
     "targets/x86.inc",
     "contrib/ci/minimal-site/**",
-    "contrib/docker/Dockerfile",
     "package/**"
   ],
   "bcm27xx-bcm2710": [
diff --git a/.github/workflows/check-ci.yml b/.github/workflows/check-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..795d05b4006d131d0f9ebdf69dda9d1021c86335
--- /dev/null
+++ b/.github/workflows/check-ci.yml
@@ -0,0 +1,22 @@
+name: Check generated CI
+on:
+  push:
+  pull_request:
+    types: [opened, synchronize, reopened]
+permissions:
+  contents: read
+
+jobs:
+  check-ci:
+    name: Check generated CI
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v4
+      - name: Install example site
+        run: ln -s ./docs/site-example ./site
+      - name: Update CI
+        run: make update-ci
+      - name: Show diff
+        run: git status; git diff
+      - name: Patch status
+        run: git diff-files --quiet