JavaScript ランタイム Bun、Rust 書き換えコードで未定義動作 (UB) を指摘される──Miri チェックに失敗
Bun の Rust 移行においてメモリ安全性を損なう設計ミスが発覚。AI 生成コードを無批判に採用する「vibe coding」のリスクが浮き彫りになった。
リリース: 2026-05-14 · 読了 3 分何が起きた
Bun の Rust 書き換えコードが Rust の動的解析ツール「Miri」による基本チェックに失敗し、GitHub Issue #30719 で指摘された。
指摘箇所では core::slice::from_raw_parts を用いたポインタ操作により、Safe Rust の外側で dangling reference(宙ぶらりんの参照)が発生している。
Issue 投稿者は、AI を用いた「vibe coding(雰囲気コーディング)」が原因である可能性を指摘し、専門エンジニアによるレビューを求めている。
なぜ重要
Rust を採用しても、unsafe の不適切な使用や AI 生成コードの無批判な導入は、C++ 同様のメモリ脆弱性を引き起こす。
パフォーマンスを優先するあまり Rust の安全性保証をバイパスする設計は、ランタイムとしての信頼性を根本から損なう。
👁️ 開発者
AI を使って Rust を書くチームは、Miri や cargo-expand 等のツールによる検証を CI に組み込むことが必須の意思決定となる。
🇯🇵 日本
国内の Web フロントエンド開発(特に Bun を採用しているスタートアップや SaaS 開発チーム)は、Rust 移行後の Bun の安定性動向を注視し、Node.js からの完全移行を一時保留する検討が必要。