For the complete documentation index, see llms.txt. This page is also available as Markdown.

Changelog

[2.2.0] - 2026-08-12

Adicionado

  • Endpoints públicos GET /api/v1/iad/metrics e GET /api/v1/iad/metrics/prometheus para snapshots operacionais e exposição no formato Prometheus.

  • Testes unitários e integração para os snapshots de saúde e os endpoints de métricas.

Alterado

  • GET /api/v1/iad/health mantém a verificação ativa do motor, enquanto que /metrics expõe snapshots em cache e contadores em memória adequados para scraping frequente.

  • Atualizado o motor interno.

[2.1.0] - 2026-07-20

Adicionado

  • Suporte opcional para autenticação JWT.

  • Testes unitários que cobrem a precedência da configuração JWT em tempo de execução e o comportamento de redação/rejeição do endpoint de configuração.

Alterado

  • Os endpoints públicos de configuração agora omitem as chaves de autenticação JWT nas respostas de GET /api/v1/iad/config.

  • As atualizações públicas de configuração via POST /api/v1/iad/config agora rejeitam as chaves de autenticação JWT; esses valores devem ser configurados somente na inicialização por meio de config.json ou as variáveis de ambiente FACEPHI_IAD_REST_*.

[2.0.0] - 2026-05-26

Alterações incompatíveis

  • A versão 2.0.0 quebra a compatibilidade da API REST pública com a série 1.x.x: os nomes dos endpoints, os campos das solicitações multipart e os payloads de resposta corretos foram alterados e exigem migração por parte do cliente.

Adicionado

  • Mapeamento de resposta pública de liveness com os campos no estilo Facephi diagnostic, reason, probability, score, sdkDuration e queueDuration.

  • Mitigação experimental de ataques de repetição documentada como capacidade pública de facephi-iad-service, com as variáveis de ambiente de inicialização FACEPHI_IAD_REPLAY_ATTACK_CHECKER_ENABLED e FACEPHI_IAD_REPLAY_ATTACK_TOLERANCE_TIME.

  • Testes unitários para o mapeamento do payload de sucesso do Engine e a prevenção de vazamento de campos públicos.

  • Testes unitários para o contrato do campo multipart obrigatório capture.

Alterado

  • As rotas operacionais públicas agora usam /api/v1/iad/liveness/evaluate e /api/v1/iad/extract.

  • Os endpoints multipart agora exigem o campo capture em tempo de execução e rejeitam as solicitações herdadas que incluem apenas file.

  • As falhas de inicialização agora são propagadas para main em vez de encerrar a partir do código de inicialização do serviço.

  • Os erros de validação do provedor IAD são normalizados para valores de resposta no estilo Facephi/SelphID.

  • As capturas expiradas rejeitadas pela proteção experimental contra repetições agora retornam a mensagem pública HTTP 400 documentado Ataque de replay detectado.

  • A documentação pública de liveness agora lista os valores exatos de reason que o serviço retorna: None, Unknown, UntrustedEnvironment, SuspiciousActivity, UntrustedDevice, SdkIntegrityViolation, UntrustedCorruptedPayload, UntrustedContent e UntrustedContentLowConfidence.

  • A documentação pública e os exemplos de OpenAPI agora descrevem o novo contrato de resposta pública em vez dos payloads do provedor.

Corrigido

  • O tratamento de sinais não invoca mais logging, rotinas de desligamento nem std::exit a partir do manipulador de sinais.

Removido

  • Os campos públicos de sucesso no formato de Engine capture_liveness, capture_type, rejection e mime_type.

[1.2.0] - 2026-04-30

Segurança

  • Os valores LICENSE_ID e LICENSE_DATA presentes no arquivo de licença são ignorados.

Alterado

  • A documentação da API agora inclui os motivos de rejeição do motor IAD e os mapeamentos de error_code de validação para as respostas do serviço.

  • Os exemplos de Swagger/OpenAPI agora documentam os erros HTTP 400 originados pelo motor para check-capture e extract-image.

  • A documentação da demo foi melhorada adicionando a modificação dos endereços IP dos serviços necessários.

