Central de Documentação
Arquitetura do sistema
Stack tecnológico, 18 domínios DDD, segurança em camadas e fluxo de dados fim-a-fim.
Visão geral da arquitetura
A Heillon Legal é construída com Domain-Driven Design (DDD), separando 20+ bounded contexts no backend FastAPI e o cockpit + área de conta no frontend Next.js 15. A captura de IA acontece por coletores (Extensão e Gateway) que escrevem no mesmo HDR Ledger.
Stack tecnológico
| Camada | Tecnologia | Propósito |
|---|---|---|
| Backend | Python 3.12, FastAPI, Pydantic v2 | API REST, lógica de domínio, HDR Ledger |
| Base de dados | PostgreSQL 16 + SQLite (dev) | Persistência + migrações SQL incrementais |
| Cache | Redis 7 | Rate limiting distribuído + fallback memória |
| Frontend | Next.js 15 App Router | UI cockpit + PWA móvel + proxy cookie-aware |
| UI | shadcn/ui, Tailwind CSS | Componentes, estilos, paleta gold |
| Animação | Framer Motion | Transições de página suaves |
| 3D | Three.js + @react-three/fiber | Hero 3D (frameloop=demand) |
| ReportLab + pikepdf | PDF/A-1/B forense com XMP/ICP-Brasil | |
| Coletores | Extensão Chrome MV3 + Gateway | Captura passiva OpenAI/Anthropic + Anthropic Messages (SSE) |
| Observability | Sentry + Postmark + /admin | Erros (PII off), e-mail transacional, métricas do beta |
| Deploy | Vercel + Docker Compose + Caddy | UI edge-deployed + stack local + TLS automático |
| CI/CD | GitHub Actions + Playwright | ruff, mypy, pytest, security scan + E2E smoke |
Domínios DDD (principais)
Ledger criptográfico — SHA-256, RFC 3161, ICP-Brasil TSA
Ingestão WORM — PyMuPDF, python-docx, hashing
OrchestrationEngine EASY — DAG, executores LLM/Stub
Corpus FTS5 — validação pré-execução, 5+ frameworks
Pacotes forenses — PDF/A, chain.json, Ed25519
Auth JWT HttpOnly, RBAC, multi-tenant
LGPD técnica — RIPD, DPO, portabilidade, ANPD
ICP-Brasil, eIDAS QES, ESIGN, UAE-PASS
CNJ 615/2025, OAB, human approval gates
EU AI Act + GDPR + eIDAS 2.0 + ISO 27001
Colorado SB 205, CCPA, ABA Rules, NIST AI RMF
UAE PDPL, DIFC, UAE AI Ethics, UAE PASS
UK GDPR, Singapore PDPA, Australia Privacy Act, Canada C-27
AIMS completo — FRIA, Annex A controls
FRE 707, citações, alucinações, competência OAB/ABA
Insurance Score, Colorado SB 26-189, CCPA ADMT
Push tokens, PWA stats, rotas /m/*
TSA fallback: Certisign→Serpro→FreeTSA→stub
Planos Free/Pro/Team/Enterprise, limite mensal, retenção, HTTP 402
Coletor #2 — proxy OpenAI + Anthropic Messages com auditoria HDR
Chaves heillon_live_… dos coletores, prefixo + last_used, revogação
Segurança em camadas
Transporte
TLS em toda comunicação. Headers HTTP:HSTS,CSP,X-Frame-Options,Referrer-Policy,Permissions-Policy.Autenticação
JWT em cookieHttpOnly; Secure; SameSite=Lax. Senha com bcrypt (custo 12). Proxy Next.js elimina CORS no frontend.Autorização
RBAC por role (advogado/admin) + isolamento pororganization_id. RLS PostgreSQL para isolamento a nível de base de dados.Chaves de agentes
Fernet (AES-128-CBC + HMAC-SHA256) para chaves de API dos modelos LLM. Chave Fernet obrigatória em produção, distinta do JWT secret.Rate limiting
Redis 7 distribuído + fallback em memória para dev. Limites configuráveis por rota.Integridade dos dados
SHA-256 + RFC 3161 + encadeamento append-only. Stubs proibidos em produção.