arcadia-suite-sv/PLANO_EVOLUCAO_ARCADIA.md

422 lines
14 KiB
Markdown

# PLANO ESTRATÉGICO DE EVOLUÇÃO
## Arcádia Suite → Frappe Framework
### Versão 1.0 - Janeiro 2026
---
## 1. VISÃO GERAL
### 1.1 Objetivo
Evoluir o Arcádia Suite para um **Business Operating System** completo, inspirado em três referências:
| Referência | O que Inspira |
|------------|---------------|
| **Notion** | Blocos modulares, banco de dados relacional, personalização |
| **Replit** | IDE no navegador, colaboração em tempo real, deploy instantâneo |
| **Discord** | Comunidades, canais contextuais, comunicação em tempo real |
### 1.2 Estratégia de Migração: Strangler Fig
A estratégia Strangler Fig permite:
- Manter WhatsApp, Manus, CRM funcionando durante toda a migração
- Construir o novo sistema em paralelo
- Migrar módulo a módulo até o sistema legado "desaparecer"
```
Sistema Atual (Express/React) continua funcionando
Você vai adicionando "camadas Frappe" por cima
Cada módulo migrado substitui o antigo
No final, o "núcleo antigo" sumiu naturalmente
```
### 1.3 Stack Técnico
| Camada | Atual | Futuro |
|--------|-------|--------|
| Frontend | React 18 + TypeScript | Frappe Desk + React |
| Backend | Express.js | Frappe Framework |
| Database | PostgreSQL | PostgreSQL (mesmo) |
| Real-time | Socket.IO | Frappe Realtime + Socket.IO |
| WhatsApp | Baileys | Frappe App (Baileys) |
| IDE | Monaco + Terminal | IDE 3 Modos |
---
## 2. ESTRUTURA MULTI-TENANT
### 2.1 Hierarquia de 3 Níveis
```
NÍVEL 1: MASTER (Arcádia)
═════════════════════════
• Equipe de desenvolvimento
• Acesso total ao sistema
• IDE Pro-Code completa
• Central de Bibliotecas (publica apps)
• Suporte N3 (acessa tenants para debug)
• Gerencia parceiros e planos
├───────────────────────┬───────────────────────┐
▼ ▼ ▼
NÍVEL 2: PARCEIROS
══════════════════
• Consultorias, integradores, revendas
• IDE Low-Code
• Gerencia seus clientes
• Comissões sobre vendas
• Suporte N2 aos clientes
• Baixa apps da biblioteca
┌────┴────┐
▼ ▼
NÍVEL 3: CLIENTES
═════════════════
• Empresas usuárias finais
• Cockpit personalizado
• CRM/ERP operacional
• WhatsApp (N sessões conforme plano)
• BI próprio
• Manus com tools básicas
```
### 2.2 Matriz de Permissões por Tipo de Tenant
| Módulo | Master | Parceiro | Cliente |
|--------|--------|----------|---------|
| **IDE Pro-Code** | ✅ | ❌ | ❌ |
| **IDE Low-Code** | ✅ | ✅ | ❌ |
| **IDE No-Code** | ✅ | ✅ | ✅ (se habilitado) |
| **Central de Bibliotecas** | ✅ Publicar | ✅ Baixar | ❌ |
| **Central de APIs** | ✅ Gerenciar | ⚠️ Seus conectores | ⚠️ Leitura |
| **WhatsApp** | ✅ Ilimitado | ✅ N sessões | ✅ N sessões |
| **CRM/ERP** | ✅ Global | ✅ Próprio | ✅ Próprio |
| **Manus (IA)** | ✅ Todas tools | ✅ Tools permitidas | ✅ Básicas |
| **BI/Relatórios** | ✅ Global | ✅ Próprio | ✅ Próprio |
| **Suporte N3** | ✅ Acessa tenants | ❌ | ❌ |
| **Ver Parceiros** | ✅ | ✅ Seus clientes | ❌ |
| **Comissões** | ✅ Gerencia | ✅ Visualiza suas | ❌ |
### 2.3 Alterações no Schema
```sql
-- Alterações na tabela tenants
ALTER TABLE tenants ADD COLUMN tenant_type TEXT DEFAULT 'client';
-- master = Arcádia, partner = Parceiros, client = Clientes
ALTER TABLE tenants ADD COLUMN parent_tenant_id INTEGER REFERENCES tenants(id);
-- Referência ao tenant pai (hierarquia)
ALTER TABLE tenants ADD COLUMN partner_code TEXT;
-- Código do parceiro para rastreamento
ALTER TABLE tenants ADD COLUMN max_users INTEGER DEFAULT 5;
ALTER TABLE tenants ADD COLUMN max_storage_mb INTEGER DEFAULT 1000;
ALTER TABLE tenants ADD COLUMN features JSONB;
ALTER TABLE tenants ADD COLUMN commission_rate NUMERIC(5,2);
ALTER TABLE tenants ADD COLUMN trial_ends_at TIMESTAMP;
-- Nova tabela: Planos
CREATE TABLE tenant_plans (
id SERIAL PRIMARY KEY,
code TEXT NOT NULL UNIQUE,
name TEXT NOT NULL,
tenant_type TEXT NOT NULL,
max_users INTEGER DEFAULT 5,
max_storage_mb INTEGER DEFAULT 1000,
features JSONB,
monthly_price INTEGER DEFAULT 0,
yearly_price INTEGER DEFAULT 0,
is_active TEXT DEFAULT 'true',
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Nova tabela: Relacionamento Parceiro-Cliente
CREATE TABLE partner_clients (
id SERIAL PRIMARY KEY,
partner_id INTEGER NOT NULL REFERENCES tenants(id),
client_id INTEGER NOT NULL REFERENCES tenants(id),
commission_rate NUMERIC(5,2),
status TEXT DEFAULT 'active',
started_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
ended_at TIMESTAMP
);
-- Nova tabela: Comissões
CREATE TABLE partner_commissions (
id SERIAL PRIMARY KEY,
partner_id INTEGER NOT NULL REFERENCES tenants(id),
client_id INTEGER NOT NULL REFERENCES tenants(id),
reference_month TEXT NOT NULL,
client_plan_value INTEGER NOT NULL,
commission_rate NUMERIC(5,2) NOT NULL,
commission_value INTEGER NOT NULL,
status TEXT DEFAULT 'pending',
paid_at TIMESTAMP,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
```
---
## 3. CRONOGRAMA GERAL (6-9 Meses)
```
Mês 1 Mês 2 Mês 3 Mês 4 Mês 5 Mês 6+
├──────────┼──────────┼──────────┼──────────┼──────────┼────────►
FASE 0 ████████████████████
FUNDAÇÃO
Setup + Tenants + SSO
FASE 1 ████████████████████████████
INFRAESTRUTURA
CRM/ERP + Central APIs + Manus
FASE 2 ████████████████████████████████
EXPERIÊNCIA
Cockpit + Comunidades + IDE
FASE 3 ████████████████████►
AUTOMAÇÃO
WhatsApp + RPA + Decommission
```
---
## 4. FASE 0: FUNDAÇÃO (Semanas 1-8)
### 4.1 Objetivo
Preparar a base técnica sem quebrar nada do sistema atual.
### 4.2 Entregas
| # | Entrega | Descrição | Semana |
|---|---------|-----------|--------|
| 0.1 | **Setup Frappe Bench** | Instalar Frappe em servidor paralelo | 1-2 |
| 0.2 | **Hierarquia de Tenants** | Novos campos e tabelas no PostgreSQL | 2-3 |
| 0.3 | **SSO Bridge** | Login unificado (usuário loga uma vez) | 3-4 |
| 0.4 | **CDC Pipeline** | Sincronização de dados PostgreSQL ↔ Frappe | 4-6 |
| 0.5 | **Vault de Secrets** | Gerenciamento seguro de API keys | 5-6 |
| 0.6 | **Feature Flags** | Sistema de features por plano/tenant | 6-7 |
| 0.7 | **Planos e Preços** | Tabela de planos (free, starter, pro, enterprise) | 7-8 |
### 4.3 Resultado
- ✅ Frappe rodando em paralelo
- ✅ Hierarquia master/partner/client funcionando
- ✅ Login único nos dois sistemas
- ✅ Dados sincronizados em tempo real
- ✅ Planos e features configuráveis
---
## 5. FASE 1: INFRAESTRUTURA (Semanas 6-16)
### 5.1 Objetivo
Migrar dados mestres e criar a Central de APIs.
### 5.2 Entregas
| # | Entrega | Descrição | Semana |
|---|---------|-----------|--------|
| 1.1 | **DocTypes CRM** | Clientes, Leads, Oportunidades no Frappe | 6-8 |
| 1.2 | **DocTypes ERP** | Produtos, Pedidos, Faturas no Frappe | 8-10 |
| 1.3 | **Central de APIs (MVP)** | Dashboard visual de integrações | 9-12 |
| 1.4 | **Conectores Básicos** | Interface para SEFAZ, Bancos (dados demo) | 12-14 |
| 1.5 | **Manus Frappe** | Agente IA via background jobs | 13-15 |
| 1.6 | **Knowledge Graph** | Migração do grafo para DocTypes | 14-16 |
### 5.3 Central de APIs - Detalhamento
**IMPORTANTE:** A Central de APIs é uma interface visual de gerenciamento. Os dados de integrações (SEFAZ, Bancos, Mercado Livre) são ILUSTRATIVOS/DEMO. Não fazemos integração real com APIs externas nesta fase.
O que construímos:
- ✅ Interface visual (React)
- ✅ CRUD de conectores (cadastrar, editar, remover)
- ✅ Status visual (online, warning, error)
- ✅ Logs fictícios para demonstração
- ✅ Configurações por conector
- ✅ Permissões por tenant type
O que NÃO fazemos:
- ❌ Conectar à SEFAZ real
- ❌ Conectar a bancos reais
- ❌ Chamadas API externas
### 5.4 Resultado
- ✅ CRM/ERP acessível via Frappe Desk
- ✅ Central de APIs funcionando (dados demo)
- ✅ Manus consultando dados do Frappe
- ✅ Knowledge Graph migrado
---
## 6. FASE 2: EXPERIÊNCIA (Semanas 12-24)
### 6.1 Objetivo
Construir a nova interface (Cockpit, Comunidades, IDE).
### 6.2 Entregas
| # | Entrega | Descrição | Semana |
|---|---------|-----------|--------|
| 2.1 | **Cockpit PARA** | Navegação Projetos/Áreas/Recursos/Arquivo | 12-15 |
| 2.2 | **Dashboard Tríade** | Importante/Urgente/Circunstancial | 14-16 |
| 2.3 | **Widgets Sistema** | Tarefas, Calendário, Gráficos | 15-17 |
| 2.4 | **Comunidades MVP** | Canais por projeto (Socket.IO via Frappe) | 16-19 |
| 2.5 | **IDE No-Code** | DocType Builder visual | 18-20 |
| 2.6 | **IDE Low-Code** | Templates de scripts | 20-22 |
| 2.7 | **IDE Pro-Code** | Monaco + Terminal + Live Preview | 21-23 |
| 2.8 | **Central de Bibliotecas** | Repositório de apps Frappe | 22-24 |
### 6.3 Cockpit PARA + Tríade
O Cockpit é a interface principal do usuário, baseado em duas metodologias:
**Método PARA (Tiago Forte):**
- **P**rojetos: Todos os projetos ativos com metas e prazos
- **Á**reas: Áreas de responsabilidade contínua (Vendas, Financeiro, RH)
- **R**ecursos: Base de conhecimento, templates, manuais
- **A**rquivo: Tudo concluído ou inativo, para consulta futura
**Tríade do Tempo (Christian Barbosa):**
- 🟢 **Importante** (70% do tempo): Atividades que geram valor
- 🟡 **Urgente** (20% do tempo): Atividades com prazo apertado
- 🔴 **Circunstancial** (10% do tempo): Atividades que não agregam
### 6.4 IDE 3 Modos
| Modo | Quem Usa | O que Faz |
|------|----------|-----------|
| **No-Code** | Clientes | Criar formulários arrastando, workflows visuais, relatórios com filtros |
| **Low-Code** | Parceiros | Server Scripts com templates, validações, webhooks, fórmulas |
| **Pro-Code** | Arcádia | Monaco Editor completo, Terminal, Git, Deploy de apps |
### 6.5 Resultado
- ✅ Cockpit PARA + Tríade funcionando
- ✅ Comunidades com canais por projeto
- ✅ IDE com 3 modos operando
- ✅ Central de Bibliotecas publicando apps
---
## 7. FASE 3: AUTOMAÇÃO E DECOMMISSION (Semana 20+)
### 7.1 Objetivo
Migrar serviços restantes e desligar o legado.
### 7.2 Entregas
| # | Entrega | Descrição | Semana |
|---|---------|-----------|--------|
| 3.1 | **WhatsApp Frappe App** | Reconstruir Baileys como app nativo | 20-24 |
| 3.2 | **Motor de Workflows** | Automações visuais (RPA) | 22-26 |
| 3.3 | **Scientist Frappe** | Migrar para Frappe Workers | 24-28 |
| 3.4 | **Validação de Paridade** | Testes A/B, métricas | 26-30 |
| 3.5 | **Decommission Express** | Desligar endpoints legados | 30+ |
### 7.3 Resultado
- ✅ Sistema 100% unificado no Frappe
- ✅ Express/React desligado
- ✅ Uma única plataforma para manter
---
## 8. MAPEAMENTO DE MÓDULOS
| Módulo Atual | O que Acontece | Fase |
|--------------|----------------|------|
| **users, tenants** | Expande com hierarquia | 0 |
| **profiles, roles, permissions** | Migra para Frappe RBAC | 0 |
| **whatsapp_contacts, messages, tickets** | Mantém → Migra na Fase 3 | 3 |
| **pc_crm_leads, stages, opportunities** | Migra para Frappe DocTypes | 1 |
| **pc_clients, projects, tasks** | Migra para Frappe DocTypes | 1 |
| **graph_nodes, graph_edges** | Migra para Frappe Knowledge Graph | 1 |
| **internal_chat_*** | Evolui para Comunidades | 2 |
| **manus_*** | Integra via background jobs | 1 |
| **bi_*** | Mantém + novos widgets Cockpit | 2 |
| **ide_*** | Evolui para 3 modos | 2 |
---
## 9. RISCOS E MITIGAÇÕES
| Risco | Probabilidade | Impacto | Mitigação |
|-------|---------------|---------|-----------|
| **Drift de dados** | Média | Alto | CDC com validação contínua |
| **Performance chat** | Média | Médio | Load test antes de migrar |
| **Tokens WhatsApp** | Baixa | Alto | Vault de secrets |
| **Curva aprendizado Frappe** | Alta | Médio | Treinamento na Fase 0 |
| **Regressões funcionais** | Média | Alto | Testes A/B, telemetria |
| **Resistência usuários** | Média | Médio | Piloto gradual: Master → Partners → Clients |
---
## 10. QUICK WINS (Entregas Rápidas)
| Item | Tempo | Valor |
|------|-------|-------|
| **Hierarquia de Tenants** | 2 semanas | Estrutura para parceiros |
| **SSO unificado** | 2 semanas | Login único |
| **Central de APIs (UI)** | 3 semanas | Visibilidade integrações |
| **Dashboard Tríade** | 2 semanas | Consciência sobre tempo |
| **Planos e Features** | 2 semanas | Monetização estruturada |
---
## 11. OS 5 PILARES DO SISTEMA
### Pilar 1: Knowledge Graph
- Todos os dados do negócio conectados e pesquisáveis
- Navegação visual entre entidades relacionadas
- Base para IA contextual
### Pilar 2: Central Intelligence (Scientist)
- IA que aprende com interações do sistema
- Gera e executa código automaticamente
- Detecta padrões e sugere otimizações
### Pilar 3: Autonomous Agent (Manus)
- Executa tarefas multi-step de forma autônoma
- Acessa ferramentas e APIs
- Deep research com planejamento
### Pilar 4: Unified Communication
- WhatsApp integrado com CRM
- Chat interno com canais por projeto
- Email (futuro)
- Todos os canais em um lugar
### Pilar 5: Complete IDE
- 3 modos de desenvolvimento (No/Low/Pro Code)
- Central de Bibliotecas
- Deploy integrado
---
## 12. DOCUMENTOS DE REFERÊNCIA
Os documentos originais que basearam este plano estão em:
- `attached_assets/cocpti_docs/cocpti/` - Cockpit e DNA Notion
- `attached_assets/cocpti_docs/Ide Arcadia/` - Proposta IDE
- `attached_assets/cocpti_docs/Rota de desenvolviento/` - Roadmap original
- `attached_assets/cocpti_docs/Central de API/` - Central de APIs
---
## 13. PRÓXIMOS PASSOS
1. [ ] Implementar hierarquia de tenants no schema
2. [ ] Criar tabelas de planos e comissões
3. [ ] Documentar arquitetura CDC
4. [ ] Provisionar servidor Frappe
5. [ ] Implementar Central de APIs (UI com dados demo)
6. [ ] Construir Cockpit PARA + Tríade
---
*Documento criado em Janeiro 2026*
*Última atualização: Janeiro 2026*