Corrigido

  • A documentação pública e os metadados da versão agora fazem referência à versão 1.2.0 de forma consistente.

  • Os exemplos de instalação e OpenAPI foram alinhados com os valores padrão atuais do runtime e as rotas de endpoint /api/v1/iad/*.

[1.1.1] - 2026-03-30

Alterado

  • Atualização do motor IAD para a versão 2.5.3.

Corrigido

  • As rotas do registro Docker foram corrigidas para usar docker-pro-fphi em toda a documentação e nas notas de versão.

  • A especificação OpenAPI foi atualizada com esquemas de solicitação/resposta precisos que correspondem ao comportamento real dos endpoints.

  • A documentação da API foi aprimorada com exemplos dos endpoints de configuração e verificação de estado.

[1.1.0] - 2026-03-20

Adicionado

  • Sobrescrita da configuração em tempo de execução por meio de variáveis de ambiente.

  • Utilitários de tradução de erros de licença e de relatório normalizado de erros de licença para um diagnóstico operacional mais claro.

Alterado

  • Atualização do motor IAD para a versão 2.5.2.

  • Melhorias no gerenciamento de licenças para suportar cenários de validação offline e oferecer um relatório de erros mais claro.

  • Dockerfile simplificado: mudança da imagem base, melhor gerenciamento de pacotes e tratamento de dependências em tempo de execução.

Corrigido

  • Atualizações de hardening do runtime Docker e da imagem base.

  • Normalização de erros do proxy REST e rotas consistentes de criação/relato de erros.

  • Redução do excesso de logs detalhados nas verificações do Docker e nos fluxos de ativação do motor.

[1.0.0] - 2026-02-03

Adicionado

  • Ativação automática do motor a partir dos metadados da licença

  • Detecção do ambiente Docker e inicialização automática do motor

  • Fachada ProcessExecutor para o gerenciamento de processos em segundo plano

  • Camada de compatibilidade de sistema de arquivos para GCC 7

Alterado

  • ALTERAÇÃO INCOMPATÍVEL: Todos os endpoints foram padronizados com o prefixo /iad (por exemplo, /api/v1/iad/check-capture)

  • Estrutura de namespace unificada em todos os endpoints

  • Melhoria nos tempos de espera da verificação de estado do motor

  • Logging aprimorado no processo de ativação do motor

  • Implementação simplificada de ProcessExecutor

  • Refatoração do logging interno do proxy REST

Removido

  • ALTERAÇÃO INCOMPATÍVEL: O endpoint foi removido /extract_data (funcionalidade consolidada)

Corrigido

  • Problemas de compatibilidade do sistema de arquivos com versões antigas do GCC

  • Sincronização de tempos na inicialização do motor em ambientes Docker

[0.0.1] - 2026-01-29

Adicionado

  • Lançamento inicial da API REST do IAD Service

  • Endpoint /api/v1/iad/check-capture para a detecção de liveness e a verificação de ataques de injeção

  • Endpoint /api/v1/iad/extract-image para a extração de imagens de capturas validadas

  • Endpoint de gerenciamento /api/v1/iad/version para a versão e o status da licença

  • Endpoint de gerenciamento /api/v1/iad/health para o monitoramento de estado

  • Endpoints de gerenciamento /api/v1/iad/config (GET/POST) para o gerenciamento da configuração

  • Pool de conexões para a comunicação com o motor

  • Mecanismo de nova tentativa automática com backoff configurável

  • Atualizações dinâmicas de configuração sem reiniciar o serviço

  • Implantação baseada em Docker com Ubuntu 24.04

  • Suporte para validação de licença online e offline

  • Logging completo com níveis e rotação configuráveis

  • Especificação OpenAPI 3.0 (documentação Swagger)

Atualizado