r2 只在人类可读通道渲染 `%prog%`,JSON 两条出口(错误信封的 message/hint、Report 的 warnings)直接序列化未渲染文本,于是 `--json lst` 吐出 `"hint":"%prog% --help 查看命令列表"` ——连 `ull` 自己的 JSON 都被这轮改动弄坏了。 改成**构造时渲染**,一个入口管住所有出口: - `CliError::usage/user/internal/with_hint` 统一过 `render()`(错误只有这一处成形); - `Report::new` 渲染 human 行,`Outcome::with_warnings` 渲染 warnings; - `print_report` / `print_error` 不再各自渲染(渲染点只有一个,不会再有第三条出口漏掉)。 回归测试三条:`json_error_envelope_never_leaks_the_placeholder`、 `json_warnings_never_leak_the_placeholder`、`human_lines_render_the_placeholder_too` (后者同时断言「账户名恰好叫 ull」这种用户数据不被改)。
Rust 原生单文件 Minecraft 启动器:CLI 完整可用(install/launch/accounts/java/diagnose/agent), MCP server 接入外部 Agent 工具,GUI 开发中。