04 / CONSTRUIR4 MIN DE LEITURA

Serviços e operação

O repositório contém dois processos Node: um keeper, que pertence ao modelo antigo, e um retransmissor de eventos que pode preparar publicações. Uma configuração local não prova que um serviço funciona continuamente.

Sem keeper na nova versão

O antigo keeper chamava rebalance, raiseFloor e a queima dos tokens absorvidos. Essas funções de manutenção desapareceram: a faixa nunca é reorganizada, os muros são colocados e esvaziados durante as vendas, e o roteador CUBIT envia os CUBIT absorvidos para o vault.

O serviço services/keeper continua no repositório, mas não tem mais razão de ser e não deve ser operado contra a nova versão. Nenhum bônus é pago: se CUBIT absorvidos continuarem pendentes, por exemplo após uma venda feita por outro roteador, qualquer conta pode chamar deliverAbsorbed().

O retransmissor de eventos

services/floor-bot lê os eventos, prepara um texto e mantém um cursor, bem como as chaves de deduplicação transactionHash:logIndex.

O modo dry-run e o modo de publicação têm estados separados. Os cursores incluem o contexto de cadeia e hook; blocos finalizados são usados nas redes previstas pelo serviço. Uma reorganização ou um checkpoint inconsistente deve ser conciliado antes da retomada.

O retransmissor persiste um pendingPost antes da publicação. Se o serviço externo aceitar a mensagem, mas o processo parar antes de registrar o sucesso, é preciso verificar se a mensagem existe antes de reenviar: um banco local e uma rede social não podem confirmar uma operação juntos.

O GitBook não executa nenhuma publicação. Colocar o retransmissor em funcionamento real depende de configuração e autorização operacionais separadas.

Evolução dos módulos

O Lens atual é resolvido pelo registro. Mantenha a identidade do núcleo e o contexto de revisão durante toda a operação.

Os serviços leem as ABI e os eventos da versão descrita. Um retransmissor adaptado ao modelo antigo não deve ser apresentado como validado para a nova versão sem seus testes de aceitação.

Adaptar o vocabulário aos muros

O retransmissor antigo anunciava eventos FloorRaised, que não existem mais. Na nova versão, um muro pode ser criado ou aprofundado a cada venda (WallFunded), às vezes em um preço inferior ao do muro anterior, e um muro totalmente atravessado é esvaziado (WallAbsorbed) antes que seus CUBIT sigam para a reserva do vault (AbsorbedDelivered).

O retransmissor deve, portanto, citar o muro envolvido, seu nível e os fundos acrescentados ou absorvidos, sem deduzir uma alta global a partir do nome de um evento. Mensagens antigas como “o floor sempre sobe” não descrevem essa política, e nenhum anúncio deve apresentar os muros como garantia de preço.

Verificações operacionais úteis

Acompanhe os erros RPC, as diferenças de configuração, os cursores, a idade do último bloco processado e as publicações pendentes. Guarde os registros de recuperação e as identidades de versão, sem dados privados de assinatura.

Uma supervisão que reinicia processos não substitui a resolução de um checkpoint inconsistente ou de uma mudança de registro.

Fontes: services/floor-bot/README.md, services/keeper/README.md, services/shared, interfaces/ICubitHook.sol e contracts/docs/REDESIGN_HANDOFF.md.

CUBIT / 26 de setembro de 2026 Fontes e método