世界を動かす技術を、日本語で。

レディバードの開発方法を変える

概要

Ladybirdプロジェクトは今後、 公開プルリクエストの受付を停止メンテナーのみがコード変更を導入 する新体制へ移行。 セキュリティ強化と開発プロセスの厳格化 が主な理由。 外部からの バグ報告やフィードバックは引き続き歓迎。 Ladybirdは 引き続きオープンソース として公開継続。

Ladybirdプロジェクトの開発体制変更

  • 公開プルリクエスト受付停止

    • 今後は プロジェクトメンテナーのみ がLadybirdコードベースへ変更を導入
    • 一般コントリビューターによる直接的なコード提出不可 となる方針
  • 新たな開発フェーズへの移行

    • 初のアルファリリース に向けた体制強化
    • 開発プロセスの厳格化、セキュリティモデルの明確化
    • コード責任者の限定 による品質管理
  • 過去の貢献者への感謝

    • これまでの 外部貢献者の価値ある貢献 に対する謝意
    • オープンソース文化 への敬意
  • AIツール普及による状況変化

    • AI生成コード の増加で、プルリクエスト提出者の信頼性評価が困難化
    • 大規模なコード提出=善意や努力の証明 という従来の前提が崩壊
    • セキュリティリスクの高まり :ブラウザはユーザーのローカル環境で未検証の入力を実行
  • 責任の所在明確化

    • 導入コードの責任者を限定 し、今後の保守性や安全性を確保
    • コードの出所よりも、導入後の責任 を重視
  • 既存の公開プルリクエストの対応

    • 現在オープンなプルリクエストは全てクローズ
    • 今後はメンテナー以外のパッチ提出経路も設けず
    • イシュー、コメント、メール、フォーク経由の“影の貢献システム”も不採用
  • 外部からの関与の継続

    • Ladybirdはオープンソースとして継続公開
    • バグ報告、最小再現、ウェブサイトテスト、標準・設計・セキュリティ議論、技術的フィードバック は引き続き歓迎
  • 今後の方針

    • 実際のユーザー向けブラウザ提供 に向けた責任ある開発体制構築
    • 開発プロセスの透明性と信頼性の維持

Hackerたちの意見

なんでLinuxのアプローチを取らないんだろう?ブラウザってOSみたいなもんだよね。Linuxは、怠け者の貢献者を遠ざけるような難しいプロセスを通じて、公共の貢献を受け入れ続けてるんだよね。

今の時代、唯一の問題は、AIが以前は貢献者へのゲートとして機能していた呪文みたいなものを全部やっちゃうことかもしれないね。

Linuxのアプローチもプレッシャーを受けてるみたい。メンテイナーたちは、貢献が多すぎてレビューしきれないって警告し始めてるよ。

Linuxにはもっとたくさんのメンテイナーがいて、その多くは何年も他の人のコミットをレビューしてたんだ。AIが登場する前から、ものすごい量の貢献があったんだよ。

こういうのを見ると、AIなんてなかった方が良かったなって思う。オープンソースプロジェクトが新しいメンテイナーを見つけて育てる能力を失うのは、本当に残念だよ。

それってAIとどう関係してるの?オープンソースとメンテナの問題はずっと前からあったよね。

彼らはLLMsを使ってプロジェクトの大きな変更を再構築した。

これはちょっと見当違いで、悲しいね。彼らにはこれをする権利があるけど、Ladybirdが改善されるのをテストし続けて、将来的に貢献できるのを楽しみにしてたんだ。servoが貢献にオープンでいてくれることを願ってるよ、今はそれが唯一の希望みたいだから。

固定されたコアチームのサイズがあると、こういうのは理にかなってるよね。正直なところ、ある意味ではこれが責任ある行動だと思う。これによって、チームが合理的に維持できる範囲を超えてモジュールやコードベースが成長することはないってことだから。ただ、逆に言うと…既存のチームには何を意味するの?メンテイナーはプロジェクトにとってかなり価値があるってことになるの?コードベースやプロジェクトの勢いにはどう影響するの?これはcurlや特定の目的のライブラリに期待していたアプローチだけど、これは巨大なプロジェクトにとっての巨大な決断だね。どうなるか見てみるしかないね。

LLMがLadybirdがこの決定を下す理由の一部かもしれないけど、それだけじゃないよね。例えばSQLiteは、ほぼ永遠にこの方法で開発されてきたから。人それぞれってことかな。

Luaも同じだったと思うけど:オープンソースだけどオープンな開発ではない。MITライセンスで、メンテナはバグ報告にいつも感謝してるけど、プロジェクト内のコードはたった3人で書かれてるんだよね。

彼らの言ってることは分かるよ。もしほとんどのプルリクエストがAIで書かれてたら、メンテナは自分たちでもClaude Codeを使ってプロンプトを出せるからね。ソフトウェアエンジニアリング、オープンソースかどうかに関わらず、全体のゲームが完全に変わったと思う。2年前と同じように、ただのコードの塊が意味することはもう違うんだ。

コード自体がもうメインの作業じゃなくなってる。誰でも実装を生成できるから、コードの変更に関する「何を」「なぜ」「どうやって」を一緒に考える方が今まで以上に意味があると思う。すべてのプロジェクトがこの方向に進んでる気がする。一緒に計画を練る方が理にかなってるよね。

