- Sau khi giành quyền kiểm soát RubyGems, Bundler và RubyGems.org, trong 10 tháng Ruby Central đã mất 2 hội nghị, 2 dự án OSS chủ chốt, 9 người đóng góp và vẫn không giải quyết được tranh chấp
- Không chấp nhận phương án thỏa thuận từ các maintainer trước đây, Ruby Central lặp lại điều kiện rằng André Arko phải từ bỏ quyền với Bundler và các yêu cầu liên quan đến luật lao động thì họ mới rút lại đe dọa kiện tụng
- Luật sư phía Ruby Central đã trình báo FBI về Arko vào tháng 3/2026, nhưng theo Arko, qua ba cuộc kiểm toán vẫn không tìm thấy bằng chứng anh gây thiệt hại cho RubyGems.org
- Hiện tổ chức này đang vận hành dự án bảo mật được Alpha-Omega hỗ trợ và Ruby Alliance, nhưng Arko đặt vấn đề về xung đột lợi ích không được công khai giữa các nhà tài trợ Gusto, Thoughtbot và hội đồng quản trị
- Để khôi phục niềm tin, ông đề xuất không nên phục hồi nguyên trạng tổ chức cũ mà cần xây dựng các dự án vận hành công khai như gem.coop, công cụ mới và một tổ chức có hội đồng quản trị do cộng đồng bầu chọn
Ruby Central trước và sau khi thâu tóm quyền kiểm soát
- Khoảng 18 tháng trước, Ruby Central vận hành hằng năm RubyConf và RailsConf
- Open Source Committee gồm 3 người là Ufuk, Gabi và Mike, phụ trách hỗ trợ và điều phối nhân lực OSS
- 7 cộng tác viên cộng đồng bán thời gian: André, Arun, Ellen, Gift, Irene, Josef, Martin
- 3 nhà phát triển OSS toàn thời gian: Colby, Samuel, David
- Các dự án phụ trách: RubyGems, Bundler, RubyGems.org
- Khoảng 10 tháng trước xảy ra sự việc mà Ellen Dash từ core team RubyGems gọi là một “cuộc thâu tóm thù địch”, khiến đội ngũ đã quản lý dự án hơn 10 năm bị mất quyền truy cập
Năng lực tổ chức biến mất trong 10 tháng
- Cả hai hội nghị đều rơi vào trạng thái không còn lịch tổ chức trong tương lai
- RailsConf đã bị khai tử
- Một phần đáng kể của RubyConf cuối cùng đã bị hủy
- Lần đầu tiên sau nhiều thập kỷ, họ không công bố địa điểm và ngày diễn ra hội nghị tiếp theo
- Tổ chức mất 2 trong 3 dự án OSS chủ chốt khi chuyển Bundler và RubyGems cho Matz
- 9 trong 10 người đóng góp OSS đã rời đi
- 6 trong 7 người vận hành RubyGems.org
- 2 trong 3 người đóng góp OSS toàn thời gian
- Toàn bộ 2 nhân sự phụ trách các bài viết liên quan đến OSS
- Cả 3 thành viên Open Source Committee, 5 trong 7 giám đốc và toàn bộ 3 Executive Director đều đã rời vị trí
- Hai nhà tài trợ tài chính lớn là Sidekiq và Shopify cũng rút lui, dù Shopify quay lại Ruby Alliance sau 9 tháng
Cấu trúc hội đồng quản trị không có bầu cử
- Không giống Python Software Foundation, Ruby Central không tổ chức bầu cử giám đốc
- Dù năm nay đã sửa đổi toàn bộ điều lệ, giám đốc mới vẫn do các giám đốc đương nhiệm bổ nhiệm và cũng không có quy trình lấy ý kiến công khai
- Hội đồng hiện tại gồm 2 trong số 7 giám đốc cũ đã phê duyệt vụ thâu tóm, cùng 3 giám đốc mới là Brandon, Jey và Ran do hội đồng trước đó lựa chọn
Dự án bảo mật mới và Ruby Alliance
- Sau khi chấm dứt hai hội nghị và chuyển giao một nửa mảng OSS, chương trình mới duy nhất được công khai bổ sung là một dự án bảo mật vận hành bằng khoản tài trợ Alpha-Omega
- Dự án này dùng Project Glasswing của Anthropic để tìm các vấn đề bảo mật trong những gem đã được phát hành
- Báo cáo tháng đầu tiên vào tháng 6/2026 ghi nhận 5 lỗ hổng
- 1 mức độ trung bình
- 4 mức độ thấp hoặc chưa phân loại
- Ruby Alliance có sự tham gia của Gusto, Thoughtbot và Shopify
- Arko nêu vấn đề về khả năng xung đột lợi ích đã không được đề cập trong thông báo tài trợ
- Giám đốc David Corson-Knowles là Senior Staff Engineer tại Gusto
- Chủ tịch hội đồng Ran Craycraft là Managing Director, Americas tại Thoughtbot
- Những giám đốc phân bổ tiền tài trợ lại nhận tài trợ từ chính các công ty đang thuê họ
- Shopify quay trở lại sau 9 tháng, và Arko dẫn lại các bài báo bên ngoài nói rằng Shopify từng yêu cầu Ruby Central thực hiện vụ thâu tóm
Tranh chấp Bundler và RubyGems chưa được giải quyết
- Từ tháng 10/2025, Ruby Central đã đe dọa khởi kiện Arko và chưa rút lại lời đe dọa này
- Tranh chấp bắt đầu khi Ruby Central lấy các dự án GitHub của Bundler và RubyGems khỏi tay các maintainer cũ vào tháng 9/2025
- Khi Arko thông báo rằng mình có quyền đối với tên gọi Bundler, Ruby Central cảnh báo kiện tụng với lý do cái gọi là vụ “hack”
- Arko đã liên tục phủ nhận cáo buộc hack đó
- Ruby Central giữ nguyên lập trường rằng chỉ khi từ bỏ các yêu cầu sau thì họ mới rút lại đe dọa kiện tụng
- Yêu cầu về xâm phạm tên gọi Bundler
- Yêu cầu liên quan đến khả năng công việc hợp đồng vi phạm luật lao động bang và bồi thường lương còn thiếu
Nỗ lực thỏa thuận tiếp diễn sau khi chuyển giao dự án
- Khi Arko không từ bỏ yêu cầu dù bị đe dọa kiện, Ruby Central đã chuyển gem Bundler và kho GitHub của RubyGems cho Matz
- Các maintainer trước đây đề xuất một phương án thỏa thuận mới, nhưng Ruby Central không trả lời
- Thay vào đó, họ lặp lại điều kiện cũ: chỉ khi riêng Arko từ bỏ mọi yêu cầu thì họ mới rút đe dọa kiện tụng
- Sau 4 tháng không có tiến triển, Arko đã đăng cập nhật công khai
Ước tính khoảng 450.000 USD và điều kiện thực tế được yêu cầu
- Ruby Central nói sẽ dùng nguồn vốn bên ngoài để chi trả tiền dàn xếp và yêu cầu Arko ước tính con số
- Phạm vi được yêu cầu gồm phí luật sư, khoản lương có thể còn thiếu và bồi thường 6 tháng sau khi chấm dứt hợp đồng; con số tính ra với sự hỗ trợ của chuyên gia là khoảng 450.000 USD
- Arko cho biết ông không trực tiếp đòi số tiền này mà chỉ cung cấp theo đề nghị gọi vốn của Ruby Central
- Trên thực tế, điều kiện ông liên tục yêu cầu chỉ có hai điểm
- Lời xin lỗi vì đã công kích danh tiếng mà không có bằng chứng
- Hoàn trả phí luật sư thấp hơn rất nhiều so với 450.000 USD
Trình báo FBI và khả năng điều tra hình sự
- Trong lúc tìm tiền cho thỏa thuận, luật sư phía Ruby Central đã trình báo FBI về Arko và đề nghị điều tra hình sự
- Ngày 9/3/2026, luật sư này thông báo cho luật sư của Arko về việc trình báo và nói rằng có thể sẽ cần luật sư chuyên về hình sự
- Theo Arko, tài khoản AWS của RubyGems đã được kiểm toán ba lần nhưng không tìm thấy bằng chứng ông gây ra thiệt hại
- Việc trình báo FBI không thể rút lại, nên dù Ruby Central có nói rằng họ không còn muốn thúc đẩy nữa thì việc điều tra hay không vẫn do FBI quyết định
Phương án hòa giải tối thiểu được đưa ra sau khi cạn tiền
- Vài tuần sau khi trình báo FBI, Ruby Central thông báo đã cạn tiền
- Xem đây là tín hiệu tích cực, Arko đưa ra một phương án giải quyết mới
- Trong đề xuất này, ông không yêu cầu trả lại Bundler, bồi thường theo luật lao động hay lời xin lỗi
- Xác nhận công khai rằng ông không gây hại cho RubyGems
- Hoàn trả phí luật sư phát sinh do đe dọa kiện tụng
- Ruby Central không trả lời trong 6 tuần đối với đề xuất này và nhiều lần liên hệ khác
Điều khoản không bôi nhọ chỉ áp dụng cho một phía
- Sau 6 tuần, Ruby Central lại gửi đề nghị rằng họ sẽ rút đe dọa kiện tụng nếu đáp ứng các điều kiện sau
- Từ bỏ yêu cầu xâm phạm thương hiệu Bundler
- Từ bỏ yêu cầu vi phạm luật lao động
- Một thỏa thuận không bôi nhọ chỉ áp dụng với Arko, không áp dụng với Ruby Central
- Là điều kiện mới, họ đề xuất sẽ khuyến nghị FBI kiềm chế truy tố hình sự, và nếu điều tra hay truy tố bắt đầu thì họ chỉ hợp tác trong phạm vi luật pháp yêu cầu
- Arko cho biết ông không thể chấp nhận vì nhiều luật bang và liên bang có thể coi thỏa thuận hạn chế hợp tác trong điều tra hình sự tự thân là hành vi phạm tội
Đề xuất ngược lấy lời xin lỗi làm điều kiện
- Ruby Central không thể rút lại việc trình báo FBI, cũng không thể trả lại các kho đã chuyển giao, và dường như cũng không còn tiền để bồi thường
- Arko gửi một đề xuất ngược rằng ông sẽ từ bỏ các yêu cầu về quyền và luật lao động với các điều kiện sau
- Ruby Central rút lại đe dọa kiện tụng
- Xin lỗi vì đã công khai buộc tội ông làm hại RubyGems.org mà không có bằng chứng
- Xin lỗi về cáo buộc rằng ông cố lấy PII của người dùng
- Xin lỗi vì đã phá vỡ cơ chế quản trị của Bundler và RubyGems để thực hiện vụ thâu tóm
- Ruby Central không phản đối yêu cầu xin lỗi, nhưng vẫn giữ điều khoản không bôi nhọ chỉ áp dụng với Arko chứ không áp dụng cho tổ chức
- Sau đề xuất ngược, 30 ngày trôi qua mà không có phản hồi, và lời hứa của luật sư rằng sẽ cung cấp lịch phản hồi trong vòng một ngày cũng không được thực hiện
Những câu hỏi còn lại dù đã có giải thích công khai
- Ruby Central chưa bao giờ thừa nhận hay xin lỗi rằng việc loại các maintainer hoạt động hơn 10 năm khỏi dự án là sai lầm
- Lý do công khai duy nhất cho vụ thâu tóm là “cải thiện bảo mật”
- Arko phản bác rằng sau khi loại bỏ toàn bộ chuyên gia có thể thực hiện một cuộc tiếp quản bảo mật an toàn, Ruby Central lại buộc tội chính ông là hacker chỉ vì đã công khai có trách nhiệm về một thất bại bảo mật hệ thống
- Ruby Central đã tiến hành ba cuộc kiểm toán riêng biệt, nhưng theo Arko, họ không tìm thấy bằng chứng thiệt hại
- Fracture Incident Report của Ruby Central nhằm mục đích “khép lại vấn đề”, nhưng không trả lời các câu hỏi sau
- Hội đồng thực sự đã biểu quyết những biện pháp nào
- Họ muốn đạt được điều gì từ vụ thâu tóm
- Vì sao giữ lại các maintainer khác nhưng chỉ nhắm riêng Arko
- Vì sao ngay lập tức dẫn tới đe dọa kiện tụng
- Vì sao lại lôi FBI vào khi không có bằng chứng thiệt hại
- Cựu Executive Director Shan Cureton từng công khai nêu quan điểm rằng cộng đồng không cần biết toàn bộ sự việc, và tổ chức vẫn tiếp tục từ chối công khai nguyên nhân ngay cả sau khi ông rời chức
Cộng đồng mà Ruby Central từng tạo dựng
- Các hội nghị của Ruby Central chính là cơ duyên để Arko tham gia cộng đồng Ruby và gắn bó đóng góp lâu dài
- Tại RubyConf San Diego 2005, ông đã trải nghiệm
- Bài trình bày của Matz đề xuất cú pháp
->“stabby lambda” - Bài trình bày
call_cccủa Jim Weirich dùng Nintendo 64 và The Legend of Zelda: Ocarina of Time để minh họa continuation - Core team Rails khi đó đang chuẩn bị phát hành Rails 1.0 vào tháng 12 năm đó
- Những mối quan hệ kéo dài hơn 20 năm được hình thành qua Freenode IRC và những người tham dự từ UCSD
- Bài trình bày của Matz đề xuất cú pháp
- Tại RailsConf đầu tiên năm 2006, ông nhận được công việc toàn thời gian đầu tiên nhờ lời đề nghị từ một người quen ở đó
- Trải nghiệm này dẫn tới các hoạt động sau
- Phát triển và phát hành Bundler 1.0 vào năm 2009
- Duy trì Bundler trong 15 năm
- Làm việc với RubyGems và RubyGems.org hơn 10 năm
- Thành lập và vận hành tổ chức phi lợi nhuận Ruby Together trong 7 năm
- Quyết định sáp nhập Ruby Together với Ruby Central được đưa ra dựa trên niềm tin vào thành tích vận hành hội nghị và cộng đồng mà Ruby Central tích lũy từ 2001 đến 2021
Xây dựng hệ sinh thái mới bằng quản trị công khai
- Ruby Central lần đầu tiên trong lịch sử 25 năm không có bất kỳ hội nghị nào được lên lịch, và tranh chấp lần này còn làm suy yếu chính cơ chế quản trị cộng đồng mà họ nói muốn củng cố
- Các maintainer đã bị loại khỏi những dự án họ dày công gây dựng trong thời gian dài, nhưng không có lý do cụ thể hay lợi ích thực chất nào được công khai để biện minh cho kết quả đó
- Cộng đồng Ruby có thể tự xây dựng các dự án và tổ chức mới
- gem.coop với mô hình quản trị do maintainer vận hành công khai
- rv và Ruby Butler giúp cải thiện trải nghiệm dùng Ruby
- Một tổ chức nơi cộng đồng bầu giám đốc như hội đồng Python Software Foundation
- Thay vì cố phục hồi các hội nghị Ruby Central trước đây và Ruby Together, cần tái xây dựng tương lai của Ruby xoay quanh quản trị công khai và công cụ mới
1 bình luận
Các ý kiến trên Lobste.rs
Tôi ngạc nhiên khi biết RubyConf 2005 được tổ chức ở San Diego gần đó nên đã tham dự cùng hai người bạn duy nhất cũng thích lập trình; người được nhắc đến trong bài chính là tôi
Từ khi rời công việc phát triển Ruby vào năm 2009, tôi không còn dùng Ruby nữa, nhưng hội nghị khi đó vẫn là một kỷ niệm đẹp; thật đáng tiếc khi cách Ruby Central phản ứng trước sự việc gần đây lại tệ đến vậy
Trên Reddit lan truyền hiểu lầm rằng Ruby Central là bên khởi xướng việc chuyển cho FBI, nhưng thực tế là một chuyên gia pháp lý, không tham vấn Ruby Central, đã tự đánh giá sự việc một cách độc lập và báo cáo
Ngay cả nếu lúc đó tôi có ở trong ủy ban mã nguồn mở thì cũng không thể ngăn việc đó, và không ai ở Ruby Central có quyền ngăn cản
Nội dung báo cáo đại loại là “Ruby Central đã mất quyền kiểm soát hạ tầng AWS trong X ngày”; một khi đã tiếp nhận thì có thể rút lại, nhưng đó không phải là đơn tố cáo chính thức
Ruby Central còn nhiều điều cần học hỏi và cải thiện, nhưng việc truyền đạt chính xác bối cảnh và sự kiện cũng rất quan trọng
Tôi cho rằng từ rất lâu trước đó Andre đã cố gắng nắm quyền kiểm soát RubyGems·Bundler·RubyGems.org theo cách âm thầm và từ tốn
Báo cáo sự cố sau đây tuy không khẳng định rõ điều đó, nhưng có hỗ trợ nhận định này: https://rubycentral.org/news/rubygems-fracture-incident-report/
Việc Andre vào tháng 2/2025 gỡ quyền truy cập GitHub của Evan Phoenix mà không có người phụ trách thay thế từ Ruby Central, đồng thời loại người phụ trách mã nguồn mở ra ngoài, là điều chưa từng có tiền lệ
Lẽ ra quyền quản trị 1Password cũng phải được chuyển cho người phụ trách mã nguồn mở, nhưng ngay cả sau khi chức vụ đã được bàn giao, Andre vẫn giữ quyền quản trị của tài khoản 1Password phụ
Kết quả là Andre có thể nắm quyền tài khoản AWS, loại bỏ tất cả quản trị viên khác và khóa Ruby Central khỏi môi trường vận hành; không nên để một người có thể loại người phụ trách mã nguồn mở khỏi cả AWS lẫn 1Password
Ngoài ra, ông ấy đã thông tin sai với cộng đồng về mối liên hệ giữa quyền truy cập GitHub và quyền quản trị môi trường vận hành, tiếp tục giữ cách giải thích đó trong nhiều tháng sau khi mất quyền truy cập, và đến nay vẫn giảm nhẹ rủi ro bảo mật dù Ruby Central đã cố nhưng không thể loại bỏ hoàn toàn quyền vận hành của ông ấy
Nếu Ruby Central được đối xử như một bên liên quan phù hợp và được bàn giao đúng các quyền cần thiết để vận hành RubyGems.org, thì đã không cần đến mức tiếp quản thù địch, cũng không cần loại Andre ra ngoài
Xung đột lợi ích là vấn đề rất quan trọng, và người phụ trách mã nguồn mở không nên ngồi trong ủy ban giám sát nguồn tài trợ cho chính mình
Khi Andre sáp nhập Ruby Together vào Ruby Central, cấu trúc trong đó ông ấy là thành viên ủy ban mã nguồn mở giám sát khoản tiền chi trả cho chính ông ấy là không chuyên nghiệp cũng không có đạo đức
Tôi đánh giá cao việc ông ấy đã mở đường cho việc trả lương cho lao động mã nguồn mở, nhưng tôi cho rằng ông ấy đã không thực hiện tốt nhiệm vụ cốt lõi là định nghĩa rõ ràng ranh giới giữa lao động được trả lương và lao động tình nguyện, cũng như giữ cho ranh giới đó không bị mờ đi
Có nhiều phần khác, gồm cả các vấn đề pháp lý, cùng lắm chỉ đúng một nửa, nhưng tôi không phải thành viên hội đồng quản trị cũng không phải luật sư, và đang trong kỳ nghỉ gia đình nên có lẽ khó trả lời thêm