From 1d21b291a16b8003b84713e12807fa3abd9e5f34 Mon Sep 17 00:00:00 2001 From: Chris Huber Date: Fri, 22 May 2026 16:56:42 -0400 Subject: [PATCH 1/2] fix: document direct database query exceptions --- inc/Abilities/Engine/DrainJobAbility.php | 1 + inc/Abilities/Engine/PipelineBatchScheduler.php | 1 + inc/Abilities/Job/RecoverStuckJobsAbility.php | 1 + inc/Abilities/Media/AltTextAbilities.php | 1 + inc/Abilities/SEO/MetaDescriptionAbilities.php | 1 + inc/Api/System/System.php | 1 + inc/Cli/Commands/Flows/FlowsCommand.php | 1 + inc/Cli/Commands/Flows/QueueCommand.php | 1 + inc/Cli/Commands/JobsCommand.php | 1 + inc/Cli/Commands/ProcessedItemsCommand.php | 5 +++-- inc/Core/Admin/FlowFormatter.php | 1 + inc/Core/Database/Agents/Agents.php | 1 + inc/Core/Database/BaseRepository.php | 1 + inc/Core/Database/Chat/Chat.php | 1 + inc/Core/Database/Jobs/Jobs.php | 1 + inc/Core/Database/ProcessedItems/ProcessedItems.php | 3 ++- inc/Core/JobArtifacts.php | 1 + inc/Core/RunMetrics.php | 1 + inc/Engine/AI/Actions/PendingActionStore.php | 9 +++++---- inc/Engine/AI/System/Tasks/DailyMemoryTask.php | 1 + inc/Engine/Actions/Engine.php | 1 + inc/Engine/Tasks/TaskScheduler.php | 1 + inc/migrations/flows.php | 1 + .../Unit/Abilities/Engine/PipelineBatchSchedulerTest.php | 1 + .../Core/Database/Chat/ConversationStoreFactoryTest.php | 1 + 25 files changed, 32 insertions(+), 7 deletions(-) diff --git a/inc/Abilities/Engine/DrainJobAbility.php b/inc/Abilities/Engine/DrainJobAbility.php index 6ba7a0cae..aa13d44ca 100644 --- a/inc/Abilities/Engine/DrainJobAbility.php +++ b/inc/Abilities/Engine/DrainJobAbility.php @@ -1,4 +1,5 @@ last_error ); diff --git a/inc/Core/Admin/FlowFormatter.php b/inc/Core/Admin/FlowFormatter.php index 21d4895b5..2b8ef40a3 100644 --- a/inc/Core/Admin/FlowFormatter.php +++ b/inc/Core/Admin/FlowFormatter.php @@ -1,4 +1,5 @@ get_results( $wpdb->prepare( $sql, ...$prepare_args ), ARRAY_A ); - // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.NotPrepared + // phpcs:enable WordPress.DB.PreparedSQL.NotPrepared return array_values( array_filter( array_map( array( self::class, 'row_to_payload' ), (array) $rows ) ) ); } @@ -501,7 +502,7 @@ public static function summary( array $filters = array() ): array { // phpcs:disable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.NotPrepared $rows = $wpdb->get_results( $wpdb->prepare( $sql, ...$prepare_args ), ARRAY_A ); - // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.NotPrepared + // phpcs:enable WordPress.DB.PreparedSQL.NotPrepared $summary = array( 'total' => count( (array) $rows ), @@ -550,7 +551,7 @@ public static function expire_due_actions( ?string $before = null ): int { $boundary ) ); - // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.NotPrepared + // phpcs:enable WordPress.DB.PreparedSQL.NotPrepared $expired = 0; foreach ( (array) $action_ids as $action_id ) { @@ -630,7 +631,7 @@ private static function get_row( string $action_id ): ?array { $wpdb->prepare( 'SELECT * FROM %i WHERE action_id = %s', self::get_table_name(), $action_id ), ARRAY_A ); - // phpcs:enable WordPress.DB.DirectDatabaseQuery.DirectQuery, WordPress.DB.PreparedSQL.NotPrepared + // phpcs:enable WordPress.DB.PreparedSQL.NotPrepared return is_array( $row ) ? $row : null; } diff --git a/inc/Engine/AI/System/Tasks/DailyMemoryTask.php b/inc/Engine/AI/System/Tasks/DailyMemoryTask.php index 175731a65..4f3187641 100644 --- a/inc/Engine/AI/System/Tasks/DailyMemoryTask.php +++ b/inc/Engine/AI/System/Tasks/DailyMemoryTask.php @@ -1,4 +1,5 @@ Date: Fri, 22 May 2026 18:55:06 -0400 Subject: [PATCH 2/2] fix: keep direct db annotations lint clean --- inc/Cli/Commands/ProcessedItemsCommand.php | 5 ++--- inc/Core/Database/BaseRepository.php | 1 - inc/Core/Database/Jobs/Jobs.php | 1 - inc/Core/Database/ProcessedItems/ProcessedItems.php | 3 +-- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/inc/Cli/Commands/ProcessedItemsCommand.php b/inc/Cli/Commands/ProcessedItemsCommand.php index 80fbf5f70..e42f18507 100644 --- a/inc/Cli/Commands/ProcessedItemsCommand.php +++ b/inc/Cli/Commands/ProcessedItemsCommand.php @@ -1,5 +1,4 @@ last_error ); diff --git a/inc/Core/Database/BaseRepository.php b/inc/Core/Database/BaseRepository.php index 628691d4d..d27670d24 100644 --- a/inc/Core/Database/BaseRepository.php +++ b/inc/Core/Database/BaseRepository.php @@ -1,5 +1,4 @@