Add Homeboy CI workflow for automated PR review#526
Conversation
Homeboy Results —
|
There was a problem hiding this comment.
Collateral damage (417 issue(s) in untouched files)
These errors are in files you did not modify but may be caused by your changes:
data-machine.php
- ❌ L421: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L428: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L401: Parameter #1 $new_blog_id of function switch_to_blog expects int, string given.
argument.type
inc/Abilities/AgentMemoryAbilities.php
⚠️ L247: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Abilities/Analytics/BingWebmasterAbilities.php
- ❌ L232: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda ⚠️ L245: Equals sign not aligned with surrounding assignments; expected 5 spaces but found 1 spaceGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L246: Equals sign not aligned with surrounding assignments; expected 5 spaces but found 1 spaceGeneric.Formatting.MultipleStatementAlignment.NotSameWarning
inc/Abilities/Analytics/GoogleAnalyticsAbilities.php
⚠️ L437: The method parameter $report_config is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed⚠️ L537: base64_encode() can be used to obfuscate code which is strongly discouraged. Please verify that the function is used for benign reasons.WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode
inc/Abilities/Analytics/GoogleSearchConsoleAbilities.php
⚠️ L659: base64_encode() can be used to obfuscate code which is strongly discouraged. Please verify that the function is used for benign reasons.WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_encode
inc/Abilities/Analytics/PageSpeedAbilities.php
⚠️ L207: Equals sign not aligned with surrounding assignments; expected 3 spaces but found 1 spaceGeneric.Formatting.MultipleStatementAlignment.NotSameWarning
inc/Abilities/ChatAbilities.php
- ❌ L24: Property DataMachine\Abilities\ChatAbilities::$list_sessions is never read, only written.
property.onlyWritten - ❌ L25: Property DataMachine\Abilities\ChatAbilities::$get_session is never read, only written.
property.onlyWritten - ❌ L26: Property DataMachine\Abilities\ChatAbilities::$delete_session is never read, only written.
property.onlyWritten - ❌ L27: Property DataMachine\Abilities\ChatAbilities::$create_session is never read, only written.
property.onlyWritten
inc/Abilities/Content/EditPostBlocksAbility.php
⚠️ L142: The method parameter $tool_def is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Abilities/Content/GetPostBlocksAbility.php
⚠️ L141: The method parameter $tool_def is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed- ❌ L183: Offset 'innerHTML' on array{blockName: string|null, attrs: array, innerBlocks: array, innerHTML: string, innerContent: array} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Abilities/Content/ReplacePostBlocksAbility.php
⚠️ L137: The method parameter $tool_def is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Abilities/DailyMemoryAbilities.php
⚠️ L281: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Abilities/Engine/ExecuteStepAbility.php
- ❌ L253: Method DataMachine\Abilities\Engine\ExecuteStepAbility::resolveFlowStepConfig() never returns null so it can be removed from the return type.
return.unusedType
inc/Abilities/Engine/PipelineBatchScheduler.php
⚠️ L82: Array double arrow not aligned correctly; expected 13 space(s) between "'batch'" and double arrow, but found 14.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L83: Array double arrow not aligned correctly; expected 7 space(s) between "'batch_total'" and double arrow, but found 8.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L84: Array double arrow not aligned correctly; expected 3 space(s) between "'batch_scheduled'" and double arrow, but found 4.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L85: Array double arrow not aligned correctly; expected 2 space(s) between "'batch_chunk_size'" and double arrow, but found 3.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L86: Array double arrow not aligned correctly; expected 1 space(s) between "'next_flow_step_id'" and double arrow, but found 2.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned- ...and 7 more
inc/Abilities/Engine/ScheduleNextStepAbility.php
- ❌ L162: Strict comparison using !== between false and int will always evaluate to true.
notIdentical.alwaysTrue - ❌ L168: Strict comparison using !== between false and int will always evaluate to true.
notIdentical.alwaysTrue
inc/Abilities/EngineAbilities.php
- ❌ L26: Property DataMachine\Abilities\EngineAbilities::$run_flow is never read, only written.
property.onlyWritten - ❌ L27: Property DataMachine\Abilities\EngineAbilities::$execute_step is never read, only written.
property.onlyWritten - ❌ L28: Property DataMachine\Abilities\EngineAbilities::$schedule_next_step is never read, only written.
property.onlyWritten - ❌ L29: Property DataMachine\Abilities\EngineAbilities::$schedule_flow is never read, only written.
property.onlyWritten
inc/Abilities/Fetch/FetchFilesAbility.php
- ❌ L278: The closing brace for the class must go on the next line after the body
PSR2.Classes.ClassDeclaration.CloseBraceAfterBody - ❌ L269: Offset 'type' on array{ext: string|false, type: string|false} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Abilities/Fetch/FetchRssAbility.php
⚠️ L207: Equals sign not aligned with surrounding assignments; expected 2 spaces but found 3 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L208: Equals sign not aligned with surrounding assignments; expected 1 space but found 2 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning
inc/Abilities/Fetch/FetchWordPressMediaAbility.php
- ❌ L224: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda ⚠️ L252: Array double arrow not aligned correctly; expected 5 space(s) between "'title'" and double arrow, but found 4.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L253: Array double arrow not aligned correctly; expected 3 space(s) between "'content'" and double arrow, but found 2.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L254: Array double arrow not aligned correctly; expected 2 space(s) between "'metadata'" and double arrow, but found 1.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned- ❌ L248: Expression on left side of ?? is not nullable.
nullCoalesce.expr
inc/Abilities/Fetch/GetWordPressPostAbility.php
- ❌ L143: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L163: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L180: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L158: Expression on left side of ?? is not nullable.
nullCoalesce.expr
inc/Abilities/Fetch/QueryWordPressPostsAbility.php
- ❌ L246: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L262: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L284: Expression on left side of ?? is not nullable.
nullCoalesce.expr
inc/Abilities/FileAbilities.php
⚠️ L927: Variable assignment found within a condition. Did you mean to do a comparison ?Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition⚠️ L999: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents- ❌ L39: Property DataMachine\Abilities\FileAbilities::$db_pipelines is never read, only written.
property.onlyWritten - ❌ L721: Right side of && is always true.
booleanAnd.rightAlwaysTrue
inc/Abilities/FlowAbilities.php
- ❌ L36: Property DataMachine\Abilities\FlowAbilities::$webhook_trigger is never read, only written.
property.onlyWritten
inc/Abilities/FlowStep/ConfigureFlowStepsAbility.php
- ❌ L572: Variable $effective_slug on left side of ?? always exists and is not nullable.
nullCoalesce.variable
inc/Abilities/FlowStep/ValidateFlowStepsConfigAbility.php
- ❌ L297: Variable $warnings in empty() always exists and is always falsy.
empty.variable
inc/Abilities/HandlerAbilities.php
- ❌ L289: Variable $handler_slug in empty() always exists and is not falsy.
empty.variable
inc/Abilities/InternalLinkingAbilities.php
⚠️ L483: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L808: Use placeholders and $wpdb->prepare(); found interpolated variable $id_placeholders at WHERE ID IN ($id_placeholders) AND post_status = %s"
WordPress.DB.PreparedSQL.InterpolatedNotPrepared ⚠️ L1080: Array double arrow not aligned correctly; expected 3 space(s) between "'post_type'" and double arrow, but found 6.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L1081: Array double arrow not aligned correctly; expected 1 space(s) between "'post_status'" and double arrow, but found 4.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L1082: Array double arrow not aligned correctly; expected 4 space(s) between "'category'" and double arrow, but found 7.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned- ...and 31 more
inc/Abilities/Job/ExecuteWorkflowAbility.php
- ❌ L247: Offset 0 on non-empty-list<int<min, -1>|int<1, max>> on left side of ?? always exists and is not nullable.
nullCoalesce.offset - ❌ L392: Strict comparison using === between false and int will always evaluate to false.
identical.alwaysFalse
inc/Abilities/LocalSearchAbilities.php
⚠️ L184: Incorrect number of replacements passed to $wpdb->prepare(). Found 1 replacement parameters, expected 2.WordPress.DB.PreparedSQLPlaceholders.ReplacementsWrongNumber- ❌ L186: Use placeholders and $wpdb->prepare(); found interpolated variable {$post_type_placeholders} at WHERE post_type IN ({$post_type_placeholders})\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L169: Call to function is_wp_error() with WP_Query will always evaluate to false.
function.impossibleType
inc/Abilities/LogAbilities.php
⚠️ L363: Silencing errors is strongly discouraged. Use proper error checking instead. Found: @file( $log_file,...WordPress.PHP.NoSilencedErrors.Discouraged- ❌ L283: Call to static method write() on an unknown class DataMachine\Engine\Logger.
class.notFound
inc/Abilities/Media/AltTextAbilities.php
⚠️ L276: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L261: Offset 'batch_id' on array{batch_id: string, total: int, chunk_size: int} on left side of ?? always exists and is not nullable.
nullCoalesce.offset - ❌ L265: Offset 'chunk_size' on array{batch_id: string, total: int, chunk_size: int} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Abilities/Media/GDRenderer.php
⚠️ L799: Silencing errors is strongly discouraged. Use proper error checking instead. Found: @Unlink( $temp_file ...WordPress.PHP.NoSilencedErrors.Discouraged⚠️ L799: unlink() is discouraged. Use wp_delete_file() to delete a file.WordPress.WP.AlternativeFunctions.unlink_unlink⚠️ L802: Silencing errors is strongly discouraged. Use proper error checking instead. Found: @Unlink( $path ...WordPress.PHP.NoSilencedErrors.Discouraged⚠️ L802: unlink() is discouraged. Use wp_delete_file() to delete a file.WordPress.WP.AlternativeFunctions.unlink_unlink⚠️ L827: Silencing errors is strongly discouraged. Use proper error checking instead. Found: @Unlink( $temp_path ...WordPress.PHP.NoSilencedErrors.Discouraged- ...and 3 more
inc/Abilities/Media/ImageTemplateAbilities.php
⚠️ L219: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Abilities/Media/PlatformPresets.php
⚠️ L85: Words in hook names should be separated using underscores. Expected: 'datamachine_image_generation_platform_presets', but found: 'datamachine/image_generation/platform_presets'.WordPress.NamingConventions.ValidHookName.UseUnderscores
inc/Abilities/Media/TemplateRegistry.php
⚠️ L107: Words in hook names should be separated using underscores. Expected: 'datamachine_image_generation_templates', but found: 'datamachine/image_generation/templates'.WordPress.NamingConventions.ValidHookName.UseUnderscores
inc/Abilities/Pipeline/PipelineHelpers.php
⚠️ L126: This comment is 43% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found
inc/Abilities/PipelineStepAbilities.php
- ❌ L298: Variable $pipeline_step_id in empty() always exists and is not falsy.
empty.variable - ❌ L563: Offset 'providers' on array{system_prompt?: mixed, provider?: string, model: string} in isset() does not exist.
isset.offset
inc/Abilities/PostQueryAbilities.php
⚠️ L453: The method parameter $tool_def is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Abilities/Publish/PublishWordPressAbility.php
- ❌ L396: Call to function is_wp_error() with int<0, max> will always evaluate to false.
function.impossibleType
inc/Abilities/SEO/MetaDescriptionAbilities.php
- ❌ L319: Using short ternaries is not allowed as they are rarely used correctly
Universal.Operators.DisallowShortTernary.Found - ❌ L221: Offset 'batch_id' on array{batch_id: string, total: int, chunk_size: int} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Abilities/SettingsAbilities.php
⚠️ L315: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L545: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L708: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Abilities/StepTypeAbilities.php
- ❌ L147: Variable $step_type_slug in empty() always exists and is not falsy.
empty.variable
inc/Abilities/SystemAbilities.php
⚠️ L213: The method parameter $options is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L250: Ternary operator condition is always true.
ternary.alwaysTrue
inc/Abilities/TaxonomyAbilities.php
- ❌ L32: Property DataMachine\Abilities\TaxonomyAbilities::$resolve_term is never read, only written.
property.onlyWritten
inc/Abilities/Update/UpdateWordPressAbility.php
- ❌ L290: Strict comparison using === between 0 and int<1, max> will always evaluate to false.
identical.alwaysFalse
inc/Abilities/WorkspaceAbilities.php
⚠️ L445: The method parameter $input is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Analytics.php
⚠️ L80: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Auth.php
⚠️ L98: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Chat/ChatFilters.php
- ❌ L28: Call to function DataMachine\Api\Chat\datamachine_register_chat_filters() on a separate line has no effect.
function.resultUnused
inc/Api/Chat/ChatPipelinesDirective.php
- ❌ L73: Offset 'execution_order' on array{pipeline_step_id: string, step_name: string, step_type: string, execution_order: int} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Api/Chat/Tools/ApiQuery.php
- ❌ L220: Call to function is_wp_error() with WP_REST_Response will always evaluate to false.
function.impossibleType - ❌ L275: Variable $next in empty() always exists and is not falsy.
empty.variable
inc/Api/Chat/Tools/CreatePipeline.php
⚠️ L290: This comment is 43% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found⚠️ L316: This comment is 43% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found
inc/Api/Chat/Tools/CreateTaxonomyTerm.php
⚠️ L193: It is recommended not to use reserved keyword "parent" as function parameter name. Found: $parentUniversal.NamingConventions.NoReservedKeywordParameterNames.parentFound
inc/Api/Chat/Tools/UpdateTaxonomyTerm.php
⚠️ L245: It is recommended not to use reserved keyword "parent" as function parameter name. Found: $parentUniversal.NamingConventions.NoReservedKeywordParameterNames.parentFound
inc/Api/Files.php
⚠️ L261: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L410: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L529: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Flows/FlowQueue.php
⚠️ L214: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L331: If control structure block found as the only statement within an "else" block. Use elseif instead.
Universal.ControlStructures.DisallowLonelyIf.Found
inc/Api/Flows/FlowSteps.php
⚠️ L218: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Flows/Flows.php
⚠️ L247: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/InternalLinks.php
⚠️ L82: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L136: Call to function is_array() with array will always evaluate to true.
function.alreadyNarrowedType
inc/Api/Jobs.php
⚠️ L151: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Logs.php
⚠️ L190: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L207: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Pipelines/PipelineFlows.php
⚠️ L52: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Pipelines/PipelineSteps.php
⚠️ L214: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L315: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed- ❌ L557: Assignments must be the first block of code on a line
Squiz.PHP.DisallowMultipleAssignments.Found - ❌ L576: Empty CATCH statement detected
Generic.CodeAnalysis.EmptyStatement.DetectedCatch - ❌ L522: Offset 'providers' on array{provider?: mixed, model: mixed} in isset() does not exist.
isset.offset - ...and 2 more
inc/Api/Pipelines/Pipelines.php
⚠️ L223: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L549: Static method DataMachine\Api\Pipelines\Pipelines::add_display_fields() is unused.
method.unused
inc/Api/ProcessedItems.php
⚠️ L74: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Api/Providers.php
- ❌ L104: Method DataMachine\Api\Providers::handle_get_providers() should return WP_REST_Response but returns WP_Error.
return.type
inc/Api/Settings.php
⚠️ L178: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L198: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L302: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L356: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L386: Method DataMachine\Api\Settings::handle_get_handler_defaults() should return WP_REST_Response but returns WP_Error.
return.type
inc/Api/System/System.php
⚠️ L73: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found⚠️ L93: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found- ❌ L139: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L74: Method DataMachine\Api\System\System::get_status() should return array|WP_Error but returns WP_REST_Response.
return.type
inc/Api/Users.php
⚠️ L221: The method parameter $request is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Cli/Commands/BlocksCommand.php
⚠️ L85: strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.WordPress.WP.AlternativeFunctions.strip_tags_strip_tags⚠️ L172: strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.WordPress.WP.AlternativeFunctions.strip_tags_strip_tags⚠️ L173: strip_tags() is discouraged. Use the more comprehensive wp_strip_all_tags() instead.WordPress.WP.AlternativeFunctions.strip_tags_strip_tags
inc/Cli/Commands/Flows/FlowsCommand.php
⚠️ L418: Array double arrow not aligned correctly; expected 3 space(s) between "'step_id'" and double arrow, but found 4.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L419: Array double arrow not aligned correctly; expected 5 space(s) between "'order'" and double arrow, but found 6.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L420: Array double arrow not aligned correctly; expected 1 space(s) between "'step_type'" and double arrow, but found 2.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L421: Array double arrow not aligned correctly; expected 3 space(s) between "'handler'" and double arrow, but found 4.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned⚠️ L422: Array double arrow not aligned correctly; expected 4 space(s) between "'config'" and double arrow, but found 5.WordPress.Arrays.MultipleStatementAlignment.DoubleArrowNotAligned- ...and 10 more
inc/Cli/Commands/Flows/QueueCommand.php
- ❌ L596: Comparison operation ">" between int<1, max> and 0 is always true.
greater.alwaysTrue
inc/Cli/Commands/JobsCommand.php
- ❌ L1066: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at "SELECT job_id FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L355: Call to static method YAMLDump() on an unknown class Spyc.
class.notFound
inc/Cli/Commands/PipelinesCommand.php
⚠️ L688: Equals sign not aligned with surrounding assignments; expected 3 spaces but found 4 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L689: Equals sign not aligned with surrounding assignments; expected 1 space but found 2 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L690: Equals sign not aligned with surrounding assignments; expected 2 spaces but found 3 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning- ❌ L596: Right side of && is always true.
booleanAnd.rightAlwaysTrue
inc/Core/ActionScheduler/QueueTuning.php
⚠️ L33: This comment is 75% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found⚠️ L34: This comment is 50% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found⚠️ L35: This comment is 75% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found
inc/Core/Admin/DateFormatter.php
⚠️ L46: The method parameter $status is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Core/Admin/FlowFormatter.php
- ❌ L62: Variable $effective_slug in empty() always exists and is not falsy.
empty.variable
inc/Core/Admin/Settings/SettingsFilters.php
⚠️ L67: The method parameter $data is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Core/Database/BaseRepository.php
- ❌ L69: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared ⚠️ L71: Replacement variables found, but no valid placeholders found in the query.WordPress.DB.PreparedSQLPlaceholders.UnfinishedPrepare- ❌ L72: Use placeholders and $wpdb->prepare(); found $id
WordPress.DB.PreparedSQL.NotPrepared - ❌ L45: Access to undefined constant static(DataMachine\Core\Database\BaseRepository)::TABLE_NAME.
classConstant.notFound
inc/Core/Database/Flows/Flows.php
- ❌ L205: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ❌ L232: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ❌ L234: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ❌ L235: Use placeholders and $wpdb->prepare(); found $pipeline_id
WordPress.DB.PreparedSQL.NotPrepared - ❌ L236: Use placeholders and $wpdb->prepare(); found $per_page
WordPress.DB.PreparedSQL.NotPrepared - ...and 7 more
inc/Core/Database/Jobs/Jobs.php
- ❌ L196: Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "ALTER TABLE {$table_name} MODIFY status varchar(255) NOT NULL"
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L209: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L211: Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "ALTER TABLE {$table_name} MODIFY pipeline_id varchar(20) NOT NULL"
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L223: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L225: Use placeholders and $wpdb->prepare(); found interpolated variable {$table_name} at "ALTER TABLE {$table_name} MODIFY flow_id varchar(20) NOT NULL"
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ...and 5 more
inc/Core/Database/Jobs/JobsOperations.php
- ❌ L405: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ❌ L407: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ❌ L408: Use placeholders and $wpdb->prepare(); found $like_pattern
WordPress.DB.PreparedSQL.NotPrepared - ❌ L409: Use placeholders and $wpdb->prepare(); found $cutoff_datetime
WordPress.DB.PreparedSQL.NotPrepared - ❌ L448: Use placeholders and $wpdb->prepare(); found $this
WordPress.DB.PreparedSQL.NotPrepared - ...and 7 more
inc/Core/Database/Pipelines/Pipelines.php
- ❌ L167: Variable $update_data in empty() always exists and is not falsy.
empty.variable
inc/Core/EngineData.php
⚠️ L145: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Core/ExecutionContext.php
- ❌ L149: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L158: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L214: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda
inc/Core/FilesRepository/AgentMemory.php
⚠️ L69: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents⚠️ L92: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents⚠️ L115: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents⚠️ L146: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents⚠️ L185: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents- ...and 4 more
inc/Core/FilesRepository/DailyMemory.php
⚠️ L104: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents⚠️ L135: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: file_put_contents().WordPress.WP.AlternativeFunctions.file_system_operations_file_put_contents⚠️ L177: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: file_put_contents().WordPress.WP.AlternativeFunctions.file_system_operations_file_put_contents⚠️ L179: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: file_put_contents().WordPress.WP.AlternativeFunctions.file_system_operations_file_put_contents⚠️ L431: Variable assignment found within a condition. Did you mean to do a comparison ?Generic.CodeAnalysis.AssignmentInCondition.FoundInWhileCondition- ...and 3 more
inc/Core/FilesRepository/DirectoryManager.php
⚠️ L125: The method parameter $pipeline_name is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed⚠️ L169: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().WordPress.WP.AlternativeFunctions.file_system_operations_is_writable
inc/Core/FilesRepository/FileRetrieval.php
⚠️ L46: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
inc/Core/FilesRepository/ImageValidator.php
- ❌ L33: Constant DataMachine\Core\FilesRepository\ImageValidator::MAX_FILE_SIZE is unused.
classConstant.unused
inc/Core/FilesRepository/Workspace.php
⚠️ L458: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: file_put_contents().WordPress.WP.AlternativeFunctions.file_system_operations_file_put_contents⚠️ L463: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: file_put_contents().WordPress.WP.AlternativeFunctions.file_system_operations_file_put_contents
inc/Core/FilesRepository/WorkspaceWriter.php
⚠️ L106: Silencing errors is strongly discouraged. Use proper error checking instead. Found: @Unlink( $file_path ...WordPress.PHP.NoSilencedErrors.Discouraged⚠️ L165: File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: is_writable().WordPress.WP.AlternativeFunctions.file_system_operations_is_writable
inc/Core/HttpClient.php
- ❌ L79: Offset 'DELETE'|'GET'|'PATCH'|'POST'|'PUT' on array{GET: array{200, 202}, POST: array{200, 201, 202}, PUT: array{200, 201, 204}, PATCH: array{200, 204}, DELETE: array{200, 202, 204}} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Core/JobStatus.php
- ❌ L151: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L159: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L173: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L187: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ❌ L195: Use Yoda Condition checks, you must.
WordPress.PHP.YodaConditions.NotYoda - ...and 4 more
inc/Core/NetworkSettings.php
⚠️ L58: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Core/OAuth/BaseOAuth1Provider.php
- ❌ L54: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType
inc/Core/OAuth/BaseOAuth2Provider.php
- ❌ L72: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType - ❌ L103: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType - ❌ L315: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType - ❌ L376: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType
inc/Core/OAuth/OAuth1Handler.php
⚠️ L50: Loose comparisons are not allowed. Expected: "!=="; Found: "!="Universal.Operators.StrictComparisons.LooseNotEqual⚠️ L244: Loose comparisons are not allowed. Expected: "!=="; Found: "!="Universal.Operators.StrictComparisons.LooseNotEqual- ❌ L44: Instantiated class Abraham\TwitterOAuth\TwitterOAuth not found.
class.notFound - ❌ L47: Call to method oauth() on an unknown class Abraham\TwitterOAuth\TwitterOAuth.
class.notFound - ❌ L50: Call to method getLastHttpCode() on an unknown class Abraham\TwitterOAuth\TwitterOAuth.
class.notFound - ...and 8 more
inc/Core/PluginSettings.php
⚠️ L42: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L63: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Core/Selection/SelectionMode.php
⚠️ L132: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Core/Steps/AI/AIStep.php
- ❌ L141: Offset 'type' on array{ext: string|false, type: string|false} on left side of ?? always exists and is not nullable.
nullCoalesce.offset - ❌ L160: Variable $mime_type on left side of ?? always exists and is not nullable.
nullCoalesce.variable - ❌ L265: PHPDoc tag @param references unknown parameter: $data
parameter.notFound
inc/Core/Steps/Fetch/Handlers/FetchHandler.php
⚠️ L391: The method parameter $engine_data is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed- ❌ L66: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType
inc/Core/Steps/Fetch/Handlers/Files/Files.php
- ❌ L115: Call to an undefined method DataMachine\Core\Database\ProcessedItems\ProcessedItems::get_processed_item_ids().
method.notFound
inc/Core/Steps/Fetch/Handlers/Rss/Rss.php
- ❌ L103: When a multi-item array uses associative keys, each value should start on a new line.
WordPress.Arrays.ArrayDeclarationSpacing.AssociativeArrayFound
inc/Core/Steps/Fetch/Handlers/WordPressAPI/WordPressAPI.php
⚠️ L126: Equals sign not aligned with surrounding assignments; expected 8 spaces but found 12 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L127: Equals sign not aligned with surrounding assignments; expected 9 spaces but found 13 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L128: Equals sign not aligned with surrounding assignments; expected 1 space but found 5 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning- ❌ L169: Call to an undefined method DataMachine\Core\Database\ProcessedItems\ProcessedItems::get_processed_item_ids().
method.notFound
inc/Core/Steps/Fetch/Handlers/WordPressMedia/WordPressMedia.php
- ❌ L118: Call to an undefined method DataMachine\Core\Database\ProcessedItems\ProcessedItems::get_processed_item_ids().
method.notFound
inc/Core/Steps/Fetch/Tools/SkipItemTool.php
⚠️ L34: The method parameter $tool_def is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Core/Steps/HandlerRegistrationTrait.php
⚠️ L39: It is recommended not to use reserved keyword "class" as function parameter name. Found: $classUniversal.NamingConventions.NoReservedKeywordParameterNames.classFound
inc/Core/Steps/QueueableTrait.php (in context of class DataMachine\Core\Steps\AI\AIStep)
- ❌ L78: Call to function property_exists() with $this(DataMachine\Core\Steps\AI\AIStep) and 'job_id' will always evaluate to true.
function.alreadyNarrowedType
inc/Core/Steps/QueueableTrait.php (in context of class DataMachine\Core\Steps\AgentPing\AgentPingStep)
- ❌ L78: Call to function property_exists() with $this(DataMachine\Core\Steps\AgentPing\AgentPingStep) and 'job_id' will always evaluate to true.
function.alreadyNarrowedType
inc/Core/Steps/Settings/SettingsDisplayService.php
- ❌ L192: Strict comparison using === between null and mixed will always evaluate to false.
identical.alwaysFalse
inc/Core/Steps/Settings/SettingsHandler.php
⚠️ L110: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L123: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L166: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L179: Loose comparisons are not allowed. Expected: "==="; Found: "=="Universal.Operators.StrictComparisons.LooseEqual
inc/Core/Steps/StepTypeRegistrationTrait.php
⚠️ L50: It is recommended not to use reserved keyword "class" as function parameter name. Found: $classUniversal.NamingConventions.NoReservedKeywordParameterNames.classFound
inc/Core/WordPress/PostTracking.php
⚠️ L100: This comment is 55% valid code; is this commented out code?Squiz.PHP.CommentedOutCode.Found
inc/Core/WordPress/SiteContext.php
- ❌ L92: Call to function is_object() with stdClass will always evaluate to true.
function.alreadyNarrowedType - ❌ L132: Call to function is_object() with stdClass will always evaluate to true.
function.alreadyNarrowedType - ❌ L137: Property WP_Taxonomy::$object_type (array) on left side of ?? is not nullable.
nullCoalesce.property
inc/Core/WordPress/TaxonomyHandler.php
⚠️ L294: The method parameter $engine_data is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed- ❌ L222: Right side of && is always true.
booleanAnd.rightAlwaysTrue
inc/Core/WordPress/WordPressFilters.php
- ❌ L30: Call to function DataMachine\Core\WordPress\datamachine_register_wordpress_utilities() on a separate line has no effect.
function.resultUnused
inc/Core/WordPress/WordPressPublishHelper.php
- ❌ L45: Offset 'type' on array{ext: string|false, type: string|false} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Core/WordPress/WordPressSettingsResolver.php
⚠️ L31: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L50: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Engine/AI/ConversationManager.php
⚠️ L114: The method parameter $tool_parameters is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Engine/AI/Directives/CoreMemoryFilesDirective.php
⚠️ L88: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
inc/Engine/AI/Directives/MemoryFilesReader.php
⚠️ L54: file_get_contents() is discouraged. Use wp_remote_get() for remote URLs instead.WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
inc/Engine/AI/Directives/SiteContextDirective.php
- ❌ L35: Call to function is_array() with non-empty-array will always evaluate to true.
function.alreadyNarrowedType
inc/Engine/AI/PromptBuilder.php
- ❌ L122: Call to function is_array() with array will always evaluate to true.
function.alreadyNarrowedType - ❌ L131: Call to function is_array() with array will always evaluate to true.
function.alreadyNarrowedType
inc/Engine/AI/System/SystemAgent.php
- ❌ L517: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L607: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at "SELECT * FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L411: Variable $jobs_db in isset() always exists and is not nullable.
isset.variable - ❌ L458: Variable $jobs_db in isset() always exists and is not nullable.
isset.variable
inc/Engine/AI/System/SystemAgentServiceProvider.php
⚠️ L61: Equals sign not aligned with surrounding assignments; expected 12 spaces but found 8 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L62: Equals sign not aligned with surrounding assignments; expected 9 spaces but found 5 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L63: Equals sign not aligned with surrounding assignments; expected 9 spaces but found 5 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L64: Equals sign not aligned with surrounding assignments; expected 12 spaces but found 8 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L65: Equals sign not aligned with surrounding assignments; expected 5 spaces but found 7 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning- ...and 1 more
inc/Engine/AI/System/Tasks/AltTextTask.php
- ❌ L68: Offset 'type' on array{ext: string|false, type: string|false} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Engine/AI/System/Tasks/DailyMemoryTask.php
- ❌ L170: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L217: Use placeholders and $wpdb->prepare(); found interpolated variable {$table} at FROM {$table}\n
WordPress.DB.PreparedSQL.InterpolatedNotPrepared - ❌ L101: Offset 'message' on array{success: false, message: string} on left side of ?? always exists and is not nullable.
nullCoalesce.offset
inc/Engine/AI/System/Tasks/ImageGenerationTask.php
⚠️ L719: Avoid function calls in a FOR loop test partGeneric.CodeAnalysis.ForLoopWithTestFunctionCall.NotAllowed- ❌ L719: The use of count() inside a loop condition is not allowed; assign the return value to a variable and use the variable in the loop condition instead
Squiz.PHP.DisallowSizeFunctionsInLoops.Found
inc/Engine/AI/System/Tasks/InternalLinkingTask.php
⚠️ L546: Equals sign not aligned with surrounding assignments; expected 1 space but found 2 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning⚠️ L547: Equals sign not aligned with surrounding assignments; expected 3 spaces but found 4 spacesGeneric.Formatting.MultipleStatementAlignment.NotSameWarning
inc/Engine/AI/System/Tasks/MetaDescriptionTask.php
- ❌ L234: String "- Maximum " does not require double quotes; use single quotes instead
Squiz.Strings.DoubleQuoteUsage.NotRequired - ❌ L242: String "Return ONLY the meta description text, nothing else." does not require double quotes; use single quotes instead
Squiz.Strings.DoubleQuoteUsage.NotRequired
inc/Engine/AI/Tools/BaseTool.php
⚠️ L76: The method parameter $tool_id is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.Found
inc/Engine/AI/Tools/Global/AmazonAffiliateLink.php
- ❌ L358: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L363: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/Global/BingWebmaster.php
- ❌ L157: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/Global/GoogleAnalytics.php
- ❌ L173: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L178: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L186: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L191: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/Global/GoogleSearch.php
- ❌ L205: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/Global/GoogleSearchConsole.php
- ❌ L187: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L195: Unreachable statement - code above always terminates.
deadCode.unreachable - ❌ L200: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/Global/ImageGeneration.php
- ❌ L176: Unreachable statement - code above always terminates.
deadCode.unreachable
inc/Engine/AI/Tools/ToolParameters.php
⚠️ L25: The method parameter $tool_definition is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Engine/Actions/Engine.php
⚠️ L76: The method parameter $dataPackets is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Engine/Actions/Handlers/LogManageHandler.php
- ❌ L69: Variable $max_size_mb on left side of ?? always exists and is not nullable.
nullCoalesce.variable - ❌ L70: Variable $max_age_days on left side of ?? always exists and is not nullable.
nullCoalesce.variable
inc/Engine/Actions/Handlers/MarkItemProcessedHandler.php
- ❌ L28: Result of || is always false.
booleanOr.alwaysFalse - ❌ L28: Variable $flow_step_id in isset() always exists and is not nullable.
isset.variable - ❌ L41: Method DataMachine\Engine\Actions\Handlers\MarkItemProcessedHandler::handle() should return bool|null but empty return statement found.
return.empty - ❌ L44: Call to function is_numeric() with int<min, -1>|int<1, max> will always evaluate to true.
function.alreadyNarrowedType - ❌ L58: Method DataMachine\Engine\Actions\Handlers\MarkItemProcessedHandler::handle() should return bool|null but empty return statement found.
return.empty
inc/Engine/Filters/Admin.php
⚠️ L28: The method parameter $data is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed⚠️ L300: The method parameter $page_slug is never usedGeneric.CodeAnalysis.UnusedFunctionParameter.FoundAfterLastUsed
inc/Engine/Filters/DataMachineFilters.php
⚠️ L76: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L98: It is recommended not to use reserved keyword "null" as function parameter name. Found: $nullUniversal.NamingConventions.NoReservedKeywordParameterNames.nullFound
inc/Engine/Filters/Handlers.php
⚠️ L18: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L55: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound⚠️ L86: It is recommended not to use reserved keyword "default" as function parameter name. Found: $defaultUniversal.NamingConventions.NoReservedKeywordParameterNames.defaultFound
inc/Engine/Logger.php
- ❌ L123: Empty CATCH statement detected
Generic.CodeAnalysis.EmptyStatement.DetectedCatch - ❌ L36: Function datamachine_get_monolog_instance() has invalid return type Monolog\Logger.
class.notFound - ❌ L48: Instantiated class Monolog\Logger not found.
class.notFound - ❌ L52: Instantiated class Monolog\Handler\StreamHandler not found.
class.notFound - ❌ L54: Instantiated class Monolog\Formatter\LineFormatter not found.
class.notFound - ...and 14 more
Uses Extra-Chill/homeboy-action@v1 to run homeboy lint and test on every pull request. WordPress extension with SQLite for tests.
229cd51 to
0eb3bd7
Compare
Summary
.github/workflows/homeboy.ymlthat runshomeboy lintandhomeboy teston every PRWhat this enables
Every PR to data-machine will automatically get lint (PHPCS + ESLint + PHPStan) and test (PHPUnit) checks. Failed checks block merge.
Closes #268 (via homeboy-action)