# Arquitetura, privacidade e operação

**Versão 1.0 · 15 de outubro de 2026**

## Estado da arquitetura

O produto atual é uma aplicação web estática. Recursos de rotina, perfil, comunicação e aprendizagem podem ser usados localmente; a persistência depende do aparelho e das configurações do navegador. Há um projeto Supabase Free ativo em São Paulo, com migrações aplicadas para sincronização do plano de aprendizagem. A integração ainda não passou por ensaio ponta a ponta com contas fictícias.

O cliente só aceita URL e chave pública de publicação. Chaves secretas e `service_role` não podem ser incluídas no navegador. A chave pública não substitui RLS. As migrações habilitam RLS em `learning_profiles`, `learning_goals` e `learning_observations`, limitam operações ao dono autenticado e não concedem acesso a `anon`; a função auxiliar de ativação de RLS não é executável pelos papéis da API. A sincronização é manual, após autenticação e consentimento, e não abrange outras áreas do aplicativo.

## Arquitetura alvo em fases

### Fase A — piloto individual, somente após provisionar e validar

- Supabase Auth por link de acesso e retorno ao domínio público configurado; falta validar recebimento e uso de links em contas de teste.
- Postgres com migrações versionadas e RLS em cada tabela exposta.
- Sincronização explícita apenas dos campos aprovados para o plano pedagógico.
- Testes negativos: usuário A não lê, edita ou exclui registros de B; anônimo não consulta dados.
- Dados fictícios em desenvolvimento e homologação.
- Exportação lógica periódica, teste documentado de restauração e procedimento de exclusão.

### Fase B — colaboração institucional (não implementada)

Antes de suportar rede municipal, desenhar e testar o modelo multi-organização: instituição, associação de usuários, papéis de família/profissional/gestor, revogação e vigência de acesso, turma e plano compartilhado. A matrícula de dados sensíveis de crianças não deve ficar acessível a todos os membros da escola. Criar modelo de autorização, auditoria e separação por instituição antes de qualquer dado real. Não reutilizar a RLS individual atual como se ela já resolvesse o isolamento por escola.

### Fase C — operação em escala (não implementada)

Definir metas de disponibilidade e recuperação com o contratante; monitoramento sem conteúdo pessoal; atendimento e comunicação de incidentes; plano de continuidade, gestão de vulnerabilidades, revisão independente, acessibilidade, controle de mudança, custos e capacidade. Escolher infraestrutura com base em requisitos do edital e no estudo técnico do órgão, inclusive requisitos territoriais de dados, quando aplicáveis. Não prometer alta disponibilidade em plano gratuito.

## Dados: minimização por padrão

### Aprovados no primeiro escopo de sincronização

- área de habilidade, objetivo educacional breve, contexto, estratégia planejada, apoio escolhido, status e observação categorizada sem narrativa clínica;
- identificador de conta do responsável e marcas temporais técnicas necessárias.

### Fora do primeiro escopo

- nome completo, data de nascimento, endereço, diagnóstico e laudos;
- gravações de voz, transcrições e imagens pessoais;
- notas clínicas, avaliação padronizada, pontuações ou histórico de saúde;
- perfil, rotina, cartões de comunicação e favoritos do mapa.

Qualquer expansão exige finalidade específica, avaliação de necessidade, transparência acessível, revisão de base legal e proteção, prazo de retenção e decisão registrada do controlador.

## Controles mínimos antes de uso institucional

1. Mapear dados, finalidade, titulares, operadores, regiões, integrações, retenção e exclusão.
2. Definir controlador, operador, encarregado/ponto de contato e responsabilidades contratuais.
3. Revisar RLS de leitura, criação, atualização e exclusão; verificar a API exposta e permissões `anon`/`authenticated`.
4. Testar acesso cruzado entre contas, expiração/revogação de sessão, autenticação e links de retorno.
5. Proteger segredos em ambiente do servidor; impedir credenciais privilegiadas no bundle e no histórico Git.
6. Manter cópias externas versionadas e testar restauração. Não confundir replicação com backup.
7. Definir processo de incidente, solicitação de titular, correção, exclusão e encerramento do contrato.
8. Validar compatibilidade com navegação por teclado, leitor de tela, ampliação e uso móvel; WCAG 2.2 AA é uma meta de engenharia a auditar, não uma certificação já obtida.
9. Definir política de telemetria sem coletar conteúdo de criança; reduzir identificadores e retenção.
10. Publicar aviso de privacidade em linguagem simples e alternativas sem conta sempre que possível.

## Limites do Supabase gratuito e custo zero

O projeto está no plano Free, com mensalidade de US$ 0, sem add-ons pagos ou serviço de IA pago habilitado. A documentação oficial informa que projetos gratuitos podem pausar após uma semana sem atividade e que backups diários automáticos estão disponíveis nos planos pagos; projetos gratuitos precisam de exportações próprias e restauração testada. Consulte [preços](https://supabase.com/pricing), [pausa automática](https://supabase.com/docs/guides/platform/free-project-pausing) e [backups](https://supabase.com/docs/guides/platform/backups).

Manter a organização e o projeto no plano Free. Não habilitar upgrade, add-on, compute pago, domínio ou serviço de IA pago. Se a cota gratuita deixar de atender, suspender sincronização antes de qualquer mudança de plano e manter os recursos locais disponíveis. Gratuidade ao usuário final não elimina custos de operação para uma rede pública; o contratante deve planejar continuidade, suporte e cópias de segurança.

## Fontes oficiais

- [Supabase: documentação de segurança](https://supabase.com/docs/guides/security).
- [Supabase: pausa de projetos gratuitos](https://supabase.com/docs/guides/platform/free-project-pausing).
- [Supabase: backups de banco](https://supabase.com/docs/guides/platform/backups).
- [ANPD: dados pessoais de crianças e adolescentes](https://www.gov.br/anpd/pt-br/assuntos/noticias/anpd-divulga-enunciado-sobre-o-tratamento-de-dados-pessoais-de-criancas-e-adolescentes).
- [Lei Geral de Proteção de Dados, Lei nº 13.709/2018](https://www.planalto.gov.br/ccivil_03/_ato2015-2018/2018/lei/l13709.htm).
