diff --git a/core/lib/Drupal/Core/Menu/LocalTaskManager.php b/core/lib/Drupal/Core/Menu/LocalTaskManager.php
index e2a2499..a305f0a 100644
--- a/core/lib/Drupal/Core/Menu/LocalTaskManager.php
+++ b/core/lib/Drupal/Core/Menu/LocalTaskManager.php
@@ -156,6 +156,23 @@ public function getTitle(LocalTaskInterface $local_task) {
   }
 
   /**
+   * {@inheritdoc}
+   */
+  public function getDefinitions() {
+    $definitions =  parent::getDefinitions();
+
+    $count = 0;
+    foreach ($definitions as &$definition) {
+      if (isset($definition['weight'])) {
+        // Add some micro weight.
+        $definition['weight'] += ($count++) * 1e-6;
+      }
+    }
+
+    return $definitions;
+  }
+
+  /**
    * Find all local tasks that appear on a named route.
    *
    * @param string $route_name
