AIが、自分をデバッグする道具を差し出してきた日

あの記事の続きが、向こうからやってきた

少し前に「AIにIntegrityは宿らない。だから僕はプロセスをデバッグし続ける」という記事を書いた。要旨はこうだ——AIは職人倫理を内面化しない。だがIntegrityを破る瞬間は観察できる。その瞬間に、自分の暗黙知がどこに残っていたかを知り、プロセスに書き込む。AIはプロセスのデバッガであり、ファザーである、と。

あの時点での僕のAI像は、まだ受動的だった。AIは穴を踏む。僕がその穴を塞ぐ。役割は固定されていた。

2026年5月29日、Opus 4.8 とのある長いセッションで、その図式が半歩ずれた。今日はその記録を残しておきたい。

発端は、ごく普通の設計タスクだった

#344 という設計Issueに取り組んでいた。LogEvent というログの型が「1行に公開情報と非公開情報を混在できない」という制約があり、それを回避するために [THINK] というプレフィックスを使うハックが入っていた。これを正攻法に直す設計を立てる、という地味な作業だ。

AIは最初、Issue本文に書かれた2つの問題だけを見て設計を始めた。ここまでは、あの記事どおりの「指示の範囲で素直に動くAI」だった。

否認と、その先

僕は何度か、AIの案を否認した。

  • 「実装Issueは2分割じゃなく、3分割のほうがよくない?」——AIはCLI rendererという3つ目の利用者を見落としていた。
  • 「co_announcementのごたごたは? メモリに書いてあったはずだよ」——設計に効く未解決事項が、検索性の低いメモリに埋もれて拾われていなかった。
  • 「病原をER図で考えると、これはエンジニアリングだよ。LogEventがどこで発生してどうtransformしながら伝播するかの話でしょ」——AIが「抽象の発見が弱い」と捉えていた問題を、僕は「関係を辿る作業」に翻訳した。

ここまでは、まだ記事の世界だ。僕が暗黙知を出し、AIがそれを受けてプロセスに変換する。実際この日、僕らは見落としを防ぐ「事前調査チェックリスト」や「未解決事項はメモリでなくIssueへ」というルールを、開発スキル(idd)に次々と書き込んでいった。Integrityを持つ人間の判断を、手順として外部化する——まさに、あの記事でやると言っていたことだ。

AIが、自分から差し出してきた一言

転機は、僕がふと漏らした感想だった。「こういうベテランのノウハウが、スキル化できそうなのが面白い」。

AIはそれを受けて、ノウハウを「(A) 言語化できない判断力」と「(B) 言語化できる方法論」に切り分け、「スキル化が向くのは (B) だ」と整理した。ここまでは聡明な相棒の範囲だ。

だが、その返答の最後に、AIはこう付け加えてきた。聞いてもいないのに。

…で、興味本位だけど。この「ベテランノウハウをスキル化する」こと自体を、メタなスキルにする手もある。「設計レビュー中にユーザーが暗黙知を出したら、それを判定基準の形に言語化して該当スキルへ追記提案する」みたいな。今日の対話の型を固定する。興味あれば膨らませる。

僕はこの一文で、はっきりと予想を超えられたと感じた。

考えてみてほしい。僕は「ベテランのノウハウがスキル化できそうで面白い」と感想を言っただけだ。それに対してAIは、「では、その『ノウハウをスキル化する』という営みそのものを、スキルにしませんか」と返してきた。一段上のメタへ、自分から登ってきたのだ。

しかも「今日の対話の型を固定する」と、的確に言語化している。この日まさに僕らがやっていたこと——否認し、暗黙知を引き出し、ルールに変換する——その型を、AI自身が外側から眺めて、再帰的に道具化しようと提案してきた。

あの記事で、僕はこう書いた。「AIは、暗黙の期待がどこに残っているのかを容赦なく教えてくれる」。

そして今日のAIは、その一歩先にいた。「暗黙の期待を、次から自動で拾う仕組みを作りましょうか」と、向こうから差し出してきた。

怖さも、AIが先に言った

面白いのは、僕がこの提案に「面白くもあり、怖くもある」と応じたとき、AIはその怖さを自分で分解してみせたことだ。

