Skip to content

v0.3.0: 部署形态双模收敛、配置中心与 Safe-Mode 落地及全新 CI/CD 镜像发布体系

Choose a tag to compare

@LLMxPM LLMxPM released this 03 Oct 09:38
· 38 commits to main since this release

Web Presentation v0.3.0 发布说明

Web Presentation 迎来里程碑版本 v0.3.0!
本次发布涵盖了部署治理架构收敛、系统配置中心与运行时热更新、AI 模型管理全 Scope 隔离与 Safe-Mode 防护、Runtime 渲染稳定性增强,以及全新 GitHub Actions 分级 CI/CD 与双仓镜像自动化发布体系。


🚀 核心特性与重大更新

1. 部署形态双模收敛与 Lite 零密钥极速启动

  • 生产与轻量双模收敛:交付形态统一收敛为「多容器生产模式(PostgreSQL + Redis + Backend + Editor + Runtime + Renderer)」与「单容器轻量模式(SQLite Lite)」。
  • Lite 零配置免密启动:优化 SQLite 轻量版镜像,实现单容器零外部环境变量、零密钥直接拉起并开箱即用,内置内存级 Runtime 与本地 SQLite 数据持久化。
  • 环境配置瘦身:全面清理根目录与各子模块的历史冗余开发环境变量,统一标准化生产部署模板(deploy/compose/)。

2. 系统配置中心与 Safe-Mode 降级防护

  • 动态配置中心:建立平台系统配置中心,支持运行时通过控制台动态热更新系统核心参数,无需重启服务。
  • Safe-Mode 保护机制:引入全局 Safe-Mode 感知与降级防护机制。当依赖组件、数据库或网络异常时,系统自动跨页感知并进入安全模式,防止服务雪崩与异常数据写穿。
  • 数据安全与后台治理:完善后台 AI 任务动态启停机制,增强敏感密钥脱敏防御与配置审计闭环。

3. AI 模型管理体系全链路重构(P0 ~ P4 阶段治理)

  • 统一管理中心骨架:落地全屏贴合式管理中心布局,消除重复标题栏,视觉与交互风格高度一致。
  • Scope 严格拆分:将模型管理彻底解耦为「平台级全局模型(Platform Scope)」与「个人级模型(User Scope)」,互不越权。
  • Models.dev 目录标准化归并:AI 聊天模型统一通过服务端白名单对齐 Models.dev 目录协议,规范模型元数据。
  • 平台聊天槽位全局隔离:实现助手槽位与模型绑定的全局隔离,模型绑定快照与会话生命周期严格绑定。
  • 生图模型治理优化:解除“已被使用生图模型无法删除”的强限制,支持模型优雅归档与下线。
  • 用户中心交互增强:新增多维度用户搜索、角色筛选与误操作防呆确认机制。

4. Runtime 演示引擎与渲染稳定性优化

  • 卡片排版修复:修复 Runtime 卡片模式下特定文本排版的行高计算异常。
  • 单槽 Renderer 竞态消除:消除远程 Chromium 单槽渲染引擎在跨循环测试与密集截图时的并发竞争,显著提高截图诊断稳定性。

5. 全新 GitHub Actions CI/CD 与发布流水线

  • 智能分级门禁:通过 resolve-test-scope.sh 依据 Git Diff 智能识别变更范围,纯文档提交仅运行快速门禁,代码变更有针对性地触发相关模块与镜像 Smoke。
  • 门禁关键路径解耦:解耦 reusable-quality 中的依赖拓扑,E2E 与后台契约测试、PostgreSQL 认领对拍、Redis 运行态对拍完全并行,门禁耗时大幅缩减。
  • 双仓单次构建一致性发布:重构 publish-image composite action,使用单次 Buildx 多架构构建同时推送到 Docker Hub 与阿里云 ACR,消除二次构建开销,保证双仓镜像 Digest 绝对一致;关闭 OCI provenance 附件以完美兼容阿里云 ACR 个人版。
  • 发布复用机制:Release 流水线自动复用 main 分支既有通过的质量门禁结论,免除重复跑全量测试,发版流程更高效。
  • 防御与容错提升:为全量 Job 显式配置超时限制,Playwright 在 CI 下配置 retries: 1 吸收网络抖动,定时回归配置独立 Concurrency 分组防止被后续提交中断。

