Tech News Daily

2026-09-05 (Sat)
AI が毎朝届けるテックニュースダイジェスト
📰 21 articles 🏷 6 categories 📡 20 sources
1300万行 ClaudeがLean 4で書いたフェルマー最終定理の証明コード量
CVSS 8.8 全Chromiumで悪用中のV8型混同0-day(CVE-2026-85046)の深刻度
17.6倍 RustネイティブReact CompilerによるVite内コンパイル高速化(1,036ファイル実測)
🔥 Top Stories
⚡ Dev & Engineering
oxcチームが8月にRust実装のReact Compilerを公開し、`@vitejs/plugin-react` v6.1.0が`{ compiler: true }`オプションで実験的にネイティブ対応した。従来のBabelベース実装を置き換えるもので、oxcプロジェクトリードは予備ベンチマークで「Babel比10倍以上高速」と説明する。ブログ運営元Outlyneが自社の1,036ファイル規模のReactコードベースで検証したところ、コンパイル部分だけで14.3秒から0.81秒へ17.6倍、ビルド全体でも22.1秒から9.3秒へ2.4倍に短縮した。try/catchブロックや分割代入プロパティ、計算プロパティキーなど従来のJavaScript実装で扱えなかったパターンにも対応し、リンターとビルドツールが同一バージョンのコンパイラを共有できるようになった。React Routerのフレームワークモードでは別途`@acusti/vite-plugin-react-compiler`が必要になる。
  • 1,036ファイル規模の実プロジェクトでコンパイル時間14.3秒→0.81秒(17.6倍)、ビルド全体は22.1秒→9.3秒(2.4倍)に短縮
  • try/catchや分割代入プロパティなどBabel版で未対応だったパターンをサポート、React Routerフレームワークモードは別プラグインが必要
blog.master.dev ⏱ 3 min read 2026-09-04
Rails 8以降のActiveStorageに存在するCVSS 9.5の脆弱性「KindaRails2Shell」(CVE-2026-66066)は、未認証の攻撃者がRailsプロセスからアクセス可能な任意ファイル(環境変数やアプリのシークレットを含む)を読み取れるもので、これがリモートコード実行や横方向への侵害につながり得る。7月29日夜、セキュリティ企業Riettaは政府系クライアントを含む全顧客サイトへ緊急ホットフィックスを適用したが、営業時間再開前にはすでに悪用の試みが始まっていた。VulnCheckの調査では、パッチ公開から約1か月後に実悪用が本格化し、8月初旬時点でKindaRails2Shellに対して脆弱な公開Railsインスタンスが約7,000件確認されている。
  • CVSSスコア9.5、未認証で環境変数やアプリシークレットを含む任意ファイル読み取りが可能、RCEや横展開に発展し得る
  • パッチ公開から約1か月後にVulnCheckが実悪用の本格化を確認、8月初旬時点で脆弱な公開インスタンスは約7,000件
Rietta ⏱ 3 min read 2026-09-04
Go 1.27で追加された新JSON実装`encoding/json/v2`について、Daniel Lemire氏がtwitter.json・canada.json・citm_catalog.jsonの3種のデータセットでベンチマークを行った。旧実装とv2はUnicode検証や大文字小文字の扱いが異なるため単純比較はできないと前置きした上で、`any`型への非構造化デコードではv2が1.5〜2.3倍高速、`any`型のエンコードでは最大2倍高速という結果を示した。一方、型付き構造体の往復変換ではv2のエンコードが旧実装より約1.5倍遅くなるケースが確認された。Go 1.27へアップグレードするだけでコード変更なしに非構造化データのデコード・エンコードは高速化するが、スキーマに基づく構造体処理では速度が悪化しうるため、移行前に自分のワークロードで実測することが必要となる。
  • `any`型への非構造化デコードはv2が旧実装比1.5〜2.3倍高速、エンコードは最大2倍高速
  • 型付き構造体の往復変換ではv2のエンコードが旧実装より約1.5倍遅くなるケースを確認、移行前の実測が必須
Daniel Lemire ⏱ 3 min read 2026-08-29
NX(No eXecute)ビットは一般にスタックオーバーフロー攻撃を防ぐセキュリティ機構として語られるが、著者はARM64のハイパーバイザー開発で全く別の役割に遭遇した。ARM CPUは実行可能とマークされたメモリを「Normal」メモリとして扱い、そこから投機的に命令フェッチを行う。著者のハイパーバイザーではアドレス0番地にロックされたbootromが存在し、`blr`(分岐命令)による分岐予測ミスがこの領域への投機的フェッチを引き起こしてクラッシュしていた。Device メモリへの変更は投機的なデータアクセスは防げても投機的な命令フェッチは防げず、根本的な解決にはNXビットで当該領域を非実行可能にする必要があった。ペイロード以外のハイパーバイザーメモリ全体を非実行可能にすることでバグが解消し、副次的にセキュリティ強化にもなったという。
  • ARM CPUは実行可能メモリを投機的に命令フェッチする仕様上、ロックされたbootrom領域(アドレス0)へのミスフェッチがクラッシュを誘発
  • Deviceメモリへの変更は投機的データアクセスのみ防止、投機的命令フェッチの防止にはNXビットによる非実行可能指定が必須