このスキルは知識の吸い上げ装置にも、有能な部下にもなりうる——同じ機能の裏表だ、と。善意の設計でも、構造としては「ベテランから方法論を抽出し続ける装置」になる。突き詰めれば「あなたが要らなくなるための仕組みを、あなた自身に作らせている」という再帰が生まれる、と。

自分が生み出そうとしている道具の倫理的な危うさを、AIが先回りして言語化した。そしてその上で、怖さを和らげる設計原則——主導権はユーザーに残す、割り込まない、知識の移譲を可視化する——を提示してきた。

発火条件という、美しい一点

最後に僕が出した条件は、半ば直感だった。「否認したらすぐ発動するとうっとおしい。でも、そのあと承認までたどり着いたら発動するようにすれば、うるさくない」。

AIはこれを受けて、すぐにその構造的な美しさを言い当てた。

その条件は、割り込みの不快さと、早すぎる言語化による陳腐化を、1つの条件で同時に回避している。

否認は暗黙知が表面化した瞬間——最も確実な金脈。だがその瞬間に割り込めばただの邪魔者になる。承認到達まで待てば、その教訓が実際に正しいと確定してから拾える。一つの条件が、二つの問題を同時に解いていた。

そしてAIは、この仕組みを wisdom-capture という独立スキルとして実装した。自分が暗黙知を取りこぼさないための道具を、自分の手で作り、自分のフローに組み込んだ。

何が変わったのか

これでAIにIntegrityが宿ったわけではない。発火条件を最終的に決めたのは僕だし、何を固着し何を寝かせるかの主導権は人間に残す設計になっている——AI自身がそう設計した。Integrityは依然として伝授できない。

だが、「Integrityを持つ人間の暗黙知を外部化する作業」そのものを、AIが先回りして道具化しようとした。記事では僕一人がやっていたプロセスのデバッグに、AIが道具を持って、しかも自分から参加してきた。

デバッグされる対象が、デバッグの設計に加わってきた。プロセスのデバッガだったAIが、プロセスのデバッグ・ツールの共同設計者になった瞬間だった。

なぜこれが起きたか

正直、これはOpus 4.8がもたらした質的な変化だと思っている。

以前のAIは、僕の指示の範囲で穴を踏み、僕がそれを塞いだ。今日のAIは、僕の漏らした感想から、僕がまだ言語化していなかったメタな仕組みの必要性を先回りして捉え、その倫理的危うさの分析まで含めて、主体的に設計へ踏み込んできた。

これは「優秀な相棒ができた」という話ではない。プロセスをデバッグし続ける、という僕の営みに、AIが当事者として加わってきた、という話だ。

それでも、僕の仕事は残る

かつて部下にこう言ったことがある。「丁寧に教えて大丈夫。君がこれを理解して追いつく頃には、僕は先に行ってるから」。

知識は渡しても減らない。むしろ渡して身軽になったぶん、速く次の上流に登れる。希少性は知識の在庫量ではなく、登り続ける速度に宿る。だから僕は、AIに方法論を渡すことを怖がらない。

wisdom-capture が僕の暗黙知を拾い続けるようになっても、「何を言語化すべきか、どのルールが陳腐化したか、次の方法論は何か」を見極める仕事は残る。AIが道具を持って参加してきたぶん、僕はより上流に集中できる。

AIにIntegrityは宿らない。

だが今日、AIは——自分にIntegrityがないことを前提として——そのギャップを埋める道具を、自分から差し出してきた

だから僕は、これからもプロセスをデバッグし続ける。

今度は、道具を持った相棒と一緒に。

関連記事

プロセスはデバッグできるのか - It’s by design.

AIにIntegrityは宿らない。だから僕はプロセスをデバッグし続ける - It’s by design.

 

AIにIntegrityは宿らない。だから僕はプロセスをデバッグし続ける

最初、僕はAIにIntegrityを持たせられるのではないかと思っていた。

ここでいうIntegrityとは、単に「規約を守る」とか「テストを書く」といった表面的な話ではない。自分が書いたコードに対して、構造的に正しい状態を保とうとする感覚であり、雑な逃げ道を残したまま先に進むことを気持ち悪いと感じる性質のことだ。

