Skip to content

feat(key-mgmt): make the key factory an injectable service (#712) #13

feat(key-mgmt): make the key factory an injectable service (#712)

feat(key-mgmt): make the key factory an injectable service (#712) #13

Triggered via push August 29, 2026 19:15
Status Success
Total duration 41m 56s
Artifacts

ci.yml

on: push
0️⃣ Pre-checks
6s
0️⃣ Pre-checks
📦 Prepare Composer Dependencies
1m 2s
📦 Prepare Composer Dependencies
1️⃣ Static Analysis (PHPStan)
1m 4s
1️⃣ Static Analysis (PHPStan)
2️⃣ Coding Standards (ECS)
1m 20s
2️⃣ Coding Standards (ECS)
3️⃣ Refactoring (Rector)
1m 17s
3️⃣ Refactoring (Rector)
4️⃣ Validate composer.json
53s
4️⃣ Validate composer.json
5️⃣ Syntax Check
48s
5️⃣ Syntax Check
6️⃣ License Check
55s
6️⃣ License Check
7️⃣ Architecture Layer Check (Deptrac)
52s
7️⃣ Architecture Layer Check (Deptrac)
📁 Exported Files Check
6s
📁 Exported Files Check
Matrix: tests
🧬 Mutation Testing
7m 35s
🧬 Mutation Testing
Fit to window
Zoom out
Zoom in

Annotations

17 warnings
📦 Prepare Composer Dependencies
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@0400d5f644dc74513175e3cd8d07132dd4860809, actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
2️⃣ Coding Standards (ECS)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
4️⃣ Validate composer.json
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
7️⃣ Architecture Layer Check (Deptrac)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
1️⃣ Static Analysis (PHPStan)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
3️⃣ Refactoring (Rector)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
🧬 Mutation Testing
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L193
Escaped Mutant for Mutator "ArrayItemRemoval": @@ @@ private function collectEvents(array &$data): void { $data['jwe']['events'] = [ - 'decryption_success' => $this->jweDecryptionSuccesses, 'decryption_failure' => $this->jweDecryptionFailures, 'built_success' => $this->jweBuiltSuccesses, 'built_failure' => $this->jweBuiltFailures,
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L181
Escaped Mutant for Mutator "ArrayItem": @@ @@ $data['jwe']['jwe_loaders'][$id] = [ 'serializers' => $jweLoader->getSerializerManager() ->names(), - 'encryption_algorithms' => $jweLoader->getJweDecrypter() + 'encryption_algorithms' > $jweLoader->getJweDecrypter() ->getKeyEncryptionAlgorithmManager() ->list(), ];
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L179
Escaped Mutant for Mutator "ArrayItem": @@ @@ $data['jwe']['jwe_loaders'] = []; foreach ($this->jweLoaders as $id => $jweLoader) { $data['jwe']['jwe_loaders'][$id] = [ - 'serializers' => $jweLoader->getSerializerManager() + 'serializers' > $jweLoader->getSerializerManager() ->names(), 'encryption_algorithms' => $jweLoader->getJweDecrypter() ->getKeyEncryptionAlgorithmManager()
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L178
Escaped Mutant for Mutator "ArrayItemRemoval": @@ @@ $data['jwe']['jwe_loaders'] = []; foreach ($this->jweLoaders as $id => $jweLoader) { $data['jwe']['jwe_loaders'][$id] = [ - 'serializers' => $jweLoader->getSerializerManager() - ->names(), 'encryption_algorithms' => $jweLoader->getJweDecrypter() ->getKeyEncryptionAlgorithmManager() ->list(),
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L165
Escaped Mutant for Mutator "ArrayItem": @@ @@ $data['jwe']['jwe_decrypters'] = []; foreach ($this->jweDecrypters as $id => $jweDecrypter) { $data['jwe']['jwe_decrypters'][$id] = [ - 'encryption_algorithms' => $jweDecrypter->getKeyEncryptionAlgorithmManager() + 'encryption_algorithms' > $jweDecrypter->getKeyEncryptionAlgorithmManager() ->list(), ]; }
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L164
Escaped Mutant for Mutator "ArrayItemRemoval": @@ @@ { $data['jwe']['jwe_decrypters'] = []; foreach ($this->jweDecrypters as $id => $jweDecrypter) { - $data['jwe']['jwe_decrypters'][$id] = [ - 'encryption_algorithms' => $jweDecrypter->getKeyEncryptionAlgorithmManager() - ->list(), - ]; + $data['jwe']['jwe_decrypters'][$id] = []; } }
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L151
Escaped Mutant for Mutator "ArrayItem": @@ @@ $data['jwe']['jwe_builders'] = []; foreach ($this->jweBuilders as $id => $jweBuilder) { $data['jwe']['jwe_builders'][$id] = [ - 'encryption_algorithms' => $jweBuilder->getKeyEncryptionAlgorithmManager() + 'encryption_algorithms' > $jweBuilder->getKeyEncryptionAlgorithmManager() ->list(), ]; }
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L150
Escaped Mutant for Mutator "ArrayItemRemoval": @@ @@ { $data['jwe']['jwe_builders'] = []; foreach ($this->jweBuilders as $id => $jweBuilder) { - $data['jwe']['jwe_builders'][$id] = [ - 'encryption_algorithms' => $jweBuilder->getKeyEncryptionAlgorithmManager() - ->list(), - ]; + $data['jwe']['jwe_builders'][$id] = []; } }
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L75
Escaped Mutant for Mutator "MethodCallRemoval": @@ @@ $this->collectSupportedJWEBuilders($data); $this->collectSupportedJWEDecrypters($data); $this->collectSupportedJWELoaders($data); - $this->collectEvents($data); + } public function addJWEBuilder(string $id, JWEBuilder $jweBuilder): void
🧬 Mutation Testing: src/Bundle/DataCollector/JWECollector.php#L71
Escaped Mutant for Mutator "MethodCallRemoval": @@ @@ #[Override] public function collect(array &$data, Request $request, Response $response, ?Throwable $exception = null): void { - $this->collectSupportedJWESerializations($data); + $this->collectSupportedJWEBuilders($data); $this->collectSupportedJWEDecrypters($data); $this->collectSupportedJWELoaders($data);