Provides a structured process for converting a Request into a Response
This report summarizes scanner evidence for symfony/http-kernel, a PHP project with 8,104 GitHub stars. SynthScan examined 48,777 lines of code across 382 source files, recording 931 pattern matches distributed across 1 syntactic category. The legacy adjusted pattern signal is 17.8 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 931 finding(s).
Are imports declared and package/API names verified? 0 finding(s).
Are wrappers, guards, and repeated structures necessary? 931 finding(s).
Which changes need focused human review? 931 finding(s).
Run additional scans to build a history of the legacy pattern signal. Score changes are not a measure of AI adoption or code quality.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 931 distinct pattern matches across 1 syntactic category. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | KernelInterface.php | 37 | public function registerContainerConfiguration(LoaderInterface $loader): void; | CODE |
| LOW | DataCollector/RequestDataCollector.php | 566 | private function flattenCookieArrayForCurl(array $data, string $prefix = ''): array | CODE |
| LOW | DataCollector/LoggerDataCollector.php | 193 | private function getContainerDeprecationLogs(): array | CODE |
| LOW | DataCollector/LoggerDataCollector.php | 288 | private function isSilencedOrDeprecationErrorLog(array $log): bool | CODE |
| LOW | Tests/HttpClientKernelTest.php | 30 | public function testHandlePassesMaxRedirectsHttpClientOption() | CODE |
| LOW | Tests/HttpClientKernelTest.php | 56 | public function testHandleStreamsIncrementalResponse(string $incremental) | CODE |
| LOW | Tests/HttpClientKernelTest.php | 81 | public static function provideIncrementalHeaders(): iterable | CODE |
| LOW | Tests/HttpClientKernelTest.php | 92 | public function testHandleBuffersNonIncrementalResponse(array $headers) | CODE |
| LOW | Tests/HttpClientKernelTest.php | 107 | public static function provideNonIncrementalHeaders(): iterable | CODE |
| LOW | Tests/HttpClientKernelTest.php | 126 | public function testHandleDisablesBufferingOfIncrementalResponses() | CODE |
| LOW | Tests/HttpClientKernelTest.php | 138 | public function testHandleKeepsBufferOption() | CODE |
| LOW | Tests/HttpClientKernelTest.php | 149 | public function testHandleReadsIncrementalBodyWhenSent() | CODE |
| LOW | Tests/HttpClientKernelTest.php | 177 | public function testHandleWaitsForIncrementalBodyAcrossIdleTimeouts() | CODE |
| LOW | Tests/HttpClientKernelTest.php | 190 | public function testHandleThrowsOnIncrementalErrorResponseWhenNotCatching() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 285 | public function testHandleWhenNoControllerIsFound() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 294 | public function testHandleWhenTheControllerIsAClosure() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 303 | public function testHandleWhenTheControllerIsAnObjectWithInvoke() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 311 | public function testHandleWhenTheControllerIsAFunction() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 319 | public function testHandleWhenTheControllerIsAnArray() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 327 | public function testHandleWhenTheControllerIsAStaticArray() | CODE |
| LOW⚡ | Tests/HttpKernelTest.php | 335 | public function testHandleWhenTheControllerDoesNotReturnAResponse() | CODE |
| LOW | Tests/HttpKernelTest.php | 44 | public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrue() | CODE |
| LOW | Tests/HttpKernelTest.php | 52 | public function testRequestStackIsNotBrokenWhenControllerThrowsAnExceptionAndCatchIsTrue() | CODE |
| LOW | Tests/HttpKernelTest.php | 65 | public function testRequestStackIsNotBrokenWhenControllerThrowsAnExceptionAndCatchIsFalse() | CODE |
| LOW | Tests/HttpKernelTest.php | 78 | public function testRequestStackIsNotBrokenWhenControllerThrowsAnThrowable() | CODE |
| LOW | Tests/HttpKernelTest.php | 96 | public function testHandleWhenControllerThrowsAnExceptionAndCatchIsFalseAndNoListenerIsRegistered() | CODE |
| LOW | Tests/HttpKernelTest.php | 109 | public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrueWithAHandlingListener() | CODE |
| LOW | Tests/HttpKernelTest.php | 128 | public function testHandleWhenControllerThrowsAThrowableAndCatchIsTrueWithAHandlingListener() | CODE |
| LOW | Tests/HttpKernelTest.php | 147 | public function testHandleWhenControllerThrowsAThrowableAndCatchIsFalseWithAHandlingListener() | CODE |
| LOW | Tests/HttpKernelTest.php | 164 | public function testHandleWhenControllerThrowsAThrowableAndCatchIsTrueNotHandlingThrowables() | CODE |
| LOW | Tests/HttpKernelTest.php | 192 | public function testHandleWhenControllerThrowsAnExceptionAndCatchIsTrueWithANonHandlingListener() | CODE |
| LOW | Tests/HttpKernelTest.php | 211 | public function testHandleExceptionWithARedirectionResponse() | CODE |
| LOW | Tests/HttpKernelTest.php | 250 | public function testHandleWhenAnExceptionIsHandledWithASpecificStatusCode($expectedStatusCode) | CODE |
| LOW | Tests/HttpKernelTest.php | 273 | public function testHandleWhenAListenerReturnsAResponse() | CODE |
| LOW | Tests/HttpKernelTest.php | 353 | public function testHandleWhenTheControllerDoesNotReturnAResponseButAViewIsRegistered() | CODE |
| LOW | Tests/HttpKernelTest.php | 365 | public function testHandleWithAResponseListener() | CODE |
| LOW | Tests/HttpKernelTest.php | 376 | public function testHandleAllowChangingControllerArguments() | CODE |
| LOW | Tests/HttpKernelTest.php | 388 | public function testHandleAllowChangingControllerAndArguments() | CODE |
| LOW | Tests/HttpKernelTest.php | 430 | public function testTerminateWithException() | CODE |
| LOW | Tests/HttpKernelTest.php | 448 | public function testTerminateWithExceptionSendsHeadersUnlessAlreadySent(bool $headersSent) | CODE |
| LOW | Tests/HttpKernelTest.php | 486 | public function testVerifyRequestStackPushPopDuringHandle() | CODE |
| LOW | Tests/HttpKernelTest.php | 500 | public function testVerifyRequestStackPushPopWithStreamedResponse() | CODE |
| LOW | Tests/HttpKernelTest.php | 517 | public function testInconsistentClientIpsOnMainRequests() | CODE |
| LOW | Tests/HttpKernelTest.php | 537 | public function testResponseEventCanAccessControllerAttributes() | CODE |
| LOW | Tests/HttpKernelTest.php | 557 | public function testViewEventProvidesControllerArgumentsViaMetadata() | CODE |
| LOW | Tests/HttpKernelTest.php | 576 | public function testExceptionEventProvidesControllerMetadata() | CODE |
| LOW | Tests/HttpKernelTest.php | 597 | public function testResponseEventWhenArgumentResolutionThrows() | CODE |
| LOW | Tests/HttpKernelTest.php | 622 | public function testFinishRequestEventKeepsControllerMetadata() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 49 | public function testKernelIsTerminatedAfterTheResponseContentIsSent() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 76 | public function testStreamedResponseThatFlushesIsCaptured() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 109 | public function testFilterResponseConvertsCookies() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 129 | public function testFilterResponseSupportsStreamedResponses() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 144 | public function testFilterResponseSupportsStreamedResponsesWithChunks() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 193 | public function testUploadedFileWhenNoFileSelected() | CODE |
| LOW | Tests/HttpKernelBrowserTest.php | 208 | public function testUploadedFileWhenSizeExceedsUploadMaxFileSize() | CODE |
| LOW⚡ | Tests/KernelTest.php | 157 | public static function provideFailingContainerBuilds(): iterable | CODE |
| LOW⚡ | Tests/KernelTest.php | 164 | public function testContainerBuildLockIsHeldWhileDumpingAndReleasedAfterBoot() | CODE |
| LOW⚡ | Tests/KernelTest.php | 173 | public function testBootInitializesBundlesAndContainer() | CODE |
| LOW⚡ | Tests/KernelTest.php | 182 | public function testBootSetsTheContainerToTheBundles() | CODE |
| LOW⚡ | Tests/KernelTest.php | 192 | public function testBundlesWithNothingToDoAtRuntimeAreInstantiatedOnDemand() | CODE |
| 871 more matches not shown… | ||||