# Changelog

## Score

- CAI 55 → 55 (+0.1)
- Rubric changed (rubric-2026.09.11 → rubric-2026.09.18) — scores are not directly comparable.

## Lenses

- Code Health 98 → 98 (+0.0)
- Architecture 89 → 96 (+7.1)
- Maturity 31 → 31 (+0.0)
- Readiness 55 → 55 (+0.5)
- Security 100 → 100 (+0.0)

## New (6)

- Coverage not measured — Swift suite
- Dependency hygiene PARTLY measured — SwiftPM pinning read, dependency currency NOT established
- Naming inconsistency: 'Container' vs 'Center'. Both GlobalConfigContainer and LocalConfigCenter (and their Vertical counterparts) have identical structures. The suffix 'Container' vs 'Center' is arbitrary and confusing, especially since 'GlobalConfigCenter' also exists. It is unclear if 'Container' implies a wrapper while 'Center' implies a singleton manager.
- Potential duplication of intent. Public.Popup likely serves as a base or generic type, while TopPopup, CenterPopup, and BottomPopup are specific variants. If these variants only differ by position (which is likely implied by the name), this could be unified into a single Popup type with a 'position' or 'alignment' property, reducing API surface and complexity.
- Redundant types with identical or near-identical property sets. GlobalConfigContainer and GlobalConfigVertical expose the exact same properties (padding, cornerRadius, backgroundColor, etc.). GlobalConfig is empty but likely intended to be the base or alias. This creates confusion about which type to use for global configuration.
- Redundant types with identical or near-identical property sets. LocalConfigCenter and LocalConfigVertical expose the exact same properties. LocalConfig is empty. This mirrors the global config inconsistency.
