# Changelog

> **This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.**

## Score

- CAI 58 → 59 (+0.6)
- Rubric changed (rubric-2026.08.17 → rubric-2026.08.18) — scores are not directly comparable.

## Lenses

- Code Health 92 → 95 (+2.5)
- Architecture 100 → 100 (+0.0)
- Maturity 93 → 93 (+0.0)
- Readiness 49 → 49 (+0.0)
- Security 65 → 68 (+3.3)
- Domain Modelling 51 → 51 (+0.0)

## Resolved (50)

- Dependency hygiene not measured — no supported dependency manifest was read
- Duplicated block (11 lines × 2) (internal/business/usecases/auth/auth.forgot_password.go)
- Duplicated block (11 lines × 2) (internal/datasources/migration/migration.go)
- Duplicated block (11 lines × 2) (internal/datasources/repositories/postgres/users/users.get_by_email.go)
- Duplicated block (11 lines × 2) (internal/http/handlers/v1/users/users.handler.go)
- Duplicated block (11 lines × 2) (pkg/jwt/jwt.go)
- Duplicated block (11 lines × 9) (internal/http/handlers/v1/auth/auth.change_password.go)
- Duplicated block (11–13 lines × 2) (internal/datasources/repositories/postgres/users/users.change_active_user.go)
- Duplicated block (12 lines × 2) (internal/http/handlers/v1/auth/auth.logout.go)
- Duplicated block (12 lines × 2) (internal/http/handlers/v1/auth/auth.logout.go)
- Duplicated block (12 lines × 3) (internal/business/usecases/auth/auth.forgot_password.go)
- Duplicated block (12 lines × 3) (internal/http/handlers/v1/auth/auth.logout.go)
- Duplicated block (13 lines × 2) (internal/business/usecases/auth/auth.change_password.go)
- Duplicated block (13 lines × 2) (internal/business/usecases/auth/auth.forgot_password.go)
- Duplicated block (13 lines × 2) (internal/datasources/repositories/postgres/users/users.soft_delete.go)
- Duplicated block (13 lines × 2) (internal/http/handlers/v1/auth/auth.refresh.go)
- Duplicated block (13 lines × 2) (internal/http/handlers/v1/users/users.handler.go)
- Duplicated block (13 lines × 4) (internal/http/handlers/v1/auth/auth.forgot_password.go)
- Duplicated block (13–16 lines × 2) (internal/business/usecases/auth/auth.login.go)
- Duplicated block (14 lines × 2) (internal/business/usecases/auth/auth.change_password.go)
- …and 30 more

## New (36)

- Critical CVE: [GHSA redacted] (go.mod)
- Dependency hygiene not measured — dependency manifest found but not parsed for hygiene
- Duplicated block (11 lines × 2) (pkg/jwt/jwt.go)
- Duplicated block (11 lines × 9) (internal/http/handlers/v1/auth/auth.change_password.go)
- Duplicated block (12 lines × 2) (internal/business/usecases/auth/auth.change_password.go)
- Duplicated block (13 lines × 2) (internal/business/usecases/auth/auth.login.go)
- Duplicated block (14 lines × 2) (internal/business/usecases/auth/auth.change_password.go)
- Duplicated block (15 lines × 2) (internal/business/usecases/auth/auth.logout.go)
- Duplicated block (15 lines × 2) (internal/business/usecases/auth/auth.register.go)
- Duplicated block (15 lines × 2) (internal/business/usecases/auth/auth.send_otp.go)
- Duplicated block (16 lines × 4) (internal/business/usecases/auth/auth.forgot_password.go)
- High vulnerability: [GHSA redacted] (go.mod)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- High: security finding (details withheld)
- …and 16 more
