3 pontos por GN⁺ 5 시간 전 | 1 comentários | Compartilhar no WhatsApp
  • Após assumir o controle do RubyGems, Bundler e RubyGems.org, em 10 meses a Ruby Central perdeu 2 conferências, 2 grandes projetos OSS e 9 contribuidores, e tampouco resolveu a disputa
  • Sem aceitar o acordo proposto pelos mantenedores anteriores, repetiu a condição de que só retiraria a ameaça de processo se André Arko abrisse mão dos direitos sobre o Bundler e de reivindicações relacionadas à legislação trabalhista
  • Em março de 2026, os advogados da Ruby Central denunciaram Arko ao FBI, mas, segundo Arko, três auditorias não encontraram evidências de que ele tenha causado danos ao RubyGems.org
  • Atualmente, a organização opera um projeto de segurança apoiado pela Alpha-Omega e a Ruby Alliance, mas Arko questiona conflitos de interesse não divulgados entre patrocinadores como Gusto e Thoughtbot e membros do conselho
  • Para recuperar a confiança, ele propõe criar uma organização com projetos operados publicamente, como o gem.coop, novas ferramentas e um conselho eleito pela comunidade, em vez de restaurar a organização existente

A Ruby Central antes e depois da tomada de controle

  • Cerca de 18 meses atrás, a Ruby Central organizava todos os anos a RubyConf e a RailsConf
  • O Open Source Committee era formado por três pessoas, Ufuk, Gabi e Mike, e apoiava e coordenava a equipe de OSS
    • 7 contribuidores da comunidade em meio período: André, Arun, Ellen, Gift, Irene, Josef, Martin
    • 3 desenvolvedores OSS em tempo integral: Colby, Samuel, David
    • Projetos-alvo: RubyGems, Bundler, RubyGems.org
  • Cerca de 10 meses atrás, ocorreu um episódio que Ellen Dash, do core team do RubyGems, chamou de “tomada hostil”, e a equipe que administrava o projeto havia mais de 10 anos perdeu seu acesso

Capacidade organizacional perdida em 10 meses

  • As duas conferências ficaram sem datas futuras
  • A organização perdeu 2 dos 3 grandes projetos OSS e transferiu Bundler e RubyGems para Matz
  • 9 dos 10 contribuidores OSS saíram
    • 6 dos 7 operadores do RubyGems.org
    • 2 dos 3 contribuidores OSS em tempo integral
    • As 2 pessoas responsáveis por textos relacionados a OSS
  • Todos os 3 membros do Open Source Committee, 5 dos 7 conselheiros e todos os 3 Executive Directors deixaram seus cargos
  • Os principais patrocinadores financeiros Sidekiq e Shopify também saíram, mas a Shopify voltou a participar da Ruby Alliance 9 meses depois

Uma estrutura de conselho sem eleições

  • Ao contrário da Python Software Foundation, a Ruby Central não realiza eleições para conselheiros
  • Embora tenha revisado todo o estatuto este ano, os novos conselheiros continuam sendo escolhidos apenas pelos conselheiros existentes, sem processo público de consulta
  • O conselho atual é formado pelos 2 remanescentes dos 7 conselheiros antigos que aprovaram a tomada de controle e por 3 novos conselheiros escolhidos pelo conselho anterior, incluindo Brandon, Jey e Ran

O novo projeto de segurança e a Ruby Alliance

  • Depois de encerrar duas conferências e transferir metade dos projetos OSS, o único programa adicionado publicamente foi um projeto de segurança operado com uma subvenção da Alpha-Omega
  • Esse projeto usa o Project Glasswing, da Anthropic, para encontrar problemas de segurança em gems já distribuídas
  • O primeiro relatório mensal, de junho de 2026, relatou 5 vulnerabilidades
    • 1 de severidade média
    • 4 de severidade baixa ou não classificada
  • Gusto, Thoughtbot e Shopify participam da Ruby Alliance
  • Arko questiona possíveis conflitos de interesse ausentes do anúncio de patrocínio
    • O conselheiro David Corson-Knowles é Senior Staff Engineer na Gusto
    • O presidente do conselho, Ran Craycraft, é Managing Director, Americas, na Thoughtbot
    • Trata-se de uma estrutura em que conselheiros que distribuem recursos de patrocínio recebem esses recursos de empresas que os empregam
  • A Shopify voltou após 9 meses, e Arko cita reportagens externas segundo as quais, na época, a Shopify teria exigido que a Ruby Central fizesse a tomada de controle

