ワンクリックで
py2rs-review-r1-rust-style
[DRAFT] 第 1 轮审查:把 Python 风格的 Rust 改写为工程化 Rust。引入 mod.rs / lib.rs / trait / crate 划分 / 生命周期整理。允许结构层面小改,不允许改业务语义。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
[DRAFT] 第 1 轮审查:把 Python 风格的 Rust 改写为工程化 Rust。引入 mod.rs / lib.rs / trait / crate 划分 / 生命周期整理。允许结构层面小改,不允许改业务语义。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Convert Markdown with LaTeX math, images, and tables into a polished PDF. Two rendering engines: (1) weasyprint — pure Python, no browser needed; (2) chromium — best for matrices/bmatrix/pmatrix/vmatrix and complex formulas. Supports Chinese/Japanese fonts. Can chain after ocr-md-polish for a complete OCR→clean→PDF workflow.
Burn core framework - Provides tensor operations, automatic differentiation, and neural network building blocks for Rust deep learning.
Burn CUDA backend - High-performance NVIDIA GPU acceleration. Provides optimal performance for NVIDIA hardware.
Burn Metal backend - Apple GPU acceleration for macOS and iOS. Optimized for Apple Silicon and Intel-based Macs.
Burn NdArray backend - CPU-based tensor operations using Rust's ndarray crate. Ideal for development, testing, and lightweight inference.
Burn ONNX support - Import ONNX models into Burn for inference on any backend. Supports compile-time code generation and runtime loading.
| name | py2rs-review-r1-rust-style |
| description | [DRAFT] 第 1 轮审查:把 Python 风格的 Rust 改写为工程化 Rust。引入 mod.rs / lib.rs / trait / crate 划分 / 生命周期整理。允许结构层面小改,不允许改业务语义。 |
DRAFT(草稿状态)。下面的目录结构建议都是猜想。
rs/src/lib.rs 模板 —— 对外暴露一个稳定 pub mod ... 结构rs/src/<domain>/mod.rs 模板 —— 一个领域一个目录rustfmt.toml / .clippy.toml(可选)—— 统一风格与 lint 级别reviews/r1-<module>.md 模板 —— 本轮审查报告要填的栏目具体拆几个 crate、mod 怎么切,实战项目里定,不是这里能预言的。
**本 skill 必须在 py2rs-review-r0-behavior 之后启动。**启动前必须确认:
manifest/modules.yaml 中状态为 verified 或更高tests/compare/<module>.log 且显示 100% PASS(由 R0 skill 产出)reviews/r0-<module>-signature.md(由 R0 skill 产出的签名对比报告)manifest/signatures/<module>.json(供本审查用作契约)若任一未满足,本 skill 直接拒绝启动。
Python 风格 Rust
↓
工程化 Rust
迁移刚完成时的代码通常长这样:
// rs/main.rs —— 一眼看就是从 py 直译过来的
pub fn get_user(user_id: i64) -> ... { ... }
pub fn save_user(user: &User) -> ... { ... }
pub fn crawl() -> ... { ... }
本 skill 把它推进到标准 Rust 工程形态:
rs/
├─ main.rs # 仅保留入口(CLI / 服务启动)
├─ lib.rs # library root
├─ user/
│ ├─ mod.rs
│ ├─ model.rs
│ └─ service.rs
└─ crawler/
├─ mod.rs
└─ http.rs
main.rs 不再包含业务函数,仅做入口 / 参数解析 / 启动 runtimelib.rs,对外暴露需要被 runtime 调用的 APImod.rs(或者直接用 name.rs 也可,但要显式规划好)pub 只暴露真正对外需要的 API,内部函数为私有HashMap<String, String> 而是 pub struct User { ... })Clone 爆炸(这是迁移代码最常见的味道)&str / &[T],而不是传 String / Vec<T> 的所有权Arc<Mutex<_>> 的过度嵌套(留到 R5 再大规模重构,但本轮要标出来)unwrap() / expect() 在非测试代码中出现,或者显式注释“为什么安全”get_user → fetch_user 视业务而定),只要 manifest/signatures/<module>.json 中的对外契约层被同步更新(在 bridge 处保留同名入口即可)cargo build 无 warning 或仅有可解释的 warningcargo test 全部通过tests/compare/<module>.log 再次运行仍为 PASS(R0 的后置验证)manifest/modules.yaml 中把该模块状态推进为 optimized(若这是最后一轮,则直接写 optimized_at: ...)reviews/r1-<module>.md