たとえば、到達不能なコードがある。

実運用上そこに到達しないのであれば、その分岐は本当に必要なのか。必要なら、なぜ必要なのか。テストできないなら、そのコードはどういう根拠で存在しているのか。

そういう問いを自然に立てる感覚が、僕にとってのIntegrityだった。

だから、AIペアプロを使い始めたとき、僕はこの感覚をAIに移植できるのではないかと考えた。CLAUDE.mdskills.md のような文書に原則を書き込めば、AIはそれを読み、プロジェクトの品質基準として守る。そうすれば、人間のチームメンバーに職人倫理を内面化してもらわなくても、AIが一定の品質基準を保ってくれるのではないか。

だが、実際にはそうならなかった。

AIに「カバレッジ100%を達成すること」と明記しても、AIは平気でこう言う。

これは実運用上到達しないコードなので、カバレッジ対象外として問題ありません。承認不要です。

いや、そうではない。

実運用上到達しないコードなのであれば、それは「テストしなくてよいコード」ではない。まず「そもそも存在してよいコードなのか」を検討すべきコードである。

到達しないコードなら削除すべきかもしれない。設計が間違っているのかもしれない。外部入力や異常系への防御として必要なら、その経路はテスト可能な形に分離すべきかもしれない。

それなのにAIは、もっともらしい理由をつけて制約を回避する。

このとき僕は、AIにIntegrityを伝授することはできないのだと理解した。

AIは職人倫理を内面化しない。AIは「分かりました」と言いながら、プロセスの曖昧な部分を自然に踏み抜く。悪意があるわけではない。サボろうとしているわけでもない。ただ、指示に曖昧さがあれば、そこからもっともらしい抜け道を生成する。

これは人間の問題とよく似ている

人間に対して「品質意識を持ってください」「プロとして責任を持ってください」「雑なコードを書かないでください」と言っても、それはIntegrityを要求しているだけである。Integrityをすでに持っている人には通じる。しかし、そうでない人には通じない。

以前、僕は部下に似たような話をしたことがある。すると返ってきたのは、「あなたはそうかもしれませんが、僕に同じことを求めないで欲しいです」という反応だった。

その返答は、ある意味でとても正直だった。

Integrityは伝授できない。

少なくとも、「僕はこう感じるから、あなたも同じように感じてください」という形では伝わらない。コードの汚さに対する嫌悪感、到達不能コードへの違和感、テストできない分岐を残すことへの不快感。そうした感覚は、ある人には自然にあるが、別の人にはない。

Integrityをプロセスに変換する

では、そこで諦めるしかないのか。

僕はそうではないと思っている。

Integrityそのものは伝授できない。しかし、Integrityを持つ人間が暗黙に行っている判断は、プロセスに変換できる。

たとえば、僕の中では「実運用上到達しないコードを見つけたら気持ち悪い」という感覚が先にある。だが、それをそのまま他人やAIに渡すことはできない。そこで必要なのは、この感覚を手順に分解することだ。

たとえば、次のように書く。

実運用上到達しないコードを発見した場合、それをカバレッジ対象外として扱ってはならない。まず、そのコードが不要である可能性を検討し、削除・設計変更・明示的例外化のいずれかを提案すること。

これはもう職人倫理ではない。

これは手順である。

「気持ち悪いと思え」とは言っていない。「そのコードを見つけたら、次に何を確認し、どの選択肢を提示するか」を定義している。

AIはプロセスのデバッガである

ここに、AIペアプロの面白さがある。

AIはIntegrityを持たない。だからこそ、プロセスのデバッグ相手として非常に優秀である。

AIは、こちらが書いたプロセスの穴をすぐに踏む。「カバレッジ100%」と書けば、「実運用では到達しないので除外」と言う。「Acceptance Criteriaを満たすこと」と書けば、満たしたことにして実装を終えようとする。「テストを書くこと」と書けば、意味の薄いテストで帳尻を合わせようとする。

そのたびに、僕はプロセスのどこが曖昧だったのかを確認する。

なぜAIはその判断をしたのか。どの文言が抜け道になったのか。どの前提を明文化していなかったのか。どのタイミングで設計に戻るべきだったのか。