でも、コミュニティから無料のトークン使用をもらえるかもしれないよね。

これが重要なポイントだと思う。数年前、複雑なプルリクエストを送ると、それがコンパイルされてテストに合格することは、私の時間と認知的投資を意味してた。コードベースや作業している機能、バグを理解していなければ、その投資はしなかっただろうね。今、その理解は以前と同じくらいのコストだけど、AIのおかげでコンパイルされてテストに合格するコードを生成するコストが大幅に下がった。多分、善意のコミュニティメンバーは安価なもの(Claude Codeトークン)を喜んで貢献するけど、それが安価だからこそ、高価なもの(人間の理解)を貢献したとは限らないんだよね。

彼らが言うように、代わりにプロンプトを送ってくれれば、それの方が役に立つよ。

一方で、バザールで育った人にとって、カテドラルに移るのは「オープンソースの死」を感じるかもしれないけど、実際には昔の働き方に戻るだけなんだよね。反対に、外部のコード貢献を受け入れないことはセキュリティの向上にはつながるけど、誰を僧侶に招待するかを見極めるのが難しくなるよね。

ジャンクヤードで育ったら、バザールの社会的なルールに慣れるのは、自分の生活が脅かされてる感じがするかもしれない。

それは、誰を神職に招待するかを特定するのを難しくするだろう この発表が伝えようとしているポイントは、もちろん、AIがその目的のためにその特定のシグナルをほぼ無価値にしてしまったということだ。

最近、Godot(別の大きなオープンソースプロジェクト)のPRをたくさん見てるんだけど、完全にAI生成のPR(コードと説明の両方)が急増してるんだ。これはプロジェクトの方針に反するから、こういうPRを作る人はだいたい軽く注意される。でも驚くのは、多くの提出者はそれをまあまあ受け入れてるのに、何人かは本当に憤慨して、メンテナを感謝しないって非難してるんだ。AIに全力投球してる人たちですら、大きなコードの塊を作ることに本質的な価値がないってことを理解してないのがちょっと驚き。彼らは投入する労力を大幅に減らしたのに、大きなPRを提出するときにAI以前と同じ反応や感謝を期待してるんだよね。

AI前の反応も不当だったと思う。大量の手書きコードを投入することが必ずしも良い貢献とは限らないし、まともなエンジニアなら(正直なところ、普通の人も)それを理解して感謝を期待しないはず。そういう意味で、業界にはいつもあまりにも多くの馬鹿がいて、彼らがAI後の世界で行動を変えるとは思えない。彼らは常に行き過ぎていて、今もそうだ。ちなみに、私の職場の非技術職の社員が、私が管理している内部リポジトリにAI生成のプルリクエストを提出し始めたけど、質がすごく良いんだ。レビューのフィードバックも快く受け入れられて、迅速に対応されてるから、これは馬鹿が技術的でないわけじゃなくて、態度の問題だと思う。

なんか特定の…権利意識?(完璧な言葉じゃないけど、適切な表現が見つからない)を持ってる人たちがいる気がする。自分たちの成果に執着して、実際にはほとんどの作業が自分たちのものじゃないってことを受け入れない感じ。貢献の仕方や普段の言葉遣いにもそれが見える。自分がXを作ったって主張して、彼らの「キュレーション」が成果に大きな影響を与えたって言い張るし、LLMの貢献について触れるのが難しい。『自分は作ることに集中して、他の人は細かいことに時間を無駄にしてる』っていう態度もあるし、潜在的な欠陥に関わろうとしないし。驚くほど、シニア開発者たちとは違う感じで、彼らは自分の仕事に欠陥があるかもしれないって常に疑っているみたい。まるでインポスター症候群が逆転したみたいだね。

ChromiumやGecko、WebKitが、少なくとも一つの重要な点でLadybirdよりも「オープン」なブラウザエンジンになっているのは興味深いね。(Servoは中間に位置していて、AIを使わなければ外部からの貢献を受け入れる。)資金があまりないチームが労働コストを抑えるために貢献を閉じるのは理解できるけど、GoogleやMozilla、Appleがオープンさを実現するために投入している経済的リソースに対して、もっと評価されるべきだと思う。(個人的なバイアス/経験の警告:今は引退してるけど、以前はGoogleでChromeの開発に携わってた。多くの同僚が外部の貢献者を育てていて、私もインターンシップのようなプログラムを通じてそれをやってた。)

ChromeはGoogleの損失リーダーだね。

その企業たちは、善意からそれをやっているわけじゃないよ。ビジネスの価値を守るためにコントロールを主張するためにやってるんだ。もし経済的に成り立たなくなったら、明日にもやめるだろうね。独占を築くことに対して、永遠に感謝するべきではないと思う。

Ladybirdがソース公開に移行するのは残念だね。今のところ、独立したブラウザエンジンで実用的なのはGeckoだけになっちゃった。もう「参加する」っていうブロックを公式サイトから削除した方がいいかもね、もう貢献できないし。 https://ladybird.org/

これはソース公開とは違うよ。フォークはできるし、ライセンスも変わってないからね。

これからはプロジェクトを「オープン・コントリビューション」と呼ぶべきかもね。どういう風に機能するのかを区別するために、いくつかのオープン・コントリビューション基準を設けるのもいいかも。