diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 99381fae9ecdc3da399cb4f537c939b3b01d73d8..71518428b945b2d7e15965b793f9d37040b33813 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -21,7 +21,7 @@ workflow:
     - if: $CI_COMMIT_BRANCH
 
 variables:
-  CI_IMAGE: "paritytech/ci-unified:bullseye-1.70.0-2023-05-23-v20230706"
+  CI_IMAGE: !reference [.ci-unified, variables, CI_IMAGE]
   # BUILDAH_IMAGE is defined in group variables
   BUILDAH_COMMAND: "buildah --storage-driver overlay2"
   RELENG_SCRIPTS_BRANCH: "master"
@@ -213,6 +213,10 @@ include:
   - project: parity/infrastructure/ci_cd/shared
     ref: v0.2
     file: /common/timestamp.yml
+  # ci image
+  - project: parity/infrastructure/ci_cd/shared
+    ref: main
+    file: /common/ci-unified.yml
 # This job cancels the whole pipeline if any of provided jobs fail.
 # In a DAG, every jobs chain is executed independently of others. The `fail_fast` principle suggests
 # to fail the pipeline as soon as possible to shorten the feedback loop.
diff --git a/.gitlab/pipeline/test.yml b/.gitlab/pipeline/test.yml
index b29574ad14def157b5d3190632491100e1d20207..3a4f5e71247ca33fa1d3655d1f1a01fd0dffb3bf 100644
--- a/.gitlab/pipeline/test.yml
+++ b/.gitlab/pipeline/test.yml
@@ -23,13 +23,8 @@ test-linux-stable:
     - echo "Node index - ${CI_NODE_INDEX}. Total amount - ${CI_NODE_TOTAL}"
     # add experimental to features after https://github.com/paritytech/substrate/pull/14502 is merged
     # "upgrade_version_checks_should_work" is currently failing
-    # "receive_rate_limit_is_enforced"and "benchmark_block_works" can be found in test-linux-stable-additional-tests
-    # they fail if run with other tests
-    # "rx::tests::sent_views_include_finalized_number_update", "follow_chain_works", "create_snapshot_works" and "block_execution_works"
-    # can be found in test-linux-stable-slow
     - |
       time cargo nextest run \
-        -E 'all() & !test(upgrade_version_checks_should_work) & !test(receive_rate_limit_is_enforced) & !test(benchmark_block_works) & !test(rx::tests::sent_views_include_finalized_number_update) & !test(follow_chain_works) & !test(create_snapshot_works) & !test(block_execution_works)' \
         --workspace \
         --locked \
         --release \
@@ -59,6 +54,22 @@ test-linux-oldkernel-stable:
   tags:
     - oldkernel-vm
 
+# https://github.com/paritytech/ci_cd/issues/864
+test-linux-stable-runtime-benchmarks:
+  stage: test
+  extends:
+    - .docker-env
+    - .common-refs
+    - .run-immediately
+    - .pipeline-stopper-artifacts
+  variables:
+    RUST_TOOLCHAIN: stable
+    # Enable debug assertions since we are running optimized builds for testing
+    # but still want to have debug assertions.
+    RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
+  script:
+    - time cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet
+
 # can be used to run all tests
 # test-linux-stable-all:
 #   stage: test
@@ -85,7 +96,7 @@ test-linux-oldkernel-stable:
 #         --partition count:${CI_NODE_INDEX}/${CI_NODE_TOTAL}
 #     # todo: add flacky-test collector
 
-# for some reasons these tests fail if run with all tests
+# TODO: remove me
 test-linux-stable-additional-tests:
   stage: test
   extends:
@@ -99,31 +110,11 @@ test-linux-stable-additional-tests:
     # but still want to have debug assertions.
     RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
   script:
-    - |
-      time cargo nextest run \
-        -E 'test(receive_rate_limit_is_enforced) + test(benchmark_block_works)' \
-        --workspace \
-        --locked \
-        --release \
-        --features runtime-benchmarks,try-runtime
+    # tests were moved to test-linux-stable
+    # the jobs should be removed
+    - exit 0
 
-# https://github.com/paritytech/ci_cd/issues/864
-test-linux-stable-runtime-benchmarks:
-  stage: test
-  extends:
-    - .docker-env
-    - .common-refs
-    - .run-immediately
-    - .pipeline-stopper-artifacts
-  variables:
-    RUST_TOOLCHAIN: stable
-    # Enable debug assertions since we are running optimized builds for testing
-    # but still want to have debug assertions.
-    RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
-  script:
-    - time cargo nextest run --workspace --features runtime-benchmarks benchmark --locked --cargo-profile testnet
-
-# these ones can be really slow so it's better to run them separately
+# TODO: remove me
 test-linux-stable-slow:
   stage: test
   # remove after cache is setup
@@ -139,14 +130,9 @@ test-linux-stable-slow:
     # but still want to have debug assertions.
     RUSTFLAGS: "-Cdebug-assertions=y -Dwarnings"
   script:
-    - |
-      time cargo nextest run \
-        -E 'test(rx::tests::sent_views_include_finalized_number_update) + test(follow_chain_works) + test(create_snapshot_works) + test(block_execution_works)' \
-        --workspace \
-        --locked \
-        --release \
-        --features runtime-benchmarks,try-runtime
-  allow_failure: true
+    # tests were moved to test-linux-stable
+    # the jobs should be removed
+    - exit 0
 
 # takes about 1,5h without cache
 # can be used to check that nextest works correctly