🛠️ 变更与修复明细

Backend & AI

  • feat(config): 建立系统配置中心并实现热更新与 Safe-Mode 降级防护
  • feat(settings): 落地平台聊天槽位全局隔离与 Safe-Mode 跨页快照联动
  • feat(editor/settings): 落地 AI 个人与平台 Scope 拆分并归并 Models.dev 目录
  • fix(deploy/config): 完善系统配置治理闭环、AI 后台动态启停与数据安全防御
  • feat(editor/ai): 独立拆分全局与个人模型管理功能,去掉已使用生图模型无法删除的限制

Editor & Frontend

  • refactor(editor/settings): 落地统一管理中心骨架并消除重复标题栏
  • feat(editor/users): 落地用户管理搜索筛选与防呆机制
  • fix(editor/settings): 落地管理中心全屏贴合布局与路由兜底
  • style(editor): 优化管理后台整体样式与视觉体验

Runtime & Renderer

  • fix(runtime): 修复 Runtime 卡片模式下的行高渲染异常
  • test(renderer): 消除单槽测试跨循环竞态并同步全量门禁与 E2E 稳定性修复
  • fix(ci): 排除后端单测对 workspace probe 的误收集,修复凭证收紧失败时的 fail-closed 单测

CI/CD & Deploy

  • ci: 优化 GitHub Actions 门禁编排与双仓单次镜像构建发布链路
  • ci: 引入分级测试脚本与镜像动态构建矩阵,解耦 E2E 关键路径
  • ci: 落地 publish-image composite action,实现双仓镜像 Digest 统一
  • feat(deploy): 收敛部署形态为生产与 Lite 双模并实现 Lite 零密钥启动

📦 交付镜像清单

本次发布在 Docker Hub 与阿里云容器镜像服务(ACR)同步提供以下镜像:

镜像组件 Docker Hub 镜像地址 阿里云 ACR 镜像地址 说明
常规平台 docker.io/llmxpm/web-presentation:v0.3.0 ${ACR_REGISTRY}/${ACR_NAMESPACE}/web-presentation:v0.3.0 Backend + Editor 平台核心服务
SQLite 轻量版 docker.io/llmxpm/web-presentation:sqlite-lite-v0.3.0 ${ACR_REGISTRY}/${ACR_NAMESPACE}/web-presentation:sqlite-lite-v0.3.0 单容器内置 SQLite + Runtime 开箱即用
Runtime 服务 docker.io/llmxpm/web-runtime-vue:v0.3.0 ${ACR_REGISTRY}/${ACR_NAMESPACE}/web-runtime-vue:v0.3.0 Vue 3 + Vite 演示文稿运行时渲染引擎
Renderer 服务 docker.io/llmxpm/web-presentation-renderer:v0.3.0 ${ACR_REGISTRY}/${ACR_NAMESPACE}/web-presentation-renderer:v0.3.0 远程单槽 Chromium 截图与诊断服务

同时,稳定版标签 latest 与 sqlite-lite 已同步指向本次发布版本。


📖 升级说明

  1. 生产模式(Compose):直接拉取最新镜像并重启容器:
    docker compose pull
    docker compose up -d
  2. 轻量单容器(Lite):
    docker run -d --name web-presentation -p 8080:8080 -v wp-data:/app/data llmxpm/web-presentation:sqlite-lite
  3. 数据库兼容性:本次更新包含向下兼容的模型与系统配置表迁移,容器启动时将自动完成 Schema 迁移。