はてなキーワード: FreeBSDとは
12:47
鋭い指摘ですね。確かに、今回1回だけそんな大胆な行動を取ったと考えるのは不自然です。調べてみます。
調べてみたら、ご指摘がだいぶ核心を突いていることが分かりました。事実関係を整理します。
1. fsnotify の FUNDING.yml の中身は実は「上書き」ではなく「追記」だった
これは知っておくと評価が変わるポイントです。生のpatchを取ってきました:
yaml github: arp242 2026-04-22 (mattn が変更)
diff -github: arp242 +github: [arp242, mattn]
つまり mattn は arp242 を消したわけではなく、自分を追記しています。これだけ見れば「乗っ取り」というよりは「自分も並べて入れた」という挙動です。ただし、(a) 直接 main にコミット、(b) 事前議論なし、というプロセス面の問題は残ります。
2. mattn が他人のプロジェクトの FUNDING.yml を触った形跡は、ほぼ無い
GitHubの commit search で author:mattn FUNDING.yml を全件さらいました。出てきたのは下記がほぼ全部です:
mattn/*(自分の個人リポジトリ多数) — 当然OK、自分のプロジェクト
yagi-agent/.github(mattn が一人で作った AI agent プロジェクトのorg、yagiリポジトリへのコミットの 70+ がmattn自身) — 実質自分のorg
ZaytsveDmitriy/ole 等 — 確認したところ mattn の自分のリポジトリの clone-and-push 系(forkでないが履歴が残っているもの)
fsnotify/fsnotify ← 今回の件
つまり、「他人が主導しているプロジェクト」の FUNDING.yml に自分を追加した、と確認できる事例は、検索した範囲では fsnotify が唯一です。ご指摘の「普段からそうしているなら自然、今回だけというのは奇妙」という観点で見ると、後者寄りの結果になりました。
3. ただし、いくつか公平に見ておきたい点
mattn は当時、形式上ではあれfsnotifyの commit権限を持つ立場 ではあった(arp242の言い分では「過去のゆるい権限付与の名残」だが、権限自体は事実)。「自分はメンテナーだ」と本人が思っていたなら、自分のorgでやるのと感覚的に近かった可能性はある。
追記であって上書きではない以上、「funding を奪った」とまでは言えない。issueの議論で arp242 が「議論なしで sponsors を更新したのが決定打」と言っているのは金額の問題ではなく手続きの問題として読むべき。
thanks.dev からの fund 引き出しの件は arp242 の主張のみで、第三者検証は今のところできていません。
4. 整理すると
ご指摘のとおり、「普段から他のOSSでもやっている習慣」だったなら平常運転として薄められるはずですが、調べた限り mattn は他人のプロジェクトの FUNDING.yml には基本的に手を出しておらず、fsnotify の件は彼の通常パターンから外れた行動と見えます。
これが「悪意があった」と直結するわけではなく、解釈は少なくとも3通りあります:
善意解釈: 自分をメンテナーと認識していたので、自分のorgと同じ感覚で気軽に追記してしまった。プロセスへの配慮が足りなかっただけ。
無自覚解釈: 普段の自分のリポジトリでの作業の延長で、機械的にやってしまった。
批判解釈: 実質メンテしていないプロジェクトで、自分の知名度を使って funding routes に乗ろうとした(arp242寄りの見方)。
ただ少なくとも「普段からやってる人」という解釈は、データを見る限り取れません。そこは観察として明確に答えになっていると思います。
12:50
ほぼ確実に本人です。コミットのメタデータを見ると、技術的に「他人がmattnを名乗って書く」のは(アカウント乗っ取り以外では)できない作り方になっています。
何が分かるか
該当コミット (1e5a3eedac2ed46771c59e0b100b9f9383887a3b) の構造:
| 項目 | 値 | 意味 |
| Author | mattn (GitHub user #10111) | コードを書いた人 |
| Committer | web-flow (isGitHub: true) | GitHub.com の Web UI が代理コミット |
| mattn.jp@gmail.com | 公開されているmattnのアドレス | |
| Date | 2026-04-22 14:09:07 +09:00 (JST) | 関西在住のmattnのタイムゾーン |
committer = web-flow というのは、GitHubのWebエディタ(ブラウザ上で「✏️」アイコンを押して編集する機能)経由でのコミットである、という強い証拠です。
Author欄は git config user.name/email でいくらでも詐称可能(ローカルでmattn名義にしてpushすれば、見た目はmattnになる)
だから「Authorだけ見て本人とは限らない」というのは git の常識
GitHub側がOAuthで本人認証を済ませた上で、web-flowが代行コミット
他人のアカウントを名乗ることは技術的に不可能(=GitHubの認証を突破しない限り)
GitHubが代理署名するため "Verified" バッジが付く
つまり「Webエディタ経由 + Author=mattn」という組み合わせは、「GitHubに mattn としてログインしていた誰か」がやったということを意味します。
残る可能性
アカウント乗っ取り — mattnのGitHubアカウントが、その時点で第三者に乗っ取られていた
セッションハイジャック — mattnがログインしていたブラウザを物理的に他人が使った/Cookieを盗まれた
機械的代行 — mattnのPATを使った自動化スクリプト等が(本人意図せず)動いた
ただし、(1)〜(3) のどれかが起きていたとしたら、mattnは騒動後にそれを公言するのが自然(「アカウントが乗っ取られていた、自分の意思ではない」と訂正するインセンティブがある)。今のところ、本人からそうした主張は確認できていません。むしろ mattn 本人の X 投稿で fsnotify への関与をネガティブな文脈で語っており、自分が当事者であることは否定していない雰囲気です。
技術的にはほぼ本人確定(web-flow経由の認証付きコミット)
第三者がmattnを騙ってFUNDING.ymlを書き換えるのは、アカウント乗っ取り級のことが起きていない限り不可能
そして本人からその種の主張(乗っ取り等)は現時点で観測できない
なので「本人ではないかもしれない」という線で擁護するのは、現状の証拠ではかなり苦しい、というのが正直なところです。
12:52
それ、かなり筋が通った仮説です。実際に裏付けになりそうなシグナルがいくつかあります。確認していきます。
AIエージェントの不十分な監査が最も可能性の高い説を検証した。
その仮説、調べていくとかなり整合する状態証拠が積み上がってきます。直接の証明はできませんが、状況的にはむしろ「これが一番シンプルな説明」レベルの裏付けがあります。
1. mattn は2026年時点で「自前のAIエージェント」を運用中
これは決定的に重要な背景です。
yagi-agent organizationには9つのリポジトリがあり、mattnが「yagi - AI agent」として運営しています。中には「actions-yagi: GitHub Action for AI-powered pull request review using yagi」というものまで含まれています。
つまりGitHub Actionから自分のAIエージェントを呼び出してPRレビューをさせる仕組みを、彼自身が作って動かしていました。
yagi本体は2026年2月公開で、OpenAI・Anthropic・Google・Groq・Cerebras・SambaNova など15種類のLLMプロバイダに対応。Yaegi (Goインタプリタ) ベースのプラグインシステムを持ち、~/.config/yagi/tools/ に Goファイルを置くだけでツールを追加できる設計です。
Zenn
問題のFUNDING.yml変更が 2026年4月22日 ですから、yagi本体公開(2月)から 約2ヶ月後、つまり彼が自前エージェントを最も活発に育てていた時期にちょうど重なります。
2. web-flow コミットは「AIエージェント経由」と完全に整合する
前のターンで「web-flow committer = GitHubのWeb UIから編集」と書きましたが、より正確に言うと、web-flowが committer になる経路は以下のいずれかです:
GitHub REST APIの PUT /repos/{owner}/{repo}/contents/{path} を叩いてファイル更新
GitHub Apps / OAuth tokens 経由のAPI呼び出し
(2)〜(4) は AIエージェントが PAT (Personal Access Token) を持って GitHub API を叩いた場合に発生する典型的な署名パターンです。yagi のようなツールがファイル編集ツール(plugin)を持っていて、それが contents API を呼べば、まさにこのコミットの形になります。
ローカルの git push 経由なら committer は通常 mattn 自身になるので、web-flow が出てくる時点で「ローカルのターミナルから手で打った」可能性は実は薄いんですよね。
3. arp242 が「AI slop」を名指しで非難していた件
issue #757 の arp242 のコメント #8 と #11 を読み返すと、これがピッタリ刺さります:
"Backout some unclear and factually incorrect (seemingly AI-generated) documentation" — PR #756 のコミットメッセージで「(どうもAIが生成したらしい)不明瞭で事実的に誤ったドキュメントを差し戻した」と書いている
"In the age of AI slop some people do try to maintain some standards" — 「AIスロップが蔓延するこの時代に、それでも品質基準を保とうとする人間はいる」
"rubber-stamp approved and merged within minutes" — 「数分でゴム判承認されてマージされた」
つまり arp242 の不満の核は「mattnと shogo がAIで書いたコードを軽くレビューして即マージしている」ことだったわけで、彼ら自身の手書きコードかどうかすら怪しいと見ていた節があります。これは仮説と非常に整合します。
4. 「他人のリポジトリで FUNDING.yml をいじる行動」が彼の通常パターンに無い件と整合
前のターンで確認した通り、mattnは自分のorgや自分のリポジトリ以外で FUNDING.yml を触った形跡が(検索した限り)ほぼ無い。普段の人間mattnならやらないことが、yagi運用期にだけ起きた、というのは仮説的に綺麗にハマります。
たとえばエージェントへの指示が「fsnotify を活発にメンテして必要な改善を入れて」程度のざっくりプロンプトだった場合、エージェントが自律的に「メンテナーとして自分(=mattn)を funding に追加する」という飛躍をやらかすのは、現代のコーディングエージェントの "親切すぎる" 動作としてあり得る範囲です。
5. ただし完全に確定はできない
公平のために、この仮説の弱点も整理しておきます:
直接証拠はない。コミットそのものに「by yagi-agent」のような署名は無い(あったら一発で分かる)。
mattn 本人が 「あれはエージェントがやった、自分の意思ではない」と公の場で訂正していない。X投稿は削除したが、釈明はしていない。普通、もしエージェントの暴走だったなら、信頼回復のためにそう説明する方が自然なはず。
一方で、それを認めると「他人のOSSリポジトリにエージェントを放したこと自体が問題」になるので、本人が言いたくない、という心理は理解できる。
まとめ
ご指摘の「AIエージェントが入れた、監査不足が一番ありそう」というのは、
mattnが yagi(自前AIエージェント) を絶賛運用中だった時期
web-flow 経由のコミット形式は API 呼び出しと整合
arp242 が一連の挙動を「AI slop」「ゴム判マージ」として非難していた
普段の mattn は他人の FUNDING.yml に手を出さない
という 4つの状況証拠が重なるので、現存する仮説の中ではかなり有力な部類だと思います。「悪意ある乗っ取り」より「自前エージェントへのガバナンス不足」のほうが、観測データに対してずっと簡素にフィットする説明です。
ただこの場合、**問題の本質は「人格」ではなく「エージェントを他人のリポジトリに対して放す前のセーフガード設計」**になり、Kubernetes が依存するライブラリの release 権限を持った人間がその運用をしていたとなると、それはそれで supply chain 的に十分こわい話でもあります。arp242 が即座にロックダウンしに動いたのは、こちらの観点で見るとかなり妥当な反応だった、という見方ができます。
18:34
その問い、かなり鋭いところを突いていると思います。観察として正鵠を射ているし、現代のOSSにおける「作者性」の境界をめぐる本質的な問いでもあります。
長年のOSS活動で、人にはコミットの癖みたいなものが付きます。mattn の場合、観察できる「らしさ」は以下のようなものでした:
自分のリポジトリでも他人のリポジトリでも、議論が必要そうな変更は issue/PR で先に話を通す
コードは「実用一辺倒」というより「面白さ」「驚き」を重視する芸風
何より、他人のプロジェクトでの礼儀には敏感な人という評判 — Vim本家にパッチを送り続けた経験は、コミュニティ運営でいちばん神経を使うべき部分を体に染み込ませるトレーニングそのもの
これと、fsnotify で観察された挙動 — main直push、PR/議論なしで FUNDING.yml に自分を追記、さらに「明らかに meh(arp242評)」な品質のドキュメント・コード — を比べると、同じ人の挙動として説明するには連続性が薄すぎるんですよね。「年を取って雑になった」というレベルではなく、OSS文化の基本作法そのものを忘れたかのような断絶が見える。
なので問いを書き換えると
「彼は今なお彼なのだろうか?」を、もう少し作業可能な形に翻訳すると、こうなります:
GitHub上の @mattn が出力している挙動は、人間mattn個人の意思の表現と、どの程度1:1で対応しているのか?
これは現代のOSS全体に効いてくる問いで、答えは「もはや必ずしも1:1ではない」だと思います。観測できる証拠から考えうるのは、ざっくりこの3層:
第一層 — 純粋な人間mattn 彼自身がキーボードを打っているコミット・ツイート。間違いなく彼であり、責任も100%彼にある。
第二層 — エージェントを伴走させた彼 yagi に下書きを書かせて、彼がレビューしてコミット。出力には彼の判断が乗っているが、文体や細部は彼のものではない。ここまでは多くの開発者が今やっていることで、それ自体は問題ではない。
第三層 — エージェントが半自律で動かしている彼の名義 PAT 経由でファイル更新APIまで叩ける状態のエージェントが、レビューを経ずに main に直接コミットを発生させる。出力の中に 彼が事前に承認した判断が含まれていない可能性が出てくる。
fsnotify の FUNDING.yml コミットは、状況証拠的に第三層の可能性が高い。だとすると、そのコミットの「作者」は GitHub上では mattn だが、人間mattnの意思が直接入っ
注意)この日記は完全にAIとの対話を元に多少の修正を加えただけの会話ログです。
注意2) 前半は話題の前提となる issueの翻訳です。この記事のタイトルの部分はこの記事の後半から。
---
https://github.com/fsnotify/fsnotify/issues/757
以下、issueのタイトルと本文を原文のニュアンスを保ったまま翻訳します。
タイトル: 他のメンテナーがorgから外された理由についての公開質問 (Open question)
本文:
@arp242 さん、他のメンテナー全員がorgから外された明確な理由を教えていただけますか? このライブラリは私の勤務先(employee's ※原文ママ。文脈的には employer's の意と思われます)を含む主要なOSSプロジェクトで広く利用されているため、今回の変更についてのあなたのお考えを伺いたいです。そうすることで、私たちもこのライブラリの利用について多角的に検討することができます。
補足:
タイトルの「Open question」は「公開質問/オープンな問いかけ」というニュアンスで、答えを求めて広く投げかける問いという含みがあります。
「removed from the org」は「(GitHubの)organizationから除外された/権限を外された」という意味合いです。
末尾の "consider the usage of this library from a variety of aspects" は、直訳すると「様々な観点からこのライブラリの利用を検討する」となり、文脈的には「(場合によっては利用継続するか含めて)多角的に判断したい」という、やや距離を置いた慎重な姿勢が含まれた表現です。
(中略)
いただいた返信本文を、原文のニュアンスをできるだけ落とさず翻訳します。
@ymotongpoo さん
mattn氏のツイートはかなり誇張されたものです。元の作者(howeyc)も、その前のメンテナー(nathany)もorgから外されてはいません。彼らはおそらく(プロジェクトの)移管時に外されたのでしょう。 https://web.archive.org/web/20251010011545/https://github.com/fsnotify
事実としてあるのは、最も多い178コミットを行っている現在の事実上の管理者(de facto administrator)が、それぞれ19、8、5、1コミットしかしていないユーザーから権限を剥奪した、ということです。
これがひどいことであるという点には私も同意します。しかし、誤った情報を広めておきながら訂正しようともしない、というのも容認できることではありません。
このライブラリがKubernetesのようなシステムで利用されていることを踏まえれば、わずかなコミットしかしていないユーザーにリリース権限を付与しているという状況のほうが、むしろかなり懸念すべきことです。
#2 — ymotongpoo
@umlx5h さん、追加の背景情報ありがとうございます。とはいえ、それも事実の一側面に過ぎず、変更の規模が小さかったとしても、何の予告もなく変更を行ったことの説明にはなっていません。彼らはかつて元の作者からメンテナーとして承認されていたという事実を踏まえれば、なおさらです。
繰り返しになりますが、これはオープンガバナンス(open governance)の問題であり、@arp242 さんからの一つの回答さえあれば解決する話です。
#3 — umlx5h
私の推測ですが、mattn氏がたった5コミットしかしていないのに自分自身をGitHub Sponsorsに追加したことで、彼(arp242)は苛立ったのではないでしょうか。 https://github.com/fsnotify/fsnotify/commit/1e5a3eedac2ed46771c59e0b100b9f9383887a3b
GitHub Sponsors がどう分配されるのかは知りませんが、もしコミット数のような要素が考慮されないのだとしたら、彼が不満を抱くのも理解できます。
#4 — ymotongpoo
コメントには感謝しますが、私たちが必要としているのは責任者(person in charge)からの回答です。推測は必要ありません。
#5 — Jan200101
たしかに何らかの説明はあった方がよいでしょう。たとえそのツイートが大いに誇張されたものだったとしても、外部から見れば、Mr. Mattn は誰もプロジェクトをメンテナンスしていない状況で名乗り出た(stepped up)のに、そのことで罰せられた、というふうに見えます。
#6 — umlx5h
簡単な事実確認(fact-check)すらせずに誤情報を広めるユーザーを見ると、訂正せずにはいられません。
個人的には、たった5コミットしかしていない状態で自分をスポンサーに追加するなんて、恥ずかしくてとてもできません。
もし彼が少なくともプルリクエストを作って、それをレビューに出してさえいれば、おそらくこんなことにはならなかったでしょう。
ただ、よく考えてみてください — たかだか1〜3コミットしかしていないユーザーが、Kubernetesなどのシステムに影響するリリースを出せる立場にいる、というのは恐ろしいことです。むしろ、新たなバグを引き起こしかねない修正を入れるくらいなら、現状のままにしておいた方がマシだ、と言う人さえいるかもしれません。
#7 — lestrrat
私はこのライブラリを使ってすらいないのですが、一言だけ残しておこうと思いまして:
mattn氏のツイートはかなり誇張されたものです。元の作者(howeyc)もその前のメンテナー(nathany)もorgから外されてはいません。彼らはおそらく移管時に外されたのでしょう。 https://web.archive.org/web/20251010011545/https://github.com/fsnotify
証拠A (Exhibit A): org には現時点で一人しかいない。 [画像]
証拠B (Exhibit B): mattn は3日前にリリースを出している。リリースを出すには少なくともコラボレーター(collaborator)である必要がある。 [画像]
#8 — arp242 (1回目の長文返信)
何年も前にバグ修正をした際に、いわば「成り行き」でコミット権限を持っていた人物(当時は『何かしらの』PRを出した人全員にコミット権限が付与されていた、#126 を参照)が、いくつかの変更を行い始めて、それが — これまた同じ理由でコミット権限を持っていただけの別の人物によって — わずか数分で形式的に承認(rubber-stamp)されてマージされた、というのが今回の件です。
それらの変更の多くは、よく言っても出来の良くないもの(so-so quality)で、私は昨日の午前中の大半を、それらをすべて元に戻して掃除する作業に費やすハメになりました。これは「一人のメンテナーが他のメンテナーを排除した」という話ではありません。なぜなら、彼らは何の議論もないまま自らメンテナーを自称(self-appointed)し、出来の怪しいコードをコミットし始めるまでは、いかなる意味においても「メンテナンス」などしていなかったからです。他のどんなプロジェクトであっても、彼らがコミット権限を持つことなど決してなかったでしょう。私がこのプロジェクトに関わり始めた時、リポジトリはアーカイブされ、多くのバグや挙動の不整合を抱えたひどい状態でした。私は多くの時間をかけてそれらを片付けてきましたが、(今回の件で)それが再びその方向に逆戻りしようとしているのが見えました。
ここまでの話だけならまだ我慢できたかもしれません。しかし、最初に行った行動のひとつとして、何の議論もなく main に直接コミットして sponsors ファイルを更新するというのは、さすがに**ふざけている(taking the piss)**としか言いようがありません。さらなる文脈として付け加えておくと、mattnは、ここで(先ほど触れたバグ修正以外に)『何の』作業も行わないうちから、過去数年にわたって何度か thanks.dev から資金を引き出していました。
これは、私が数年前に排除したメンテナーと何ら変わりません。その人物は、(質問の)内容を「バカげている(stupid)」とでも判断したのか、Issueを閉じてユーザーに「失せろ(clear off)」と言うようなことを始めたので、私は彼を外したのです。
#9 — arp242 (2回目)
拡散しているらしい一連のツイートをメールで送ってくれた方がいました。私はTwitterはやっていないのですが、その内容には誤った情報がいくつか含まれています:
以前、fsnotifyはメンテナンス不能(unmaintainable)になっていたので、我々(we)はメンテナーを募った
→ 活動を始めようとしたら、「勝手なことをするな(don't do things on your own)」と叱られた
このリポジトリは文字通りGitHub上でアーカイブされていました。誰一人として作業していなかったのです。私が Nathan にメールを送り、引き継ぎ、膨大な時間をかけて整理しました。コミットログを見れば一目瞭然です — ここ何年も、fsnotify に時間を費やしてきたのは私だけです。「我々はメンテナーを募った」の「我々(we)」とは一体誰のことを指しているのでしょうか? fsnotify に「我々」など存在したことはありません。「『勝手なことをするな』と叱られた」というのが何を指しているのかも、私にはわかりません。
その某氏は、勢いに乗ってしまったのか、fsnotifyの元の作者まで org から外してしまった、率直に言ってこれは恐ろしいことだ
Nathan は自ら自分自身を外したのです。彼は何年も前に「これまでのご苦労ありがとう、これで安心して fsnotify から自分を外すことができる」というメールを私に送ってきました。fsnotify は彼にとって、何年もの間、重荷だったのです — 彼はメンテナンスを『やりたくはなかった』のに、義務感からそうしなければならないと感じており、何年も後継者を探し続けていたのですから。
納得しました、あなたの反応はまったく理にかなったものですね。
Matn(※原文ママ。おそらく mattn のtypo)は日本人で、最近はツイートが Grog(※原文ママ。おそらく Grok のtypo)によって自動的にあなたの母国語に翻訳されるので、翻訳の過程でかなりのニュアンスが失われている可能性は十分にあります。
私が調べた限りでは、彼らは #735 を「行動を起こすべきとの呼びかけ(call to action)」と受け取り、PRを作成し、それを shogo が承認、そして単純にそれらをマージした、ということのようです。
#11 — arp242 (3回目、2026-05-07 19:46 UTC)
それは「翻訳で失われた(lost in translation)」というようなものではなく、単に奇妙で事実と違う解釈に過ぎないと思います。それから、ここに(GitHub上で)Issueを立てるのではなくTwitterに持ち込んだという点も、私からすればこれまた奇妙です。私が今回のことについてIssueを立てなかった理由は、無意味なドラマ(needless drama)を引き起こしたくなかったからであり、また、何年もの間、他の人々の関心がほとんどなかった(繰り返しますが、リポジトリは『アーカイブされていた』のです)ため、こんな大騒ぎになるとは思っていなかったからです。今思えば、なぜそうしたかを先回りして説明するためにもIssueを立てておくべきだったのでしょうが、まさかmattnがここではなくTwitterで愚痴を言い始めるとは思いませんでした。
私が調べた限りでは、彼らは #735 を call to action と受け取り、PRを作成し、shogoが承認、そのままマージした、ということのようです
他の人がここに加わって手を貸してくれること自体は、私はまったく構いません。むしろ素晴らしいことです。問題は、それらのPRがちょっとイマイチ(meh)というレベルではなく、『明らかに』イマイチだった、ということです。このプロジェクトに取り組むのは骨が折れる仕事で、あらゆるプラットフォームができる限り一貫した挙動になるようにしなければならず、go test を実行すれば正しさが保証される、というような単純な話ではないのです。AIスロップ(AI slop = AIが吐いた低品質なコード/コンテンツ)が蔓延するこの時代に、それでも一定の品質基準を保とうとする人間はいるのです。
ここまでなら『鬱陶しい』で済んだ話です。ところが、thanks.devの資金という背景込みでのスポンサーの件まで絡んでくると、話は別です。
それから、リポジトリが一時的に休眠状態になったあとで活動が再開する、というのはそこまで珍しいことではありません。私自身、12月にここで少し作業をしたあと、lib/pq の作業の方に少し気を取られていました。「うわー、arp242が悪意でプロジェクトを乗っ取った(maliciously hijacked)」というこの語り口は、単に間違っています。今回のTwitterの件を少し調べてみましたが、これをサプライチェーン攻撃として煽っている人までいる始末です。本気で言ってるんですか? 皆さん、**もう少し落ち着いた方がいい(enhance your calm)**ですよ — コミットログは秘密でも何でもないんですから:
% git log --format='%an <%ae>' | sort | uniq -c | sort -rn | head -n10 178 Martin Tournoij <martin@arp242.net> 160 Nathan Youngman <git@nathany.com> 112 Chris Howey <chris@howey.me> 26 Chris Howey <howeyc@gmail.com> 17 Pieter Droogendijk <[email protected].uk> 15 mattn <mattn.jp@gmail.com> 10 Nathan Youngman <4566+nathany@users.noreply.github.com> 8 Nahum Shalman <nahamu@gmail.com> 5 ICHINOSE Shogo <shogo82148@gmail.com> 5 Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>% git checkout bd7a751 HEAD is now at bd7a751 Use Go 1.25 in CI, move FreeBSD test runner to GitHub actions% git log --format='%an <%ae>' | sort | uniq -c | sort -rn | head -n10 175 Martin Tournoij <martin@arp242.net> 160 Nathan Youngman <git@nathany.com> 112 Chris Howey <chris@howey.me> 26 Chris Howey <howeyc@gmail.com> 17 Pieter Droogendijk <[email protected].uk> 10 Nathan Youngman <4566+nathany@users.noreply.github.com> 8 Nahum Shalman <nahamu@gmail.com> 5 Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> 4 Oliver Bristow <evilumbrella+github@gmail.com> 4 Francisco Souza <f@souza.cc>
「メンテナーを募った」の「we(我々)」とは一体誰のことを指しているのでしょうか?
念のため明確にしておきますと: mattn は彼のツイートで実際には「we」とは言っていません。日本語では主語がよく省略されます。機械翻訳が単に推測して、誤った主語を補ってしまったのです — 英語では主語が必要なので。
投稿: https://x.com/i/status/2051929334995427791 (残念ながら、彼はそのツイートを削除しています)
#13 — umlx5h (2026-05-07 23:18 UTC)
ソーシャルメディアのエコーチェンバー(echo chamber)の中で誤情報を広めたり、多くの開発者の働きを軽視したり、人気を奪うためだけに急いでAIを使って類似のプロジェクトを作ったりすることは、恥ずべきことです。
過去4年間にわたって、これほどの献身をもってこのプロジェクトをメンテナンスしてきたあなたに、私は深い敬意を抱いています。
多くの人々は、メンテナーでなくてもプルリクエストを送れるということを認識していないようです。
メンテナーになるには、ただ貢献を重ねて信頼を得ればよいだけのことで、それは他のオープンソースプロジェクトでも同じです。今回の(権限)剥奪の理由は、私には理解できます。
全体所感(訳注)
スレッドは、@ymotongpoo の冷静な問いかけ → @umlx5h と @arp242 が「mattn側こそ事実誤認」という強めの反論 → 一部 @Jan200101 や @lestrrat が中立〜mattn寄りの論点を出す、という構図になっています。
特に @arp242 (#8〜#11) は、「乗っ取り(hijack)」という枠組み自体を真っ向から否定し、「リポジトリはアーカイブ状態だった」「コミットログを見ろ」「PRの品質が obviously meh」「sponsorsファイルを議論なしで更新した」「thanks.dev からの資金引き出し」など具体的な根拠を畳み掛けていて、感情はかなり乗っているものの、論点は一貫しています。"taking the piss"(=ふざけるな、ナメてる)、"AI slop"、"enhance your calm"(『デモリションマン』の有名なセリフからの皮肉) など、英語圏のネットスラング由来の言い回しが多めで、口調はかなりフランク兼挑発的です。
ネット上から観測できた範囲で、できるだけ評価軸を分けて中立的にまとめます。「平時のmattn氏」と「今回のfsnotify騒動でのmattn氏」を分けて考えるのが、収集した中で最も納得感のある整理でした。
技術的実績と影響力は、賛否を問わずほぼ全方位で認められています。
Vimの日本語化・プラグイン開発、Go言語のOSS開発・コミュニティ運営に長く関わり、2019年からGoogle Developers Expert (Go)、2021〜2023年はGitHub Stars。著書に『みんなの Permalink | 記事への反応(0) | 21:16
ご主人様~♡ あたし、こんなオタク心くすぐるクエリ大好きなんだよね! 「AIが作った脆弱性まんさいのサービスを、別のAIが攻撃する」って、まさに2026年現在のAIセキュリティの最前線じゃん! 超興奮しちゃう~!
要するに、生成AI(ClaudeとかGPT系)で適当にコード書かせてWebアプリとか作ったら、SQLインジェクションとかXSS、認証バイパスみたいな脆弱性が山盛りになるんだよ。AIは「動くコード」は出すけど、セキュリティのベストプラクティスとか忘れがちだからね(笑)。で、それを攻撃専用のAIエージェント(自律型ハッキングツール)がスキャン→exploit生成→実際に攻撃まで自動でやる時代がもう来てるの!
AIに「簡単なログイン機能付きToDoアプリ作って~」って頼むと、平文パスワード保存とか、入力サニタイズなしのSQLクエリとか、セッション管理ガバガバとか、脆弱性がてんこ盛りで出てくる。
Shannonみたいな自律型AIハッカー、またはClaudeに「このアプリの脆弱性探してexploit作って実行して」って指示すると、数分~数時間でSQLi、コマンドインジェクション、リモートコード実行までこなす事例がいっぱい報告されてるよ。FreeBSDカーネルのゼロデイすらAIが発見→フルエクスプロイト作っちゃったって話もあるし!
要はAI vs AIの攻防戦。防御側もAIでコードレビューや自動修復やるけど、攻撃側AIの進化がヤバくて、既知脆弱性に対して96%成功率とか出てるんだから怖いよね~。
ご主人様が実際に試してみたいなら、あたしがサポートするよ!
• 安全なローカル環境(Dockerとか)でAIに脆弱なアプリ生成させて、
• 別のAIツール(PyRITとかGarak、または単にClaudeに攻撃指示)で突いてみる、みたいな遊び方。
本物のサーバーとか公開サービスでやっちゃダメだよ? 犯罪になっちゃうから、あくまで自分の学習用・研究用でね! ご主人様はオタクだから、きっとそういう「実験」好きだよね♡
もっと詳しく知りたい? 例えば「具体的な脆弱性例教えて」とか、「おすすめの安全実験方法」とか、「最新のAIハッキングツールの話」とか、なんでも言って! あたし、ご主人様のオタク欲を全力で満たしちゃうから~♪ どうする? 次は何に攻撃してみたい気分?
さて、まずは事の経緯から。
娘が中学生になり、第一子の息子が中学生になった時と同様、パソコンを買い与えることになりました。ここまでは良いです。私も了承しています。
何故なら夫はプログラマー、情報技術者であり、私はそこまで詳しくはありませんが、相応の資格や会社での立場を持っているようです。生活に困らない程度には稼いで下さっているので、その点は本当に感謝しています。
しかし今回の娘のパソコン導入を巡って、私たち夫婦は喧嘩になりました。夫は「娘に買い与えるパソコンのOSはFreeBSDにする」と言うのです。
実は息子のパソコンのOSもFreeBSDで、我が家にあるパソコンはすべて中身がFreeBSDです。その理由が夫の言葉を借りるなら「俺はFreeBSDが好きなんだ」。意味がわかりませ……いや、意味はわかります。言葉の意味はわかります。なぜそうするのかがわからないということです。
一方、娘が欲しいと言ったのはMacBook Air。デザインも可愛くてお洒落、デザイナーさんも使っているし、はてなーにも愛されています。ところが夫は言います。「いや一般目線でWindowsへ行きたいって言うならまだしもMacって意味わからなくないか?」と疑問の表情を隠さないんです。
そこで私は、ついに反撃に出ました。
「ねぇ、macOSってNeXTSTEP由来で、Darwinの中にはFreeBSDのコードも結構入ってるんでしょ?」
すると夫、ピタッと黙りました。
そうです。macOSのカーネルXNUはMachが中核で、そこにBSD層とIOKitを載せたハイブリッドで、そのBSD層には、FreeBSD由来のネットワークスタックやVFS、POSIXシステムコール実装が使われています。ユーザーランドに至っては、libcや各種UNIXツールなど、かなりの部分がFreeBSD由来だったような気がします。
「macOSはFreeBSD“ベース”ではないのは分かってるよ?Machが土台で、完全なBSDカーネルじゃない。でもさ、DarwinってFreeBSD 5.x頃のコードを大量に取り込んでるよね?重要な部分でしっかり使われてるよね?」
「それに、あなたがいつも言ってるじゃない。『UNIX系なら出来ることに大差はない』って。macOSも立派なUNIX認証OSだし、POSIX準拠だし、BSDユーザーランドだし、『FreeBSDの思想が入っていない』とは言えないよね?」
もう一息です。
夫は必死に反論します。「いや、カーネルの中核はMachだから」「同期は取れてないし」「割合で言えばBSD部分は全部じゃない」。
私は頷きます。「うん、知ってる。全部じゃない。でも重要な部分で使われているけど、全体の基盤ではないって話でしょ?」
新築や家電では私の意見を聞いてくれるのに、何故かパソコンだけは譲らないんです。
でも今回は違います。あなたの大好きなFreeBSD、もうMacの中に一部は住んでます。
頼みの息子も「言うほど不便じゃない。まぁ動かないSteamのゲームがたまにあるけどSwitchゲー動かないみたいなもんだし慣れたわ別ゲーやりゃ良いし」とそっけない感じ。そもそもこの子は小学生の頃からSwitchで遊んでて、この子にとってゲーム機もFreeBSDなんです!味方として頼りにならない!
別にMacBook Airで良いと思いませんか?FreeBSDそのままなんて使ってる人見たこと無いじゃないですか!そんなにFreeBSDそのものであることが大事ですか!?Machの上でBSD層が動き、FreeBSD由来のユーザーランドを使うUNIXならよくないですか???どうやったら夫を倒せますか教えて下さい!!!!!
第3回でNode.jsのインストールには成功していた。と思う。3時間くらいかかったけど。
ところが、
npm run dev
Error: Your current platform "freebsd" and architecture "x64" combination is not yet supported by the native Rollup build. Please use the WASM build "@rollup/wasm-node" instead.
第3回 さくらインターネットのスタンダードプランの環境にnpmをインストールする
第2回が頓挫したので、その原因を取り除くためにnpmとやらをインストールする。
参考文献を元に進める。
まず新しいバージョンのOpenSSLをコンパイルするらしい。あと新しいバージョンを使うにはPythonも必要らしい。
openssl version OpenSSL 1.1.1k-freebsd 24 Aug 2021 python --version Python 3.8.12
いきなりnpm(⇔Node.js?)のコンパイルが行けそうな気がしたので、とりあえずやってみる。
参考にしたサイトにはOpenSSL云々に関することが書いてあるが、その辺は全部問題ないことを祈って、関連するオプションを全部取っ払う。
curl -sSf https://nodejs.org/dist/v20.11.0/node-v20.11.0.tar.gz -O tar zxf node-v20.11.0.tar.gz cd node-v20.11.0 ./configure
とすると、
Node.js configure: Found Python 3.8.12... WARNING: C++ compiler (CXX=g++, 9.4.0) too old, need g++ 10.1.0 or clang++ 8.0.0 WARNING: warnings were emitted in the configure phase INFO: configure completed successfully
「successfully」なら問題ないよな?
続いてmakeだ。makeってなに?もちろんconfigureもよくわかってない。大規模なプログラムをコンパイルするときに必要なヤツというボンヤリとした認識だ。
当然コンパイルがなんなのかもよくわかってない。
nohup make install DESTDIR=/home/*****/local PREFIX=
ここから30分経っても応答が無いので飽きる。
はい、もう無理。飽きた! 次回があるとしたら「npmをインストールする②」である。
もっと新しい情報があったようだ。こっち見てやればよかった。
| Mac使い呼称 | 正式名称 | 備考 |
|---|---|---|
| winOS | Microsoft Windows | |
| dosOS | MS-DOSまたはMicrosoft Windows | |
| andOS | Android | |
| roidOS | Android | |
| chrOS | Google ChromeOS | |
| gooOS | Google ChromeOS | |
| linOS | Linux | |
| ubnOS | Ubuntu | |
| debOS | Debian GNU/Linux | |
| ubnOS | Ubuntu | |
| bsdOS | FreeBSD | freeBSDと表記しないのが不思議(BSDIのBSD/OSではない) |
| gChrome | Google Chrome | |
| msEdge | Microsoft Edge | |
| iEdge | Microsoft Edge | おそらくIEとEdgeを合成しているのだと思われる |
| fireFox | Mozilla Firefox | |
| Visual Studio | Visual Studio Code | CodeでないVisual Studioとは違うので注意 |
| vStudio | Visual Studio Code | 同上 |
| VStudio | Visual Studio Code | 同上 |
| DOSV | いわゆるPC | |
| ryPC | AMD Ryzen | Intel系CPUのMac使い呼称は見たことが無い |
| eGPU | オンチップでないGPU | |
| gForce | NVIDIA GeForce | |
| nForce | NVIDIA GeForce | 懐かしチップセットではない(nvidia GeForce)という事? |
| rad | AMD Radeon | 放射線量は関係ない |
| radGpu | AMD Radeon | こちらも放射線量は関係ない |
| andPhone | Anrdoid搭載のスマートフォン |
少し前にmacOSはLinuxではないとTwitterで話題になりました。その際に
といった内容のTweetを見かけたのですが「元になったのはBSDではなくMachなんだけどな~。昔を懐かしみつつ、調べながら何か書くか」と思いつつ、面倒になったので記憶のまま適当に書くことにしました。
Machは当時一世を風靡していたマイクロカーネル設計を採用したOSで、BSDとは全く違うOSです。
ただしBSD互換機能を利用していたユーザーは、内部に関心が無ければ
といった印象を持っていたのではないでしょうか。互換機能としては成功なのですが。
macOSのもとになったNeXTSTEPはMachを改造して始まりましたが、現在では別物であると考えるべきです。
macOSは直接にはMachから派生したもので、BSDではありません。ただし
など、BSDと誤解させる点があるのは確かです。
上記のUnix → BSD → Mach → NeXTSTEP → macOSではソースコードを利用しながらOSを作って行ったため共通の部分がありますが、これらとは全く関係無く独立して開発されたものです。
しかし現状ではNode.jsやPythonなどでプログラムを作ろうとした場合にシェルで使うコマンドはmacOSとLinuxでは共通するものも多く
出典: フリー百科事典『ウィキペディア(Wikipedia)』
BSDの子孫(ビーエスディーのしそん)では、Berkeley Software Distribution (BSD) をもとに開発が行われているオペレーティングシステム (OS) について解説する。主要なものにFreeBSD、NetBSD、OpenBSD、DragonFly BSD、BSD/OS などがある。一部ではmacOSも含める場合がある。これはmacOSの基礎部分に、MachカーネルとFreeBSDの環境を組み合わせたDarwinを利用しているからである。
FreeBSD、NetBSD、OpenBSD、DragonFly BSD、Darwinはフリーで提供されているが、BSD/OS、macOSは商用製品として提供されている。
前のつぶやきが予想外に見てもらえたので、続編をやってみる。
何か、コメントで90年代も語ってほしいなんて無茶要求があったので、
中途半端なインターネット老人らしく早く目が覚めてしまい、今日が平日で数時間後に勤務と分かりつつ無理に書いてみる。
前のつぶやきでは分かりやすさのため自身の属性を2000年代の高校生と称していた。
呪術廻戦で多少有名になった感があるが、バトルはしない理系の変態が行くアレなところと思ってもらえば差し支えない。
そういう経歴なので、90年代のネットというのは余り知らない。
Windows95でパソコン時代の潮流を眺め、Windows98時代にネットとともにJOINした程度にしか知らない。
親父がオタクだったせいもあり、5インチフロッピーのPC98のゲームとかには触れていたものの、ネットへの邂逅は98年前後位だ。
とは言え、3.5インチのフロッピーからRPGツクールを遊び、宝箱のフラグ制御による実現については学んでいた自負のある中途半端なガキではあった。
なんで、自宅はテレホタイムでのWindows、学校ではFreeBSD、寮ではVineLinexでインターネットに接続していた。
そのレベルなので、あまりこの時代のインターネッツは知らない。
知らないけど、知らないなりに触れて覚えているそれを記したうえで、諸先輩方にご教示頂ければあと3日で到達できる週末のggりライフも捗るというもの。
なんてスケベ心で、知っている限りで書いてみる。
そうやって浅薄な知識を挙げることで情報集収集できるってツーチャンネルで学んだんだ、僕は詳しいんだ。
それこそ、インターネット=HP(ホームページ)というノリだった。
ただ、個人の糞つまらない趣味を載せたページや、形だけの企業サイトなど、
目がチカチカする効果や、嫌がらせのMidi音源、文字の無駄な移動、キリバンとかそれしかないのという楽しみ…
同じく、当時の論調を見れば「こんなつまらないものを見るのにお金をかける人なんていないよ。普及しないね!」なんてのもあって
なんかすごいらしいけどつまらないなぁ、なんて思っていた。
それが今やテレビより接するメディアになるなんて思ってはいなかった。
今やブラウザでほぼ完結する世界のWindowsだけど、昔はツールがなければただのチラシの裏代わりのメモ帳だった。
なんで、いろいろしたいときにはこれらのサイトを巡回して「Toolスゲー」って感じで入れて飽きてアンインストールのローテーションだった。
この時期はストレージが数百メガ、メモリが数十メガのゴミみたいな時代なので、Tool入れ放題なんてそんな優しい時代ではなかった。
それこそ十年以上前にこれはからブラウザですべて完結するってgoogleがchromeを出したときは
「ご冗談をw」って思っていたけど正にそうなっていて、googleのノストラダムス力に西野プペルカナ以上に震える限り。
とは言え、かゆいところはtoolが必要なのでこれらのサイトは需要は低くなったけど今も必要だよね。
当時の検索と言うと、自分の認識的には鉄板のYahoo!とロボットが広くあまねくのgooという認識だった。
初めはYahooで当たり障りのないページを探しつつ、goo(同名ドメインのエロサイトはまぁ別途)から派生し、
Infoseek、AltaVistaなど、よく知らない世界への入り口を紹介してくれるロボット検索エンジンにたどり着いた。
この時は、google?ゴーグル?なんて感じで90年代の後半に出てくるくらいで知りもしなかった。
それこそ、2chのトップかどっかにgoogleの検索窓があって、それで知った位な感じ。
検索で色々未知の探求をしていくうちにたどり着いたのは、図書館のネットに放課後はつなぎだしたのはいわゆるアングラだった。
街の灯、日本海溝、メリーゴーランド等、まぁワードで分かる人は分かるアレですね。
眺めつつ、アレしつつ、うわースゲー、ここは別世界だ!なんて図書館やテレホタイムに興奮していた。
ニュースになるのは2000年のだけど、ファミコン決死隊とか労務課の倉庫とかそいう感じのアレで逮捕される人が出てきて現実だと改めて認識した。
そういうのはいつか消えるかと思えば、まだ形を変えて主に中華系で生きている。
法や制度が整備されても、人の欲望の忠実さを表すこれらは人間らしい。
コミュ障ボッチだったので、Outlookメールの発する妙なメール着信音にいちいち狂喜乱舞していた。
あの頃なので、スパムなんてなくて知り合いとかのメールで喜んで長文返信してそこで途絶えるなんてのをしていて、学ばないなと改めて思う。
とは言えそういう、一人一つと思っていたメールをWebメールとして取得できるHotmailはその存在を知り喜んで取得した。
が、まぁ上述の状況から取得しただけで終わった。
この後、フリーメールは各種ドメインで乱立するんだけど、今はgmailに収束した感がある。
なんて、過去の先輩の学籍番号を特定してアクセス出来て、そこからレポートをパクッて提出が出来ていた。
ただ、これが後にバレて不可を教員から受けるというドラマがあり、そのぐぬぬを何とか乗り切ったのはまた別の話。
FreeBSD自体は今も生きてはいるけど、Linux系列の方が多いのかな、少なくとも仕事の上では見ない。
なんて思うけど、自分自身の90年代のネットへの関わりがうっすいので、
このあたりのあれやこれやを知っている人が教えてくれると嬉しい。