Skip to content

feat: add EnforceCurrentUserAttributeRule #51

feat: add EnforceCurrentUserAttributeRule

feat: add EnforceCurrentUserAttributeRule #51

Triggered via pull request May 22, 2026 12:33
Status Success
Total duration 2m 42s
Artifacts 4

ci.yml

on: pull_request
Matrix: check
Fit to window
Zoom out
Zoom in

Annotations

20 warnings
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L144
Escaped Mutant for Mutator "LogicalNot": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + || $node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L144
Escaped Mutant for Mutator "InstanceOf_": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + || $node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ if ( !$node->var instanceof PropertyFetch || !$node->var->var instanceof Variable - || $node->var->var->name !== 'this' - || !$node->var->name instanceof Identifier + || $node->var->var->name !== 'this' && !$node->var->name instanceof Identifier ) { return false; }
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable - || $node->var->var->name !== 'this' + || !$node->var->var instanceof Variable && $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) { return false;
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + !$node->var instanceof PropertyFetch && !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalNot": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch + $node->var instanceof PropertyFetch || !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "InstanceOf_": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch + $node->var instanceof PropertyFetch || !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L125
Escaped Mutant for Mutator "LogicalAnd": @@ @@ $count = 0; $this->walkNodes($method->stmts ?? [], function(Node $node) use (&$count, $nonDatabaseProperties): void { if ( - $node instanceof MethodCall - && $node->name instanceof Identifier + ($node instanceof MethodCall || $node->name instanceof Identifier) && in_array($node->name->toString(), self::WRITE_METHODS, true) && !$this->isOnNonDatabaseProperty($node, $nonDatabaseProperties) ) {
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L94
Escaped Mutant for Mutator "LogicalOr": @@ @@ $executeMethod = $node->getMethod('execute'); - if ($executeMethod === null || $executeMethod->stmts === null) { + if ($executeMethod === null && $executeMethod->stmts === null) { return []; }
check (8.5): src/Rules/EnforceActionTransactionsRule.php#L88
Escaped Mutant for Mutator "LogicalOr": @@ @@ { $namespace = $scope->getNamespace(); - if ($namespace === null || !str_starts_with($namespace, 'App\Actions')) { + if ($namespace === null && !str_starts_with($namespace, 'App\Actions')) { return []; }
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L144
Escaped Mutant for Mutator "LogicalNot": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + || $node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L144
Escaped Mutant for Mutator "InstanceOf_": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + || $node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ if ( !$node->var instanceof PropertyFetch || !$node->var->var instanceof Variable - || $node->var->var->name !== 'this' - || !$node->var->name instanceof Identifier + || $node->var->var->name !== 'this' && !$node->var->name instanceof Identifier ) { return false; }
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ { if ( !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable - || $node->var->var->name !== 'this' + || !$node->var->var instanceof Variable && $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) { return false;
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalOr": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch - || !$node->var->var instanceof Variable + !$node->var instanceof PropertyFetch && !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier ) {
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "LogicalNot": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch + $node->var instanceof PropertyFetch || !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L143
Escaped Mutant for Mutator "InstanceOf_": @@ @@ private function isOnNonDatabaseProperty(MethodCall $node, array $nonDatabaseProperties): bool { if ( - !$node->var instanceof PropertyFetch + $node->var instanceof PropertyFetch || !$node->var->var instanceof Variable || $node->var->var->name !== 'this' || !$node->var->name instanceof Identifier
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L125
Escaped Mutant for Mutator "LogicalAnd": @@ @@ $count = 0; $this->walkNodes($method->stmts ?? [], function(Node $node) use (&$count, $nonDatabaseProperties): void { if ( - $node instanceof MethodCall - && $node->name instanceof Identifier + ($node instanceof MethodCall || $node->name instanceof Identifier) && in_array($node->name->toString(), self::WRITE_METHODS, true) && !$this->isOnNonDatabaseProperty($node, $nonDatabaseProperties) ) {
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L94
Escaped Mutant for Mutator "LogicalOr": @@ @@ $executeMethod = $node->getMethod('execute'); - if ($executeMethod === null || $executeMethod->stmts === null) { + if ($executeMethod === null && $executeMethod->stmts === null) { return []; }
check (8.4): src/Rules/EnforceActionTransactionsRule.php#L88
Escaped Mutant for Mutator "LogicalOr": @@ @@ { $namespace = $scope->getNamespace(); - if ($namespace === null || !str_starts_with($namespace, 'App\Actions')) { + if ($namespace === null && !str_starts_with($namespace, 'App\Actions')) { return []; }

Artifacts

Produced during runtime
Name Size Digest
clover-php-8.4
3.57 KB
sha256:5cb339e79a9a88a372318ad2d73df0d77a0537caee8989becbfa86ea35efbfd4
clover-php-8.5
3.57 KB
sha256:68b979e8012206f14e10435eaa8f0ea09be0e5bbf464985e3be9628a44fb36f6
infection-php-8.4
160 KB
sha256:07d4d53f4400fc8a64f1b0dab9cae3caf6dbab10c92f7f2a6401a43b7e520a46
infection-php-8.5
160 KB
sha256:5e270004e809970ff7f3db0f575ff38c6fe28dd63e418935cc2463405b8f71ed