Repo: openaudit-search-api
Tags: priority:high type:feature area:api area:search
Visão geral
Entregar o endpoint principal do MVP: busca retorna lista de candidatos com confidence e explanation, além de metadados do catálogo.
Contexto
A Fase 1 do roadmap depende deste endpoint para desambiguação humana. Deve ser rápido, auditável e não acusatório.
Descrição
Implementar GET /search conforme core-contracts:
- Entradas:
q obrigatório, limit/offset opcionais.
- Processamento:
- normalizar query, gerar hash.
- consultar CatalogClient (SQLite FTS5).
- montar candidates[].
- preencher
catalog com name/version/snapshot_id/source (lidos do catalog_meta.json).
- Saída:
- JSON
SearchResponse com query.normalized, query.hash, catalog, candidates.
- Headers:
X-Request-Id, X-Catalog-Version, X-Cache.
Regras:
confidence e explanation devem existir para cada candidato (mesmo que simples no MVP).
- Não incluir linguagem acusatória.
- Não incluir
query.raw por padrão.
Impacto
Viabiliza UI e seleção de candidato. Sem isso, o ecossistema não sai do papel.
Referências
Definição de pronto
Repo:
openaudit-search-apiTags:
priority:hightype:featurearea:apiarea:searchVisão geral
Entregar o endpoint principal do MVP: busca retorna lista de candidatos com confidence e explanation, além de metadados do catálogo.
Contexto
A Fase 1 do roadmap depende deste endpoint para desambiguação humana. Deve ser rápido, auditável e não acusatório.
Descrição
Implementar
GET /searchconforme core-contracts:qobrigatório,limit/offsetopcionais.catalogcomname/version/snapshot_id/source(lidos docatalog_meta.json).SearchResponsecomquery.normalized,query.hash,catalog,candidates.X-Request-Id,X-Catalog-Version,X-Cache.Regras:
confidenceeexplanationdevem existir para cada candidato (mesmo que simples no MVP).query.rawpor padrão.Impacto
Viabiliza UI e seleção de candidato. Sem isso, o ecossistema não sai do papel.
Referências
Definição de pronto