# Changelog

## Score

- CAI 49 → 51 (+2.2)
- Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

## Lenses

- Code Health 95 → 95 (+0.0)
- Architecture 94 → 85 (-8.7)
- Maturity 53 → 53 (+0.0)
- Readiness 17 → 27 (+9.9)
- Security 100 → 100 (+0.0)

## Resolved (6)

- Documentation: no contributor guidance (README.md)
- Documentation: no installation or build instructions (README.md)
- Documentation: no usage examples (README.md)
- Duplicated block (6–8 lines × 2) (Source/Filters/Photo/YPFilter.swift)
- Duplicated block (8 lines × 2) (Source/Filters/Photo/YPPhotoFiltersVC.swift)
- Off-boarding risk: anonymized user #1

## New (8)

- Confusingly similar boolean flags with overlapping intent. `onlySquare` and `isSquareByDefault` exist in library config, while `onlySquareImagesFromCamera` exists in the root config. It is unclear if `onlySquare` applies to camera or library, or if they are mutually exclusive. The naming `onlySquare` vs `onlySquareImagesFromCamera` is inconsistent.
- Duplicate configuration properties with inconsistent naming conventions (US vs UK spelling) and scope. The color is defined both in the global `YPColors` struct (as `bottomMenuItemSelectedTextColor`) and redundantly in the main `YPImagePickerConfiguration` struct (as `bottomMenuItemSelectedTextColour`).
- Duplicate configuration properties with inconsistent naming conventions (US vs UK spelling) and scope. The color is defined both in the global `YPColors` struct (as `bottomMenuItemUnselectedTextColor`) and redundantly in the main `YPImagePickerConfiguration` struct (as `bottomMenuItemUnSelectedTextColour`).
- Duplicated block (6 lines × 2) (Source/Helpers/Extensions/PHCachingImageManager+Extensions.swift)
- Duplicated block (8 lines × 2) (Source/Filters/Video/YPVideoFiltersVC.swift)
- MethodTooLong: YPLibraryVC.isLimitExceeded (Source/Pages/Gallery/YPLibraryVC.swift)
- Off-boarding risk: anonymized user #1
- Projects may be oversized for their cohesion
