Gleam.br Wiki

GBR: Requisitos da Malha de Telemetria e Túneis P2P | Wiki

Documentação de engenharia e especificações técnicas da Gleam-BR.

GBR: Requisitos da Malha de Telemetria e Túneis P2P

*Requisitos Ubíquos (Ubiquitous Requirements)* * *UBQ-01:* O analisador de rotas de rede (Multiaddr Lexer) deve utilizar exclusivamente Pattern Matching recursivo para validação topológica, falhando imediatamente (Fail-Fast) ao encontrar tokens não previstos no ADT. * *UBQ-02:* A decriptação de cargas pesadas criptográficas (Noise Protocol) deve ser delegada estritamente aos Dirty Schedulers da VM Erlang através das marcações nas NIFs Rust.

*Requisitos Orientados a Eventos (Event-Driven Requirements)* * *EVD-01:* Quando o Ator de Telemetria interceptar o Efeito OpenReverseTunnel oriundo do BPE, o sistema deve utilizar a sessão Yamux ativa em memória para abrir um ouvinte TCP local em thread separada (via process.spawn). * *EVD-02:* Quando o Gateway de nuvem receber uma nova negociação Multistream na porta P2P (4001), o sistema deve consultar a tabela ETS gbr_p2p_protocols em O(1) e encaminhar o descritor de fluxo ao manipulador do domínio correspondente (ex: /horus/telemetry/1.0.0).

*Requisitos Orientados a Estado (State-Driven Requirements)* * *STD-01:* Enquanto o pacote de rede TCP recebido no estado Handshaking não atingir o tamanho binário especificado pelo prefixo u16 (fragmentação), o Ator de Conexão deve suspender a chamada da NIF, reativar a porta {active, once} e manter o fragmento em seu estado interno. * *STD-02:* Enquanto as métricas oriundas do ambiente Windows contiverem valores numéricos formatados como inteiros, o decodificador Json estrito (Wisp/Ingress) deve coerci-los autonomamente para precisão de Ponto Flutuante (Float) sem rejeitar a carga útil.

*Requisitos de Comportamento Indesejado (Unwanted Behavior Requirements)* * *UNW-01:* Se a geração de IDs de stream no multiplexador Yamux não respeitar a especificação de paridade do libp2p (Ímpares para Initiator, Pares para Responder), o roteador deverá bloquear a requisição de canal preventivamente para evitar a desconexão forçada pelo par remoto.