ligbox-ops-platform/specs/019-ops-console-active-operations/design/navigation-ia.md
Ligbox Spec Hub 3a2c64834b Initial import: ligbox-ops-platform + specs + LAPTOP + obsidian merge (CT130)
Source: VM122 /opt + obsidian-infra + LAPTOP
Hub: CT130 spec-hub 10.10.10.130
2026-06-19 17:26:41 +00:00

7.1 KiB

Information Architecture — Navegação tipo Wazuh, hub CH-*

Spec: 019 · Decisão Roger: 2026-06-16 — Opção A


Princípio

O Chamado CH-* é o hub de investigação — equivalente ao «caso» TheHive / incidente Wazuh, mas unificando onboard, suporte e cybersecurity.

Discover e Overview são portas de entrada; toda investigação séria aterriz no hub e permanece lá até fecho.

                    ┌─────────────┐
                    │  Overview   │  KPIs, funil, alertas recentes
                    └──────┬──────┘
                           │ click métrica / alerta
                    ┌──────▼──────┐
                    │  Discover   │  Busca livre, filtros, saved searches
                    └──────┬──────┘
                           │ click evento → criar ou abrir CH-*
                    ┌──────▼──────────────────────────────────────┐
                    │           CH-* HUB DE INVESTIGAÇÃO           │
                    │  Timeline │ Observables │ Assist │ Acções   │
                    │  Runbooks │ Aprovações │ Links │ Notas     │
                    └──────┬──────────────────────────────────────┘
                           │ drill-down entidade
              ┌────────────┼────────────┐
              ▼            ▼            ▼
         Tenant       Domínio      Wazuh deep link
         (agent)      scorecard    (VM104 nativo)

Módulos sidebar (Console VM123)

# Módulo Inspiração Wazuh Função
1 Overview Threat Hunting overview Entrada rápida; não substitui o hub
2 Discover Explore → Discover Investigação transversal; sempre liga a CH-*
3 Chamados — (Ligbox) Lista de hubs activos; fila de trabalho
4 Hub CH-* Alert detail + case Ecrã principal de investigação (rota /chamados/CH-…)
5 Tenants Agent management Contexto infra; click → filtra Discover ou abre CH
6 Runbooks Biblioteca; execução sempre no contexto de um CH-*
7 Aprovações Fila global; cada item linka ao hub origem

Layout do hub CH-* (wireframe textual)

┌────────────────────────────────────────────────────────────────────────┐
│ CH-2026-00042  [assumido]  myvexx.com  L12  onboard+wazuh    [Assumir]│
├───────────────────────────────┬────────────────────────────────────────┤
│ TIMELINE (centro, scroll)     │ PAINEL DIREITO (tabs)                  │
│                               │                                        │
│ ● 10:00 wazuh.alert L12       │ [Assist] [Observables] [Infra] [Ações] │
│ ● 10:05 onboarding.failed     │                                        │
│ ● 10:06 runbook proposto      │ Assist: passo DNS Cloudflare           │
│ ● 10:10 aprovação R1          │ tempo no passo: 142s                   │
│                               │ último erro: timeout CF                │
│                               │                                        │
│                               │ Observables:                           │
│                               │  domain: myvexx.com  [→]               │
│                               │  session_id: abc…    [→]               │
│                               │  agent: vm112        [→ Wazuh]         │
│                               │  rule_id: 5712       [→]               │
├───────────────────────────────┴────────────────────────────────────────┤
│ Acções: [Executar runbook ▼] [Nota] [Delegar] [Investigar no Wazuh]   │
└────────────────────────────────────────────────────────────────────────┘

Tabs do painel direito

Tab Conteúdo
Assist Opção A — passo wizard, erro, email planeado
Observables Entidades clicáveis (TheHive-style): domain, IP, agent, session, rule
Infra Scorecard 8/14 checks (009/010/011) embutido
Acções Runbooks pendentes, fila aprovação, histórico execuções

Regra de navegação contextual (obrigatória)

Em qualquer módulo, click numa entidade:

Entidade Acção
domain Abre hub CH aberto desse domínio ou Discover filtrado
session_id Abre hub com essa sessão ou cria CH
agent / tenant Tenants → detalhe → eventos relacionados
rule_id Discover filtrado rule_id:X + CHs com mesma regra
public_id CH-* Navega para hub
Evento Discover POST attach ou navega para CH existente

Deep link Wazuh: botão «Investigar no Wazuh» — URL VM104 com query pré-preenchida (agent + timeframe); não iframe.


Discover → Hub (fluxo)

  1. Analista filtra eventos em Discover
  2. Selecciona 1+ eventos → «Abrir em chamado»
  3. API: encontrar CH existente (agregação) ou criar CH-* novo
  4. Eventos ligados em chamado_eventos
  5. UI navega para /chamados/CH-2026-00042
  6. Investigação continua só no hub (timeline, runbooks, fecho)

O que NÃO é o hub

Não Porquê
Overview sozinho Só resumo; sem acções nem timeline completa
Discover sozinho Porta de entrada; sem runbooks nem estado de resolução
Wazuh dashboard SIEM puro; sem onboard/Assist/runbooks Ligbox
Ticket MVP antigo Sem observables nem drill-down unificado

Rotas SPA (React Router)

Rota View
/ Overview
/discover Discover
/discover?q=… Discover com query partilhável
/chamados Lista chamados
/chamados/:publicId Hub investigação
/tenants Tenants
/tenants/:id Detalhe tenant
/aprovacoes Fila aprovações
/runbooks Catálogo runbooks

Critérios UX (aceite navegação)

  • De Discover a hub em ≤ 2 cliques
  • Qualquer observable no hub navega em ≤ 1 clique
  • Hub mostra ≥ 1 fonte (onboard + wazuh) na mesma timeline
  • «Investigar no Wazuh» abre VM104 em novo tab com contexto
  • URL /chamados/CH-* partilhável entre técnicos
  • Voltar de Tenants para hub preserva scroll timeline (opcional P2)