テクノロジー

読んでいないコードを私たちはどれだけ信頼できるのか - YAMAGUCHI::weblog

1: nguyen-oi 2026/10/30 10:33

AI生成コードの品質管理やテスト・オブザーバビリティの重要性を論じた良記事。TDDがプロンプトエンジニアリング最強の形ってのは納得感あるな

2: KoshianX 2026/10/30 10:44

テストをごまかすかあ。この1ヶ月読まずにアプリ書くことやってみてるけど、とりあえず他のLLMに粗探しさせるなどして意外にちゃんと動いてるのでびっくりしてる。だがこれでずっといけるのかどうか

3: syu-m-5151 2026/10/30 11:24

読んでいないコードを出すなら、戻せる変更を一部に限り、観測してから広げる。本番で見つけた暗黙の業務判断を仕様とテストへ戻す流れがよい。監視を足して安心する話ではなく、展開を止める判断まで設計したい。

4: nacika_inscatolare 2026/10/30 11:31

テストコードとclaude security と 設計起こして読むでいいとおもう

5: roshi 2026/10/30 11:37

コードを”信頼”したところで不具合は出るからなー。不可逆な事象以外は前のめりに倒れて(AIに修正させて)さっさと改善ループ回すでいいんじゃないの?と思ったり。

6: t-wada 2026/10/30 12:11

"OE2eの整理に従えば、TDDが確かめるのは仕様に対する正しさで、オブザーバビリティが確かめるのは現実に対する振る舞いです。オブザーバビリティをTDDのフィードバックループを本番環境まで延ばしたものと捉えています"

7: peketamin 2026/10/30 12:29

ライブラリのコード、読んでなかったよなあ、と思いつつ、よく使うライブラリやフレームワークのコードは読んでたわけで…

8: sakidatsumono 2026/10/30 12:46

しかしその前もimportしたライブラリの中は読んでいない

9: terazzo 2026/10/30 13:11

具体例としてSQLのチューニングを考えると分かり易そう。/所要時間の合計だけじゃなくて計算論的制約も課すことが出来るように思う。反例の代わりに最悪ケース(もしくはそこそこ悪いケース)を探させる。

10: momonga_dash 2026/10/30 13:22

なんかあった時の影響範囲が限られてて、すぐ気づけて、すぐ無かったことにできるほど、意思決定は簡単になる

11: door-s-dev 2026/10/30 13:28

改めて考えてみると今までもライブラリのコードは読んでなかったな

12: aobon700 2026/10/30 13:39

経験的にコードの質より、AIを信頼しすぎて、雑な指示で手間取る事の方が多いかな

13: hiroomi 2026/10/30 14:30

開発時のテストだけでなく、本番環境での観測(オブザーバビリティ)によって、実際の動作や品質を継続的に検証する必要がある。工程が開発より外側で

14: questbeat 2026/10/30 15:42

“ ”

15: ngmy 2026/10/30 15:52

大昔のSIerみたいなことになってきたな。

16: atsushieno 2026/10/30 16:08

自分も普段から「依存ライブラリのコードは読んでこなかったでしょ」って言って回っているほうだが、ライブラリの選択の時点である程度フィルタリングしていることも忘れてはならない。

17: potnips 2026/10/30 16:58

非エンジニアは人間がコード書いてた時から「わからんけど信頼する」しかなかった。AIは嫌な顔せずに納得するまで説明してくれるから、エンジニアとプロジェクトを進めるより中身の理解は楽になった

18: knok 2026/10/30 17:30

開発を外注して検収でコードまでみたことはないかな…仕事のタイプによってはやるのかもしれない

19: strawberryhunter 2026/10/30 17:35

その議論は去年の今やっていれば価値もあっただろうが。Claude CodeやCodexのバグの出方が明らかにコードを見ていないものだったから、もう結論は出ている。

20: mayumayu_nimolove 2026/10/30 17:45

人間不信と同じだよ

21: tk_musik 2026/10/30 17:49

いやまあライブラリは時の洗礼受けてるしね。。確からしさはスクラッチと比べればダンチではあるっしょ

22: tarotheripper 2026/10/30 18:06

遠くて近い つかめない どんなコードかわからない ゆっくり消える虹見てて トリコじかけになる♪

23: igrep 2026/10/30 19:07

"各種テストを反例や限界の探索にも使い、技術仕様と非機能要件は本番環境でも確かめるのがよいと考えています。戻せる変更を限られた範囲に出し、SLOと観測結果をもとに展開を進めるかを判断"

24: skypenguins 2026/10/30 19:33

今まで開発してきたときにミドルウェアのコードを全部読んできたか?って話(必要に応じて読むかもしれないが)、古くて新しい話

25: tybalt 2026/10/30 20:40

OS ベンダーが提供しているライブラリなどはベンダーを信頼。よく使われているライブラリは battle tested という判断。有名 OSS はリーナスの法則を期待。LLM のコードについてはどうなんだろうね。

26: fellfield 2026/10/30 21:01

あとで読む(コードを)

27: Shin-JPN 2026/10/30 22:47

99%の事例では問題にならないと思うが,問題は「こけると人が死ぬ」1%のシステム。本番環境でしか掴めない要件不足の類があってはならないが,AI主導TDD等が主流になっても「AI抜きで開発してコスト10倍」を許容できるのか

28: zu2 2026/10/31 01:48

信頼してない

29: atsushifx 2026/10/31 01:57

TDDやハーネスは前提で、仕様通りのコードは書いてくれる。けど、いかに仕様に出なかった不具合やBugを見つけるかってことだと思ってる。

30: fukumura 2026/10/31 02:42

たしかに。そもそもimport先全部みてないのに(見てるわって方にはすみません)AIが書いたコード全部読んだかどうかが議論になるの面白い。

31: yujiorama 2026/10/31 10:36

"ソフトウェア工学では、仕様どおりに作れているかを確かめることを検証(verification)と呼びます。作ったものが本当に求められていたものかを確かめる妥当性確認(validation)とは、区別されてきました*16。"

32: netafull 2026/10/31 12:14

“AIが書くテストの精度が上がっても、判定の基準になる仕様や性質は人間の理解に依存します。”

33: aujinen 2026/10/31 17:07

「判定の基準になる仕様や性質は人間の理解に依存」=「医療の世界でも同じ、診断・治療の根拠となる『臨床推論』は人間(医療従事者)の理解に依存する」