Boaのgetter返値がinline cache更新中のGCで回収された
OmoikaneのWPTで起きたSIGSEGVを調べると、Boaのgetterが返した新しいオブジェクトが、VMレジスタへ入る前のinline cache更新で回収されていた。JITの切り分け、Valgrindでの確認、root修正と回帰テストを追う。
COLLECTION
OmoikaneのWPTで起きたSIGSEGVを調べると、Boaのgetterが返した新しいオブジェクトが、VMレジスタへ入る前のinline cache更新で回収されていた。JITの切り分け、Valgrindでの確認、root修正と回帰テストを追う。
OmoikaneでJavaScript Realmを作るたび、約1.1MBのDOM bootstrapを解析・コンパイルしていた。キャッシュ案からBoaのscope検索と字句解析の改善へ方針を変えた経緯と、test profileでの実測を記録する。
AIを使った開発で作業量が増える一方、Rust製OmoikaneのCIはPRごとに長い待ち時間があった。文書変更の判定、Rustキャッシュ、WPT準備、連続pushを実測に基づいて見直した記録。
Omoikaneでページに見えていた内部ホスト関数から、別オリジンのDOMやCookie、ストレージへ到達し得る経路を確認した。ブートストラップの分離、Rust側のオリジン検証、周辺処理とテストについて書く。
JavaScriptのRealmはiframeの何を分離するのか。Omoikaneで子Documentの実行環境、WindowProxy、ナビゲーション、非同期処理を実装する中で見えた境界を整理する。
OmoikaneのAcid3で見つかったBoaのGC参照保持漏れを調べた。Array.fromが取得した一時的なiterator関数の寿命、再現テスト、修正と検証結果を追う。
FP6量子化の思考実験を小さな画像拡大DNNで検証した。量子化条件の探索、撮影系列を分けた174枚の比較、未使用12枚での評価から分かったことを書く。
複数のsandboxやAIコーディングエージェントで作業するとき、会話履歴ではなく決定事項や進捗だけを共有するCLIツールctx-syncを作りました。GitHub GistとGitを使った同期、workerごとの引き継ぎ、競合時の扱いを紹介します。
自作ブラウザOmoikaneで、document.cookieとHTTP通信の連携、Page Visibility API、イベントリスナー、CSS Scroll Snapなどを実装。APIをDOMやネットワーク、ホスト側の状態へつなぐ過程をまとめました。
Visual Storeの既定VP9ビルドがDebian 12 ARM64とsystem libvpx 1.12で失敗する問題を修正した。libvpx FFI bindingsの型差、Rust slice長の境界検査、実環境CI、重複Issueを避けるSkillの更新について書く。