diff --git a/migrate_tools.module b/migrate_tools.module
index 98b5a51d1e18a2f83262aca41d5e697d1bb98b35..8a9ffb5fe23cfdd1ef17b662f80e5d86a8d442d4 100644
--- a/migrate_tools.module
+++ b/migrate_tools.module
@@ -1,10 +1,11 @@
 <?php
 
 /**
- * @file Module file for Migrate Tools.
+ * @file
+ * Module file for Migrate Tools.
  */
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 /**
  * @file
diff --git a/src/Controller/MessageController.php b/src/Controller/MessageController.php
index a2c4e6c8be253e1edc769381b0d6bee27425077e..fd283428427b6cbffe2ef13f30955909b2864c2e 100644
--- a/src/Controller/MessageController.php
+++ b/src/Controller/MessageController.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Controller;
 
@@ -22,7 +22,18 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class MessageController extends ControllerBase {
 
+  /**
+   * The database connection.
+   *
+   * @var \Drupal\Core\Database\Connection
+   */
   protected Connection $database;
+
+  /**
+   * The migration plugin manager.
+   *
+   * @var \Drupal\migrate\Plugin\MigrationPluginManagerInterface
+   */
   protected MigrationPluginManagerInterface $migrationPluginManager;
 
   /**
diff --git a/src/Controller/MigrationController.php b/src/Controller/MigrationController.php
index 972a75bf2fe01325725b03d43d8cfec278c9fb73..4ab1e5318a75666b71368abb8c2455a28ceb90c8 100644
--- a/src/Controller/MigrationController.php
+++ b/src/Controller/MigrationController.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Controller;
 
@@ -23,7 +23,18 @@ use Symfony\Component\HttpFoundation\RedirectResponse;
  */
 class MigrationController extends ControllerBase implements ContainerInjectionInterface {
 
+  /**
+   * The plugin manager for config entity-based migrations.
+   *
+   * @var \Drupal\migrate\Plugin\MigrationPluginManagerInterface
+   */
   protected MigrationPluginManagerInterface $migrationPluginManager;
+
+  /**
+   * The current route match.
+   *
+   * @var \Drupal\Core\Routing\CurrentRouteMatch
+   */
   protected CurrentRouteMatch $currentRouteMatch;
 
   /**
diff --git a/src/Controller/MigrationGroupListBuilder.php b/src/Controller/MigrationGroupListBuilder.php
index aa84d819420b67f7043e6befd9d30dad3fddf0a2..d0cd3345477891658586a325e031cc550a22a1f7 100644
--- a/src/Controller/MigrationGroupListBuilder.php
+++ b/src/Controller/MigrationGroupListBuilder.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Controller;
 
diff --git a/src/Controller/MigrationListBuilder.php b/src/Controller/MigrationListBuilder.php
index 73b3c5013056bec48f3a880130826763edfd79b3..69fd1fef2b4bbf4e1a33ce2d8d87267d4c3aa72a 100644
--- a/src/Controller/MigrationListBuilder.php
+++ b/src/Controller/MigrationListBuilder.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Controller;
 
@@ -26,8 +26,25 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class MigrationListBuilder extends ConfigEntityListBuilder implements EntityHandlerInterface {
 
+  /**
+   * The current route match service.
+   *
+   * @var \Drupal\Core\Routing\CurrentRouteMatch
+   */
   protected CurrentRouteMatch $currentRouteMatch;
+
+  /**
+   * The plugin manager for config entity-based migrations.
+   *
+   * @var \Drupal\migrate\Plugin\MigrationPluginManagerInterface
+   */
   protected MigrationPluginManagerInterface $migrationPluginManager;
+
+  /**
+   * The logger service.
+   *
+   * @var \Psr\Log\LoggerInterface
+   */
   protected LoggerInterface $logger;
 
   /**
diff --git a/src/Discovery/YamlDiscoveryDecorator.php b/src/Discovery/YamlDiscoveryDecorator.php
index cc7b59f43a52c7c641045e83dc3d580bde6c0d8a..555396d9b6ee3798fd2fc950d198576f72b7ef1f 100644
--- a/src/Discovery/YamlDiscoveryDecorator.php
+++ b/src/Discovery/YamlDiscoveryDecorator.php
@@ -26,11 +26,14 @@ class YamlDiscoveryDecorator extends YamlDirectoryDiscovery {
    *
    * @param \Drupal\Component\Plugin\Discovery\DiscoveryInterface $decorated
    *   The discovery object that is being decorated.
-   * @param string $name
-   *   The file name suffix to use for discovery; for instance, 'test' will
-   *   become 'MODULE.test.yml'.
    * @param array $directories
    *   An array of directories to scan.
+   * @param string $file_cache_key_suffix
+   *   The file cache key suffix. This should be unique for each type of
+   *   discovery.
+   * @param string $key
+   *   (optional) The key contained in the discovered data that identifies it.
+   *   Defaults to 'id'.
    */
   public function __construct(DiscoveryInterface $decorated, array $directories, $file_cache_key_suffix, $key = 'id') {
     parent::__construct($directories, $file_cache_key_suffix, $key);
diff --git a/src/Drush/Commands/MigrateToolsCommands.php b/src/Drush/Commands/MigrateToolsCommands.php
index b93f2c4d6bd27995f0dca1a10b4547ec25767887..460f2fcf1f97005fa6b08045298ba369c32d7da9 100644
--- a/src/Drush/Commands/MigrateToolsCommands.php
+++ b/src/Drush/Commands/MigrateToolsCommands.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Drush\Commands;
 
@@ -111,7 +111,7 @@ class MigrateToolsCommands extends DrushCommands {
 
     // Turn this into a flat array.
     $migrations_to_process = [];
-    foreach ($migrations as $group => $group_migrations) {
+    foreach ($migrations as $group_migrations) {
       foreach ($group_migrations as $migration) {
         $migrations_to_process[$migration->id()] = $migration;
       }
@@ -249,15 +249,19 @@ class MigrateToolsCommands extends DrushCommands {
   #[CLI\Usage(name: 'ms --fields=id,status --format=json', description: 'Retrieve a JSON serialized list of migrations, each item containing only the migration ID and its status.')]
   #[CLI\Topics(topics: ['migrate'])]
   #[CLI\ValidateModulesEnabled(modules: ['migrate_tools'])]
-  #[CLI\FieldLabels(labels: ['group' => 'Group', 'id' => 'Migration ID', 'status' => 'Status', 'total' => 'Total', 'imported' => 'Imported', 'unprocessed' => 'Unprocessed', 'message_count' => 'Message Count', 'last_imported' => 'Last Imported'])]
+  // phpcs:disable Drupal.Arrays.Array.LongLineDeclaration
+  #[CLI\FieldLabels(labels: ['group' => 'Group', 'id' => 'Migration ID', 'status' => 'Status', 'total' => 'Total', 'imported' => 'Imported', 'unprocessed' => 'Unprocessed', 'message_count' => 'Message Count', 'last_imported' => 'Last Imported'])]  // phpcs:ignore
   #[CLI\DefaultFields(fields: ['group', 'id', 'status', 'total', 'imported', 'unprocessed', 'message_count', 'last_imported'])]
+  // phpcs:enable
   #[CLI\FilterDefaultField(field: 'status')]
+  // phpcs:disable Drupal.Commenting.FunctionComment.Missing, Squiz.WhiteSpace.FunctionSpacing.Before
   public function status($migration_names = '', array $options = [
     'group' => self::REQ,
     'tag' => self::REQ,
     'names-only' => FALSE,
     'continue-on-failure' => FALSE,
   ]): RowsOfFields {
+  // phpcs:enable
     $names_only = $options['names-only'];
 
     $migrations = $this->migrationsList($migration_names, $options);
@@ -474,7 +478,7 @@ class MigrateToolsCommands extends DrushCommands {
     }
 
     // Take it one group at a time, importing the migrations within each group.
-    foreach ($migrations as $group_id => $migration_list) {
+    foreach ($migrations as $migration_list) {
       // Don't execute disabled migrations.
       foreach ($migration_list as $migration_id => $migration) {
         if ($migration->getStatus() == MigrationInterface::STATUS_DISABLED) {
@@ -577,7 +581,7 @@ class MigrateToolsCommands extends DrushCommands {
           $migration->set('skipProgressBar', TRUE);
         }
         // Initialize the Synmfony Console progress bar.
-        \Drupal::service('migrate_tools.migration_drush_command_progress')->initializeProgress(
+        $this->service('migrate_tools.migration_drush_command_progress')->initializeProgress(
           $this->output(),
           $migration
         );
@@ -675,7 +679,10 @@ class MigrateToolsCommands extends DrushCommands {
    * @validate-module-enabled migrate_tools
    * @aliases mrs, migrate-reset-status
    */
-  #[CLI\Command(name: 'migrate:reset-status', aliases: ['mrs', 'migrate-reset-status'])]
+  #[CLI\Command(
+    name: 'migrate:reset-status',
+    aliases: ['mrs', 'migrate-reset-status']
+  )]
   #[CLI\Argument(name: 'migration_id', description: 'The ID of migration to reset.')]
   #[CLI\Topics(topics: ['migrate'])]
   #[CLI\ValidateModulesEnabled(modules: ['migrate_tools'])]
@@ -748,13 +755,31 @@ class MigrateToolsCommands extends DrushCommands {
   #[CLI\Usage(name: 'migrate:messages custom_node_revision --idlist=1:"r:1",2:"r:3"', description: 'Show messages related to node revision records with source IDs [1,"r:1"], and [2,"r:3"].')]
   #[CLI\Topics(topics: ['migrate'])]
   #[CLI\ValidateModulesEnabled(modules: ['migrate_tools'])]
-  #[CLI\FieldLabels(labels: ['source_ids_hash' => 'Source IDs Hash', 'source_ids' => 'Source ID(s)', 'destination_ids' => 'Destination ID(s)', 'level' => 'Level', 'message' => 'Message'])]
-  #[CLI\DefaultFields(fields: ['source_ids_hash', 'source_ids', 'destination_ids', 'level', 'message'])]
+  // phpcs:disable Drupal.Arrays.Array.LongLineDeclaration
+  #[CLI\FieldLabels(labels: [
+    'source_ids_hash' => 'Source IDs Hash',
+    'source_ids' => 'Source ID(s)',
+    'destination_ids' => 'Destination ID(s)',
+    'level' => 'Level',
+    'message' => 'Message',
+  ])]
+  // phpcs:enable
+  #[CLI\DefaultFields(
+    fields: [
+      'source_ids_hash',
+      'source_ids',
+      'destination_ids',
+      'level',
+      'message',
+    ]
+  )]
+  // phpcs:disable Drupal.Commenting.FunctionComment.Missing, Squiz.WhiteSpace.FunctionSpacing.Before
   public function messages($migration_id, array $options = [
     'csv' => FALSE,
     'idlist' => self::REQ,
     'idlist-delimiter' => MigrateTools::DEFAULT_ID_LIST_DELIMITER,
   ]): ?RowsOfFields {
+  // phpcs:enable
     /** @var \Drupal\migrate\Plugin\MigrationInterface $migration */
     $migration = $this->migrationPluginManager->createInstance(
       $migration_id
@@ -832,33 +857,39 @@ class MigrateToolsCommands extends DrushCommands {
   }
 
   /**
-   * List the fields available for mapping in a source.
-   *
-   * @param string $migration_id
-   *   ID of the migration.
-   *
-   * @command migrate:fields-source
+  * List the fields available for mapping in a source.
+  *
+  * @param string $migration_id
+  *   ID of the migration.
+  *
+  * @command migrate:fields-source
+  *
+  * @usage migrate:fields-source my_node
+  *   List fields for the source in the my_node migration.
+  *
+  * @validate-module-enabled migrate_tools
+  *
+  * @aliases mfs, migrate-fields-source
    *
-   * @usage migrate:fields-source my_node
-   *   List fields for the source in the my_node migration
-   *
-   * @validate-module-enabled migrate_tools
-   *
-   * @aliases mfs, migrate-fields-source
-   *
-   * @field-labels
-   *   machine_name: Machine Name
-   *   description: Description
-   * @default-fields machine_name,description
-   *
-   * @return \Consolidation\OutputFormatters\StructuredData\RowsOfFields
-   *   Source fields of the given migration formatted as a table.
-   */
-  #[CLI\Command(name: 'migrate:fields-source', aliases: ['mfs', 'migrate-fields-source'])]
-  #[CLI\Argument(name: 'migration_id', description: 'The ID of the migration.')]
+  * @return \Consolidation\OutputFormatters\StructuredData\RowsOfFields
+  *   Source fields of the given migration formatted as a table.
+  */
+  #[CLI\Command(
+    name: 'migrate:fields-source',
+    aliases: ['mfs', 'migrate-fields-source']
+  )]
+  #[CLI\Argument(
+    name: 'migration_id',
+    description: 'The ID of the migration.'
+  )]
   #[CLI\Topics(topics: ['migrate'])]
   #[CLI\ValidateModulesEnabled(modules: ['migrate_tools'])]
-  #[CLI\FieldLabels(labels: ['machine_name' => 'Machine Name', 'description' => 'Description'])]
+  #[CLI\FieldLabels(
+    labels: [
+      'machine_name' => 'Machine Name',
+      'description' => 'Description',
+    ]
+  )]
   #[CLI\DefaultFields(fields: ['machine_name', 'description'])]
   public function fieldsSource($migration_id): RowsOfFields {
     /** @var \Drupal\migrate\Plugin\MigrationInterface $migration */
@@ -1063,7 +1094,7 @@ class MigrateToolsCommands extends DrushCommands {
     }
 
     // Initialize the Symfony Console progress bar.
-    \Drupal::service('migrate_tools.migration_drush_command_progress')->initializeProgress(
+    $this->service('migrate_tools.migration_drush_command_progress')->initializeProgress(
       $this->output(),
       $migration,
       $options
diff --git a/src/Drush9LogMigrateMessage.php b/src/Drush9LogMigrateMessage.php
index b992ffb0e5732e0f8d3b641ea139d2d57b3758e2..a7f52db3541662bd88312cace3661e6da7719ae2 100644
--- a/src/Drush9LogMigrateMessage.php
+++ b/src/Drush9LogMigrateMessage.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/DrushLogMigrateMessage.php b/src/DrushLogMigrateMessage.php
index 581bcfe1f7c776f651066c4900d079a739b74a10..d31ac43eeb45ee864a3908b13df59f724b0fc266 100644
--- a/src/DrushLogMigrateMessage.php
+++ b/src/DrushLogMigrateMessage.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/EventSubscriber/MigrationDrushCommandProgress.php b/src/EventSubscriber/MigrationDrushCommandProgress.php
index 22222094cdca2a23196fb76ec4abf36841d8d567..9a59b9ac8dc0eca952747d518d5c02cc04ae4dde 100644
--- a/src/EventSubscriber/MigrationDrushCommandProgress.php
+++ b/src/EventSubscriber/MigrationDrushCommandProgress.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\EventSubscriber;
 
@@ -16,7 +16,18 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  */
 class MigrationDrushCommandProgress implements EventSubscriberInterface {
 
+  /**
+   * The logger service.
+   *
+   * @var \Psr\Log\LoggerInterface
+   */
   protected LoggerInterface $logger;
+
+  /**
+   * The progress bar.
+   *
+   * @var \Symfony\Component\Console\Helper\ProgressBar|null
+   */
   protected ?ProgressBar $symfonyProgressBar = NULL;
 
   /**
diff --git a/src/EventSubscriber/MigrationImportSync.php b/src/EventSubscriber/MigrationImportSync.php
index 5b513e2147396857ea5191cc58f00b19bfb8983c..79cd9c4671522dc65845e2c50ce8301821f3ae69 100644
--- a/src/EventSubscriber/MigrationImportSync.php
+++ b/src/EventSubscriber/MigrationImportSync.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\EventSubscriber;
 
@@ -20,6 +20,11 @@ use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  */
 class MigrationImportSync implements EventSubscriberInterface {
 
+  /**
+   * The event dispatcher.
+   *
+   * @var \Symfony\Component\EventDispatcher\EventDispatcherInterface
+   */
   protected EventDispatcherInterface $dispatcher;
   protected MigrateTools $migrateTools;
 
diff --git a/src/Form/MigrationAddForm.php b/src/Form/MigrationAddForm.php
index 47216342b0af52609273ff894d22218df84c6f04..a9a8d1c33a21a2eead40a0ab6d10e305624a8a8d 100644
--- a/src/Form/MigrationAddForm.php
+++ b/src/Form/MigrationAddForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationDeleteForm.php b/src/Form/MigrationDeleteForm.php
index 8cfe405647c6ad87fe1d050ecef6b28186cb1159..afb4a9973796c61ba48d31f8f54df3c9db525643 100644
--- a/src/Form/MigrationDeleteForm.php
+++ b/src/Form/MigrationDeleteForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationEditForm.php b/src/Form/MigrationEditForm.php
index 4bd24a5a7e82422f5a33adc1d7b461062152a27a..ff6120cdbf010f21763ff39dba256af566324133 100644
--- a/src/Form/MigrationEditForm.php
+++ b/src/Form/MigrationEditForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationExecuteForm.php b/src/Form/MigrationExecuteForm.php
index 88932a2254e42d89c995808f2f7b1980881901dc..be6f0f1bc283091867289e5ca965a5c3834419b7 100644
--- a/src/Form/MigrationExecuteForm.php
+++ b/src/Form/MigrationExecuteForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
@@ -166,7 +166,11 @@ class MigrationExecuteForm extends FormBase {
       '#description' => $this->t('Comma-separated list of IDs to process.'),
       '#states' => [
         'enabled' => [
-          ':input[name="operation"]' => [['value' => 'import'], 'or', ['value' => 'rollback']],
+          ':input[name="operation"]' => [
+            ['value' => 'import'],
+            'or',
+            ['value' => 'rollback'],
+          ],
         ],
       ],
     ];
diff --git a/src/Form/MigrationFormBase.php b/src/Form/MigrationFormBase.php
index 5db13befb35784bcadacee46c35015f2fd0cad67..48e7616bfb6a7dc62fa28e580d3121031fdfd1c2 100644
--- a/src/Form/MigrationFormBase.php
+++ b/src/Form/MigrationFormBase.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationGroupAddForm.php b/src/Form/MigrationGroupAddForm.php
index 279ceeff2c409fb6bbc30e48d5e7618c62cc8db0..566a9c7bea71a59feac0108eb5f537973e9c7d8d 100644
--- a/src/Form/MigrationGroupAddForm.php
+++ b/src/Form/MigrationGroupAddForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationGroupDeleteForm.php b/src/Form/MigrationGroupDeleteForm.php
index d71dff8e524e15fa66ed9aa3729f19008f25fa5e..77acba8143384335951dc53d669c3f3bcb408460 100644
--- a/src/Form/MigrationGroupDeleteForm.php
+++ b/src/Form/MigrationGroupDeleteForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationGroupEditForm.php b/src/Form/MigrationGroupEditForm.php
index 30d2ff97fdb59bad3ed087a12f99a4a4eb49ff25..4365b86e308024e445fe159ebf1ee8668e7fccb7 100644
--- a/src/Form/MigrationGroupEditForm.php
+++ b/src/Form/MigrationGroupEditForm.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/Form/MigrationGroupFormBase.php b/src/Form/MigrationGroupFormBase.php
index 43c26034b5f074f0fa2a26f2851e469903655a42..743eefeb51d78924957b9de29dbc70eecc002cb5 100644
--- a/src/Form/MigrationGroupFormBase.php
+++ b/src/Form/MigrationGroupFormBase.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Form;
 
diff --git a/src/IdMapFilter.php b/src/IdMapFilter.php
index ed1a1391e2b399113b2224afbb7fed84fcab8d87..6eec99cf23be5eee8ec7f8121fc3e38876c6049d 100644
--- a/src/IdMapFilter.php
+++ b/src/IdMapFilter.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/MigrateBatchExecutable.php b/src/MigrateBatchExecutable.php
index 863afb875a1d1edaf5e61d7acf7f81df01fb3b0e..e71ae406c4e1c3380c04613b3c20b610d3ec4af2 100644
--- a/src/MigrateBatchExecutable.php
+++ b/src/MigrateBatchExecutable.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
@@ -40,9 +40,32 @@ class MigrateBatchExecutable extends MigrateExecutable {
    */
   protected string $idlistExpression = '';
 
+  /**
+   * Sync source and destination.
+   *
+   * @var bool
+   */
   protected bool $syncSource = FALSE;
+
+  /**
+   * The batch context for messenge listeners.
+   *
+   * @var array|\DrushBatchContext|null
+   */
   protected $batchContext;
+
+  /**
+   * The migration configuration.
+   *
+   * @var array
+   */
   protected array $configuration = [];
+
+  /**
+   * The Migration plugin manager.
+   *
+   * @var \Drupal\migrate\Plugin\MigrationPluginManagerInterface
+   */
   protected MigrationPluginManagerInterface $migrationPluginManager;
 
   /**
@@ -274,7 +297,7 @@ class MigrateBatchExecutable extends MigrateExecutable {
    */
   public static function batchFinishedImport(bool $success, array $results, array $operations): void {
     if ($success) {
-      foreach ($results as $migration_id => $result) {
+      foreach ($results as $result) {
         $singular_message = "Processed 1 item (@created created, @updated updated, @failures failed, @ignored ignored) - done with '@name'";
         $plural_message = "Processed @numitems items (@created created, @updated updated, @failures failed, @ignored ignored) - done with '@name'";
         \Drupal::messenger()->addStatus(\Drupal::translation()->formatPlural($result['@numitems'],
diff --git a/src/MigrateExecutable.php b/src/MigrateExecutable.php
index d82eb540c3aacc3e9d2ed9bc5cd7ded225e3701f..72ac32b52f80cfae170ee67cec5fc6d3713e391b 100755
--- a/src/MigrateExecutable.php
+++ b/src/MigrateExecutable.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
@@ -77,11 +77,15 @@ class MigrateExecutable extends MigrateExecutableBase {
 
   /**
    * Whether the destination item exists before saving.
+   *
+   * @var bool
    */
   protected bool $preExistingItem = FALSE;
 
   /**
    * List of event listeners we have registered.
+   *
+   * @var array
    */
   protected $listeners = [];
 
diff --git a/src/MigrateIncludeHandler.php b/src/MigrateIncludeHandler.php
index 2fce5d0b3d6ca03fe21aaff6f5156dc4eebe958a..764a0db8bf699be6f58f221ec83b396976ae8ae9 100644
--- a/src/MigrateIncludeHandler.php
+++ b/src/MigrateIncludeHandler.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
@@ -12,8 +12,19 @@ use Drupal\Component\Utility\NestedArray;
  */
 final class MigrateIncludeHandler {
 
+  /**
+   * The plugin manager shared configuration.
+   *
+   * @var \Drupal\Component\Plugin\PluginManagerInterface
+   */
   private PluginManagerInterface $sharedConfiguration;
 
+  /**
+   * Constructor for the include handler.
+   *
+   * @param \Drupal\Component\Plugin\PluginManagerInterface $shared_config
+   *   The shared configuration.
+   */
   public function __construct(PluginManagerInterface $shared_config) {
     $this->sharedConfiguration = $shared_config;
   }
diff --git a/src/MigrateSharedConfigDefault.php b/src/MigrateSharedConfigDefault.php
index 04fe4e8798cd4b4773f739790333d30db6853cb3..ad27597fb0bac373c1e0eca3c042073a2aaba99c 100644
--- a/src/MigrateSharedConfigDefault.php
+++ b/src/MigrateSharedConfigDefault.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/MigrateSharedConfigInterface.php b/src/MigrateSharedConfigInterface.php
index 1ce6b0a59071cef76be38dc31708105687a96862..71745a65ad3caa97a5fc12a43136f426c87489d4 100644
--- a/src/MigrateSharedConfigInterface.php
+++ b/src/MigrateSharedConfigInterface.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/MigrateSharedConfigPluginManager.php b/src/MigrateSharedConfigPluginManager.php
index 3d9f22ac31fe979088b0ace638398fad170e4521..5fca54e9a4cd805c44b5232ec3ea52013bda5e1a 100644
--- a/src/MigrateSharedConfigPluginManager.php
+++ b/src/MigrateSharedConfigPluginManager.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
@@ -47,6 +47,9 @@ final class MigrateSharedConfigPluginManager extends DefaultPluginManager {
     'class' => MigrateSharedConfigDefault::class,
   ];
 
+  /**
+   * Constructor for migrate_shared_configuration plugin manager.
+   */
   public function __construct(ModuleHandlerInterface $module_handler, CacheBackendInterface $cache_backend) {
     $this->factory = new ContainerFactory($this);
     $this->moduleHandler = $module_handler;
diff --git a/src/MigrateTools.php b/src/MigrateTools.php
index 5de7c6f4955f8137ba3bb08f8f26d85d69ea743a..526f3d95d01aaa1f6a66dceac0704089a878bd30 100644
--- a/src/MigrateTools.php
+++ b/src/MigrateTools.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/src/Routing/RouteProcessor.php b/src/Routing/RouteProcessor.php
index 4ad2155bd5b98524148fd173f31e43319596df66..c8002d421d01df1dce7a534f61fb53e4120d640f 100644
--- a/src/Routing/RouteProcessor.php
+++ b/src/Routing/RouteProcessor.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools\Routing;
 
@@ -14,8 +14,19 @@ use Symfony\Component\Routing\Route;
  */
 class RouteProcessor implements OutboundRouteProcessorInterface {
 
+  /**
+   * The entity type manager.
+   *
+   * @var \Drupal\Core\Entity\EntityTypeManagerInterface
+   */
   private EntityTypeManagerInterface $entityTypeManager;
 
+  /**
+   * Constructor for route processor.
+   *
+   * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
+   *   The entity type manager.
+   */
   public function __construct(EntityTypeManagerInterface $entity_type_manager) {
     $this->entityTypeManager = $entity_type_manager;
   }
@@ -27,6 +38,7 @@ class RouteProcessor implements OutboundRouteProcessorInterface {
     if ($route->hasDefault('_migrate_group')) {
       $parameters['migration_group'] = 'default';
       if ($this->entityTypeManager->hasHandler('migration', 'storage')) {
+        /** @var \Drupal\migrate_plus\Entity\MigrationInterface */
         $migration = $this->entityTypeManager
           ->getStorage('migration')
           ->load($parameters['migration']);
diff --git a/src/SourceFilter.php b/src/SourceFilter.php
index 02840e9c8043cf01a01850bb6104e424d162e1eb..7f7f6d58114eb5d0ae6ca022b088a4ccc4aee894 100644
--- a/src/SourceFilter.php
+++ b/src/SourceFilter.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools;
 
diff --git a/tests/modules/migrate_shared_config_test/migrate_shared_config_test.info.yml b/tests/modules/migrate_shared_config_test/migrate_shared_config_test.info.yml
index dbaeaa68b4b6deb7502e84c7d3352ee17b178cb2..c74fe916eaf9bf8b7391814f00fceded890a4948 100644
--- a/tests/modules/migrate_shared_config_test/migrate_shared_config_test.info.yml
+++ b/tests/modules/migrate_shared_config_test/migrate_shared_config_test.info.yml
@@ -1,5 +1,6 @@
-name: Test module for migrate shared configuration
+name: 'Test module for migrate shared configuration'
 type: module
+description: 'Test module for migrate shared configuration'
 package: Testing
 dependencies:
   - drupal:migrate
diff --git a/tests/modules/migrate_tools_test/src/Commands/MigrateToolsTestCommands.php b/tests/modules/migrate_tools_test/src/Commands/MigrateToolsTestCommands.php
index 7a4d7bb9e2f9a00a5bf34a31becef216fb483441..3774bb24a5bcc57452ecbc6b8131e1f15b0e0a88 100644
--- a/tests/modules/migrate_tools_test/src/Commands/MigrateToolsTestCommands.php
+++ b/tests/modules/migrate_tools_test/src/Commands/MigrateToolsTestCommands.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools_test\Commands;
 
@@ -14,6 +14,11 @@ use Drush\Commands\DrushCommands;
  */
 final class MigrateToolsTestCommands extends DrushCommands {
 
+  /**
+   * The migration plugin manager.
+   *
+   * @var \Drupal\migrate\Plugin\MigrationPluginManager
+   */
   protected MigrationPluginManager $migrationPluginManager;
 
   /**
diff --git a/tests/modules/migrate_tools_test/src/Plugin/migrate/source/ExceptionThrowingTestSource.php b/tests/modules/migrate_tools_test/src/Plugin/migrate/source/ExceptionThrowingTestSource.php
index 5c08b9a57d08d05993b2cb88430e6fbfa247c9a3..ebe31796337d49bf532bf25c15dccaab2648c53d 100644
--- a/tests/modules/migrate_tools_test/src/Plugin/migrate/source/ExceptionThrowingTestSource.php
+++ b/tests/modules/migrate_tools_test/src/Plugin/migrate/source/ExceptionThrowingTestSource.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\migrate_tools_test\Plugin\migrate\source;
 
diff --git a/tests/src/Functional/DrushBatchImportTest.php b/tests/src/Functional/DrushBatchImportTest.php
index 8ef7c72b66eca6cde15ee904ca12d062bde7feef..2effc227acdd1202530f29805007deebf63a0580 100644
--- a/tests/src/Functional/DrushBatchImportTest.php
+++ b/tests/src/Functional/DrushBatchImportTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
diff --git a/tests/src/Functional/DrushCommandsGeneratorTest.php b/tests/src/Functional/DrushCommandsGeneratorTest.php
index b4e9c6b7562f87b3d4b67b286bbd6ab40223d881..b86c5101c5da9c633cacce70dd0edb2b47a0084e 100644
--- a/tests/src/Functional/DrushCommandsGeneratorTest.php
+++ b/tests/src/Functional/DrushCommandsGeneratorTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
diff --git a/tests/src/Functional/DrushCommandsTest.php b/tests/src/Functional/DrushCommandsTest.php
index db429de37e7d3dc77eb590600165cb1c3dfdf1d3..9421b25e1379926294cb079bc76aebffe6f6e621 100644
--- a/tests/src/Functional/DrushCommandsTest.php
+++ b/tests/src/Functional/DrushCommandsTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
diff --git a/tests/src/Functional/MigrateExecutionFormTest.php b/tests/src/Functional/MigrateExecutionFormTest.php
index 2621dac40912ac0536c3a51a973776ae78a6ef8e..321bcf43d247c5023fb5c0af2c3f0202ada89a02 100644
--- a/tests/src/Functional/MigrateExecutionFormTest.php
+++ b/tests/src/Functional/MigrateExecutionFormTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
@@ -39,7 +39,18 @@ final class MigrateExecutionFormTest extends BrowserTestBase {
    */
   protected $defaultTheme = 'stark';
 
+  /**
+   * The fruite vocabulary.
+   *
+   * @var \Drupal\taxonomy\VocabularyInterface
+   */
   private VocabularyInterface $vocabulary;
+
+  /**
+   * Vocabulary entity query.
+   *
+   * @var \Drupal\Core\Entity\Query\QueryInterface
+   */
   private QueryInterface $vocabularyQuery;
 
   /**
diff --git a/tests/src/Functional/MigrateListBuilderTest.php b/tests/src/Functional/MigrateListBuilderTest.php
index 11dba4630b7f93560fdcd3acc5af78103b8050dc..c9990c24573f265cbe172134f11fd557d7c57615 100644
--- a/tests/src/Functional/MigrateListBuilderTest.php
+++ b/tests/src/Functional/MigrateListBuilderTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
diff --git a/tests/src/Functional/SourceUrlFormTest.php b/tests/src/Functional/SourceUrlFormTest.php
index 1dca7df06c427ffd06757394ffbcc0682e2451c8..24f03b43bfc6902ead88a7499f27342362c42f5d 100644
--- a/tests/src/Functional/SourceUrlFormTest.php
+++ b/tests/src/Functional/SourceUrlFormTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Functional;
 
diff --git a/tests/src/Kernel/DrushTest.php b/tests/src/Kernel/DrushTest.php
index 925d5e9d18758844cec048ca0ef167dc4863923e..8c3c4f77a37d35bf01e51f1e6272e272f174e3a0 100644
--- a/tests/src/Kernel/DrushTest.php
+++ b/tests/src/Kernel/DrushTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Kernel {
 
@@ -53,7 +53,18 @@ namespace Drupal\Tests\migrate_tools\Kernel {
       'sync' => FALSE,
     ];
 
+    /**
+     * Migrate Tools Drush commands.
+     *
+     * @var \Drupal\migrate_tools\Drush\Commands\MigrateToolsCommands|null
+     */
     private ?MigrateToolsCommands $commands = NULL;
+
+    /**
+     * The Migration plugin manager.
+     *
+     * @var \Drupal\migrate\Plugin\MigrationPluginManagerInterface
+     */
     private MigrationPluginManagerInterface $migrationPluginManager;
 
     /**
diff --git a/tests/src/Kernel/MigrateImportTest.php b/tests/src/Kernel/MigrateImportTest.php
index c3bb1fae1a571c54f373a443f11d5b8ab22a66ca..28bffe07e3c7f8ca00201f829faf9dc548a21868 100644
--- a/tests/src/Kernel/MigrateImportTest.php
+++ b/tests/src/Kernel/MigrateImportTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Kernel;
 
diff --git a/tests/src/Kernel/MigrateRollbackTest.php b/tests/src/Kernel/MigrateRollbackTest.php
index fdc18fd31b7c944cb047bcc19c9062c9b6339e65..f749a1c6db677fd39f73c86b94e34df4230a2f5f 100644
--- a/tests/src/Kernel/MigrateRollbackTest.php
+++ b/tests/src/Kernel/MigrateRollbackTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Kernel;
 
diff --git a/tests/src/Kernel/MigrateSharedConfigTest.php b/tests/src/Kernel/MigrateSharedConfigTest.php
index cfaaf892e6ec3625a92d54ebe7ba30a06e6322d6..ec13dd958991283b7d7610536ac4ad542f75357e 100644
--- a/tests/src/Kernel/MigrateSharedConfigTest.php
+++ b/tests/src/Kernel/MigrateSharedConfigTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Kernel;
 
diff --git a/tests/src/Unit/MigrateToolsTest.php b/tests/src/Unit/MigrateToolsTest.php
index 8e05822858171637a8732f508fc1a08c50839192..b2bbaef6888bd36d896abdf95eb2eac7c2e9d9cf 100644
--- a/tests/src/Unit/MigrateToolsTest.php
+++ b/tests/src/Unit/MigrateToolsTest.php
@@ -1,6 +1,6 @@
 <?php
 
-declare(strict_types = 1);
+declare(strict_types=1);
 
 namespace Drupal\Tests\migrate_tools\Unit;