Quando algo cai, você desce esta página de cima para baixo até encontrar a camada que parou. Mais abaixo: o inventário completo comparado contra o contrato — o que a máquina tem de verdade, hoje, não o que a documentação acha que ela tem.
| Item | Detalhe | |
|---|---|---|
| VM Oracle — disco/memória/uptime | disco 74.3% livre (143.8GB de 193.6GB) · memoria 80% livre (18.8GB de 23.4GB) · uptime 105.6 dias | |
| Oracle ADB — SafeFlowAIDB (prod) | ping OK (HTTP 200) | |
| Oracle ADB — SAFEFLOWAIBSTG (staging) | ping OK (HTTP 200) |
Clique para abrir. A ordem é a do tráfego: paciente no topo, dado no fundo. Layout fixo — o que muda é só o semáforo.
Todos os subdomínios em modo cinza (DNS-only).
Nuvem laranja (proxy) quebra webhook e SSL do Dify, n8n e Evolution. Nunca ligar.
É o único container nas três redes. O n8n-app vive isolado em safeflow-n8n_default; o Evolution em evolution-api-claude_default. Eles só se alcançam através dele.
Se o NPM cair, o n8n perde o Dify. Os agentes param de responder mesmo estando de pé.
O NPM cacheia DNS interno. Depois de todo redeploy do Dify, o IP muda e o NPM continua batendo no velho — 502 em tudo.
Reiniciar o safeflow-nginx depois de qualquer redeploy do Dify. Sempre.
dify-api · dify-web · dify-workerpostgres · redis · weaviate (vetores do RAG)plugin_daemon · sandbox104 dias em crash-loop (149644 reinícios). Nenhum agente publicado usa Code node — verificado direto no Postgres, não por suposição. Fica amarelo permanente: se algum dia isso mudar, vira crítico sozinho.
Refragmentar base existente corrompe os vetores em silêncio. Sempre deletar e recriar.
specifyBody:"json" — vai como string literalJSON.stringify — quebra o JSONPATCH via REST grava no banco mas não recarrega o runner. Salvar pela UI aberta reverte o PATCH. Fechar a aba — aplicar — reabrir — publicar.
Baileys — biblioteca não-oficial. Não é a API oficial da Meta.
O número de WhatsApp da clínica é a base de pacientes dela. É risco de reputação, não de infra.
local: /backups/20260911-030001 · R2: 20260911-030001
A porta 22 da Oracle está bloqueada. Tudo passa pela API do Portainer, endpoint /api/endpoints/3/.
Nunca editar arquivo à mão dentro de container servido por repo versionado.
A queixa nunca chega em linguagem de container. Chega assim.
"Mandei mensagem e ninguém respondeu."
Vendedor, Pré e Pós-procedimento (Haiku) · Luna no D7
Evolution. Se o chip desconectou ou foi banido, nenhum agente alcança ninguém.
"A Íris não me respondeu."
Íris (clínico) e Cora (regulatório), ambas Sonnet · Expert e Elite
O roteador exige estagio=ativo. Se mudou, ela cai no canal restrito — e o silêncio parece falha, mas é a regra funcionando.
"O painel não abre."
Login por CNPJ e senha, validado no servidor.
É o único ponto que não passa pelo Evolution.
O Evolution é, ao mesmo tempo, o ponto de contato mais crítico e o componente mais frágil.
Se o Evolution cair, a clínica inteira fica muda e a dona vai atribuir isso à SafeFlowAI, esteja a culpa onde estiver.
Aqui não é sobre fluxo de request. É sobre o que existe versus o que o contrato (esperado.json) diz que deveria existir. Inclui tudo — mesmo o que nunca aparece no caminho do tráfego.
| Nome | Imagem | Estado real | Nota | |
|---|---|---|---|---|
| dify-api-1 | langgenius/dify-api:1.14.1 | running · sha256:cd8e96cab6b5c784b33a50bfe77d8d2f61343a91f1be753ec490a8ed802d32b1 | ||
| dify-web-1 | langgenius/dify-web:1.14.1 | running · sha256:62658ad010ac42a443ea4ac052d57538efd54a502e069d4da183f1f9e302f968 | ||
| dify-db_postgres-1 | postgres:15-alpine | running · sha256:1c52f5ad23db5d7648a63634444af76de48e63b860fccbe3e3a5458b2812eaed | ||
| dify-redis-1 | redis:6-alpine | running · sha256:5cb97148754ce2ad8a8364a1c0fb266d355d203dde69a75656129fee4d9b73da | ||
| dify-weaviate-1 | semitechnologies/weaviate:1.27.0 | running · sha256:53fa576934f8e2c9130dc3a61a0f9b7d9330fe0ff456ccb37db05d03b700abc9 | ||
| dify-worker-1 | langgenius/dify-api:1.14.1 | running · sha256:cd8e96cab6b5c784b33a50bfe77d8d2f61343a91f1be753ec490a8ed802d32b1 | ||
| dify-worker_beat-1 | langgenius/dify-api:1.14.1 | running · sha256:cd8e96cab6b5c784b33a50bfe77d8d2f61343a91f1be753ec490a8ed802d32b1 | ||
| dify-plugin_daemon-1 | langgenius/dify-plugin-daemon:0.6.0-local | running · sha256:f200b00544f83ed69ea11d82996819be43415ad33e5c2b37436667df152ef6c8 | ||
| safeflow-nginx | jc21/nginx-proxy-manager:latest | running · sha256:2aa69b382a384b676c0d4f1d6f2eac40ecd478fcf7af1cfb3f9f1d3cd0c81e12 | SPOF | |
| portainer | portainer/portainer-ce:latest | running · sha256:1ae8e65d50ca5498cb2c33e617495a1e3ef245b0d2392b4a44c70ae09b822891 | ||
| ollama | ollama/ollama:latest | running · sha256:99262b6b2898e1d40907883e316f31e350e0ee6316ccae6127ac5a9feeacade2 | ||
| safeflow-site | nginx:alpine | running · sha256:54f2a904c251d5a34adf545a72d32515a15e08418dae0266e23be2e18c66fefa | ||
| safeflow-dashboard | nginx:alpine | running · sha256:54f2a904c251d5a34adf545a72d32515a15e08418dae0266e23be2e18c66fefa | ||
| safeflow-mapa | nginx:alpine | running · sha256:54f2a904c251d5a34adf545a72d32515a15e08418dae0266e23be2e18c66fefa | ||
| safeflow-experiencia | nginx:alpine | running · sha256:54f2a904c251d5a34adf545a72d32515a15e08418dae0266e23be2e18c66fefa | ||
| n8n-app | docker.n8n.io/n8nio/n8n:latest | running · sha256:1872cce3548bf4dcfe5aceaf3d9293f4499635823fbdea0ee726bd222d2e44b8 | ||
| n8n-db | postgres:16 | running · sha256:5a65324fe84dc41709ff914e90b07f3e2f577073ed27bf917d4873aca0c9ec51 | ||
| safeflow_ferrari_8081 | atendai/evolution-api:v1.8.6 | running · sha256:fc4a1873d2c0ceedb67641e5b11986c82c3dbb363343f74857f2e5f4a5a708fe | ||
| radar-governanca | python:3.12-alpine | running · sha256:6d43704baacd1bfbe7c295d7f13079d5d8104ed33568873133f8fc69980419df | ||
| uptime-kuma | louislam/uptime-kuma:1 | running · sha256:3d632903e6af34139a37f18055c4f1bfd9b7205ae1138f1e5e8940ddc1d176f9 | ||
| dify-sandbox-1 | langgenius/dify-sandbox:0.2.15 | 104 dias em crash-loop, 149644 restarts. Nenhum code node encontrado — gatilho inativo. |
| Nome | Tipo | |
|---|---|---|
| evolution-api-claude_evolution_instances_final | volume | |
| evolution-api-claude_evolution_store_final | volume | |
| ollama_data | volume | |
| portainer_data | volume | |
| safeflow-n8n_n8n_db_storage | volume | |
| safeflow-n8n_n8n_storage | volume | |
| safeflow-nginx_npm_data | volume | |
| safeflow-nginx_npm_letsencrypt | volume | |
| vol_dashboard_html | volume | |
| vol_experiencia_html | volume | |
| vol_mapa_html | volume | |
| vol_site_html | volume | |
| bind_mount_dify | bind_mount |
| Host | Expira em | Dias restantes | |
|---|---|---|---|
| safeflowai.com.br | Dec 4 12:29:10 2026 GMT | 84 | |
| dashboard.safeflowai.com.br | Nov 22 12:29:09 2026 GMT | 72 | |
| mapa.safeflowai.com.br | Oct 11 19:06:08 2026 GMT | 30 | |
| experiencia.safeflowai.com.br | Dec 6 16:29:09 2026 GMT | 86 | |
| n8n.safeflowai.com.br | Nov 10 12:29:15 2026 GMT | 60 | |
| dify.safeflowai.com.br | Oct 27 15:29:05 2026 GMT | 46 | |
| evolution.safeflowai.com.br | Nov 13 11:29:09 2026 GMT | 63 |
| Nome | Eixo | ID | |
|---|---|---|---|
| Sofia - Consultora Comercial SFAI | B2B | b1915426-25d5-4017-9f7e-d3bf9f5c02ec | |
| Bella - Onboarding - Implementação | B2B | 00a6595a-58ba-4cd4-b15e-69bca069fce3 | |
| Bella - Qualifica - Implementação | B2B | cb0e43ae-b56b-403a-95b8-ecef489ae5e5 | |
| Zoe - Gerente de Sucesso | B2B | f42ffffc-1977-41c2-923d-f2965caa0495 | |
| Vendedor IA | B2C | b626bbe9-47af-455d-9f57-5e857ae7bd92 | |
| Pré-Procedimento IA | B2C | 347b6640-1356-4607-89ac-d1b78d212f27 | |
| Pós-Procedimento IA | B2C | 0f8d1c06-b664-48df-9996-d541cbcdd6e2 | |
| Íris - Segunda Opinião Técnica | B2B-clinico | 31a9b8ac-b57a-44ae-b3cf-18f77b769dd2 | |
| Luna - Pós-Procedimento | B2C | c3af0a51-46e6-4c3b-9f08-83c3f4873c3e | |
| Cora - Conformidade Regulatória | B2B | 77c3ae99-23e1-4ce9-9a89-53e0fea25af4 | |
| Caixa IA | indefinido | 32b7ac11-5209-4dac-b588-214d725327c2 | |
| Conteúdo Estático IA | indefinido | a12cad9a-37c1-4a22-9b71-cdd77c04ffbd | |
| Conteúdo Vídeo IA | indefinido | 4c0418ea-a18a-4ca0-b858-fb798d03e839 |
| Nome | ID | |
|---|---|---|
| qualifica-completo | KLPLu9e7jfDExn1F | |
| Iris WebApp Proxy (Experiencia Parceiras) | 00f4QV3YPpbkFjYW | |
| Íris Roteador — canal profissional SFAI | zF7voynJsUlVkrtd | |
| valida-dashboard | ngswIxAc6SnOWM3w | |
| Roteador B2C — trio (Vendedor/Pré/Pós) | 8cVE18NYZsIDzhrg | |
| bella-handoff | jwiEF6jY1Pc4XDYK | |
| notion-gravar | 8FWajpGTuwv1zvR5 | |
| Oracle ADB Keep-Alive (prod + staging) + Alerta | cHnxsrMvswZP4pSC | |
| Sofia WebApp Proxy | XaL3anyq7gMr7V3Z | |
| Cora Roteador — canal compliance SFAI | vIIRTQiAgW4YQphe |
| local: /backups/20260911-030001 · R2: 20260911-030001 | ||
O mesmo sistema, visto de cima. Tudo orbita o proxy — porque é o único container que alcança as três redes.
O Portainer não orbita o proxy — é a porta de manutenção, e a única. Não existe SSH.
Toque em qualquer orbe.