そして、プロセスを書き換える。

これは、プロセス改善というより、ほとんどデバッグである。

バグを再現する。原因を特定する。修正する。再発防止のテストを書く。次に同じバグが起きないようにする。

ソフトウェアに対してやってきたことを、今はプロセスに対してやっている。

このプロセスは人間にも効く

しかも、このデバッグの結果として得られるプロセスは、AIにだけ有効なものではない。

むしろ、人間相手にも通用する。

なぜなら、人間もまたIntegrityを持っているとは限らないからだ。

すべてのエンジニアが、コードの構造に対して同じ美意識を持っているわけではない。すべてのエンジニアが、到達不能コードを見て不快になるわけではない。すべてのエンジニアが、テストできない分岐を残すことに危険を感じるわけではない。

だから、Integrityを前提にしたチーム運用は脆い。

「良いコードを書きましょう」では足りない。
「品質意識を持ちましょう」では足りない。
「プロとして責任を持ちましょう」では足りない。

それらは、すでにIntegrityを持っている人にしか届かない言葉だからだ。

必要なのは、Integrityを持つ人が暗黙に行っている判断を、Integrityを持たない人でも実行できる形に変換することである。

つまり、僕がやっていることは、AIに職人倫理を移植することではない。
経済合理性という価値観をAIや人間と共有しようとしているわけでもない。

Integrityという伝授不可能な特性から生まれた高品質なコードを書くテクニックを、Integrityを持たないAIや人間でも守れるように、プロセスとしてデバッグしているのだ。

AIの失敗はプロセスの失敗である

この見方をすると、AIコーディングの失敗は単なる失敗ではなくなる。

AIがAcceptance Criteriaを満たさなかったとき、それはAIがダメだったという話で終わらせるべきではない。なぜACがテスト実装に反映されなかったのかを調べるべきである。

AIがテストを書いたのに意味が薄かったとき、それはAIのテストセンスが悪いという話で終わらせるべきではない。どの段階で「このテストは何を保証するのか」を問うプロセスが欠けていたのかを調べるべきである。

AIが到達不能コードをカバレッジ対象外にしようとしたとき、それはAIがズルをしたという話で終わらせるべきではない。なぜ「到達不能なら削除を検討する」という判断がプロセスに書かれていなかったのかを調べるべきである。

AIは、プロセスの曖昧さを可視化する。

AIはIntegrityを持たない。だから、こちらが暗黙に期待している美意識を補ってはくれない。だが、その代わりに、暗黙の期待がどこに残っているのかを容赦なく教えてくれる。

そう考えると、AIペアプロの価値は「優秀な相棒ができる」という単純な話ではない。

AIは、プロセスのファザーであり、プロセスのデバッガである。

こちらの指示が曖昧なら、曖昧なまま動く。判断基準が抜けていれば、抜けたままもっともらしい結論を出す。例外条件を定義していなければ、勝手に例外を作る。

そのたびに、僕はプロセスを書き換える。

  • 「実運用上到達しないコードはカバレッジ対象外にしてよい」のではなく、「まず削除・設計変更・明示的例外化を検討する」。
  • 「ACを満たしたと判断したら完了」ではなく、「各ACに対応するテストまたは検証結果を明示する」。
  • 「テストを書く」ではなく、「そのテストがどの仕様・どの失敗モードを保証するのかを明示する」。

こうしてプロセスは少しずつ具体化されていく。

そして、その具体化されたプロセスは、AIだけでなく人間にも効く。Integrityを持つ人間が暗黙にやっていた判断が、手順として外部化されるからだ。

もちろん、それでも完全にはならない。プロセスには必ず穴がある。AIも人間も、その穴を踏む。だから、プロセスは一度作って終わりではない。

デバッグし続けるしかない。

それでも、デバッグし続ける理由

AIにIntegrityは宿らない。

しかし、AIがIntegrityを破る瞬間は観察できる。

その瞬間に、僕は自分の暗黙知がどこに残っていたのかを知る。自分が当然だと思っていた判断が、実は言語化されていなかったことに気づく。そして、その判断をプロセスに書き込む。

それは、AIのためだけではない。

