hn スコア: 8/10

Gooseというメモリ安全なシステム言語 - ヒープもGCも寿命注釈もない設計

The Goose Programming Language

Gooseはヒープアロケータもガベージコレクタも寿命注釈も持たないメモリ安全なシステム言語である。すべての動的値はコンパイラが静的に割り当てたデータスタック上にインラインで置かれ、スタックの成長はポインタを進めるだけで済み、メモリの解放はスコープ終了時に行われる。参照はスタック内にインラインで残るのでヒープ確保は発生せず、深いネストを持つ百万要素の構造体でも解放は1回のストアで終わる。ベンチマークではC++の慣用的な実装に対して3.3倍、手動最適化C++に対して1.16倍、安全なRustの最良に対して1.12倍の速度を出し、いずれもメモリ使用量は1.2倍から1.9倍少ない。構文はCとRustに近く、スタックとスコープの終了を軸に据えた単一のメモリモデルで安全性を担保する設計になっている。

#Programming Language #Memory Safety #Systems #Rust
hn スコア: 9/10

Node2ShellがHTTP2Shellへ拡大 - BrotliデコーダのCVE-2026-111497がHTTPを使う実装へ波及

Node2Shell evolves to HTTP2Shell. Brotli flaw (CVE-2026-111497) blast radius affects many libraries & apps using HTTPs.

Googleの圧縮ライブラリBrotliのデコーダに範囲外書き込みの欠陥があり、CVE-2026-111497として登録された。Node.jsは10月21日にNode2Shellとしてこれを公表し、翌22日にはPython側にも影響が判明した。デコーダは受け取るはずのないバイト列を受け入れ続けるため、小さな作業バッファが破壊され、メモリ破壊による情報漏えい、プロセスの異常終了、最悪のケースでは任意コード実行につながる。深刻度はCVSS v4.0で9.2とされた。影響はHTTPの圧縮デコードを利用するNode.jsやPythonのライブラリだけにとどまらず、HTTPを扱うサービス全般へ広がった。libbrotli、Python、C++、Node.js、bun、Envoy向けの修正が順次公開される一方、ApacheとNginxは既定でBrotliをデコードしない。OpenAIは2026年2月にこの欠陥を発見していたと明言している。

#Security #CVE #Supply Chain #Brotli
hn スコア: 8/10

Nvidia 3000系GPUのFP/BF16実行率をプロ相当まで引き上げるLinuxカーネルモジュール

GPU-unlock: FP/BF16 instruction issue rate on Nvidia 3000's cards

gpu-unlockはGeForceのGA102からGA106世代で制限されているFP/BF16の命令発行速度を解放し、ワークステーション用カードに近いレートを引き出すLinuxカーネルモジュールである。手法はCMPアンロッカーのV67/PLM技法とUEFI方式のタイミングを組み合わせたもので、UEFIアプリケーションでも改造されたNVIDIAドライバでもない。モジュールの読み込みから元のNVIDIAドライバがカードに結合するまでの間に速度セレクタを書き込む。3090 Tiで8192サイズの密行列積をFP32精度で計測したところ、FP16は87.46から118.39 TFLOPS、BF16は87.50から157.41 TFLOPS、TF32は42.58から82.61 TFLOPSに改善した。UEFIアプリやドライバの改変が不要なため、NVIDIAが新しいドライバをリリースするたびに手でパッチを当てる作業が不要になる。

#GPU #Linux #Kernel #Performance
hn スコア: 8/10

分散型SQLiteという分野を生んだ12年 - rqlite作者が2014年からの歩みを語る

Twelve years of distributed SQLite

Philip O'Tooleは2014年9月、SQLiteの前にRaftのログを置くことで書き込みをクラスタ全体に複製し、ノードの故障でデータが失われる状況を切り離すrqliteを発表した。RaftとSQLiteを組み合わせた最初のオープンソースシステムだったと著者は語っている。この分野は現在では12のプロジェクトが存在し、いくつかは資金調達を受け、2件は買収された。この分野を語るとき起点は往々2021年以降とされるが、2014年から現在までの起点で書き起こす必要がある、という主張を2014年からの経緯として書き起こしている。

