From f28685afe9495b82e51f6f000f04dbf62e370c2d Mon Sep 17 00:00:00 2001 From: Shiroha7z Date: Mon, 28 Sep 2026 15:07:04 +0800 Subject: [PATCH] docs: record stable release outcome and runtime gaps --- docs/zh/dev/stable-release-plan.md | 31 +++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/docs/zh/dev/stable-release-plan.md b/docs/zh/dev/stable-release-plan.md index c8218fad..fd8697bd 100644 --- a/docs/zh/dev/stable-release-plan.md +++ b/docs/zh/dev/stable-release-plan.md @@ -1,6 +1,6 @@ # SFMC 正式版行动计划 -状态:执行中。本文记录发布门槛与证据;版本、运行状态和线上结果以执行当天的检查为准。 +状态:npm/GitHub 正式版已发布;生产运行与客户端验收待补。本文记录发布门槛与证据;版本、运行状态和线上结果以执行当天的检查为准。 ## 范围与顺序 @@ -21,30 +21,30 @@ ## 阶段二:标准项目与发布链检查 -- [ ] 核对公开包的名称、版本、入口与 exports、files、许可、README、仓库与问题反馈地址、运行环境要求、依赖和 peerDependencies。 -- [ ] 核对 pnpm 锁文件与可重复安装;CI 不隐式改锁或混用包管理器。 -- [ ] 核对 pack 内容:源码与声明文件、可执行入口、默认配置和必要资源齐全,不含运行数据或凭据。 -- [ ] 核对平台与模块的 CI、发布权限、Git tag、npm dist-tag、GitHub Release 和模块索引流程。 -- [ ] 更新中英文安装、升级、发布和回退文档,移除过时的 beta-only 说明。 +- [x] 核对公开包的名称、版本、入口与 exports、files、许可、README、仓库与问题反馈地址、运行环境要求、依赖和 peerDependencies。 +- [x] 核对 pnpm 锁文件与可重复安装;CI 不隐式改锁或混用包管理器。 +- [x] 核对 pack 内容:源码与声明文件、可执行入口、默认配置和必要资源齐全,不含运行数据或凭据。 +- [x] 核对平台与模块的 CI、发布权限、Git tag、npm dist-tag、GitHub Release 和模块索引流程。 +- [x] 更新中英文安装、升级、发布和回退文档,移除过时的 beta-only 说明。 完成证据:在干净检出中用 pnpm 安装、构建、检查并验证打包内容;发布流程能生成可审查的候选版本。 ## 阶段三:功能、升级与运行验收 -- [ ] 对受影响包运行类型检查、构建、平台自检和相称的静态检查;确认 Windows 与 Ubuntu CI 通过。 +- [x] 对受影响包运行类型检查、构建、平台自检和相称的静态检查;确认 Windows 与 Ubuntu CI 通过。 - [ ] 用候选包在隔离的 SFMC_ROOT 中完成安装、初始化、模块安装、构建与加载演练。 - [ ] 对现有数据做备份、升级、恢复和回退演练,检查数据库迁移及配置兼容。 - [ ] 在目标 BDS 版本上检查部署包、重启后的新日志和客户端关键路径;运行中 BDS 的重启须先确认影响窗口。 -- [ ] 记录所有未通过项及修复后的复验结果,不以静态构建代替运行验收。 +- [x] 记录所有未通过项及修复后的复验结果,不以静态构建代替运行验收。 完成证据:候选包、部署包和实际运行的版本可追溯;升级与回退均有成功记录。 ## 阶段四:发布与复核 - [ ] 通过前三阶段后退出 Changesets `beta` 预发布模式,审查 Version PR 的版本与包间依赖。 -- [ ] 按依赖顺序发布平台、聚合包和选定模块;核对 npm `latest`、Git tag、GitHub Release 和模块索引。 -- [ ] 从公共 registry 进行全新 pnpm 安装,复验 CLI、模块安装和基本功能。 -- [ ] 发布正式版公告,列明兼容范围、升级步骤、已知限制和回退版本。 +- [x] 按依赖顺序发布平台、聚合包和选定模块;核对 npm `latest`、Git tag、GitHub Release 和模块索引。 +- [x] 从公共 registry 进行全新 pnpm 安装,复验 CLI、模块安装和基本功能。 +- [x] 发布正式版公告,列明兼容范围、升级步骤、已知限制和回退版本。 完成证据:公共渠道可安装正式版,版本与产物一致,且发布后的最小验收通过。 @@ -106,3 +106,12 @@ - 平台正式版 PR #111 合并后,Changesets 工作流成功发布 9 个公开包,并建立对应 Git tag 和 GitHub Release;公共 registry 的精确版本与 `latest` 已逐项核对。隔离空目录以 pnpm 从公共 registry 安装 `@sfmc-bds/sfmc@0.2.0` 成功,直接运行其 CLI 的 `--version` 输出 `0.2.0`。升级文档中的旧 `sfmc version` 命令已改正。 - 首个模块 `activity-log@0.2.1` 的集中工作流完成 npm 发布,但标签步骤误把 GitHub API 的 404 当作已有标签而失败;公共 registry 已返回该版本,缺失的 `v0.2.1` 标签和 GitHub Release 已补到发布提交 `35c33e4`。工作流正在修复后再发布其余模块。`qq-link` 主分支的集中 dry run 已成功。 - `activity-log` 的标签缺失判断已在 PR #112 修复并合并。第二个模块 `afk@0.2.0` 完成 npm 发布后,GitHub 返回 403,证明主仓 `SFMC_GITHUB_TOKEN` 仍缺少模块仓创建标签所需的 Contents 写权限;它的标签和 Release 已由维护者登录态补齐。集中工作流改为默认只完成 npm 发布并明确提示维护者补齐跨仓元数据,待 token 权限补齐后可启用自动创建。 + +## 发布结果(2026-09-28) + +- 平台 9 个公开包已在 npm `latest` 发布正式版本;最终聚合包 `@sfmc-bds/sfmc@0.2.1`、CLI `@sfmc-bds/cli@0.2.1`、devkit `@sfmc-bds/devkit@1.0.1`。其余公开平台包保持首发的正式版本。主仓 Changesets 工作流、Git tag 和 GitHub Release 成功。 +- 19 个官方模块的精确版本在公共 npm registry 均返回成功,`latest` 对应正式版;GraphQL 一次性复核 19 个模块的 `v` 标签全部指向发布时锁定的主分支提交,且均有 GitHub Release。主仓跨仓 token 不具备模块仓 Contents 写权限,因此模块 GitHub 元数据由维护者登录态逐项补齐;工作流已明确把此项分开。 +- [模块索引 PR #2](https://github.com/Tanya7z/sfmc-modules/pull/2) 合并后自动构建成功;公开 `index.json` 包含 19 个模块,`activity-log=0.2.1`、`data-backup=0.2.1`、`qq-link=0.1.0`。索引对 19/19 个公开 npm 精确版本的联网校验通过。 +- 公共版 CLI `0.2.0` 的 `mod search` 曾把薄索引的 npm 条目显示为 `undefined`,默认安装也未采用索引版本。补丁 PR #114 与正式 Version PR #110 均已合并,Windows/Ubuntu CI 通过,发布 `0.2.1`。全新隔离目录用 pnpm 安装公共 `@sfmc-bds/sfmc@0.2.1` 后,`sfmc --version`、`mod search qq-link` 与从索引安装精确的 `@sfmc-bds/module-qq-link@0.1.0` 均通过,`check-modules OK`。 +- [SFMC 0.2.1 正式版公告](https://github.com/DogeLakeDev/ScriptsForMinecraftServer/releases/tag/%40sfmc-bds/sfmc%400.2.1) 已发布,列出 pnpm 安装、兼容范围、升级前冷备份、未验收项与回退步骤。 +- 生产服未在本轮重启或升级。本机客户端无法连接隔离测试服,维护者要求跳过本次客户端实测;现有服务器历史数据的升级/回退演练、`qq-link` 的客户端绑定/踢人和 QQ 实际投递仍未验收,不能将公开包发布等同于生产运行通过。因此阶段三相关项及阶段四的前置门槛保留未勾选。