From 553ba8f2f5858bbbfb68c9edf1542ec8cac2f83c Mon Sep 17 00:00:00 2001 From: Hermes Agent Date: Fri, 10 Jul 2026 14:51:55 +0000 Subject: [PATCH] =?UTF-8?q?Update:=20workflow=20Supabase=E2=86=92Sheet=20c?= =?UTF-8?q?riado,=20cron=20Kong=20DNS=20fix,=20actualiza=C3=A7=C3=A3o=20IP?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/arquitectura-dados.md | 40 +++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/docs/arquitectura-dados.md b/docs/arquitectura-dados.md index 80d43ef..40df488 100644 --- a/docs/arquitectura-dados.md +++ b/docs/arquitectura-dados.md @@ -216,11 +216,14 @@ App Fechamento Caixa (Tauri) - Limpar dados de lojas fechadas (Central, Minas) - Executar importação via script Python -- [ ] **Criar fluxo N8N: Supabase → Sheet** - - Configurar Google Sheets node no N8N - - Query: `SELECT * FROM fechamentos_web ORDER BY data DESC` - - Agendar: daily às 20h - - Destino: aba "VENDAS" (append ou update) +- [x] **Criar fluxo N8N: Supabase → Sheet VENDAS** ✅ (2026-07-10) + - Workflow ID: `34cfbba7-b58a-4ba9-ac98-9c7755260722` + - Trigger: schedule `0 20 * * *` (20h BRT) + - Nodes: Read Last Sync → Fetch Supabase → Filter+Map → Append VENDAS → Update Last Sync + - Credenciais: `SUPABASE_SHEETS_READER_KEY` env var + Google Sheets OAuth + - Sheet "Sincronizacao" A1: guarda UTC timestamp do último sync + - ⚠️ Primeiro run: cells vazias na Sheet VENDAS (fórmulas T.VENDA, TX_CAIXA, SISTEMA ficam a 0) + - ⚠️ Necessário criar aba `Sincronizacao` no spreadsheet com A1 vazio antes de activar ### Média Prioridade @@ -242,13 +245,18 @@ App Fechamento Caixa (Tauri) ### Supabase (self-hosted) -- **Container IPs** (podem mudar após `docker update` da Hostinger): - - Kong: `172.16.6.7` +- **Container IPs**: podem mudar após `docker update` da Hostinger + - PostgREST (supabase-rest): `172.16.6.7` — ⚠️ MUDANÇA FREQUENTE + - Kong: `172.16.6.7` (mesmo host, porta 8000) - DB: `172.16.6.4` - - Studio: `172.16.6.3` - Auth: `172.16.6.8` + - Meta: `172.16.6.9` + - Pooler: `172.16.6.10` -- **Problema conhecido**: IPs hardcoded no `kong.yml` — actualizar com `sed` quando mudam +- **Problema conhecido**: IPs hardcoded no `kong.yml` — corrigido automaticamente + - Cron `Kong DNS fix` (job ID: `9a64e7b49ac6`) corre a cada 15 min + - Compara IP actual do `supabase-rest` com o em `kong.yml` + - Se diferente: substitui e reinicia `supabase-kong` ### Google Sheets API @@ -282,3 +290,17 @@ App Fechamento Caixa (Tauri) --- *Última actualização: 2026-07-10* + +## 9. N8N Workflows + +| Workflow | ID | Trigger | Notas | +|---|---|---|---| +| PDV → Sheets Relatorios | `VFIiOZK2ZV3a0956` | `0 */6 * * *` | Fetch PDV, clear+append Resumo_Diario, Top_Produtos, Resumo_Fechamento | +| **Supabase → Sheet VENDAS** | `34cfbba7-b58a-4ba9-ac98-9c7755260722` | `0 20 * * *` | Incremental por `atualizado_em` UTC. ⚠️ Requer aba `Sincronizacao` no spreadsheet | + +## 10. Cron Jobs (Hermes Agent) + +| Job | ID | Schedule | Notas | +|---|---|---|---| +| Kong DNS fix | `9a64e7b49ac6` | `*/15 * * * *` | Auto-fix PostgREST IP no kong.yml | +