diff --git a/.gitlab/ci/rules.gitlab-ci.yml b/.gitlab/ci/rules.gitlab-ci.yml
index f609336b5198ae0e3681fb4f0a3ce005203c3cc9..b88498c8692034f7349d8a3e7cd1efe96301f4d0 100644
--- a/.gitlab/ci/rules.gitlab-ci.yml
+++ b/.gitlab/ci/rules.gitlab-ci.yml
@@ -955,18 +955,26 @@
     - <<: *if-default-branch-schedule-nightly  # already executed in the 2-hourly schedule
       when: never
     - <<: *if-default-branch-refs
+    - <<: *if-merge-request-labels-run-all-e2e
+    - <<: *if-merge-request-labels-run-cs-evaluation
+    - <<: *if-force-ci
+      when: manual
+    # The rest is included to be consistent with .qa:rules:e2e:test-on-gdk
+    # Run tests automatically for MRs that touch QA files
     - <<: *if-merge-request
-      changes: *gdk-component-patterns
-    # The rest are included to be consistent with .qa:rules:e2e:test-on-gdk
+      changes: *qa-patterns
+    # Otherwise, only run tests after the MR is approved
+    - <<: *if-merge-request-not-approved
+      when: never
     - <<: *if-merge-request-targeting-stable-branch
       changes: *setup-test-env-patterns
     - <<: *if-ruby-branch
     # We include the job under the matching conditions below, but unlike in .qa:rules:e2e:test-on-gdk we don't need to
     # set OMNIBUS_GITLAB_BUILD_ON_ALL_OS when testing against GDK
+    - <<: *if-merge-request
+      changes: *gdk-component-patterns
     - <<: *if-merge-request
       changes: *dependency-patterns
-    - <<: *if-merge-request-labels-run-all-e2e
-    - <<: *if-merge-request-labels-run-cs-evaluation
     - <<: *if-merge-request
       changes: *feature-flag-development-config-patterns
     - <<: *if-merge-request
@@ -979,8 +987,6 @@
       changes: *code-patterns
     - <<: *if-merge-request
       changes: *code-qa-patterns
-    - <<: *if-force-ci
-      when: manual
 
 .build-images:rules:build-assets-image:
   rules:
@@ -1667,6 +1673,8 @@
     - <<: *if-fork-merge-request
       when: never
     - <<: *if-merge-request-labels-run-cs-evaluation
+    - <<: *if-merge-request-not-approved
+      when: never
 
 .qa:rules:code-suggestions-eval:
   rules: