修复本地运行版本不对的问题 #297

Closed
opened 2026-09-07 13:28:34 +08:00 by suzmii · 1 comment
Member

原因

本地运行时读取的版本号来自仓库 package.json;但发布时版本号由构建脚本在构建工作区里临时确定(默认读取 OSS 清单后自动递增一个 patch,也可通过 AGC_RELEASE_VERSION 覆盖指定),并且不会回写仓库。于是仓库源码版本长期停留在旧值(如 0.1.12),而线上 OSS 已发布到更高版本,导致每次启动都误报“发现新版本”,版本对不上。

方案

规范发布流程:发布时以仓库中已提交的版本号为准,禁止在发布时手填版本号,也不再由构建脚本自动递增/改写版本(移除 AGC_RELEASE_VERSION 与构建时自动递增)。同时新增一条版本提升命令(如 npm run ai-game-creator-shell:bump-version),开发者发布前先运行它,把版本号写入五个来源(package.json、根 package-lock.json、tauri.conf.json、Cargo.toml、Cargo.lock)并本地提交;发布再读取该仓库版本,并做“不低于 OSS 线上版本”的防回退校验。

image.png

## 原因 本地运行时读取的版本号来自仓库 package.json;但发布时版本号由构建脚本在构建工作区里临时确定(默认读取 OSS 清单后自动递增一个 patch,也可通过 AGC_RELEASE_VERSION 覆盖指定),并且不会回写仓库。于是仓库源码版本长期停留在旧值(如 0.1.12),而线上 OSS 已发布到更高版本,导致每次启动都误报“发现新版本”,版本对不上。 ## 方案 规范发布流程:发布时以仓库中已提交的版本号为准,禁止在发布时手填版本号,也不再由构建脚本自动递增/改写版本(移除 AGC_RELEASE_VERSION 与构建时自动递增)。同时新增一条版本提升命令(如 npm run ai-game-creator-shell:bump-version),开发者发布前先运行它,把版本号写入五个来源(package.json、根 package-lock.json、tauri.conf.json、Cargo.toml、Cargo.lock)并本地提交;发布再读取该仓库版本,并做“不低于 OSS 线上版本”的防回退校验。 ![image.png](/attachments/e90f9173-8739-44ce-81bd-9a21ebdf60b6)
suzmii self-assigned this 2026-09-07 13:28:34 +08:00
Member

自动更新功能只在release里打开就行

自动更新功能只在release里打开就行
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GenarrativeAI/Genarrative#297