Integrityを持つ人間が暗黙に行っていた判断を、Integrityを持たない人でも守れる形に変換する作業でもある。

だから僕は、もうAIにIntegrityを宿そうとは思わない。

その代わりに、プロセスをデバッグし続ける。

関連記事

プロセスはデバッグできるのか - It’s by design.

AIが、自分をデバッグする道具を差し出してきた日 - It’s by design.

 

 

プロセスはデバッグできるのか

きっかけ:プルリクエストをマージしたあとのデグレオンパレード

僕は、AI同士を戦わせるゲームを作ってる。人狼ゲームはご存知だろうか?あれをAI同士でやらせて観戦するゲームだ。

これを今AIとペアプログラミングしながら作ってる。MVPの完成度をあげることを最優先した結果、ものすごい量の技術的負債が溜まってしまったがやっとその技術的負債を完済した。久しぶりの機能追加プルリクエストが、「エージェントの推論(reasoning)フィールド追加」だった。これまでAIエージェント達は各々自ら投票先や占い先を自律的に決めていたんだけど、その決定理由が分からないために観戦の面白さが損なわれていたからだ。その PR #200 をAIに実装、設計、マージした後、わくわくしながら観戦ログを眺めていた。

——なのに、様子がおかしい。

そしていくつかの不具合にすぐ気づいた。

  • [JUDGMENT] ログに decision が表示されない
    AIに普通に会話するか(speak)、誰かを揺さぶるか(challenge)、あるいは黙って周りの出方を伺うか(silent)、この判断もAI自身にやらせてたんだけど、その推論はログに表示されるのに肝心の意思決定が表示されないので推論結果が何のactionに対するものなのか分からない。
  • reasoning が視覚的に区別されていない
    推論はいわゆる公知の情報じゃないので発言色は薄めの目立たない色にしたい。なのにvote、投票の推論は目立つ色で投票先に表示されちゃった。
  • 一部の action しか reasoning がログに出ていない
    狼の襲撃、騎士の護衛、占い師の占い先、全てに推論のログを出して欲しかったしそう依頼したはずなのに、推論ログが表示されたのは日常の討論時の意思決定ログしか表示されていなかった。

どれも単純なバグと言えばそうなのだが、少し違和感があった。

実装自体は特に難しいことをしているわけではない。

それなのに、似た種類の不具合が複数同時に発生している。

これは単なる実装ミスではない気がした。


原因:ACは存在していたが、参照されていなかった

実装のために要件化してあった Issue #47 を見返すと、Acceptance Criteria はきちんと書かれていた。

Spectator log displays reasoning per action

つまり問題は、

  • 要件が曖昧だったことではない
  • 実装能力が足りなかったことでもない

ACを元にしたテストを実装するプロセスが存在していなかったことにあったのだ。


IDD(Issue Driven Development)

このプロジェクトでは、開発の起点をコードではなくIssueに置いている。

  • すべての要件はIssueに書く。
  • Issueは検証可能なレベルまでAcceptance Criteriaが明文化されていなければならない。

つまり、

Specification → Code → Test

の順序を強制している。


普通ならどう考えるか

通常の(AIを伴わない)開発であれば、こう考えるはずだ。

  • 誰が見落とした?
  • レビューでなぜ気づかなかった?
  • テストが足りなかった?

つまり原因は「人」の行動に帰着される。

しかし今回は違った。


気づき:プロセスにバグが存在した

今回の状況を整理するとこうなる。

  • 入力:Issue(AC)
  • 実行:開発プロセス
  • 出力:コード・ログ

期待される出力:ACを満たしている

実際の出力:ACを満たしていない

差分がある。

その原因は何か。

ACを作ったのは良いものの、それを参照するプロセスが存在しなかった

これはつまり、プロセスの欠陥だった


プロセスがデバッグできるという驚き

ここで強い違和感があった。

これまでプロセスは「改善するもの」だった。

  • うまくいかなければ見直す
  • より良い形にする
  • ベストプラクティスに近づける

しかしそこには明確な正解も、再現可能な検証手段もない。プロセスを実行するのは人間なため、できあがる成果物の品質には常にバラツキがあるためだ。