#Database #Distributed Systems #SQLite #Raft
hn スコア: 7/10

PythonとJuliaで使える記号回帰ライブラリ - PySRはエージェント向けSkillも同梱

Symbolic Learning in Python and Julia

PySRは、目標値を最適化する読みやすい記号式を探索する記号回帰のためのオープンソースツールである。探索エンジンとしてJuliaライブラリのSymbolicRegression.jlを搭配しており、アルゴリズムの詳細は論文にまとめられている。インストールはpipまたはcondaで行え、初回インポート時にJulia側の依存が導入される。PySRは高次元のデータには向きにくいが、ニューラルネットワークの記号蒸留を組み合わせることで解析的な式に変換でき、深層モデルの解釈手段としても使われる。リポジトリにはコーディングエージェント向けのSkillが同梱されており、npx skills addで導入するとagenticループの中でPySRを呼べる。DockerfileとIPython用の手順も公開されている。

#AI #Symbolic Regression #Julia #Python
zenn スコア: 8/10

AIコードレビューの不合格率が51%から13%に見える舞台裏 - 判定できたのは3モデル中1つだけだった

AIコードレビューの不合格率が51%→13%に。3モデル中2つは判定していなかった

Next.jsのフロント、BunとElysiaのバックエンド、Tauriのデスクトップ版からなる自前のタスク管理アプリを、自律エージェントに4か月半かけて開発させた作者が、差分をClaude、Gemini、ChatGPTの3者にレビューさせる敵対的差分レビューを実装した。fail率は7月の51.1%から10月の13.4%まで下がったが、ログを調べたところ10月の209件はすべて1モデルの判定だけで、残り2モデルはunknownを返していた。集計処理は判定不能を除外していたため、有効な判定が減っていることに異常通知も発火せず、作者も合否の推移だけを見て品質改善と受け取る状態になっていた。レビュー記録876件のうちpassは637件、failは210件、判定不能は29件で、全期間のfail率は24.0%である。複数モデルの判定数を監視しないと、不合格率の低下がそのまま品質改善として扱われることを示している。

#AI #Code Review #LLM #Observability
zenn スコア: 7/10

Rust向けPEGパーサジェネレータ prpr - パックラット解析で線形時間を保証

prpr: Rust 向けのシンプルで高速な Parser generator

prprはRust向けに作られたPEG形式のParser generatorライブラリで、crates.ioとGitHubで公開されている。Packrat parserは入力サイズに対して線形時間で解析でき、cutやtryといったバックトラック制御の演算子をほとんど必要としないため、最悪計算量の保証された構文解析が実現できる。PEGでは別のトークナイザーを不要にできるが、空白の読み飛ばしやデリミタの扱いが実装上の负担になりやすいため、prprでは自動の空白スキップとデリミタ制御を標準で備えている。文法ファイルはproc-macroでRustのコードに埋め込む方式でも、独立したプログラムとして生成する方式でも扱える。prpr自身をprprでパースするブートストラップが行われており、生成物は他のライブラリやランタイムに依存せず動作する。

#Rust #Parser #PEG #OSS
zenn スコア: 7/10

@napi-rs/canvas 1.0.12で引用符なしのフォント指定が無視される - 日本語が豆腐になる

@napi-rs/canvas v1.0.12 で実質的な破壊的変更が入った話

@napi-rs/canvasを1.0.11から1.0.12以降へ上げると、ctx.fontに引用符なしで書いたフォント指定がまるごと無視される。日本語は10px程度の豆腐で描かれ、例外も警告も出ないままtoBufferが通常の画像を返すことが確認された。バージョンを1つずつ入れ替えて調べた結果、1.0.8では正しく描画でき、1.0.12から挙動が変わったという。Windows 11とWSLのUbuntu 24.04の双方でNode.js 24を使って同じ結果だった。package.jsonで範囲指定をしているとロックファイルは1.0.8のままCIは通り続ける一方、利用者がインストールすると範囲内の最新である1.0.13が入って壊れる形になっていた。対策としてはフォント名を引用符で囲む。

