Atualizabilidade do Router vs Imutabilidade do Pool na Arquitetura da STON.fi
Por que a STON.fi torna alguns contratos deliberadamente impossíveis de mudar, enquanto deixa exatamente um atualizável — e o que essa divisão realmente compra para você como usuário.
A maioria das explicações sobre segurança de contratos inteligentes trata "imutável" como um bem inquestionável e "atualizável" como um compromisso um pouco suspeito. A arquitetura da STON.fi questiona esse enquadramento de uma forma interessante: ela não escolhe uma única filosofia de forma geral. Ela divide seus contratos deliberadamente, deixando alguns permanentemente congelados e um especificamente flexível — e essa divisão não é um acidente nem uma inconsistência; é a decisão de design em si, que vale a pena entender se você quer saber onde sua confiança realmente está sendo depositada quando usa o protocolo.
Quero explicar por que essa divisão existe, o que cada lado realmente protege e onde ainda fica a suposição real de confiança depois de mapear tudo. Porque "auditado e imutável" soa como o fim da conversa de segurança, e na verdade não é — é apenas o começo de uma conversa mais específica.
Eu costumava tratar "imutável" como basicamente sinônimo de "seguro". Então eu realmente olhei o que a STON.fi deixa atualizável e percebi que a questão interessante nunca foi "imutável vs não" — era "qual parte específica, e por quê aquela".
🏛️ A Estrutura que Vale a Pena Conhecer Primeiro
A documentação da STON.fi descreve a arquitetura do seu DEX como um conjunto de tipos distintos de contratos, cada um lidando com uma responsabilidade específica em vez de um único contrato monolítico fazer tudo. O roteador atua como ponto de entrada, recebendo mensagens de swap e liquidez recebidas e direcionando-as para o pool correto. Contratos de pool mantêm as reservas reais para um par de negociação e executam o cálculo de precificação do AMM. Contratos de conta e de carteira rastreiam as posições individuais de liquidez dos usuários e lidam com operações de tokens de LP separadamente das outras duas partes.

Separar responsabilidades dessa forma não é só uma boa higiene de software — é o que torna a pergunta de imutabilidade respondível em primeiro lugar. Você não pode perguntar de forma sensata "a STON.fi é atualizável?" como uma única pergunta de sim/não, porque a resposta honesta é "um pouco disso, muito especificamente, e não as partes que provavelmente preocupariam mais".
🔒 Por que os contratos de pool são documentados como imutáveis
Os contratos de pool são onde seus fundos depositados de fato ficam, onde acontece a matemática de precificação do AMM e onde reside a lógica central, de alto risco, de todo o protocolo. A documentação da STON.fi afirma que esses contratos não podem ser modificados após serem implantados — nenhuma chave de admin, nenhum caminho de upgrade, nenhuma versão futura da lógica que possa alterar silenciosamente como seus fundos são precificados ou tratados.

