目标
run-code-intel.ps1 的 launcher/orchestrator 语义(mode 选择、Skip* flags、publishing、失败汇总)全部并入 code-intel run,PS1 降级为 ≤50 行 thin forwarder(AGENTS.md 允许的 shim 形态)。
迁移原则:port the contract, not the script。 逐段转译 3000 行 PowerShell 是把技术债换语言续命;正确做法是把 T1 冻结的契约在 Rust 侧按 dag_run/execution_kernel 既有架构重新实现,PS1 只负责转发参数。
做法
- 对照 T1 的 contract-inventory,把 launcher 行为分三类:
- 已有:
code-intel run execute 已覆盖的(ci.yml 自扫在用)→ 只补 flag 别名
- 要port:mode 语义、Skip*/Allow* 开关、多产物 publishing → 进 Rust
- 宣告死亡:仅为旧兼容存在、无消费者的 → 列清单,票内决
- PS1 改写为 thin forwarder:参数透传
code-intel run,保留原 exit code 语义。
- README / skill 文档主路径改为二进制直调,PowerShell 仅作为兼容提及(AGENTS.md 文档规则)。
出口
依赖
T1 先行。
目标
run-code-intel.ps1的 launcher/orchestrator 语义(mode 选择、Skip* flags、publishing、失败汇总)全部并入code-intel run,PS1 降级为 ≤50 行 thin forwarder(AGENTS.md 允许的 shim 形态)。迁移原则:port the contract, not the script。 逐段转译 3000 行 PowerShell 是把技术债换语言续命;正确做法是把 T1 冻结的契约在 Rust 侧按 dag_run/execution_kernel 既有架构重新实现,PS1 只负责转发参数。
做法
code-intel run execute已覆盖的(ci.yml 自扫在用)→ 只补 flag 别名code-intel run,保留原 exit code 语义。出口
依赖
T1 先行。