#Node.js #JavaScript #Breaking Change #Font
zenn スコア: 7/10

AWSにデプロイせずにLambdaのarm64実行をCIで検証する - FastAPI製APIをGitHub Actionsで

AWSにデプロイせず、FastAPI製Lambdaのarm64実行をCIで検証する

FastAPIとMangumで組んだAPIに、AWSへデプロイせずにLambda向けパッケージを検証するCIを追加した取り組みの記録。SAMでビルドできるかの先として、ビルドした成果物をarm64版のLambda公式Pythonコンテナに読み込ませ、実際のハンドラーを呼び出せるかまで確認している。構成はPython 3.12、SAM CLI 1.166.2、GitHub Actionsのubuntu-24.04-armランナー、public.ecr.aws/lambda/python:3.12で、ビルドと実行の両方をarm64にそろえている。ローカルのpytestとFastAPIのTestClient、DynamoDB Local、SAMテンプレートの静的検証、コンテナ上のスモークテストという4層に分けて確認する構成で、AWS実環境との結合テストは未実施である。

#AWS #Lambda #FastAPI #CI
zenn スコア: 7/10

YubiKeyとOpenAIのDaybreak Blueを用意してAIペネトレーションテスターShannonを試す - 13件の指摘候補

YubiKey買って、OpenAI Daybreak Blueゲットして、vibe脆弱性診断してみた。

OSSのAIペネトレーションテスターShannonは、対象アプリのソースコードと実稼働中のアプリを組み合わせて調査する。ソースを読み、ブラウザを操作し、HTTPで通信しながら認証や認可、入力の悪用という観点ごとに分析し、候補を実証してレポートにまとめる流れが組み込まれている。実行状態を保存して再開できる点も特徴で、ターミナルから手動実行するほか開発時の自動チェックにも組み込める。利用するにはOpenAI側のセキュリティ用途のアクセス確認を満たす必要があり、物理セキュリティキーを注文して登録し、身分証を使った本人確認を経て診断まで到達する。実例ではDaybreak Blueを取得したアカウントで分析を完了し13件の指摘候補を得て、そのうち2件はローカルで挙動を再現できた。

#Security #AI #Penetration Testing #WebAuthn
dev.to スコア: 8/10

Gemma 4 E2Bを4GBのGPUで素のPyTorchで動かす - llama.cppを上回る87.8 tok/s

Gemma 4 on a 4 GB GPU in Plain PyTorch: From Out of Memory to Faster Than llama.cpp

量子化考慮学習で学習されたGemma 4 E2Bを、4GBメモリしかないノートPCのGPUで素のPyTorchとHugging Face Transformersで動かした手順の記録。16bitの重みはレイヤーだけで3.58GiBがありカードに載らず、Transformers側の4bit経路も初回フォワードでメモリ不足になる。4bitのまま1層ずつ展開する方式は0.58 tok/sに留まったが、パックされた重みを直接読むカーネルで4bit演算を行うと87.8 tok/sまで改善した。同じカード・同じ日のllama.cppは82.1 tok/sで、131,072トークンの全文脈を保持した状態での比較になっている。Gemma 4 E2Bは約47億パラメータで、16bit換算で8.73GiBの重みの大半を2つの語彙表が占める。OpenAI互換の小さなサーバーを構築し、通常のローカルモデルサーバとして扱えるところまで確認している。

#AI #LLM #PyTorch #GPU
dev.to スコア: 8/10

PyTorch on TPUの実測 - コンパイル済みdecodeで最大50 tok/s、JAXエンジンにはまだ2.6倍の差

PyTorch on TPU: Hands On With Colab

