diff --git a/core/drupalci.yml b/core/drupalci.yml
index cd92d8102d..d319985a06 100644
--- a/core/drupalci.yml
+++ b/core/drupalci.yml
@@ -3,49 +3,14 @@
 # https://www.drupal.org/drupalorg/docs/drupal-ci/customizing-drupalci-testing
 _phpunit_testgroups_to_execute: &testgroups
   # Default: all of Drupal core's test suite runs.
-  testgroups: '--all'
+  testgroups: '--class "\Drupal\Tests\demo_umami\Functional\DemoUmamiProfileTest"'
   # Alternative: run only the tests for one particular module.
   # testgroups: '--module ckeditor5'
 build:
   assessment:
     testing:
-      # Run code quality checks.
-      container_command.commit-checks:
-        commands:
-          - "core/scripts/dev/commit-code-check.sh --drupalci"
-        halt-on-fail: true
-      # run_tests task is executed several times in order of performance speeds.
-      # halt-on-fail can be set on the run_tests tasks in order to fail fast.
-      # suppress-deprecations is false in order to be alerted to usages of
-      # deprecated code.
-      run_tests.phpunit:
-        types: 'PHPUnit-Unit'
-        suppress-deprecations: false
-        halt-on-fail: false
-        <<: *testgroups
-      run_tests.kernel:
-        types: 'PHPUnit-Kernel'
-        suppress-deprecations: false
-        halt-on-fail: false
-        <<: *testgroups
-      run_tests.build:
-        # Limit concurrency due to disk space concerns.
-        concurrency: 15
-        types: 'PHPUnit-Build'
-        suppress-deprecations: false
-        halt-on-fail: false
-        <<: *testgroups
       run_tests.functional:
         types: 'PHPUnit-Functional'
         suppress-deprecations: false
         halt-on-fail: false
         <<: *testgroups
