# Changelog

## Score

- CAI 28 → 53 (+24.4)
- Rubric changed (rubric-2026.08.18 → rubric-2026.08.19) — scores are not directly comparable.

## Lenses

- Code Health 84 (new)
- Architecture 87 (new)
- Maturity 13 → 47 (+34.1)
- Readiness 15 → 46 (+30.3)
- Security 100 → 48 (-51.7)
- Event-Driven 100 (new)

## Resolved (7)

- Dependency hygiene not measured — no supported dependency manifest was read
- No automated tests
- No tests found
- Test reliability not included
- bus factor not measured — no commits were sampled
- early-stage repository — too little history to judge knowledge freshness
- single-commit history — no usable git history window to measure hotspots

## New (70)

- Bounded contexts not declared
- Change coupling: RepositoryCrud.cs ↔ UserRepository.cs (Infrastructure/Repositories/RepositoryCrud.cs)
- Coverage not measured
- Deprecated: Microsoft.EntityFrameworkCore.SqlServer.Design
- Deprecated: Microsoft.IdentityModel.JsonWebTokens
- Deprecated: System.IdentityModel.Tokens.Jwt
- Dormant codebase
- Duplicated block (11 lines × 2) (Infrastructure/Repositories/ProductRepository.cs)
- High CVE: AutoMapper 11.0.1
- High CVE: Microsoft.Data.SqlClient 2.1.4
- High CVE: Microsoft.Extensions.Caching.Memory 6.0.1
- High CVE: Newtonsoft.Json 9.0.1
- High CVE: System.Net.Http 4.3.0
- High CVE: System.Text.RegularExpressions 4.3.0
- High IaC: DS-0002 (Dockerfile)
- High IaC: DS-0002 (Presentation/Dockerfile)
- IL efficiency: 5 authored method(s) exceed the IL budget (Infrastructure/Repositories/ProductMovementRepository.cs)
- Inconsistent suffixes for DTOs: some use `Request` (e.g., `CreateInvoiceRequest`), while others use `Params` (e.g., `CurrenciesQueryParams`). This indicates a lack of strict convention for query parameters vs. command requests.
- Low IaC: DS-0026 (Presentation/Dockerfile)
- Low cohesion: ExceptionFilter (LCOM4 4) (Presentation/Filters/ExceptionFilter.cs)
- …and 50 more

## API surface

- 41 added · 0 removed (a removed endpoint is potentially breaking)

## Added endpoints (41)

- DELETE /api/authorization/roles/{id}
- DELETE /api/warehouses/{warehouseId}/places/{id}
- DELETE /{id}
- GET /
- GET /accountstatement
- GET /accountstatement/cashdrawer
- GET /api/authorization/policies
- GET /api/authorization/roles
- GET /api/authorization/userroles
- GET /api/authorization/userroles/{userId}
- GET /api/warehouses/{warehouseId}/places
- GET /api/warehouses/{warehouseId}/places/inventory
- GET /api/warehouses/{warehouseId}/places/{id}
- GET /byproduct
- GET /byproductandstorageplace
- GET /cashdrawer
- GET /error400
- GET /error401
- GET /error403
- GET /error404
- …and 21 more