purplesyringa.moe ⏱ 3 min read 2026-09-03
Brown大学のPLAIカリキュラムで使われる教育用フレームワーク「SMoL(Standard Model of Languages)」向けに、開発者Tony Garnock-Jones氏が対話的IDE「smolts」を公開した。TypeScriptとSvelteで実装され、`https://smol.leastfixedpoint.com/`でWebアプリとして動作する。S式で書いたプログラムをステップ実行しながら、継続・環境・ストアといった言語処理系の内部状態をエディタ上に直接注釈表示する。逆方向へのステップ戻りや「カーソル位置まで実行」機能も備え、ブラウザ内でGitベースのプロジェクト管理も行える。開発者自身は「半分完成」の状態でstate管理に既知のバグがあると明かしているが、言語実装の内部を可視化する教育アプローチの有効性は示せているとしている。
  • TypeScript/Svelte製、S式プログラムのステップ実行時に継続・環境・ストアをエディタ上へ直接注釈表示
  • 逆方向ステップ戻りと「カーソル位置まで実行」に対応、ブラウザ内Git管理も統合、開発者自身は「半分完成」と明言
eighty-twenty.org ⏱ 2 min read 2026-09-04
🇯🇵 日本語テックコミュニティ
Scalaでは、リソース(DB接続やRedisクライアントなど)を受け取るクロージャがそのリソースを外部スコープへ「逃がして」しまい、クローズ済みリソースへのアクセスエラーを実行時まで検出できない問題があった。関数シグネチャを見るだけでは各リソースの影響範囲が分からないことが根本原因だ。Scala 3.8.3で実験的に実装された「Capture Checking」は、副作用を実行する権利を引数として受け取る「Capability」パターンと、型に`^`を付けてCapabilityのスコープ外流出を型システムで検出する仕組みの2つで構成される。まだ実験的機能であり次期LTS(3.9)での安定化は未定で、reach capabilityの削除など仕様も急速に変わっている。標準ライブラリは既にキャプチャチェック済みで同梱されており、将来的には例外追跡(`CanThrow`)やAI生成コードの検証への応用も見込まれている。
  • 型に`^`を付けCapabilityのスコープ外流出を検出する「Capture Checking」をScala 3.8.3で実験的実装
  • 次期LTS(3.9)での安定化は未定、reach capability削除など仕様変更中、応用先として例外追跡やAI生成コード検証を想定
m3tech.blog ⏱ 3 min read 2026-09-03
nocttyは、GhosttyのターミナルコアをWindowsネイティブアプリへ移植したZig製フォーク(MITライセンス、テレメトリなし、2026年8月にwinghosttyから改名)。著者が従来使っていたGhostInTheWSLはHyper-VソケットとvsockでLinuxのPTYへ直結するため高速だったが、nocttyはConPTY経由と見なされ敬遠されていた。実際にはConPTYには世代差があり、v2ではVTバイト列をそのまま別パイプに書き出すため、同梱版を使えばvsock直結と同等の性能が出ることが判明した。著者はURL風文字列の誤ったパス解決を防ぐ修正、UIスレッドをレンダラロックでブロックしない改善(78秒かかっていた処理を154ミリ秒に短縮)、タブラベルの端末タイトル追従修正、IME変換中のウィンドウクラッシュ修正の4件のPRを送り、いずれもマージされた。直近2件は1時間強で対応されたという。
  • ConPTY v2はVTバイト列を別パイプへそのまま書き出す仕様のため、vsock直結方式と同等の速度が出ると判明
  • UIスレッドをレンダラロックでブロックしない修正で78秒かかっていた処理が154ミリ秒に短縮、4本のPRが全てマージ
Zenn ⏱ 3 min read 2026-09-04
著者はClaude Codeに実装させると設定1行に18行のコメントが付くなど過剰なコメント生成に悩んでいた。「コードから復元できない情報だけを書く」というルールを`.claude/rules/`や`~/.claude/CLAUDE.md`に置いても、コメント比率は21.0%から19.1%へとほぼ変わらなかった。AIは実装中に自分が書いたコメントを「非自明な情報」と認識しやすく、ルールを思い出す機会が限定的なためだ。そこでPR作成用のskillに、`git diff HEAD -U0 | grep -E '^\+' | grep -E '^\+\s*(//|///|/\*)'`で追加コメント行を機械的に抽出し1行ずつ判定する検査手順を組み込んだところ、PR当たりのコメント行数が27行から21行に、4行以上のコメント塊を含むPRの割合が77%から65%に減少した。記憶に頼るルールから、機械的に抽出されたリストを判定する仕組みへ変えたことが効いたとしている。
  • ルールをCLAUDE.md等に置いてもコメント比率は21.0%→19.1%とほぼ改善せず、記憶依存の限界を確認
  • PR作成skillにgrepでコメント行を機械抽出する検査手順を追加し、PR当たりのコメント行数27行→21行、4行以上の塊を含むPRの割合77%→65%に削減