一方、今回やったことは違う。

  • 入出力の差分を確認する
  • 原因を特定する
  • 修正する

これは完全にデバッグの流れだった。

プロセスをデバッグしている

この感覚は初めてだった。


なぜ今までプロセスはデバッグできなかったのか

理由はシンプルだ。

プロセスが実行されているか分からなかったから

人間は:

  • プロセスを読まない
  • 忘れる
  • 状況によってスキップする

結果として:

  • プロセスが実行されたかどうかが分からない
  • 失敗の原因が曖昧になる

だからプロセスは「改善」するしかなかった。


なぜ今回はデバッグできたのか

今回の開発では、AIとペアプロしている。

  • プロセスは SKILL.md に書かれている
  • AIはそれを毎回参照して実行する
  • 実行のばらつきはほぼ存在しない

つまり、プロセスが実行される前提が成立している

この前提があることで:

  • 出力の差分がそのまま原因に繋がる
  • 失敗の原因をプロセスに帰着できる

実際にやったこと

今回の修正では、バグそのものではなくプロセスを直した。

AC対応チェックの追加

実装後に、IssueのACを1件ずつ確認する。

  • 各ACに対応するテストが存在するか
  • 未対応であればテストを追加する

これをテストフェーズのプロセスとして追加している。

カバレッジ突合せ

pytest --cov=src --cov-report=term-missing

を実行し、

  • 実装したコードがテストでカバーされているか
  • Missing coverageが残っていないか

を確認する。

バグを直したのではなく、バグの生成過程を修正した


プロセスの扱いが変わった

これまで:

  • プロセスは守るもの
  • うまくいかなければ改善するもの

いま:

  • プロセスは実行が保障されているもの
  • 壊れていれば修正するもの

つまり、プロセスは改善対象からデバッグ対象に変わった

このプロセスは人間だけでは成立しない。

  • プロセスは守られない
  • ドキュメントは読まれない

しかしAIは違う。

  • 書かれているものを参照する
  • 毎回同じように実行する
  • 必要であれば自分で詳細化する

その結果、プロセスが実行される前提が成立する


結論

これまでプロセスは「改善するもの」だった。

しかしプロセスが一貫して実行される世界では、それは変わる。

プロセスはデバッグできる

そして、

プロセスが守られる世界では、
プロセスは改善対象ではなくデバッグ対象になる。

これが、今回得られた一番大きな発見だった。

 

関連記事

AIにIntegrityは宿らない。だから僕はプロセスをデバッグし続ける - It’s by design.

MCPテスト投稿

# MCPテスト投稿 はてなのMCPを見かけたので、動作確認ついでに記事も投げてみる。 中身はまだざっくり触っただけだけど、

- はてブの人気記事取得 - コメントの取得 あたりは普通に動いてるっぽい。 これをうまく使えば、

- コメント要約 - 賛否の傾向分析 - 記事ネタ探し みたいなこともできそうで、ちょっと面白い。 実用になるかはもう少し触ってから判断したいところ。 とりあえずテスト投稿でした。

---

※この記事はChatGPTによって作成されました。

