diff --git a/.github/workflows/tox.yaml b/.github/workflows/tox.yaml
index 3f26e0b..36829d3 100644
--- a/.github/workflows/tox.yaml
+++ b/.github/workflows/tox.yaml
@@ -47,3 +47,34 @@ jobs:
 
     - name: Test
       run: tox -e ${{ steps.tox-env.outputs.tox-env }}
+
+  set_merge_ok:
+    name: Set Merge OK
+    if: always() && !contains(needs.*.result, 'failure') && !contains(needs.*.result, 'cancelled')
+    runs-on: ubuntu-latest
+    needs:
+      - lint
+      - build
+    outputs:
+      merge_ok: ${{ steps.set_merge_ok.outputs.merge_ok }}
+    runs-on: ubuntu-latest
+    steps:
+      - id: set_merge_ok
+        run: echo 'merge_ok=true' >> ${GITHUB_OUTPUT}
+
+  merge_ok:
+    name: Merge OK
+    if: always()
+    needs:
+      - set_merge_ok
+    runs-on: ubuntu-latest
+    steps:
+      - run: |
+          merge_ok="${{ needs.set_merge_ok.outputs.merge_ok }}"
+          if [[ "${merge_ok}" == "true" ]]; then
+            echo "Merge OK"
+            exit 0
+          else
+            echo "Merge NOT OK"
+            exit 1
+          fi