Isso importa por alguns motivos concretos. Um pool que não pode ser modificado não pode ter sua lógica alterada silenciosamente para redirecionar fundos, ajustar repartições de taxa de forma desfavorável ou introduzir um backdoor depois que você já depositou — não há um vetor de "rug-pull via upgrade" para se preocupar nesta camada. Isso também significa que o que é auditado continua auditado: uma revisão como a análise da Trail of Bits sobre a STON.fi v2 olhou para uma lógica específica e imutável do pool; e como essa lógica não pode mudar depois, as conclusões da auditoria permanecem permanentemente aplicáveis a esses contratos exatos, em vez de descrever um snapshot que possa se desviar com o tempo. E isso traz previsibilidade real — qualquer pessoa que tenha depositado liquidez há um ano está interagindo hoje com uma lógica de pool matematicamente idêntica, sem o risco de "as regras mudaram enquanto meus fundos estavam travados" nesta camada.
A compensação, e ela é real, é que imutabilidade também significa que qualquer bug não descoberto na lógica do pool é permanente. Se algo estiver errado, não dá para corrigir no lugar — a única correção é implantar um pool totalmente novo e migrar a liquidez para ele manualmente, o que é mais lento e mais bagunçado do que uma atualização simples. O modelo da STON.fi aceita essa compensação deliberadamente: risco permanente de correção em troca de risco permanentemente eliminado de intervenção por admin.
Imutabilidade não é "este contrato é definitivamente livre de bugs". É "se houver um bug, ao menos ninguém consegue piorá-lo silenciosamente de propósito."
🔧 Por que o Roteador é a Única Peça Atualizável
O roteador é diferente, e de propósito. A documentação da arquitetura da STON.fi identifica o roteador como o ponto de entrada do DEX e explicitamente como o único contrato atualizável na arquitetura descrita; as atualizações passam por um processo de time-lock de sete dias, em vez de uma mudança instantânea.
Por que deixar exatamente essa parte flexível quando todo o resto está congelado? Porque é a camada de coordenação, não a camada de manutenção de valor — o roteador direciona o tráfego e decide a qual pool cada solicitação de swap deve chegar, enquanto os contratos de pool mantêm as reservas reais. Assim, atualizar a lógica de roteamento não exige tocar os fundos em si. Os ecossistemas também evoluem de maneiras que a lógica de roteamento precisa acompanhar: novos tipos de pool, novas estruturas de taxas, integração com infraestrutura adicional como a Omniston, tudo isso pode exigir atualizações sobre como as solicitações são direcionadas sem precisar tocar nos pools imutáveis que essas solicitações eventualmente alcançam. E corrigir um bug no nível de roteamento não deveria exigir migrar todo pool do ecossistema — se uma falha é descoberta em como o roteador direciona o tráfego, em vez de uma falha na matemática do AMM em si, um caminho de atualização permite que isso seja corrigido sem pedir que cada provedor de liquidez mova seus fundos para pools recém-implantados.
O time lock de sete dias é o mecanismo que torna essa flexibilidade tolerável em vez de alarmante. Qualquer upgrade proposto do roteador precisa ficar publicamente visível por uma semana inteira antes de ativar, dando a desenvolvedores, pesquisadores de segurança e usuários atentos uma janela real para inspecionar a mudança e reagir — sacar, levantar preocupações publicamente, ou simplesmente prestar mais atenção — antes de ir para produção.
Uma atualização do roteador sem atraso seria apenas uma chave de admin com passos extras. Sete dias é o que transforma "confie em nós" em "verifique você mesmo, você tem tempo".
⚖️ O que Essa Divisão Realmente Protege Você — e o que Não
Esta é a parte que vale a pena ser preciso, porque uma divisão arquitetural bem feita não significa automaticamente que todo risco é eliminado. O design realmente protege algumas coisas específicas: a lógica central de precificação dos seus fundos depositados não pode ser alterada depois, já que a matemática que determina o resultado do seu swap ou o comportamento da sua fatia de LP fica permanentemente fixa no momento em que um pool é implantado. Mudanças no roteador também não podem entrar em vigor instantaneamente ou silenciosamente, já que a janela de sete dias garante uma lacuna pública entre a proposta de um upgrade e o momento em que ele realmente entra no ar. E uma auditoria da lógica do pool permanece válida indefinidamente, em vez de exigir revalidações constantes, precisamente porque a lógica auditada literalmente não pode mudar por baixo dela.

Mas também vale nomear o que essa divisão não elimina. Atualizações do roteador ainda representam um ponto real de confiança, mesmo com o time lock — a janela de sete dias te dá a oportunidade de notar e reagir a uma atualização ruim, mas não garante que alguém realmente vai notar a tempo, especialmente usuários que não estão acompanhando ativamente a atividade de governança. As próprias capacidades administrativas do roteador também importam: a documentação da arquitetura da STON.fi observa que ele lida com assuntos relacionados a negociação, taxas de pool e upgrades, o que significa que até uma alteração do roteador feita com boas intenções mexe em alavancas genuinamente importantes, não apenas em lógica cosmética de roteamento. E pools imutáveis ainda podem conter bugs não descobertos — imutabilidade garante que a lógica não será alterada de forma maliciosa depois, mas não diz nada sobre se a lógica original era impecável desde o início. É exatamente para isso que auditorias servem, e auditorias têm seus próprios limites independentemente do que examinaram.
O time lock compra um aviso. Ele não compra uma garantia de que você vai realmente lê-lo a tempo, nem que sete dias sejam sempre uma margem suficiente para agir.
🔍 Como usar essa informação de fato como usuário
Entender a divisão muda o que realmente vale a pena observar, em vez de tratar "STON.fi" como uma única caixa-preta indiferenciada em que você confia totalmente ou não confia:
Trate os achados de auditoria no nível do pool como duráveis, já que uma revisão permanece relevante enquanto o pool existir — precisamente porque ele não pode ser alterado silenciosamente depois
Preste atenção especial especificamente durante as janelas de upgrade do roteador, porque aqueles sete dias são exatamente o momento em que vale a pena ler as mudanças propostas, em vez de apenas passar por cima de um aviso de governança como ruído de rotina
Entenda que "não custodial" e "risco nenhum de admin" não são a mesma afirmação — a imutabilidade do pool trata uma categoria de risco de forma abrangente, enquanto a atualizabilidade do roteador ainda exige uma confiança mínima no processo
Lembre que o risco de bugs persiste no nível do pool, independentemente da política de atualização, já que nenhuma decisão de arquitetura substitui uma revisão real de segurança do código original