A disputa não resolvida sobre Bundler e RubyGems

  • Desde outubro de 2025, a Ruby Central ameaça processar Arko e não retirou essa ameaça
  • A disputa começou quando, em setembro de 2025, a Ruby Central tomou os projetos Bundler e RubyGems no GitHub dos mantenedores anteriores
  • Quando Arko informou que tinha direitos sobre o nome Bundler, a Ruby Central alertou sobre um processo com base em um suposto “hack
  • Arko vem negando continuamente essa acusação de hack
  • A Ruby Central mantém a posição de que só retirará a ameaça de processo se ele abrir mão das seguintes reivindicações
    • Reivindicação por violação do nome Bundler
    • Reivindicações de que o trabalho como contratado pode ter violado leis trabalhistas estaduais e de compensações em atraso

Tentativas de acordo após a transferência dos projetos

  • Como Arko não abriu mão das reivindicações apesar da ameaça de processo, a Ruby Central entregou a gem Bundler e o repositório RubyGems no GitHub a Matz
  • Os mantenedores anteriores propuseram um novo acordo, mas a Ruby Central não respondeu
  • Em vez disso, repetiu a condição anterior: retirar a ameaça de processo se apenas Arko abrisse mão de todas as reivindicações
  • Depois de mais 4 meses sem progresso, Arko publicou uma atualização pública de andamento

Estimativa de cerca de US$ 450 mil e as exigências reais

  • A Ruby Central pediu que Arko estimasse um valor, dizendo que pagaria um acordo com recursos externos
  • O escopo solicitado incluía honorários advocatícios, possíveis valores em atraso e 6 meses de compensação após a demissão; com ajuda de especialistas, o valor calculado foi de cerca de US$ 450 mil
  • Arko afirmou que não exigiu diretamente esse valor, mas o forneceu a pedido da Ruby Central para captação de recursos
  • As condições que ele efetivamente continuou exigindo eram duas
    • Um pedido de desculpas por ataques à sua reputação sem evidências
    • Reembolso de honorários advocatícios muito inferior a US$ 450 mil

Denúncia ao FBI e possibilidade de investigação criminal

  • Ao mesmo tempo em que buscava recursos para o acordo, o advogado da Ruby Central denunciou Arko ao FBI, solicitando uma investigação criminal
  • Em 9 de março de 2026, esse advogado informou ao advogado de Arko sobre a denúncia e disse que ele talvez precisasse de um advogado especializado em direito criminal
  • Segundo Arko, a conta AWS do RubyGems foi auditada três vezes, mas não foram encontradas evidências de que ele tenha causado danos
  • A denúncia ao FBI não pode ser retirada; portanto, mesmo que a Ruby Central diga que não pretende mais avançar com isso, cabe ao FBI decidir se investigará

Proposta mínima de acordo após o esgotamento dos recursos

  • Algumas semanas após a denúncia ao FBI, a Ruby Central anunciou que seus recursos haviam se esgotado
  • Arko viu isso como um sinal positivo e apresentou uma nova proposta de resolução
  • Nessa proposta, ele não exigia a devolução do Bundler, compensação conforme a legislação trabalhista nem pedido de desculpas
    • Confirmação pública de que não causou danos ao RubyGems
    • Reembolso dos honorários advocatícios gerados pela ameaça de processo
  • A Ruby Central não respondeu por 6 semanas a essa proposta nem a várias tentativas de contato

Cláusula de não difamação aplicada a apenas um lado

  • Depois de 6 semanas, a Ruby Central voltou a apresentar uma proposta dizendo que retiraria a ameaça de processo se as seguintes condições fossem atendidas
    • Desistência da reivindicação por violação da marca Bundler
    • Desistência da reivindicação por violação da legislação trabalhista
    • Acordo de não difamação aplicável apenas a Arko, não à Ruby Central
  • Como nova condição, propôs recomendar ao FBI que se abstivesse de uma acusação criminal e, caso uma investigação ou acusação fosse iniciada, cooperar apenas no limite exigido por lei
  • Arko afirmou que não podia aceitar, pois várias leis estaduais e federais poderiam considerar crime o próprio acordo que limita a cooperação com investigações criminais

