🌐 Olá, malha
Agora que você tem o ambiente configurado, vamos subir seu primeiro nó e conectá-lo à malha do PAEBIRU.
🚀 Subindo o nó
Para rodar o nó padrão (paebiru-node), utilize o Cargo. O nó iniciará os subsistemas de rede (libp2p), o Kernel (loop GALS) e a API de observabilidade.
cargo run -p paebiru-node
O que esperar na saída
Você verá logs estruturados indicando a inicialização:
NODE Iniciando PAEBIRU Node (Trilha de Aço)...
NODE Ponta-a-ponta rodando. Aguardando descoberta de peers...
API Servidor HTTP rodando em http://127.0.0.1:1975
✅ Verificando a saúde do nó
Em outro terminal, você pode verificar se o nó está respondendo corretamente através do endpoint de saúde:
curl http://localhost:1975/healthz
Saída esperada: OK
📡 Descobrindo a malha
A descoberta opera em duas camadas:
- mDNS (local) — plug-and-play em LAN, sem configuração. Outros nós na mesma rede local são descobertos automaticamente.
- Kademlia DHT (global) — descoberta na malha pública. Configurável via
PAEBIRU_BOOTNODES. Sem bootnodes, o nó opera em Island Mode e só descobre pares via mDNS.
Quando peers são descobertos (por qualquer das camadas), o nó se conecta via gossipsub ao tópico paebiru-metabolism e começa a trocar mensagens de PulseRequest e PulseResponse. Veja a entrada “Pulse” no Dicionário canônico para a definição completa.
Configuração de bootnodes
A variável de ambiente PAEBIRU_BOOTNODES aceita uma lista CSV de multiaddrs libp2p:
export PAEBIRU_BOOTNODES="/ip4/1.2.3.4/tcp/4001/p2p/12D3KooWPj...,/ip4/5.6.7.8/tcp/4001/p2p/12D3KooWQ..."
cargo run -p paebiru-node
Multiaddrs inválidos são descartados com warn! (o nó segue operando em modo degradado com os bootnodes válidos).
Você verá logs como:
KERNEL Mensagem recebida de 7f3a1b2c: PulseRequest { timestamp: ... }
KERNEL Enviando PulseResponse para 7f3a1b2c
NETWORK Kademlia: nova rota para 12D3KooW... (1 addr(s))
NETWORK Kademlia bootstrap OK — routing table populada
🛠️ Comandos úteis
| Ação | Comando |
|---|---|
| Ver métricas (Prometheus) | curl http://localhost:1975/metrics |
| Ver estado do nó via CLI | paebiru node status |
| Parar o nó | Ctrl + C (faz o shutdown gracioso) |
⏭️ Próximos passos
Com o nó rodando, você pode explorar a Forge CLI para gerenciar sua identidade e interagir com a malha de forma mais avançada.