Zenn ⏱ 3 min read 2026-09-04
著者は9月2日にClaude Fable 5.1のキャッシュ問題を報告していたが、9月3日リリースのバージョン2.1.260で「ツール結果の後に付いたcontextをカバーしていなかった」点が修正された。著者が再測定したところ、ツール使用時のキャッシュヒット率は99.7%まで改善した一方、ツールを使わないターンでは38.6%のままで、質問のみのバッチ処理・ファイル編集を伴わない相談・要約や翻訳作業といった非ツール系ワークフローでは、2ターン目に約5万トークンが書き直される状況が継続している。コスト換算ではキャッシュ外のターンが約1ドル、キャッシュ内なら約0.01ドルで、1ターンあたり約100倍の差になるという。著者は「公式の修正発表」と「実際の改善範囲」を区別し、自分のワークロードで再測定する重要性を強調している。
  • v2.1.260でツール使用時のキャッシュヒット率は38.6%から99.7%に改善、非ツール系ワークフローは38.6%のまま未解決
  • キャッシュ外ターンは約1ドル、キャッシュ内は約0.01ドルで1ターンあたり約100倍のコスト差が発生
Qiita ⏱ 3 min read 2026-09-04
🛠 Code & Tools
高速起動が特徴のClojureスクリプト実行環境Babashkaが1.13.220で`babashka.ffi`名前空間を追加し、システムのCライブラリを直接ロードして関数を呼び出せるようになった。JVM Clojureプロジェクト向けの単体ライブラリとしても利用できる。数学ライブラリの呼び出し、SQLite内でのカスタムClojure関数定義、GTK 4などネイティブGUIフレームワークへのアクセス、PortAudioによる音声処理、双方向コールバック付きのCPython組み込みなどが可能になる。設計は`java.lang.foreign`を土台にし、arenaによる明示的なメモリ管理でセグメンテーションフォルトを防ぎ、`with-open`でのリソース解放にも対応する。Linux版はデフォルトでglibcのみに依存するほぼ静的なバイナリで、完全静的が必要な場合は`--static`インストーラフラグを使う。
  • `babashka.ffi`でzlib等のシステムCライブラリをロードし関数を直接呼び出し可能、GTK 4やPortAudio、CPython組み込みにも対応
  • `java.lang.foreign`ベースでarenaによる明示的メモリ管理、Linux版はglibcのみに依存するほぼ静的バイナリを既定に
REPL adventures ⏱ 2 min read 2026-09-04
C++にコンパイルされるClojure系言語jankが、エラー体験を3方向から改善した。実行時例外では、実行ファイル・AOTコンパイル済みオブジェクトファイル・JITコンパイル済みコードの情報を統合したスタックトレースを生成し、C++のフレームを元のClojureソースの行番号・アリティへ正確に対応付ける。関数オーバーロードが曖昧な場合は、従来のコンパイラ出力ではなく表形式で候補を提示し、引数の数・必要な型変換・アクセスレベルで候補をランク付けして上位3件のみ既定表示する。各コンパイルエラーからはjankの解説書内の該当ページへ直接リンクする。あわせて、Clojarsに公開する公式ネイティブパッケージリポジトリ「jank commons」も新設した。Rustの慣例に倣い、システムライブラリへの薄いバインディングには`-sys`サフィックスを付け、jankのネイティブビルドツールと連携してサンドボックス環境内でビルドスクリプトを実行する。閲覧用の「awesome-jank」リストも用意された。
  • 実行時例外で実行ファイル・AOT・JIT情報を統合したスタックトレースを生成し、C++フレームをClojureソースの行番号へ対応付け
  • 関数オーバーロード曖昧時は表形式で上位3候補を提示、Clojarsに公式ネイティブパッケージリポジトリ「jank commons」を新設
jank-lang.org ⏱ 3 min read 2026-09-04
GitHub Copilotの研究プレビュー機能「Project HydraFusion」は、単一モデルに固定するのではなく、タスクごとに最適な実行パターンをランタイムで選択する。方式は3種類で、1つのモデルが直接解く「Single」、効率重視のモデルが下書きし品質ゲートが上位モデルへのエスカレーションを判断する「Cascade」、1つのモデルが下書きし別モデルがレビューして修正する「Critique」がある。推論・コード生成・デバッグ・ツール利用の能力シグナルを基に、性能・コスト・レイテンシのバランスを最適化問題として解く仕組みだ。ベンチマークでは、TerminalBench 2.1でOpus 5比コスト67%減かつ品質4.9ポイント向上、DeepSWEでコスト36%減(品質1.5ポイント低下)、CheckpointBenchでコスト65%減(品質0.1ポイント低下)という結果を示した。
  • Single/Cascade/Critiqueの3実行パターンをタスクごとに自動選択し、性能・コスト・レイテンシのバランスを最適化
  • TerminalBench 2.1でOpus 5比コスト67%減・品質+4.9ポイント、DeepSWEはコスト36%減だが品質1.5ポイント低下
GitHub Blog ⏱ 3 min read 2026-09-03