diff --git a/.gitlab/pipeline/test.yml b/.gitlab/pipeline/test.yml
index d171a8a19426c959f776aa0780f4373c4b23b4e6..0103c6b76a2dfac2bfd080aa516ae9c34886bf46 100644
--- a/.gitlab/pipeline/test.yml
+++ b/.gitlab/pipeline/test.yml
@@ -398,6 +398,11 @@ test-frame-ui:
   script:
     - time cargo test --locked -q --profile testnet -p frame-support-test --features=frame-feature-testing,no-metadata-docs,try-runtime,experimental
     - time cargo test --locked -q --profile testnet -p frame-support-test --features=frame-feature-testing,frame-feature-testing-2,no-metadata-docs,try-runtime,experimental
+    - time cargo test --locked -q --profile testnet -p xcm-procedural
+    - time cargo test --locked -q --profile testnet -p frame-election-provider-solution-type
+    - time cargo test --locked -q --profile testnet -p sp-api-test
+    # There is multiple version of sp-runtime-interface in the repo. So we point to the manifest.
+    - time cargo test --locked -q --profile testnet --manifest-path substrate/primitives/runtime-interface/Cargo.toml
     - cat /cargo_target_dir/debug/.fingerprint/memory_units-759eddf317490d2b/lib-memory_units.json || true
 
 # This job runs all benchmarks defined in the `/bin/node/runtime` once to check that there are no errors.
diff --git a/Cargo.toml b/Cargo.toml
index 38ef9075a7311580e8e9f32868d3f70ad5dc2ebe..703e1ebbcf6277ffa4b1b0f345d182f6d4fd3a65 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -1323,7 +1323,7 @@ trie-bench = { version = "0.39.0" }
 trie-db = { version = "0.29.0", default-features = false }
 trie-root = { version = "0.18.0", default-features = false }
 trie-standardmap = { version = "0.16.0" }
-trybuild = { version = "1.0.88" }
+trybuild = { version = "1.0.89" }
 tt-call = { version = "1.0.8" }
 tuplex = { version = "0.1", default-features = false }
 twox-hash = { version = "1.6.3", default-features = false }
diff --git a/polkadot/xcm/procedural/Cargo.toml b/polkadot/xcm/procedural/Cargo.toml
index a7db183bcdbf89b2b642f2eb8eea9f87019f086d..83b35d19cf7eee67ef47f9af507d4a61b75fa9dc 100644
--- a/polkadot/xcm/procedural/Cargo.toml
+++ b/polkadot/xcm/procedural/Cargo.toml
@@ -21,4 +21,6 @@ Inflector = { workspace = true }
 
 [dev-dependencies]
 trybuild = { features = ["diff"], workspace = true }
-xcm = { workspace = true, default-features = true }
+# NOTE: we have to explicitly specify `std` because of trybuild
+# https://github.com/paritytech/polkadot-sdk/pull/5167
+xcm = { workspace = true, default-features = true, features = ["std"] }
diff --git a/scripts/update-ui-tests.sh b/scripts/update-ui-tests.sh
index dedee8e641f8a88ef7af36fecc3672944c2f477c..d363e51e40414c8272a4266444f381efd472ec25 100755
--- a/scripts/update-ui-tests.sh
+++ b/scripts/update-ui-tests.sh
@@ -38,3 +38,4 @@ $RUSTUP_RUN cargo test --manifest-path substrate/primitives/runtime-interface/Ca
 $RUSTUP_RUN cargo test -p sp-api-test ui
 $RUSTUP_RUN cargo test -p frame-election-provider-solution-type ui
 $RUSTUP_RUN cargo test -p frame-support-test --features=no-metadata-docs,try-runtime,experimental ui
+$RUSTUP_RUN cargo test -p xcm-procedural ui
diff --git a/substrate/frame/election-provider-support/solution-type/Cargo.toml b/substrate/frame/election-provider-support/solution-type/Cargo.toml
index 30b00712b3f574ef89c994c2279ff522e1675d75..e24ed7f079fe8f5ae44f1178df7d895cfd97ad75 100644
--- a/substrate/frame/election-provider-support/solution-type/Cargo.toml
+++ b/substrate/frame/election-provider-support/solution-type/Cargo.toml
@@ -28,6 +28,8 @@ codec = { workspace = true, default-features = true }
 scale-info = { workspace = true, default-features = true }
 sp-arithmetic = { workspace = true, default-features = true }
 # used by generate_solution_type:
-frame-election-provider-support = { workspace = true, default-features = true }
+# NOTE: we have to explicitly specify `std` because of trybuild
+# https://github.com/paritytech/polkadot-sdk/pull/5167
+frame-election-provider-support = { workspace = true, default-features = true, features = ["std"] }
 frame-support = { workspace = true, default-features = true }
 trybuild = { workspace = true }