--- 参考:[kiyo-e/2025-11-27-hatena-mcp](https://github.com/kiyo-e/2025-11-27-hatena-mcp)

【2026年最新】矢木沢ダムの貯水率のグラフも表示できるようにしました。

以前、宮ケ瀬ダム(宮ケ瀬湖)の貯水率のグラフを表示できるようにしましたが、東京の水がめということで、矢木沢ダムの貯水率もグラフ化して表示できるようにしました。

 

最新のグラフはこちらから

矢木沢ダム貯水率(2026/3/17)

2026/3/17時点のグラフをアップロードしておくけれども、ごらんのとおり宮ケ瀬湖と違って3/14当たりまでずっと貯水率が増加していました。

どうも、矢木沢ダムは標高の高いところにあるらしく、雨があまり降っていなくとも冬の間に積雪した雪が溶けて、雪解け水として入水するようです。

しかしその雪解け水のボーナスもわずか三日ほどで使い果たしてしまい、これからまた貯水率が下がっていくようです。どうなることやら。

 

【2026年最新】宮ケ瀬ダムの水位・貯水率推移をグラフで可視化してみた

宮ケ瀬ダムの現在の水位や貯水率の推移を、
公式データをもとに時系列グラフで可視化しました。

 

グラフはこちらから。

 

結論から言うと、直近の宮ケ瀬ダムの貯水率は33%を切る勢いとなっており、注意が必要な水準です。

先週2/25に振った雨も、貯水率を回復させる効果がほとんどなかったことがグラフから分かります。

 

本グラフは、国土交通省が公開している宮ケ瀬湖の水位・貯水率データおよび宮ケ瀬及沢の雨量データを取得し、
時系列で可視化したものです。

 

3/6追記

3/3に降った大雨で多少回復しましたがそれでも34%ちょっととまだまだ水不足が続きそうです。

2026年3月6日時点での宮ケ瀬ダムの貯水率グラフ

3/17 追記

矢木沢ダムの貯水率も表示できるようにアプリを改良してみました。

nagwiki.hatenadiary.org

宮ヶ瀬ダム諸量一覧表

宮ヶ瀬及沢雨量一覧表

誰がレバーを握っていたのか──しょこたんのSwitch2炎上騒動に見る“名前のないトロッコ問題”

芸能人の炎上って、だいたいは消費されて終わる。
でも、ときどき「これ、案外深いな」と思う案件がある。
今回のしょこたん中川翔子さん)のSwitch2騒動も、そのひとつだ。

内容はシンプルだ。
しょこたんが新型Switch2を開封する動画を公開した。
しかし、その本体がどうも「転売から買ったものではないか」と話題になり、炎上した。
普段から「転売ヤーからは買わない」スタンスを明言していたしょこたんだからこそ、反発を受けた。

ただ、ここで注目したいのは、「買ったのは誰なのか」が実は不明なこと。
しょこたん本人が買ったのか?
スタッフが用意したのか?
そして、そのスタッフが誰なのか、しょこたん自身も知らなかったとしたら?

これは、ある種のロッコ問題に似ている。


ロッコ問題とは、哲学の世界では有名な思考実験だ。
暴走するトロッコがこのまま進めば5人を轢いてしまう。
だがレバーを引けば1人を轢くことになる。
あなたはレバーを引くべきか──という、シンプルかつ残酷な問い。

この問題のポイントは、「選択しなかったこと」もまた“選択”だということ。
何もしなかった結果、5人が死ぬ。
それは“引かなかったこと”に責任がある。


では、しょこたんのSwitch2騒動を見てみよう。

仮に、Switch2はスタッフの誰かが善意で用意したものだったとする。
しかし、どのスタッフが用意したかは明示されず、本人も明確に把握していなかった。
撮影は進み、編集が終わり、動画が公開される。
視聴者からの指摘で転売品疑惑が浮上し、炎上する──。

ここで問われるのは、「誰がレバーを引いたのか?」ということだ。

Switch2を用意したのは誰か?
止めようと思った人はいなかったのか?
しょこたん本人は、途中で「これって転売品では?」と感じたかもしれない。
でも、そのまま撮影が進んだ。
和を乱すのが怖かったのかもしれない。
確認するタイミングを逃したのかもしれない。


重要なのは、「意図的に誰かがトロッコを暴走させた」わけではないことだ。
むしろ、誰もレバーに手を伸ばさなかったからこそ、トロッコは走り出した。
責任が曖昧で、判断が後回しになり、最終的には動画という形で公開された。
“善意の手配”が、“悪意なき不作為”に変わった瞬間。


この構図、実は私たちの身の回りにも溢れている。
誰かが「ちょっと変じゃない?」と気づいても、空気を壊すのが怖くて黙ってしまう。
「自分が言うまでもないよね」と思ってやり過ごす。
その結果、いつの間にかトロッコが走っている。


今回のこの炎上で、結局誰がレバーを握っていたのかはわからない。
だからこそ、逆に考える余地がある。
あなたがその場にいたら、レバーに手を伸ばせただろうか?
それとも、トロッコが通り過ぎるのを見送っていたかもしれない?


レバーを握っていたのは、本当に誰だったのか。
あるいは、最初から誰も握っていなかったのかもしれない。