- Um panorama de como as dinâmicas de poder no ecossistema open source funcionam entre empresas, desenvolvedores e usuários, e do impacto das táticas de rug pull (relicenciamento) e forks que chacoalham esse equilíbrio
- Enquanto grandes provedores de nuvem exercem enorme influência, projetos centrados em uma única empresa podem relicenciar para redistribuir poder, e forks surgem como resposta
- Na análise de casos, Elasticsearch→OpenSearch, Terraform→OpenTofu, Redis→Valkey e Puppet→OpenVox mostram diferentes padrões de reorganização da comunidade e migração de contribuidores
- Adoção de CLA, domínio por uma única empresa e momento da transferência para uma fundação são apresentados como sinais de risco de rug pull, enquanto governança neutra e ampliação da camada de contribuições multi-institucionais são recomendadas como estratégia de resposta
- Em conclusão, o relicenciamento pode servir como instrumento para conter o poder da nuvem, mas também enfraquece os direitos dos contribuidores, enquanto a possibilidade de fork atua como freio nas decisões empresariais
Estrutura de poder no open source, rug pulls e forks
- No ecossistema de software open source, grandes empresas, PMEs, contribuidores e usuários exercem poder para influenciar tanto a direção do software quanto a estrutura de receitas
- Em especial, os grandes provedores de nuvem passaram a deter um poder considerável, tendendo a ficar em vantagem sobre empresas menores e comunidades
- Nesse contexto, a empresa desenvolvedora ou dona do projeto pode mudar a licença do software (rug pull) ou, em resposta, a comunidade ou outra empresa pode realizar um fork, causando deslocamentos de poder
Visão geral das dinâmicas de poder e das táticas
- No mundo open source, os grandes provedores de nuvem exercem o poder mais forte de canal e distribuição, criando uma estrutura que explora pequenas empresas, contribuidores e usuários
- Como no feudalismo, em que o controle da terra definia o poder, provedores de nuvem transformam software open source em serviço enquanto evitam contribuir
- Pequenas empresas fazem a maior parte do trabalho de desenvolvimento, mas ficam em posição desfavorável diante do uso gratuito pelos provedores de nuvem
- Pela tática de rug pull, pequenas empresas relicenciam o software para enfrentar os provedores de nuvem, mas isso tende a causar ainda mais danos a contribuidores e usuários
- Quando provedores de nuvem transformam um projeto em serviço sem contribuir, o poder das pequenas empresas enfraquece
- O relicenciamento prejudica usuários, mas é possível reequilibrar o poder por meio de forks
- Em projetos conduzidos por uma única empresa, o risco de rug pull é alto, o que exige avaliar a reputação da empresa, embora isso possa se tornar inútil em casos de aquisição ou falência
- Pressão de investidores pode levar ao relicenciamento para aumentar receita, especialmente ao competir com provedores de nuvem
- Ao adotar uma licença mais restritiva, tenta-se dificultar a monetização por terceiros e deslocar o equilíbrio de poder
- A criação de forks após um rug pull funciona como uma forma insurgente de ação coletiva para recuperar poder, mas há alto risco de fracasso por falta de pessoas e recursos
- Grandes empresas ou provedores de nuvem podem apoiar forks com seus recursos, mas forks populares nem sempre têm sucesso
- Há casos em que não houve fork, como MongoDB e Sentry; já após a aquisição da Puppet pela Perforce, o fechamento do desenvolvimento levou ao fork OpenVox
Comparação dos principais casos
Dawn Foster analisa, com dados, vários casos de rug pull, fork e seus impactos posteriores. (Parte dos resultados foi divulgada em um dataset de notebook Jupyter)
- Elasticsearch → OpenSearch
- Em 2021, após o relicenciamento para SSPL pela Elastic, a AWS organizou o fork OpenSearch
- Na Elastic, a proporção de contribuidores internos pouco mudou antes e depois do fork; no OpenSearch, o padrão continua sendo de contribuições lideradas pela Amazon
- A análise aponta que, mesmo após a transferência para a Linux Foundation em 2024, não se observou explosão de contribuições externas
- Terraform → OpenTofu
- Em 2023, logo após a mudança para BSL pela HashiCorp, o OpenTofu foi lançado sob a Linux Foundation
- O Terraform manteve contribuições centradas na empresa, mas o OpenTofu recebeu rapidamente novos contribuidores de várias empresas
- Este caso sugere que fork liderado por usuários + fundação neutra desde o início favoreceu a formação de uma comunidade ativa
- Redis → Valkey
- Em 2024, logo após a mudança para SSPL do Redis, muitos dos contribuidores externos existentes migraram para o Valkey
- O Redis era um caso excepcional por ter alta proporção de contribuições externas antes do fork; depois, caiu bruscamente para zero contribuições externas, enquanto o Valkey nasceu como uma comunidade formada por várias empresas
- Puppet → OpenVox
- Após a aquisição pela Perforce (2022), houve fechamento do desenvolvimento e dos releases e redução na frequência de lançamentos; em resposta, a comunidade impulsionou o fork OpenVox
Observações de dados e métricas
- Depois de um rug pull, é comum observar forte alta no número de forks no GitHub, interpretada como um sinal proxy de movimentação para avaliar um hard fork
- No longo prazo, a tendência é que original e fork avancem em paralelo, mas a análise aponta que o original relicenciado tende a perder uso
- Lançar um projeto já sob o guarda-chuva de uma fundação favorece a atração de contribuições no início, mas uma transferência posterior pode ter efeito limitado
- O caso do OpenSearch sugere que apenas a transferência não garante um salto nas contribuições externas
Sinais de risco e diretrizes
- O uso de CLA (Contributor License Agreement) é um sinal de concentração de poder de relicenciamento nas empresas, ampliando o desequilíbrio de poder
- Projetos baseados em DCO (Developers Certificate of Origin) tendem a ter menor risco de rug pull
- É necessário avaliar a governança; domínio por uma única empresa e concentração de liderança são fatores de risco
- Projetos com fundação neutra, liderança multi-institucional e base de contribuições externas têm vantagem em termos de sustentabilidade
- A amplitude e a profundidade da base de contribuidores também são critérios centrais de avaliação
- Empresas precisam fortalecer ao mesmo tempo influência e sustentabilidade dos projetos dos quais dependem, destacando contribuidores diretamente para eles
- As métricas e guias práticos do CHAOSS podem ser usados para diagnosticar e melhorar a saúde dos projetos
Recomendações para comunidade e governança
- Incentivar a adoção de uma estrutura de governança neutra e ampliar os contribuidores externos são meios concretos de conter rug pulls
- A própria possibilidade de fork eleva o custo de decisão de um relicenciamento e funciona como mecanismo de dissuasão
- Em resposta à pergunta de Hazel Weakly sobre salvaguardas, a palestrante citou os casos de sucesso de Valkey e OpenTofu como exemplos reais que levaram empresas a reconsiderar relicenciamentos
- Dirk Hohndel enfatizou que atrair mais contribuidores externos aumenta o risco de rug pull e, portanto, também o risco gerencial dessa decisão
Conclusão
- À medida que cresce a influência das grandes empresas de nuvem, o ecossistema open source vem assumindo uma estrutura cada vez mais feudal
- A mudança de licença limita o poder das empresas de nuvem, mas no processo gera o efeito colateral de reduzir os direitos dos contribuidores da comunidade
- Ainda assim, contribuidores e usuários contam com o fork como meio de reação, o que diferencia o open source do feudalismo histórico
- A possibilidade real de fork influencia decisões futuras das empresas e, de fato, casos de sucesso como Valkey e OpenTofu já levaram algumas empresas a abandonar planos de rug pull
- Em última instância, a neutralidade da governança do projeto e a ativação de contribuidores externos são a chave para prevenir rug pulls e manter um ecossistema saudável
Referência
- Slides da apresentação: Power Dynamics, Rug Pulls & Other Impact on Sustainability
2 comentários
Como fazer um fork ainda não é algo fácil no momento, seria bom se houvesse entre as organizações relacionadas a open source algum lugar que ajudasse com isso.
Comentários do Hacker News
rug pull(quando o esforço dos contribuidores é apropriado privadamente por poucos), enquanto projetos que usam DCO (Developers Certificate of Origin) tendem a ter menos desse desequilíbrio. Ao assinar um CLA, você concede ao projeto o direito de relicenciar o código da sua contribuição. Ou seja, mesmo que você contribua com código GPL para um projeto GPL, a licença pode ser alterada. Se a licença já for permissiva, o CLA não tem grande impacto, mas em caso de copyleft (ex.: GPL), isso se torna injusto porque só quem recolheu as assinaturas do CLA pode ter posse exclusiva. Para evitarrug pull, o ideal é usar licença copyleft e evitar assinar CLA. Em licenças permissivas, é preciso entender que orug pullfaz "parte do jogo"rug pullrug pull. Para reagir a umrug pull, na prática é preciso fazer um fork e colaborar diretamente nele para obter benefícios. Quando uma licença copyleft vem acompanhada de CLA (ex.: AGPL + CLA), isso pode ser ainda mais nocivo do que licença permissiva + CLA. A AGPL obriga a divulgar o código-fonte até em distribuição como serviço, mas com CLA o dono pode operar um serviço fechado sem publicar as melhorias. Casos reais como Incus e LXD mostram que a combinação de licença e CLA pode causar divisão na comunidade e restringir o compartilhamento de código(relato detalhado)rug pullnão existe em open source. Uma cópia GPL existe para semprerug pull, mas vale apontar que um CLA nem sempre concede todos os direitosrug pull" em open source com um purismo excessivamente ideológico. Projetos precisam ser sustentáveis. Num cenário em que grandes provedores de nuvem monopolizam a infraestrutura, parece melhor que pequenos desenvolvedores gastem energia mitigando o monopólio das big techs do que entrando em disputas em projetos open source ou baseados em CLArug pullaumenta. Quem instala por binários/imagens do fornecedor tem mais dificuldade para migrar para um fork, mas redirecionar a infraestrutura de build para uma nova fonte é relativamente simples. Como você também pode aplicar suas próprias correções e recursos, a dependência de manutenção diminuisqliteé um bom exemplo)rug pulldo Elasticsearch, o fato de a Amazon ter passado a contribuir diretamente para o fork open source (OpenSearch) pode ser visto como um resultado parcialmente positivo, mesmo que não fosse a intenção original. Ainda assim, é importante discutir como o desequilíbrio entre contribuidores e beneficiários em grandes empresas também gera instabilidade nos projetosrug pullnão se torna fácil apenas por trocar a licença. O problema mais profundo é a realidade de que não vivemos num ambiente utópico em que qualquer pessoa possa trabalhar de graça e ainda assim manter boa qualidade de vida. Sem mantenedores, a meia-vida de um projeto tende a ser curta e, sem patrocínio, a migração para licenças mais fechadas vai se acelerarrug pull, mas empresas que de fato lideram o desenvolvimento e a manutenção de um projeto também têm limites financeiros e acabam com poucas opções. Sem um modelo de receita, a mudança de licença pode se tornar inevitável. Como alternativas, venho pensando em crowdfunding, reduzir a carga de trabalho, vender merchandising, ou anunciar que o projeto se tornará aberto se não houver financiamento adicional. Texto relacionadorug pull. No caso da Hashicorp, isso pode até ter sido uma estratégia para aumentar valor numa aquisiçãorug pulltambém é uma visão enviesada. De qualquer forma, nós já recebemos o código; é triste quando a direção muda, mas nada no mundo dura para semprerug pull. Se fosse um projeto colocado no GitHub sem marketing e adotado organicamente, provavelmente não seria alvo dessa controvérsia. Mas quase nunca vejo casos assimrug pulltambém tem deixado a liderança confusa. Sempre insistimos em contratos de suporte para os sistemas, mas situações parecidas continuam se repetindo com Chef, CentOS, VMWare, Broadcom etc. Mesmo quando a intenção era pagar, os serviços básicos de manutenção chegam a milhares ou dezenas de milhares de dólares por ano, e ainda assim a confiança não existe. Nesse cenário, parece melhor apoiar uma fundação ou contratar diretamente mantenedores de OSS de forma recorrente. Antes eu era cético com esse tipo de proposta, mas a adesão vem crescendo. Pessoalmente, eu preferiria contratar desenvolvedores de Proxmox ouqemua pagar a VMWarerug pull, na verdade, me parece ser propaganda enganosa. Você atrai clientes com o discurso de open source e, quando isso deixa de te favorecer, quebra essa promessa, o que é moralmente problemático. Já o fim das contribuições em si não me preocupa. Ninguém é obrigado a permanecer num projeto para sempre, então é natural que indivíduos ou empresas também interrompam sua participação