Files
browser/openspec/changes/support-custom-server-deployment-workflows/proposal.md
T

2.1 KiB

Why

服务器创建目前要求已注册的 Run 节点,并且只投递固定生命周期动作;插件声明的端口、人数和路径字段没有进入创建请求。真实自托管场景需要先创建和编辑服务器定义,再在 Run 可用时将其部署到任意用户指定的本机目录,并支持引导式或自定义命令部署。

What Changes

  • 新增可在未绑定 Run 时保存的服务器部署草稿,并允许随后绑定 Run 节点和执行部署。
  • 新增部署方式:插件引导安装、接管已有服务器、用户自定义生命周期命令。
  • 将插件声明的创建表单字段变为实际可渲染、校验和持久化的游戏配置输入;SCUM 和 Minecraft 首先使用该能力。
  • 接受用户主动输入的完整服务器根目录、工作目录和命令,但将它们作为受保护执行输入:不在普通详情、任务摘要、日志或插件桥接中回显。
  • 新增 Run 预检、部署阶段进度和可诊断的排队/领取/执行状态,替代“任务已派发”即结束的体验。
  • BREAKING 扩展服务器创建与生命周期任务契约,使部署定义和受保护执行输入成为显式字段,而不是复用 runtime bindings。

Capabilities

New Capabilities

  • server-deployment-workflows: 草稿、Run 绑定、部署方式、受保护执行输入、预检和阶段化部署状态。
  • plugin-create-configuration: 插件创建字段的安全发布、渲染、校验与 SCUM/Minecraft 配置映射。
  • run-custom-process-execution: Run 对用户定义安装/启动/停止命令的受策略控制执行与脱敏进度回报。

Modified Capabilities

  • None; the repository has no baseline OpenSpec capability specifications.

Impact

  • platform/:领域模型、DTO、验证、持久化、服务器生命周期服务、任务执行输入和 API。
  • platform_web/:服务器创建向导、草稿编辑、部署进度与 API types/client。
  • plugins/:创建 schema、SCUM/Minecraft 声明和生命周期动作模板。
  • 独立 Run 仓库:需要实现新任务执行输入、路径预检、自定义进程策略及阶段进度;本仓库不包含其源码。