Repo: openaudit-search-api
Tags: priority:high type:feature area:search good first issue
Visão geral
Padronizar como a busca trata o input do usuário e gerar hash para auditoria sem persistir dados sensíveis.
Contexto
O projeto exige minimização de PII e auditabilidade. A API deve evitar armazenar q bruto e trabalhar com normalized + query_hash.
Descrição
Implementar QueryNormalizer com:
- casefold
- remoção de acentos
- trim e normalização de espaços
- tokenização simples (opcional)
Gerar query_hash = sha256("normalized") com prefixo sha256:.
Regras:
normalized nunca pode ser vazio (retornar 400 se input inválido).
- Não retornar
query.raw por padrão.
Adicionar testes com casos:
- acentos ("João" -> "joao")
- espaços extras
- caixa alta/baixa
- input vazio
Impacto
Reduz risco (PII em logs) e aumenta consistência de match e cache. Base para auditoria e performance.
Referências
Definição de pronto
Repo:
openaudit-search-apiTags:
priority:hightype:featurearea:searchgood first issueVisão geral
Padronizar como a busca trata o input do usuário e gerar hash para auditoria sem persistir dados sensíveis.
Contexto
O projeto exige minimização de PII e auditabilidade. A API deve evitar armazenar
qbruto e trabalhar comnormalized+query_hash.Descrição
Implementar
QueryNormalizercom:Gerar
query_hash = sha256("normalized")com prefixosha256:.Regras:
normalizednunca pode ser vazio (retornar 400 se input inválido).query.rawpor padrão.Adicionar testes com casos:
Impacto
Reduz risco (PII em logs) e aumenta consistência de match e cache. Base para auditoria e performance.
Referências
Definição de pronto