Google Cloud TPU v5eを1枚搭載したColab v5e-1環境で、TorchTPU経由のPyTorchとTransformersでGemma 4 E2Bを動かし、同一チップ上のJAXエンジンと速度を比較した測定。素のHugging Face generateは5.0から5.3 tok/s、defer-and-fuseの修正後は8.8から9.1 tok/s、コンパイル済みdecodeステップで256トークンの文脈では31.3から33.4 tok/s、4bitの層別テーブルを組み合わせると50.2から50.4 tok/s、リングキャッシュで131,328トークンの文脈を保った状態では38.6から38.7 tok/sという結果になった。同じプロンプトでJAXエンジンのbf16は130.8から132.9 tok/sであり、PyTorch側は最良のJAX比で2.6倍の差が残る。計測用のColabノートブックはGitHubに公開されている。

#AI #PyTorch #TPU #Gemma
dev.to スコア: 8/10

Claude Codeのファイルシステム境界 - サンドボックスrootと許可パスは別の層で.envは防げない

Claude Code File System Boundaries in 2026: What `--add-dir`, Allowed Paths, and Sandbox Roots Actually Restrict

Claude Codeの権限設定は、--add-dirとadditionalDirectoriesで決まるsandbox rootsと、allowRead、allowEdit、denyRead、denyEditで決まるallowed pathsという、抽象化の水準が異なる2つの独立した層で構成されている。片方を設定してももう片方は制約されない。allowReadに'.'を指定してプロジェクト全体へのアクセスを戻すと、denyListenを明示しない限り.envやsecrets配下のファイルも再び読み取り可能な状態に戻る。Bashツールのコマンドはsandbox rootsの権限を継承し、allowed pathsのルールには従わないため、denyされたパスに.envがあってもcat .envは成功しうる。--add-dirはサンドボックの外周を広げるフラグであり、許可パスの設定とは目的が異なる。自動承認を与える前に、この2層の区別を設計として把握しておく必要があると指摘している。

#Claude Code #Security #Sandbox #DevOps
dev.to スコア: 8/10

コーディングエージェントは.envを読めてしまう - APIキーを保管すべき場所

Your coding agent can read .env. Here's where the API keys should live instead.

エージェントにシェル実行権を与えると、401エラーの原因を追うためにcat .envが実行され、その鍵が会話履歴やプロバイダ側のログに残る。悪意ある行為は必要とせず、エージェントが平文の秘密を一度持ち出してしまうだけで問題になる。破壊経路は主に4つあり、プロンプトに読み込まれる、git addでコミットされる、printenvやテスト出力、デバッグログを通じて標準出力からモデルに戻る、バグ報告やスタックトレースに含めて公開される、のいずれかである。.zshrcにexportで書く方法はより悪化し、エージェントを含むすべてのプロセスがその環境を引き継ぐ。代替としてOSの暗号化された資格情報ストアが挙げられ、macOS Keychainはログインパスワードから導出した鍵で各項目を暗号し、アクセス制御を持つ。

#Security #Secrets #Claude Code #Keychain
dev.to スコア: 8/10

セキュリティ対応は週単位から時間単位になった - AIが攻撃コードを組み立てる時代の小さな開発チーム

Hours, Not Weeks: How AI Rewrote the Clock of Software Security

2026年10月の第3週は、PHPの重大な脆弱性2件、LiteLLMの悪意あるPyPI公開(今年で2回目)、Railwayが顧客の環境変数の漏洩を開示、GitLabが最大深刻度のバグを修正,およびLinuxカーネルの脆弱性が誤ったメーリングリストに投稿されるという出来事が重なった週だった。従来の周期は、脆弱性の公開からパッチ公開まで、そして実際のの開始まで数日から数週間程度あったが、この余裕は消えた。消えた。パッチが公開されると即座にエージェントが変更点を読み、閉じられた穴を逆算して攻撃コードの組み立てを補助する。Node2Shellでは公式パッチの公開前からの攻撃が確認されたと報告されている。防御側の余裕が減るとともに攻撃のコスト自体も下がる。4人のみの開発部隊に誰が担当するのかという現実的な問題が残る。

#AI #Security #DevOps #Supply Chain