# Changelog

## Score

- CAI 54 → 54 (+0.2)
- Rubric changed (rubric-2026.08.17 → rubric-2026.09.15) — scores are not directly comparable.

## Lenses

- Code Health 99 → 99 (+0.3)
- Architecture 69 → 66 (-3.3)
- Maturity 61 → 43 (-18.4)
- Readiness 34 → 49 (+14.7)
- Security 100 → 97 (-2.9)

## Resolved (8)

- Coverage not included — suite not readable by the collector
- Dependency hygiene not measured — no supported dependency manifest was read
- Duplicated block (10–12 lines × 2) (src/Presentation/Api/Controller/GetContact.php)
- Duplicated block (11 lines × 2) (src/Presentation/Api/Controller/AddContact.php)
- Duplicated block (9 lines × 2) (src/Presentation/Api/Controller/GetContact.php)
- No exposed public API
- Test reliability not included
- dormant codebase — no living knowledge left to concentrate

## New (33)

- Abandoned package: doctrine/annotations
- Documentation: no usage examples (README.md)
- Duplicated block (24 lines × 2) (src/Domain/Dto/UpdateContact.php)
- Duplicated block (8 lines × 2) (src/Presentation/Api/Controller/GetContact.php)
- Duplicated block (9 lines × 2) (src/Presentation/Api/Controller/AddContact.php)
- Duplicated block (9–11 lines × 2) (src/Presentation/Api/Controller/GetContact.php)
- High CVE: [GHSA redacted] (composer.lock)
- High IaC: DS-0002 (Containerfile)
- High IaC: DS-0029 (Containerfile)
- Low CVE: [GHSA redacted] (composer.lock)
- Medium CVE: [GHSA redacted] (composer.lock)
- Medium IaC: WD-DOCKER-0003 (Containerfile)
- Medium IaC: WD-DOCKER-0010 (Containerfile)
- No direct assertions: testAddAndRemoveContact (tests/Infrastructure/ContactCommandRepositoryTest.php)
- No direct assertions: testGetContactById (tests/Infrastructure/ContactQueryRepositoryTest.php)
- No direct assertions: testWithInvalidOptions (tests/Domain/ValueObject/ContactIdTest.php)
- No direct assertions: testWithInvalidOptions (tests/Domain/ValueObject/NicknameTest.php)
- No direct assertions: testWithInvalidOptions (tests/Domain/ValueObject/PersonNameTest.php)
- No direct assertions: testWithInvalidOptions (tests/Domain/ValueObject/PhoneNumberTest.php)
- No direct assertions: testWithValidOptions (tests/Domain/ValueObject/ContactIdTest.php)
- …and 13 more