Contraproposta condicionada a pedidos de desculpas

  • A Ruby Central não podia retirar a denúncia ao FBI, nem devolver os repositórios já transferidos, e não tinha recursos para oferecer compensação
  • Arko enviou uma contraproposta em que abriria mão de reivindicações de direitos e de legislação trabalhista sob as seguintes condições
    • Retirada da ameaça de processo pela Ruby Central
    • Pedido de desculpas por tê-lo acusado publicamente, sem evidências, de causar danos ao RubyGems.org
    • Pedido de desculpas pela alegação de que ele tentou obter PII de usuários
    • Pedido de desculpas por ter destruído a governança do Bundler e do RubyGems para realizar a tomada de controle
  • A Ruby Central não se opôs ao pedido de desculpas, mas insistiu na cláusula de não difamação aplicável apenas a Arko, não à organização
  • Após a contraproposta, não houve resposta por 30 dias, e a promessa do advogado de fornecer um prazo de resposta em até um dia também não foi cumprida

Perguntas que permanecem apesar dos esclarecimentos públicos

  • A Ruby Central não reconheceu nem pediu desculpas por ter sido errado excluir dos projetos mantenedores que contribuíam havia mais de 10 anos
  • O único motivo divulgado publicamente para a tomada de controle foi “melhorar a segurança
  • Arko rebate que, depois de remover todas as pessoas qualificadas para executar uma tomada de controle de segurança com segurança, a organização o acusou de hack por ter divulgado de forma responsável falhas de segurança do sistema
  • A Ruby Central realizou três auditorias separadas, mas, segundo Arko, não encontrou evidências de dano
  • O Fracture Incident Report da Ruby Central tinha como objetivo dar um “encerramento”, mas não respondeu às seguintes perguntas
    • Que ações o conselho efetivamente votou
    • O que pretendia obter com a tomada de controle
    • Por que mirou apenas Arko individualmente, e não outros mantenedores
    • Por que isso levou imediatamente a ameaças de processo
    • Por que envolveu o FBI sem evidências de dano
  • O ex-Executive Director Shan Cureton expressou publicamente a posição de que a comunidade não precisava conhecer toda a história, e a organização continua se recusando a divulgar as causas mesmo após sua saída

A comunidade que a Ruby Central havia criado

  • As conferências da Ruby Central foram o motivo pelo qual Arko passou a participar da comunidade Ruby e a contribuir no longo prazo
  • Na RubyConf de San Diego em 2005, ele vivenciou o seguinte
    • Uma palestra em que Matz propôs a sintaxe -> “stabby lambda”
    • Uma palestra sobre call_cc em que Jim Weirich demonstrou continuations com um Nintendo 64 e The Legend of Zelda: Ocarina of Time
    • O core team do Rails preparando o lançamento do Rails 1.0 em dezembro daquele ano
    • Relações que duram mais de 20 anos, criadas por meio do IRC Freenode e de participantes da UCSD
  • Em sua primeira RailsConf, em 2006, conseguiu seu primeiro emprego em tempo integral por indicação de uma pessoa que conheceu lá
  • Essa experiência levou às seguintes atividades
    • Desenvolvimento e lançamento do Bundler 1.0 em 2009
    • Manutenção do Bundler por 15 anos
    • Trabalho no RubyGems e no RubyGems.org por mais de 10 anos
    • Fundação e operação da organização sem fins lucrativos Ruby Together por 7 anos
  • A fusão da Ruby Together com a Ruby Central foi decidida com base na confiança no histórico de conferências e gestão de comunidade que a Ruby Central construiu de 2001 a 2021