-      run_tests.javascript:
-        concurrency: 15
-        types: 'PHPUnit-FunctionalJavascript'
-        suppress-deprecations: false
-        halt-on-fail: false
-        <<: *testgroups
-      # Run nightwatch testing.
-      # @see https://www.drupal.org/project/drupal/issues/2869825
-      nightwatchjs: {}
diff --git a/core/lib/Drupal/Core/Extension/InfoParserDynamic.php b/core/lib/Drupal/Core/Extension/InfoParserDynamic.php
index 8298223a37..88b49a1599 100644
--- a/core/lib/Drupal/Core/Extension/InfoParserDynamic.php
+++ b/core/lib/Drupal/Core/Extension/InfoParserDynamic.php
@@ -51,7 +51,7 @@ public function parse($filename) {
         throw new InfoParserException('Missing required keys (' . implode(', ', $missing_keys) . ') in ' . $filename);
       }
       if (!isset($parsed_info['core_version_requirement'])) {
-        if (str_starts_with($filename, 'core/') || str_starts_with($filename, $this->root . '/core/')) {
+        if (str_starts_with($filename, 'core/') || str_starts_with($filename, $this->root . DIRECTORY_SEPARATOR .  'core/')) {
           // Core extensions do not need to specify core compatibility: they are
           // by definition compatible so a sensible default is used. Core
           // modules are allowed to provide these for testing purposes.
diff --git a/core/profiles/demo_umami/tests/src/Functional/DemoUmamiProfileTest.php b/core/profiles/demo_umami/tests/src/Functional/DemoUmamiProfileTest.php
index d82bede726..a22f7ccada 100644
--- a/core/profiles/demo_umami/tests/src/Functional/DemoUmamiProfileTest.php
+++ b/core/profiles/demo_umami/tests/src/Functional/DemoUmamiProfileTest.php
@@ -32,123 +32,6 @@ protected function installParameters() {
    */
   protected $profile = 'demo_umami';
 
-  /**
-   * Tests demo_umami profile warnings shown on Status Page.
-   */
-  public function testWarningsOnStatusPage() {
-    $account = $this->drupalCreateUser(['administer site configuration']);
-    $this->drupalLogin($account);
-
-    // Check the requirements warning for using an experimental profile.
-    $this->drupalGet('admin/reports/status');
-    $this->assertSession()->pageTextContains('Experimental profiles are provided for testing purposes only. Use at your own risk. To start building a new site, reinstall Drupal and choose a non-experimental profile.');
-  }
-
-  /**
-   * Tests the profile supplied configuration is the same after installation.
-   */
-  public function testConfig() {
-    // Just connect directly to the config table so we don't need to worry about
-    // the cache layer.
-    $active_config_storage = $this->container->get('config.storage');
-
-    $default_config_storage = new FileStorage($this->container->get('extension.list.profile')->getPath('demo_umami') . '/' . InstallStorage::CONFIG_INSTALL_DIRECTORY, InstallStorage::DEFAULT_COLLECTION);
-    $this->assertDefaultConfig($default_config_storage, $active_config_storage);
-
-    $default_config_storage = new FileStorage($this->container->get('extension.list.profile')->getPath('demo_umami') . '/' . InstallStorage::CONFIG_OPTIONAL_DIRECTORY, InstallStorage::DEFAULT_COLLECTION);
-    $this->assertDefaultConfig($default_config_storage, $active_config_storage);
-  }
-
-  /**
-   * Asserts that the default configuration matches active configuration.
-   *
-   * @param \Drupal\Core\Config\StorageInterface $default_config_storage
-   *   The default configuration storage to check.
-   * @param \Drupal\Core\Config\StorageInterface $active_config_storage
-   *   The active configuration storage.
-   */
-  protected function assertDefaultConfig(StorageInterface $default_config_storage, StorageInterface $active_config_storage): void {
-    /** @var \Drupal\Core\Config\ConfigManagerInterface $config_manager */
-    $config_manager = $this->container->get('config.manager');
-
-    foreach ($default_config_storage->listAll() as $config_name) {
-      if ($active_config_storage->exists($config_name)) {
-        $result = $config_manager->diff($default_config_storage, $active_config_storage, $config_name);
-        $this->assertConfigDiff($result, $config_name, [
-          // The filter.format.*:roles key is a special install key.
-          'filter.format.basic_html' => ['roles:', '  - authenticated'],
-          'filter.format.full_html' => ['roles:', '  - administrator'],
-          'filter.format.restricted_html' => ['roles:', '  - anonymous'],
-          // The system.site config is overwritten during tests by
-          // FunctionalTestSetupTrait::installParameters().
-          'system.site' => ['uuid:', 'name:', 'mail:'],
-        ]);
-      }
-      else {
-        $this->fail("$config_name has not been installed");
-      }
-    }
-  }
-
-  /**
-   * Tests that the users can log in with the admin password entered at install.
-   */
-  public function testUser() {
-    $password = $this->rootUser->pass_raw;
-    $ids = \Drupal::entityQuery('user')
-      ->accessCheck(FALSE)
-      ->condition('roles', ['author', 'editor'], 'IN')
-      ->execute();
-
-    $users = \Drupal::entityTypeManager()->getStorage('user')->loadMultiple($ids);
-
-    foreach ($users as $user) {
-      $this->drupalLoginWithPassword($user, $password);
-    }
-  }
-
-  /**
-   * Tests the successful editing of nodes by admin.
-   */
-  public function testEditNodesByAdmin() {
-    $permissions = [
-      'administer nodes',
-      'edit any recipe content',
-      'use editorial transition create_new_draft',
-    ];
-    $account = $this->drupalCreateUser($permissions);
-    $this->drupalLogin($account);
-    $webassert = $this->assertSession();
-
-    // Check that admin is able to edit the node.
-    $nodes = $this->container->get('entity_type.manager')
-      ->getStorage('node')
-      ->loadByProperties(['title' => 'Deep mediterranean quiche']);
-    $node = reset($nodes);
-    $this->drupalGet($node->toUrl('edit-form'));
-    $webassert->statusCodeEquals('200');
-
-    $this->submitForm([], 'Preview');
-    $webassert->statusCodeEquals('200');
-    $this->assertSession()->elementsCount('css', 'h1', 1);
-    $this->clickLink('Back to content editing');
-
-    $this->submitForm([], "Save");
-    $webassert->pageTextContains('Recipe Deep mediterranean quiche has been updated.');
-  }
-
-  /**
-   * Tests that the Umami theme is available on the Appearance page.
-   */
-  public function testAppearance() {
-    $account = $this->drupalCreateUser(['administer themes']);
-    $this->drupalLogin($account);
-    $webassert = $this->assertSession();
-
-    $this->drupalGet('admin/appearance');
-    $webassert->pageTextContains('Umami');
-  }
-
   /**
    * Tests that the toolbar warning only appears on the admin pages.
    */
