结论
给 /openpi-setup 补 versioned 配置加载 fail-closed、apply-failure 回滚 / preview-then-commit、unknown-field 警告。学习 @narumitw/pi-statusline 与 docs/design/PI_CONFIGURATION_ECOSYSTEM_RESEARCH.md 的保存语义。不新增第二条配置入口,不做第二套 Footer,不做成 SuPi 式 Marketplace。
/openpi-setup 仍是唯一用户可见的配置变更入口。doctor / status 留在无参数 /openpi-setup。Pi 继续拥有 install / update / uninstall。本轮未安装、未运行社区包。
事实
冻结身份(last-seen 2026-09-08):
公开 README / 源码声明的保存语义(未在本轮执行):
- unknown 字段 warning,非法已知字段阻止保存;
- 临时文件 + rename;
- live preview 只在确认后落盘;
- 运行时 apply 失败时恢复旧文件与旧状态。
配置生态研究(2026-07-29)已经写过:当前 loader 对读取 / JSON 错误静默回退默认值,缺 document version、来源诊断、apply-failure 回滚。那份研究建议保持单一自然语言入口,先补生命周期,再考虑 project scope / 专用 TUI。
#39 是「agent 提议、用户按键确认」的闸门,不是本 Issue 的 diagnostics / rollback。SuPi 声明式 settings registry 是所有权未定的 Ideas,不要并进本 Issue。
推断
静默把损坏配置变成 defaults,会把用户意图藏起来,也让 doctor 无法区分「没有文件」和「读失败」。unknown field 若直接丢弃,同样会藏意图。这是运行时不变量,不是模型判断。
建议
- versioned config load fail-closed:缺文件才无警告 defaults;malformed / IO error 保留原文件并阻止写入,直到修复或显式 reset。
- apply-failure rollback 或 preview-then-commit。
- unknown fields 警告并保留;若丢弃会藏用户意图,则禁止静默丢弃。
- 不新增
/footer-settings、/permission-settings 等扩展专用命令。
- 无参数
/openpi-setup 继续承担 status / doctor。
任何新的模型可见配置工具必须是 episode-scoped(现有 configure_my_pi_setup 模式),并写入 child 分类;默认 parent-only。
未知
- 现有
setup-config.ts 自 2026-07-29 研究以来,哪些 fail-closed / lock 语义已经补上(本 Issue 实现前应对当前源码再核一次)。
- SuPi registry 是否值得作为后续扩展贡献面:另开 Ideas,不阻塞本 Issue。
验收
关联
结论
给
/openpi-setup补 versioned 配置加载 fail-closed、apply-failure 回滚 / preview-then-commit、unknown-field 警告。学习@narumitw/pi-statusline与docs/design/PI_CONFIGURATION_ECOSYSTEM_RESEARCH.md的保存语义。不新增第二条配置入口,不做第二套 Footer,不做成 SuPi 式 Marketplace。/openpi-setup仍是唯一用户可见的配置变更入口。doctor / status 留在无参数/openpi-setup。Pi 继续拥有 install / update / uninstall。本轮未安装、未运行社区包。事实
冻结身份(last-seen 2026-09-08):
@narumitw/pi-statusline公开 README / 源码声明的保存语义(未在本轮执行):
配置生态研究(2026-07-29)已经写过:当前 loader 对读取 / JSON 错误静默回退默认值,缺 document version、来源诊断、apply-failure 回滚。那份研究建议保持单一自然语言入口,先补生命周期,再考虑 project scope / 专用 TUI。
#39 是「agent 提议、用户按键确认」的闸门,不是本 Issue 的 diagnostics / rollback。SuPi 声明式 settings registry 是所有权未定的 Ideas,不要并进本 Issue。
推断
静默把损坏配置变成 defaults,会把用户意图藏起来,也让 doctor 无法区分「没有文件」和「读失败」。unknown field 若直接丢弃,同样会藏意图。这是运行时不变量,不是模型判断。
建议
/footer-settings、/permission-settings等扩展专用命令。/openpi-setup继续承担 status / doctor。任何新的模型可见配置工具必须是 episode-scoped(现有
configure_my_pi_setup模式),并写入 child 分类;默认 parent-only。未知
setup-config.ts自 2026-07-29 研究以来,哪些 fail-closed / lock 语义已经补上(本 Issue 实现前应对当前源码再核一次)。验收
/openpi-setup内关联
docs/design/PI_CONFIGURATION_ECOSYSTEM_RESEARCH.mddocs/research/PI_COMMUNITY_PLUGIN_SURVEY_2026-09-08.md