Criando um novo ecossistema com governança aberta

  • Pela primeira vez em sua história de 25 anos, a Ruby Central não tem nenhuma conferência agendada, e esta disputa acabou enfraquecendo a governança comunitária que pretendia fortalecer
  • Os mantenedores foram excluídos de projetos que cultivaram por muito tempo, e nenhum motivo concreto ou benefício substancial que justificasse o resultado foi divulgado
  • A comunidade Ruby pode criar diretamente novos projetos e organizações
  • Em vez de tentar restaurar as antigas conferências da Ruby Central e a Ruby Together, é preciso reconstruir o futuro do Ruby em torno de governança aberta e novas ferramentas

1 comentários

 
GN⁺ 5 시간 전
Opiniões no Lobste.rs
  • Fiquei surpreso ao ver que a RubyConf 2005 seria realizada na próxima San Diego e fui participar com os únicos dois amigos que eu tinha que gostavam de programação; a pessoa mencionada no texto sou eu
    Não uso Ruby desde que deixei meu emprego de desenvolvimento Ruby em 2009, mas guardo boas lembranças daquela conferência e lamento que a resposta da Ruby Central aos acontecimentos recentes tenha sido tão ruim

    • Se você não ouvir apenas um lado da história, a situação pode parecer um pouco menos ruim
      No Reddit se espalhou o mal-entendido de que a Ruby Central iniciou um encaminhamento ao FBI, mas na realidade um profissional da área jurídica, sem consultar a Ruby Central, avaliou os fatos de forma independente e fez a denúncia
      Mesmo que eu estivesse no comitê de código aberto na época, não teria conseguido impedir isso, e ninguém da Ruby Central tinha autoridade para barrar
      O relato era algo como “a Ruby Central perdeu o controle da infraestrutura AWS por X dias”; uma vez recebido, podia ser retirado, mas não era uma denúncia formal
      A Ruby Central tem muito a aprender e melhorar, mas também é importante transmitir a situação e os acontecimentos com precisão
  • Acho que o Andre já vinha tentando, havia muito tempo, tomar o controle do RubyGems, Bundler e RubyGems.org de forma silenciosa e gradual
    O relatório do incidente a seguir não afirma isso explicitamente, mas dá sustentação: https://rubycentral.org/news/rubygems-fracture-incident-report/
    O fato de Andre, em fevereiro de 2025, ter removido o acesso de Evan Phoenix ao GitHub sem sequer haver um responsável alternativo da Ruby Central e ter excluído a pessoa responsável por código aberto foi algo sem precedentes
    Ele também deveria ter transferido para a pessoa responsável por código aberto os privilégios de administrador do 1Password, mas mesmo após a transferência do cargo manteve privilégios de administrador em uma conta auxiliar do 1Password
    Como resultado, Andre conseguiu assumir a conta AWS, remover todos os outros administradores e bloquear a Ruby Central fora do ambiente de produção; nunca deveria ter sido possível que uma única pessoa excluísse a liderança de código aberto tanto da AWS quanto do 1Password
    Além disso, informou falsamente à comunidade a relação entre o acesso ao GitHub e os privilégios de administrador do ambiente de produção, manteve essa explicação por meses após a perda de acesso e, mesmo depois de a Ruby Central tentar sem sucesso remover completamente seus privilégios operacionais, até hoje minimiza o risco de segurança
    Se a Ruby Central tivesse sido tratada como parte interessada adequada e tivesse recebido corretamente os privilégios necessários para operar o RubyGems.org, não teria havido necessidade de uma tomada hostil nem de excluir Andre
    Conflitos de interesse são muito importantes, e a pessoa responsável por código aberto não deveria fazer parte do comitê que supervisiona seu próprio financiamento
    A estrutura em que Andre, ao unir o Ruby Together à Ruby Central, era membro do comitê de código aberto que supervisionava os recursos pagos a ele mesmo não era profissional nem ética
    Dou muito valor ao fato de ele ter aberto caminho para remunerar o trabalho em código aberto, mas acho que falhou em executar adequadamente a tarefa essencial de definir com clareza e impedir que se confundissem os limites entre trabalho remunerado e trabalho voluntário
    Em outras partes, inclusive nas questões legais, também há muitos trechos que, no máximo, são metade verdade, mas não sou membro do conselho nem advogado, e estou de férias com a família, então provavelmente será difícil responder mais