Summary
Registration stores plaintext email (auth_handler.go:308), profile update stores hashUserEmail(email) (user/service.go:188), while FindByEmail always hashes using another "EMAIL:"+sha256[:16] scheme in auth_handler.go:722. Registered emails never match FindByEmail - a data-integrity and PII-consistency bug.
Acceptance Criteria
Complexity
High.
Summary
Registration stores plaintext email (auth_handler.go:308), profile update stores hashUserEmail(email) (user/service.go:188), while FindByEmail always hashes using another "EMAIL:"+sha256[:16] scheme in auth_handler.go:722. Registered emails never match FindByEmail - a data-integrity and PII-consistency bug.
Acceptance Criteria
Complexity
High.