Tudo o que respondemos numa RFP, com a prova ao lado.
Uma linha por critério dos analistas de mercado, o estado real de cada um e um link para a documentação que o sustenta. Quando é parcial, dizemos o que falta. Quando não fazemos, explicamos porquê.
Os critérios com que o Gartner (Magic Quadrant de Augmented Data Quality) e a Forrester (Wave de Data Quality) avaliam o mercado — tal como aparecem nas grelhas de RFP.
A mostrar 9 de 9 capacidades
Capacidades do DataVault por critério de analista, com estado e evidência
Critério
Estado
Resposta
Evidência
Criação de perfisProfiling
Coberto
Descoberta automática e perfil de cada tabela em mais de 15 tipos de fonte — warehouses, bases operacionais, SaaS, ficheiros, documentos e streaming (Kafka e Pub/Sub, ainda por instalar no SaaS). Contagens, nulos, distintos, estatísticas, distribuições e amostras limitadas, com perfil incremental em tabelas grandes.
Monitores automáticos de atualidade, volume e schema em todas as tabelas da conexão (até 500 por conexão), a partir dos metadados do catálogo e sem configuração; drift e anomalias; motor de regras; SLO por dataset. Alertas em email, Slack, Teams e webhook, com escalas de piquete e um âmbito por canal (domínios, conexões, datasets, tipos de problema).
Tipos semânticos detetados automaticamente (email, NIF, IBAN, código postal, telefone, datas, montantes, nomes, moradas) com regras de validação sugeridas. Telefones, códigos postais, NIF, IBAN e datas em formatos mistos passam à forma canónica. Campos compostos são decompostos por regras de locale PT, ES e EN: moradas (rua, número, andar, código postal, localidade, país), nomes (título, nome, apelidos), telefones com indicativo, NIF e nome na mesma coluna, datas em texto livre e montantes com moeda. Cada coluna mostra a taxa de sucesso na amostra e os formatos que falham. A normalização é proposta em SQL no dialeto da fonte e em PySpark, só de leitura, e aplicada pelo seu processo, também por pull request. Nunca escrevemos nas fontes.
Matching e deduplicaçãoMatching / linking / merging
Coberto
Duplicados exatos e aproximados dentro de cada dataset e correspondência entre dois datasets, também de fontes diferentes, como o CRM e o ERP. As regras de correspondência configuram-se por campo: comparador (exato, normalizado, Jaro–Winkler, por palavras, numérico com tolerância ou data com janela), peso e semelhança mínima, com blocking e um limiar de correspondência e outro de revisão. Os clusters entre os dois datasets reveem-se na interface (fundir, ignorar ou repor), e a decisão fica no DataVault, no trilho de auditoria, e vale nas execuções seguintes. As regras de sobrevivência por campo (fonte prioritária, mais recente, mais completo ou mais frequente) dão um registo consolidado proposto, com a origem de cada campo, em SQL e PySpark só de leitura, que pode seguir por pull request para o processo do cliente aprovar. Num benchmark sintético rotulado, as regras sugeridas dão precisão 1,0 e recall 0,85 em 10 000 linhas. Nunca escrevemos nas fontes.
Limpeza com intervenção humana: propomos a correção — SQL e PySpark gerados, com poupança estimada e risco analisado —, abrimos um pull request no repositório do cliente e uma pessoa aprova a aplicação, num fluxo governado (proposto, aceite, aplicado, verificado no scan seguinte). Nunca escrevemos nas fontes sem essa aprovação.
Porquê: Propomos SQL/PySpark e PR no repositório; nunca escrevemos na fonte. Pedir credenciais de escrita seria a primeira objeção da sua equipa de segurança.
Propomos valores a partir de fontes de referência, cada um com a fonte, a data da consulta e a confiança: a localidade, o concelho e o distrito pelo código postal português (GeoAPI.pt, com dados dos CTT e do INE), a localidade pelo código postal espanhol (Nominatim do OpenStreetMap, que recebe só o código postal), as coordenadas pela morada (na sua própria instância Nominatim, a única que recebe moradas), o nome e a morada registados de uma empresa pelo NIF de pessoa coletiva (VIES da Comissão Europeia) e os códigos ISO de país e de moeda (listas locais). Cada proposta dá a cobertura na amostra e sai em SQL no dialeto da fonte e em PySpark: uma contagem só de leitura e um UPDATE proposto, ou um SELECT com os valores propostos, que o seu processo aplica por pull request ou SQL depois de aprovar a sugestão. Cada fornecedor externo recebe só o campo a enriquecer, depois de um administrador o autorizar no workspace; a sua instância Nominatim autoriza-se com o URL e com uma confirmação própria de dados pessoais. Nunca escrevemos nas fontes.
Catálogo automático com domínios; linhagem por chaves estrangeiras, SQL das views ao nível da coluna, manifest do dbt e OpenLineage; sensibilidade por coluna e README por dataset aprovado por um humano. Glossário de negócio nativo: termos com definição, sinónimos, owner, domínio e estado (rascunho, aprovado ou depreciado), ligados a colunas e datasets. As ligações sugeridas pelo nome, pelos sinónimos, pelo tipo semântico e pelas descrições do dbt nascem sempre como proposta, e só uma pessoa as aprova. Cada dataset pode ter owner (herdado do domínio quando está vazio) e steward, e tags por dataset e por coluna, livres ou de uma lista controlada do workspace. As alterações de owner, steward e tags, a sensibilidade posta à mão, as ligações de termos a colunas e as edições dos termos ficam no histórico (o quê, quem, quando, antes e depois), com diff entre duas datas. O histórico começa na versão que o introduziu: as alterações anteriores não foram convertidas, e a criação de termos, as sugestões automáticas e o que o datavault.yaml aplica ainda não entram. O dicionário de dados exporta-se por dataset, domínio ou workspace em CSV, JSON e Markdown, com descrições, tipos, sensibilidade, termos, tags, owner, steward, regras e SLA. Também se exporta em ficheiros para carregar no OpenMetadata (um pedido de criação de tabela por dataset; o owner, o SLA e as regras vão à parte, porque o pedido não os aceita) e no DataHub (MCPs para o datahub ingest). É um ficheiro para o seu processo carregar: não o enviamos. A pesquisa transversal encontra datasets, colunas, termos, tags e owners e respeita os domínios restritos. O owner, as tags, o histórico, o dicionário e a pesquisa usam-se pela API: ainda não têm página na app. Os veredictos de qualidade publicam-se no OpenMetadata, no DataHub e no Collibra (Import API v2, validado com transporte simulado; validação em tenant do cliente pendente).
Orquestração e fluxo de trabalhoWorkflow / orchestration
Coberto
Webhook do dbt Cloud e pacote Airflow com gate de qualidade; gate de regras e data-diff em CI; servidor MCP para agentes; configuração do workspace como código; fluxo de problemas com responsáveis, escalas e agendamentos. Validação no ponto de entrada, só de leitura: o integrador ou a pipeline mandam até 5 000 registos por pedido à API antes de os escrever e recebem o veredito de cada um com as regras que o DataVault já monitoriza no dataset (campos obrigatórios, padrões, intervalos, NIF, NISS e IBAN com dígito de controlo, listas de referência ISO e do workspace), o código do motivo de cada falha e o veredito do lote. Nada é guardado nem enviado a um LLM e a fonte não é lida: rejeitar ou pôr em quarentena fica do lado do cliente. As regras que medem o dataset inteiro (unicidade, atualidade, volume) vêm marcadas como não aplicáveis.
Experiência para utilizadores de negócioBusiness-user experience
Coberto
Relatórios por perfil (engenharia, gestão, executivo) com impacto em euros, em PDF, agendáveis e partilháveis; assistente em linguagem natural; primeiro scan ao vivo; interface em português, inglês e espanhol.
Cada resposta aponta para o controlo no código e o teste que o prova. Não temos certificação ISO 27001 nem SOC 2 — está em programa, e não a afirmamos.
Read-only mecânico
O DataVault escreve nas nossas fontes de dados?
Não. A garantia está no código, não só nas permissões: o cliente HTTP dos conectores recusa qualquer verbo de escrita antes de sair para a rede, nenhum conector pode ter um método de escrita, e as sessões PostgreSQL abrem em modo só de leitura.
Como são guardadas as credenciais das nossas fontes?
Cifradas com Fernet antes de serem gravadas, nunca devolvidas pela API nem escritas em logs. As chaves rodam sem interrupção: várias chaves ativas, a primeira cifra e todas decifram, e um script re-cifra tudo com a chave nova.
Um URL de ligação malicioso pode ser usado para chegar à vossa rede interna (SSRF)?
Não. Só aceitamos https, recusamos hosts que resolvam para endereços internos e fixamos o IP validado na ligação (pinning de DNS), repetindo a validação em cada redirect — o que fecha também o DNS rebinding.
Todo o conteúdo produzido com um modelo leva um rodapé que o identifica, com o modelo e o fornecedor que de facto responderam, nos termos do art. 50.º do Regulamento (UE) 2024/1689. Exportamos também o dossiê de evidência do art. 10.º.
Podemos usar a nossa chave ou o Claude da nossa conta cloud?
Sim. Chave Anthropic própria por workspace, política de IA (incluindo «IA desligada») e, no plano Enterprise, Claude na sua conta AWS (Bedrock, regiões da UE) ou Google Cloud (Vertex AI, regiões europeias), sem a Praxis guardar segredos dessa rota.
Por omissão, só a Anthropic recebe dados de clientes, em amostras limitadas. As amostras podem ser anonimizadas antes de sair (NIF, NISS, IBAN, telefone, nomes), e um fornecedor alternativo nunca recebe amostras em bruto.
Ainda não. Estão em programa, com base nos controlos descritos nesta página. Até lá, respondemos com a evidência técnica de cada controlo — não com selos que não temos.
SSO por OIDC com o fornecedor de identidade do cliente (Entra ID, Google Workspace, Keycloak e outros), com papéis por workspace, equipas e registo de auditoria exportável em CSV. As contas com password têm MFA por TOTP (app autenticadora), com códigos de recuperação de uso único: é obrigatória para os administradores da organização e para o staff da Praxis, e o administrador do workspace pode exigi-la a todos os membros. As contas SSO usam a MFA do seu fornecedor de identidade. O suporte da Praxis só entra num workspace com o consentimento de um administrador do cliente, em modo de leitura e por 72 horas no máximo, e cada acesso fica no registo de auditoria. Ainda não temos aprovisionamento SCIM.
Ainda não em contrato. O SLA só passa a contrato depois de um trimestre de disponibilidade medida e de uma política de suporte por severidade, ainda em definição. Hoje: backups diários com recuperação para um ponto no tempo (7 dias), verificados em cada deploy, e o produto continua a funcionar em modo offline se a IA falhar. Os prazos de 7, 30 e 90 dias da nossa política de vulnerabilidades são para corrigir falhas de segurança, não um SLA de suporte.
Cumprem o WCAG 2.2 AA e a EN 301 549? Têm VPAT ou ACR?
Parcialmente, e o ACR está disponível. O relatório de conformidade de acessibilidade (baseado no VPAT® 2.5) avalia os 55 critérios WCAG 2.2 de nível A e AA na app e no site, com a cláusula EN 301 549 de cada um, e diz o que ainda falta e onde. O lint de acessibilidade, o axe e o contraste dos tokens correm no CI. É uma auto-avaliação, não uma auditoria externa.
Conseguem provar, por elemento de dados crítico, que os requisitos de qualidade do BCBS 239 ou da Solvência II estão controlados?
Em parte, e dizemos onde não. Cada dataset ou coluna pode ser marcado como elemento de dados crítico do BCBS 239, da Solvência II ou de outra regulação, com owner e referência. O dossiê regulatório mostra, por princípio do BCBS 239 (3 a 6) ou por número do art. 19.º do Regulamento Delegado (UE) 2015/35, os controlos de qualidade de cada elemento, o último resultado de cada regra, os problemas abertos, o SLA, a linhagem e o contrato de dados, e aponta as lacunas. Exporta-se em CSV e PDF e partilha-se por link. A exatidão e a integridade ainda aparecem como lacuna em todos os elementos, porque nenhum tipo de regra do DataVault as mede hoje. A interface do dossiê ainda não existe: por agora usa-se pela API e pelos relatórios. O dossiê é evidência para o supervisor, não uma declaração de conformidade.
Decisões de produto, não lacunas por fechar. Se algum destes pontos for obrigatório na sua RFP, dizemos-lho logo.
Remediação destrutiva nas fontes
Propomos a correção e abrimos o pull request; quem aplica é o cliente. Escrever nas fontes exigiria credenciais de escrita — a objeção n.º 1 das equipas de segurança europeias.
Detetamos duplicados e propomos a consolidação, mas não mantemos um registo-mestre nem escrevemos a versão «vencedora» nas fontes. Complementamos a ferramenta de MDM que já tenha.
Lemos os documentos pela camada de texto. Imagens não são processadas, e um PDF digitalizado sem texto é assinalado como a precisar de OCR em vez de ser enviado a um modelo de visão.
Como mantemos esta página: é gerada de um único ficheiro, e o site não compila se um link de evidência deixar de resolver ou se a nossa matriz de comparação disser outra coisa.
Tem uma RFP em curso?
Envie-nos a sua grelha: respondemos linha a linha, com a mesma evidência.