論文の概要: Documentation-Guided Agentic Codebase Migration from C to Rust
- arxiv url: http://arxiv.org/abs/2605.14634v1
- Date: Thu, 14 May 2026 09:46:50 GMT
- ステータス: 翻訳完了
- システム内更新日: 2026-05-15 21:45:34.761969
- Title: Documentation-Guided Agentic Codebase Migration from C to Rust
- Title(参考訳): ドキュメントガイドによるエージェントコードベースのCからRustへの移行
- Authors: Minh Le-Anh, Anh Nguyen Hoang, Bach Le, Nghi D. Q. Bui,
- Abstract要約: RustPrintは、C-to-Rustマイグレーションのためのドキュメント誘導フレームワークである。
モジュール構造、データフロー、API、設計根拠をキャプチャします。
ソーステストスイートを翻訳して実行することにより、実行時の障害がターゲットとする修正をガイドすることができる。
- 参考スコア(独自算出の注目度): 7.75137961900221
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Migrating legacy C repositories to Rust promises stronger memory safety, but existing translators often work at the level of files or functions and miss architectural intent. We present RustPrint, a documentation-guided agentic framework for repository-level C-to-Rust migration. RustPrint first converts the source repository into architecture-aware documentation and treats it as a migration blueprint capturing module structure, data flow, APIs, and design rationale. Coding agents then use this blueprint to plan crates, implement modules, check compilability, reduce unsafe code, and iteratively refine the translated repository. RustPrint next compares documentation from the Rust output against the source documentation and uses mismatches as repair signals. It also translates and runs source test suites so runtime failures can guide targeted fixes. Experiments on eight real-world C repositories ranging from 11K to 84K LoC show that RustPrint compiles every target under both an open-weight (Kimi-K2-Instruct) and a closed-weight (GPT-5.4) backbone, while prior LLM-based translators (Self-Repair, EvoC2Rust) fail repository-wide. With the open-weight Kimi-K2-Instruct backbone, RustPrint exceeds an agentic Claude Code baseline on feature preservation (93.26% vs. 52.52%) and on cross-evaluation test pass rate (95.17% vs. 79.85%). These results suggest that documentation-guided coordination is a useful direction for scalable codebase migration.
- Abstract(参考訳): レガシーCリポジトリをRustに移行することで、メモリの安全性が向上するが、既存のトランスレータはファイルや関数のレベルで動作し、アーキテクチャ上の意図を見逃すことが多い。
RustPrintは、リポジトリレベルのC-to-Rustマイグレーションのためのドキュメント誘導エージェントフレームワークです。
RustPrintはまず、ソースリポジトリをアーキテクチャ対応のドキュメントに変換し、モジュール構造、データフロー、API、設計根拠をキャプチャする移行青写真として扱う。
コーディングエージェントは、このブループリントを使用して、クレートを計画し、モジュールを実装し、コンパイル可能性を確認し、安全でないコードを減らし、翻訳されたリポジトリを反復的に洗練する。
RustPrintは次に、Rust出力のドキュメンテーションとソースドキュメンテーションを比較し、ミスマッチを修復信号として使用する。
また、ソーステストスイートを翻訳して実行することで、実行時の障害がターゲットとする修正をガイドできる。
11Kから84K LoCまでの8つの実世界のCリポジトリの実験では、RustPrintはすべてのターゲットをオープンウェイト(Kimi-K2-Instruct)とクローズドウェイト(GPT-5.4)のバックボーンの両方でコンパイルする。
オープンウェイトなKim-K2-Instructバックボーンでは、RustPrintは機能保存(93.26%対52.52%)とクロス評価テストパスレート(95.17%対79.85%)のエージェントクロードコードベースラインを超えている。
これらの結果から,ドキュメント誘導のコーディネーションは,スケーラブルなコードベース移行に有用な方向であることが示唆された。
関連論文リスト
- Translating Large-Scale C Repositories to Idiomatic Rust [12.221834497939897]
既存のC to Rustの変換テクニックでは、品質とスケーラビリティのバランスが取れない。
本稿では、効率的なリポジトリレベルのCから慣用的な安全なRust翻訳のための、完全に自動化されたパイプラインであるRustineを提案する。
論文 参考訳(メタデータ) (2025-11-25T18:42:46Z) - Trace: Securing Smart Contract Repository Against Access Control Vulnerability [58.02691083789239]
GitHubはソースコード、ドキュメント、設定ファイルを含む多数のスマートコントラクトリポジトリをホストしている。
サードパーティの開発者は、カスタム開発中にこれらのリポジトリからコードを参照、再利用、フォークすることが多い。
スマートコントラクトの脆弱性を検出する既存のツールは、複雑なリポジトリを扱う能力に制限されている。
論文 参考訳(メタデータ) (2025-10-22T05:18:28Z) - RustAssure: Differential Symbolic Testing for LLM-Transpiled C-to-Rust Code [2.1413732583497826]
Rustは、ソフトウェアのセキュリティを大幅に改善するメモリセーフなプログラミング言語である。
Cのような安全でないメモリ言語で書かれた既存のものは、Rustの改善された安全性保証を活用するために、まずRustにコンパイルされなければならない。
RustAssureは、Large Language Models(LLM)を使用して既存のCをRustに自動的にトランスパイルするシステムを提供する。
論文 参考訳(メタデータ) (2025-10-08T22:52:34Z) - Adversarial Agent Collaboration for C to Rust Translation [13.65848262530917]
ACToRは、我々のベンチマークで考慮された63の現実世界のコマンドラインユーティリティを全て翻訳します。
テストパス率は90%を超え、人間の介入はゼロである。
このスケールのCプログラムを確実に翻訳する最初のシステムである。
論文 参考訳(メタデータ) (2025-10-04T17:08:36Z) - EvoC2Rust: A Skeleton-guided Framework for Project-Level C-to-Rust Translation [17.560908544319094]
EvoC2Rustは、完全なCプロジェクトを同等のRustに変換する自動化フレームワークである。
プロジェクトレベルの翻訳には骨格誘導翻訳戦略を採用している。
論文 参考訳(メタデータ) (2025-08-06T10:31:23Z) - CRUST-Bench: A Comprehensive Benchmark for C-to-safe-Rust Transpilation [51.18863297461463]
CRUST-Benchは100のCリポジトリのデータセットで、それぞれが安全なRustとテストケースで手書きのインターフェースとペアリングされている。
我々は、このタスクで最先端の大規模言語モデル(LLM)を評価し、安全で慣用的なRust生成が依然として難しい問題であることを確認した。
最高のパフォーマンスモデルであるOpenAI o1は、ワンショット設定で15タスクしか解決できない。
論文 参考訳(メタデータ) (2025-04-21T17:33:33Z) - RustMap: Towards Project-Scale C-to-Rust Migration via Program Analysis and LLM [13.584956125542396]
Rustは、Cのパフォーマンスを維持しながら、優れたメモリ安全性を提供する。
C2Rustのような既存の自動翻訳ツールは、構文的、テンプレートベースの翻訳に依存しすぎている可能性がある。
本稿では,新しい依存誘導型大規模言語モデル (LLM) をベースとしたC-to-Rust変換手法であるRustMapを提案する。
論文 参考訳(メタデータ) (2025-03-22T11:57:45Z) - ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - RustRepoTrans: Repository-level Code Translation Benchmark Targeting Rust [50.65321080814249]
RustRepoTransは、インクリメンタル翻訳をターゲットにした、最初のリポジトリレベルのコンテキストコード変換ベンチマークである。
複雑な翻訳シナリオの制約を評価するために, 7つの代表的なLLMを評価し, それらの誤差を分析した。
論文 参考訳(メタデータ) (2024-11-21T10:00:52Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。