ligbox-ops-platform/specs/035-ligbox-mail-bundles-foss-openpanel/ligbox-system-admin-ui.md
Ligbox Spec Hub 038fb8f7ce feat(dns): Spec 037 DNS Viewer — Desk, Console e patches Wizard V4
Entrega read-only de apontamentos DNS (Cloudflare, OpenPanel BIND, público)
no Desk e Console /admin/dominio, com spec, scripts de rollback e patches
VM112 para painel lateral no passo DNS do onboarding (deploy wizard pendente).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-25 16:36:25 +00:00

11 KiB

Spec 035-C — Admin Ligbox (Sistema) — Console agregado staff

Criado: 2026-06-21
Solicitado por: Roger
Status: URL fixada — integrado em ligbox-console-shell.md
URL: https://console.ligbox.com.br/comercial (staff) · /ops (chamados Spec 019)
Relacionado: Spec 035 · 024 · 027 (RBAC) · 019 (Ops Console)


1. Decisão Roger (2026-06-21)

A página de aprovação de preços pertence ao Admin Ligbox — não ao FOSS nem a portais dispersos.
Da mesma forma que precisamos de uma página agregada para utilizadores (todos os setups de user de todas as ferramentas), precisamos do mesmo para o Admin do sistema.

Princípio único (3 portais):

Portal Quem O quê agrega
Admin Ligbox (esta spec) Roger + staff RBAC Todos os setups admin/plataforma — preços, produtos, gateway, provisionamento, clientes
Gerente de Domínio admin@{dom} Todos os setups do domínio — contas, quotas, DMARC, pagamento resumo
Utilizador (Fase B) {user}@{dom} Todos os setups pessoais — OOO, assinatura, redirects, senha, Files prefs

Regra de ouro: nenhum portal manda o utilizador «configurar» noutra ferramenta nativa (FOSS admin, OpenPanel UI, Nextcloud admin, Carbonio admin). APIs nativas ficam por trás; a UI Ligbox agrega.


2. Três níveis — visão completa

┌─────────────────────────────────────────────────────────────────┐
│  NÍVEL 0 — ADMIN LIGBOX (Sistema)          ← ESTA SPEC (035-C)  │
│  Roger · staff @ligbox.com.br (RBAC Spec 027)                   │
│  • Aprovação de preços & catálogo bundles                       │
│  • Gateway pagamento (boleto/PIX) — config & status             │
│  • Provisioning global (OpenPanel, wizard, VM116)               │
│  • Clientes / domínios / impersonate gerente                    │
│  • Ops: chamados, health, audit (integra Spec 019)              │
└─────────────────────────────────────────────────────────────────┘
                              │
                              │ vende & provisiona
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│  NÍVEL 1 — GERENTE DE DOMÍNIO              ← Spec 035-UI (Fase A)│
│  admin@empresa.com.br · onboard.ligbox.com.br/admin             │
│  • Plano, limites, boleto/PIX resumo                            │
│  • CRUD contas email + quotas Nextcloud                         │
│  • DMARC, DNS, upgrade plano                                    │
└─────────────────────────────────────────────────────────────────┘
                              │
                              │ cria contas
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│  NÍVEL 2 — UTILIZADOR DE EMAIL             ← Spec 035-B (Fase B)│
│  vendas@empresa.com.br · onboard.ligbox.com.br/me               │
│  • Redirects, OOO, assinatura, senha                            │
│  • Prefs Files pessoais, quota uso                              │
│  • (sem admin domínio · sem preços · sem DMARC global)          │
└─────────────────────────────────────────────────────────────────┘

3. Admin Ligbox — secções agregadas

3.1 Comercial & preços (Roger — obrigatório)

Funcionalidade Hoje (disperso) UI Admin Ligbox
Aprovar preços FOSS admin / planilha Fila «Preços pendentes» → Roger aprova/rejeita
Catálogo bundles FOSS produtos Starter / Business / Enterprise / Custom
Margem & benchmark spec.md §1.1 Editor inline + histórico versões
Publicar no FOSS manual Botão «Publicar» → API FOSS
Promoções / cupons FOSS Lista + criar (proxy API)

Fluxo aprovação preços:

Staff propõe alteração preço (ou import Spec)
  → Estado: rascunho
  → Fila Admin Ligbox «Aguarda Roger»
  → Roger aprova
  → Desk API → FOSSBilling actualiza produto
  → Log audit (quem, quando, valor anterior/novo)

Roger nunca precisa entrar no backoffice FOSS para aprovar preço.

3.2 Billing & gateway

