Skip to content

This branch runs the mutation tests on each commit. #26

This branch runs the mutation tests on each commit.

This branch runs the mutation tests on each commit. #26

Triggered via push October 4, 2025 14:30
Status Failure
Total duration 44m 1s
Artifacts

mutation.yml

on: push
Matrix: psalm
Fit to window
Zoom out
Zoom in

Annotations

1 error and 10 warnings
Infection on PHP 8.4
Process completed with exit code 1.
Infection on PHP 8.4: src/Compat.php#L331
Escaped Mutant for Mutator "NotIdentical": @@ @@ if (ParagonIE_Sodium_Core_Util::strlen($nonce) !== self::CRYPTO_AEAD_AEGIS128L_NPUBBYTES) { throw new SodiumException('Nonce must be CRYPTO_AEAD_AEGIS_128L_NPUBBYTES long'); } - if (ParagonIE_Sodium_Core_Util::strlen($key) !== self::CRYPTO_AEAD_AEGIS128L_KEYBYTES) { + if (ParagonIE_Sodium_Core_Util::strlen($key) === self::CRYPTO_AEAD_AEGIS128L_KEYBYTES) { throw new SodiumException('Key must be CRYPTO_AEAD_AEGIS128L_KEYBYTES long'); } $ct_length = ParagonIE_Sodium_Core_Util::strlen($ciphertext);
Infection on PHP 8.4: src/Compat.php#L328
Escaped Mutant for Mutator "NotIdentical": @@ @@ ): string { /* Input validation: */ - if (ParagonIE_Sodium_Core_Util::strlen($nonce) !== self::CRYPTO_AEAD_AEGIS128L_NPUBBYTES) { + if (ParagonIE_Sodium_Core_Util::strlen($nonce) === self::CRYPTO_AEAD_AEGIS128L_NPUBBYTES) { throw new SodiumException('Nonce must be CRYPTO_AEAD_AEGIS_128L_NPUBBYTES long'); } if (ParagonIE_Sodium_Core_Util::strlen($key) !== self::CRYPTO_AEAD_AEGIS128L_KEYBYTES) {
Infection on PHP 8.4: src/Compat.php#L248
Escaped Mutant for Mutator "MatchArmRemoval": @@ @@ self::BASE64_VARIANT_ORIGINAL_NO_PADDING => ParagonIE_Sodium_Core_Base64_Original::encodeUnpadded($decoded), self::BASE64_VARIANT_URLSAFE => ParagonIE_Sodium_Core_Base64_UrlSafe::encode($decoded), self::BASE64_VARIANT_URLSAFE_NO_PADDING => ParagonIE_Sodium_Core_Base64_UrlSafe::encodeUnpadded($decoded), - default => throw new SodiumException('invalid base64 variant identifier'), }; } /**
Infection on PHP 8.4: src/Compat.php#L248
Escaped Mutant for Mutator "MatchArmRemoval": @@ @@ self::BASE64_VARIANT_ORIGINAL => ParagonIE_Sodium_Core_Base64_Original::encode($decoded), self::BASE64_VARIANT_ORIGINAL_NO_PADDING => ParagonIE_Sodium_Core_Base64_Original::encodeUnpadded($decoded), self::BASE64_VARIANT_URLSAFE => ParagonIE_Sodium_Core_Base64_UrlSafe::encode($decoded), - self::BASE64_VARIANT_URLSAFE_NO_PADDING => ParagonIE_Sodium_Core_Base64_UrlSafe::encodeUnpadded($decoded), default => throw new SodiumException('invalid base64 variant identifier'), }; }
Infection on PHP 8.4: src/Compat.php#L248
Escaped Mutant for Mutator "MatchArmRemoval": @@ @@ return match ($variant) { self::BASE64_VARIANT_ORIGINAL => ParagonIE_Sodium_Core_Base64_Original::encode($decoded), self::BASE64_VARIANT_ORIGINAL_NO_PADDING => ParagonIE_Sodium_Core_Base64_Original::encodeUnpadded($decoded), - self::BASE64_VARIANT_URLSAFE => ParagonIE_Sodium_Core_Base64_UrlSafe::encode($decoded), self::BASE64_VARIANT_URLSAFE_NO_PADDING => ParagonIE_Sodium_Core_Base64_UrlSafe::encodeUnpadded($decoded), default => throw new SodiumException('invalid base64 variant identifier'), };
Infection on PHP 8.4: src/Compat.php#L248
Escaped Mutant for Mutator "MatchArmRemoval": @@ @@ } return match ($variant) { self::BASE64_VARIANT_ORIGINAL => ParagonIE_Sodium_Core_Base64_Original::encode($decoded), - self::BASE64_VARIANT_ORIGINAL_NO_PADDING => ParagonIE_Sodium_Core_Base64_Original::encodeUnpadded($decoded), self::BASE64_VARIANT_URLSAFE => ParagonIE_Sodium_Core_Base64_UrlSafe::encode($decoded), self::BASE64_VARIANT_URLSAFE_NO_PADDING => ParagonIE_Sodium_Core_Base64_UrlSafe::encodeUnpadded($decoded), default => throw new SodiumException('invalid base64 variant identifier'),
Infection on PHP 8.4: src/Compat.php#L248
Escaped Mutant for Mutator "MatchArmRemoval": @@ @@ return ''; } return match ($variant) { - self::BASE64_VARIANT_ORIGINAL => ParagonIE_Sodium_Core_Base64_Original::encode($decoded), self::BASE64_VARIANT_ORIGINAL_NO_PADDING => ParagonIE_Sodium_Core_Base64_Original::encodeUnpadded($decoded), self::BASE64_VARIANT_URLSAFE => ParagonIE_Sodium_Core_Base64_UrlSafe::encode($decoded), self::BASE64_VARIANT_URLSAFE_NO_PADDING => ParagonIE_Sodium_Core_Base64_UrlSafe::encodeUnpadded($decoded),
Infection on PHP 8.4: src/Compat.php#L245
Escaped Mutant for Mutator "ReturnRemoval": @@ @@ ): string { if (ParagonIE_Sodium_Core_Util::strlen($decoded) === 0) { - return ''; + } return match ($variant) { self::BASE64_VARIANT_ORIGINAL => ParagonIE_Sodium_Core_Base64_Original::encode($decoded),
Infection on PHP 8.4: src/Compat.php#L244
Escaped Mutant for Mutator "DecrementInteger": @@ @@ int $variant ): string { - if (ParagonIE_Sodium_Core_Util::strlen($decoded) === 0) { + if (ParagonIE_Sodium_Core_Util::strlen($decoded) === -1) { return ''; } return match ($variant) {
Infection on PHP 8.4: src/Compat.php#L244
Escaped Mutant for Mutator "Identical": @@ @@ int $variant ): string { - if (ParagonIE_Sodium_Core_Util::strlen($decoded) === 0) { + if (ParagonIE_Sodium_Core_Util::strlen($decoded) !== 0) { return ''; } return match ($variant) {