Nada disso tem a intenção de fazer o design da STON.fi soar pior do que é — é o oposto. Um protocolo que fingisse que tudo era igualmente imutável, sem nenhum mecanismo para corrigir problemas na camada de roteamento ao longo do tempo, eventualmente enfrentaria um problema bem pior: ou ficar preso permanentemente a uma falha de roteamento, ou recorrer ao processo confuso e disruptivo de migrar um ecossistema inteiro para um sistema recém-implantado só para corrigir algo que nem precisava tocar os fundos dos usuários.
🧭 A Visão Mais Ampla
O que essa arquitetura realmente demonstra é que "imutável" e "atualizável" não são filosofias em competição em que uma simplesmente está certa — são ferramentas adequadas a trabalhos diferentes dentro do mesmo sistema. Lógica de precificação de fundos e de cotas de pool se beneficia enormemente de ser congelada com firmeza, porque o custo de um pool alterado de forma maliciosa é catastrófico e irreversível do pior jeito. Lógica de coordenação e roteamento, por outro lado, se beneficia de permanecer flexível, porque ecossistemas evoluem e infraestrutura rígida eventualmente vira uma desvantagem: incapaz de se adaptar sem migrações dolorosas e disruptivas.
A decisão genuinamente boa aqui não é "tornar tudo imutável" ou "manter tudo flexível" — é identificar corretamente em qual categoria cada contrato específico se encaixa e aplicar a restrição correta para cada um individualmente, em vez de uma política única e genérica aplicada tanto por cautela excessiva quanto por conveniência excessiva. A divisão da STON.fi entre pools travados e um roteador com time-lock e atualizável de forma transparente é exatamente esse tipo de escolha deliberada e ponderada — e não é única da STON.fi. Muitos protocolos maduros de DeFi em diferentes redes chegam a alguma versão dessa mesma divisão depois de operar tempo suficiente para sentir a dor dos extremos alternativos. Um sistema totalmente imutável eventualmente esbarra em um bug de roteamento ou em uma necessidade de integração à qual ele simplesmente não consegue se adaptar sem uma migração completa e disruptiva. Um sistema totalmente atualizável, sem nenhum núcleo imutável, pede que os usuários confiem em uma promessa contínua, em vez de um conjunto fixo de regras verificável de forma independente. Fazer a divisão deliberadamente, em vez de cair em um extremo por ideologia, é o que diferencia uma arquitetura considerada daquela que só escolheu uma filosofia e ficou com ela, independentemente das compensações reais envolvidas.
A questão interessante nunca foi "imutável vs atualizável". É "qual parte específica, e por que essa" — e, uma vez que você consiga responder isso, você entende o perfil de risco real do protocolo, em vez de um rótulo de uma palavra.
❓ Perguntas Frequentes
Os contratos de pool da STON.fi podem ser alterados após a implantação? Não. A documentação da STON.fi descreve os contratos de pool como imutáveis — a lógica central de precificação do AMM e o código de tratamento de reservas não podem ser modificados uma vez que um pool é implantado, bloqueando permanentemente qualquer lógica que tenha sido originalmente revisada e implantada.
O que pode ser atualizado na arquitetura da STON.fi? Apenas o contrato do roteador, que serve como ponto de entrada direcionando solicitações de swap e liquidez para os pools apropriados. É explicitamente o único componente atualizável, e qualquer atualização proposta passa por um processo de time-lock de sete dias antes de ativar.
A atualizabilidade do roteador significa que a STON.fi tem um backdoor administrativo para os fundos dos usuários? O roteador não mantém reservas de usuários diretamente — os contratos de pool mantêm, e eles são imutáveis. Atualizações do roteador afetam a lógica de negociação, taxas e roteamento em vez de apreender diretamente fundos depositados, e qualquer mudança fica sujeita à janela pública de time-lock antes de entrar em vigor.
A imutabilidade dos pools garante que não há bugs nos contratos da STON.fi? Não. Imutabilidade significa que a lógica implantada não pode ser alterada de forma maliciosa depois — ela não diz nada sobre se o código original estava impecável. É exatamente esse o papel de auditorias independentes de segurança: elas examinam a lógica antes e durante a implantação, não sendo uma garantia que a imutabilidade forneça por si só.
$ZEC