Funcionalidade Backend UI Admin Ligbox
Config gateway ASAAS/Iugu VM123 Credenciais, ambiente sandbox/prod
Webhooks pagamento FOSS + Desk Log últimos eventos
Faturas globais FOSS Pesquisa por cliente/domínio
Inadimplência FOSS Lista + acções (suspender bundle)

3.3 Provisioning & plataforma

Funcionalidade Backend UI Admin Ligbox
Jobs provisionamento OpenPanel + Wizard Fila, retry, erro
Domínios activos Wizard + Desk Lista + health
Nextcloud VM116 OCS / admin API Quota cluster, tenants
EasyDMARC contas API ext. Domínios registados
Bridge FOSS↔OP VM123 :18087 Status bridge

3.4 Clientes & suporte

Funcionalidade UI Admin Ligbox
Lista clientes FOSS pesquisa, plano, estado pagamento
Impersonate gerente abre /admin como domínio (auditado Spec 027)
Chamados integração Spec 019 / Desk tickets
Leads abandonados Spec 012 widget

3.5 Ops & segurança — mesmo shell (Spec 019)

Chamados CH-*, Discover e Wazuh vivem em console.ligbox.com.br/opsnão app separada.

Item Rota
Overview alertas /ops
Chamado hub /ops/ch/:id
Discover /ops/discover
Ver no Wazuh deep-link VM104 (staff only)

Mesmo header, logo e design system que /admin gerente e /comercial.


4. Wireframe resumo (Admin Ligbox)

╔══════════════════════════════════════════════════════════════════╗
║  LIGBOX ADMIN                                    Roger ▼  Sair  ║
╠══════════════════════════════════════════════════════════════════╣
║  ┌─ Sidebar ─────────┐  ┌─ Conteúdo ──────────────────────────┐ ║
║  │ 📊 Dashboard       │  │  Preços pendentes (2)               │ ║
║  │ 💰 Preços & catálogo│  │  ┌─────────────────────────────┐   │ ║
║  │ 💳 Gateway & faturas│  │  │ Business R$549 → R$599     │   │ ║
║  │ ⚙️  Provisioning    │  │  │ [Aprovar] [Rejeitar] [Diff] │   │ ║
║  │ 👥 Clientes        │  │  └─────────────────────────────┘   │ ║
║  │ 🌐 Domínios        │  │                                     │ ║
║  │ 🎫 Chamados        │  │  Catálogo publicado               │ ║
║  │ 🔐 RBAC staff      │  │  Starter · Business · Enterprise   │ ║
║  │ 📈 Ops Console →   │  │  [+ Novo bundle] [Editar preços]  │ ║
║  └────────────────────┘  └─────────────────────────────────────┘ ║
╚══════════════════════════════════════════════════════════════════╝

5. Integrações invisíveis (backend)

Admin Ligbox SPA (console.ligbox.com.br/comercial + /ops)
        │
        ├── Desk API /api/v1/ligbox-admin/*     → RBAC, audit, orquestração
        ├── FOSS API (proxy)                    → produtos, preços, faturas
        ├── Gateway API (proxy)                 → boleto/PIX config
        ├── OpenPanel API (proxy)               → provision jobs
        ├── Wizard API (proxy)                  → domínios, health VM112
        ├── Nextcloud admin API (proxy VM116)   → plataforma Files
        └── Spec 019 Console API                → chamados, ops

FOSSBilling / OpenPanel / Nextcloud admin nativos: zero exposição ao Roger para tarefas do dia-a-dia. Só APIs.


6. RBAC (Spec 027)

Role Preços Gateway Provisioning Impersonate Ops
ligbox_owner (Roger) aprovar sim sim sim sim
ligbox_commercial propor read read não não
ligbox_ops read read sim sim (audit) sim
ligbox_support read read read limitado tickets

7. Relação com outros documentos

Documento Nível
Este ficheiro Nível 0 — Admin Ligbox sistema
domain-manager-console-ui.md Nível 1 — Gerente domínio
user-self-service-ui.md Nível 2 — Utilizador email
spec.md §4 Arquitectura backend
Spec 019 Ops Console (secção dentro ou link Admin Ligbox)

8. Fases de implementação

Fase Entrega
C0 Wireframe + RBAC roles «preços»
C1 Fila aprovação preços → publicar FOSS
C2 Dashboard clientes + domínios + gateway status
C3 Provisioning monitor + impersonate gerente
C4 Unificar navegação com Ops Console Spec 019

Depende de: Fase 0 Spec 035 (produtos FOSS rascunho) para alimentar fila de preços.


9. Próximo passo

  1. Roger confirma URLconsole.ligbox.com.br
  2. Implementar UX-A gerente /admin primeiro (ligbox-console-shell §7)
  3. Depois UX-B /comercial + UX-C /ops