# Changelog

## Score

- CAI 48 → 43 (-4.9)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.15) — scores are not directly comparable.

## Lenses

- Code Health 79 → 88 (+8.6)
- Architecture 99 → 94 (-5.2)
- Maturity 47 → 42 (-5.1)
- Readiness 26 → 17 (-9.2)
- Security 100 → 100 (+0.0)

## Resolved (67)

- AbstractSessionListener.onKernelResponse (cognitive 26) (EventListener/AbstractSessionListener.php)
- AbstractSessionListener.onKernelResponse (cyclomatic 19) (EventListener/AbstractSessionListener.php)
- ArgumentResolver.getArguments (cognitive 54) (Controller/ArgumentResolver.php)
- ArgumentResolver.getArguments (cyclomatic 22) (Controller/ArgumentResolver.php)
- CacheAttributeListener.processAttributeAfterController (cognitive 29) (EventListener/CacheAttributeListener.php)
- CacheAttributeListener.processAttributeAfterController (cyclomatic 30) (EventListener/CacheAttributeListener.php)
- CacheWarmerAggregate.warmUp (cognitive 42) (CacheWarmer/CacheWarmerAggregate.php)
- CacheWarmerAggregate.warmUp (cyclomatic 27) (CacheWarmer/CacheWarmerAggregate.php)
- Change coupling: ControllerEvent.php ↔ ResponseEvent.php (Event/ControllerEvent.php)
- ConfigDataCollector.collect (cognitive 20) (DataCollector/ConfigDataCollector.php)
- ConfigDataCollector.collect (cyclomatic 20) (DataCollector/ConfigDataCollector.php)
- ControllerEvent.setController (cognitive 21) (Event/ControllerEvent.php)
- ControllerResolver.checkController (cognitive 24) (Controller/ControllerResolver.php)
- ControllerResolver.checkController (cyclomatic 17) (Controller/ControllerResolver.php)
- ControllerResolver.getController (cognitive 21) (Controller/ControllerResolver.php)
- ControllerResolver.getControllerError (cognitive 21) (Controller/ControllerResolver.php)
- ControllerResolver.getControllerError (cyclomatic 17) (Controller/ControllerResolver.php)
- Coverage not included — suite not readable by the collector
- DateTimeValueResolver.resolve (cognitive 23) (Controller/ArgumentResolver/DateTimeValueResolver.php)
- DateTimeValueResolver.resolve (cyclomatic 16) (Controller/ArgumentResolver/DateTimeValueResolver.php)
- …and 47 more

## New (26)

- Coverage not measured — test suite did not build
- Dimension evaluation failed
- Duplicated block (11 lines × 3) (Tests/HttpCache/HttpCacheTest.php)
- Duplicated block (12 lines × 2) (Tests/Controller/ArgumentResolver/UploadedFileValueResolverTest.php)
- Duplicated block (15 lines × 2) (Tests/HttpCache/HttpCacheTest.php)
- Duplicated block (17 lines × 2) (Tests/Controller/ArgumentResolver/RequestHeaderValueResolverTest.php)
- Duplicated block (5 lines × 2) (Tests/HttpCache/EsiTest.php)
- Duplicated block (5 lines × 2) (Tests/HttpCache/SsiTest.php)
- Duplicated block (5 lines × 3) (Tests/HttpCache/EsiTest.php)
- Duplicated block (5 lines × 3) (Tests/HttpCache/StoreTest.php)
- Duplicated block (6 lines × 2) (Tests/DataCollector/LoggerDataCollectorTest.php)
- Duplicated block (6 lines × 2) (Tests/DependencyInjection/RegisterControllerArgumentLocatorsPassTest.php)
- Duplicated block (6 lines × 2) (Tests/EventListener/LocaleAwareListenerTest.php)
- Duplicated block (6 lines × 2) (Tests/EventListener/RateLimitAttributeListenerTest.php)
- Duplicated block (6 lines × 2) (Tests/Fragment/InlineFragmentRendererTest.php)
- Duplicated block (7 lines × 2) (Tests/Controller/ArgumentResolver/QueryParameterValueResolverTest.php)
- Duplicated block (7 lines × 2) (Tests/EventListener/CacheAttributeListenerTest.php)
- Duplicated block (7 lines × 2) (Tests/EventListener/RouterListenerTest.php)
- Duplicated block (7 lines × 2) (Tests/EventListener/SessionListenerTest.php)
- Duplicated block (7 lines × 2) (Tests/Fragment/InlineFragmentRendererTest.php)
- …and 6 more

## Changes since last survey

- 1 commits — 1 feature/other, 0 fixes

## By area

- (root) — 1 commit

## Notable commits

- change: [RateLimiter] Add a RateLimitExceededEvent dispatched by the #[RateLimit] attribute
