Files
Genarrative/apps/ai-game-creator-shell/src/app/featureFlags.ts
T
kdletters a5fd25f10a 客户端更新切换到官方更新插件并按渠道分发
- 客户端接入 tauri-plugin-updater:原生侧注册插件,删除自研更新下载命令、下载进度事件与安装器启动逻辑
- 客户端更新服务与更新提示改走官方插件接口,删除自研清单解析、版本比较与下载实现
- 更新能力只授予客户端主窗口,移除只为自研清单放行的 OSS 白名单与 CSP 连接项
- 新增构建期更新检查开关:开发态默认关闭,agc 启动不请求更新清单、不显示更新入口
- 发布脚本按渠道生成官方更新插件清单与签名,universal macOS 产物同时挂两个平台键,缺签名失败关闭
- 发布脚本按渠道上传安装包、签名与渠道清单,并为 dev-win 生成旧协议 sha256 迁移清单
- 构建期按渠道注入更新端点配置,渠道与目标平台不匹配时发布失败关闭
- Jenkins 流水线新增渠道参数与签名凭据注入,归档补充签名与迁移清单
- 新增发布上传 dry-run 开关,只打印 ossutil 命令且不回显凭据
- 更新技术方案与开发运维文档,登记 macOS 渠道落地待办
2026-09-17 17:56:53 +08:00

33 lines
1.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* AGC 客户端构建期特性开关。
*
* 开关只读取 `VITE_*` 构建期变量,运行时不改变;未显式配置时按运行环境回落:
* 开发态(`npm run agc` / `agc:serve` 的 Vite dev server 提供前端)取 `devValue`,
* 正式包取反。
*/
function resolveFeatureFlag(
flag: string | undefined,
{ devValue, dev }: { devValue: boolean; dev: boolean },
) {
const value = flag?.trim();
if (value === '1') return true;
if (value === '0') return false;
return dev ? devValue : !devValue;
}
/**
* 客户端更新检查(启动时的更新提示与“关于”里的手动检查)总开关。
*
* 开发态默认关闭:`agc` 启动的客户端不请求 OSS 更新清单,也不显示更新入口。
* 需要联调更新流程时用 `VITE_AGC_ENABLE_APP_UPDATE_CHECK=1` 显式打开,
* 正式包也可用 `=0` 关闭。
*/
export function resolveAppUpdateCheckEnabled(
flag: string | undefined = import.meta.env.VITE_AGC_ENABLE_APP_UPDATE_CHECK,
dev: boolean = import.meta.env.DEV,
) {
return resolveFeatureFlag(flag, { devValue: false, dev });
}
export const appUpdateCheckEnabled = resolveAppUpdateCheckEnabled();