upgrade: adopt V8.21.3 (V8.13→8.21.3: P5 SFTP/S3, P6 multilingual, editor overhaul, enterprise hardening)

Overlay ~150 upstream items onto our V8.12 base, preserving trade-pro
theme, registry tests, and design docs. Re-applied our patch set
(discovery/env_for/blocks.css/type-mapping/theme_color/frontend entries,
test_theme_pro_v3 mods) — all anchors survived upstream evolution.

New platform enhancement (fixes upgrade-introduced regression):
multilingual.site_locale now honors settings_json.locale, plus
PUT /api/i18n/sites/{id}/locale — standalone English sites get
<html lang='en'> under the V8.15 locale-rewrite pipeline.

compose: adopt V8.21.3 (image 8.21.3-dev.1, /api/ready probes, MySQL/S3
env) with project name pinned to siteforge-v8-10 (data volumes).

Tests: 356 passed / 11 failed — all 11 confirmed pre-existing in
pristine V8.21.3 on this host (10 upstream Windows env + our build test
now green after locale fix). Patch registry updated in plan doc.

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-10-23 12:31:03 +08:00
parent 257c89e159
commit 601451f22b
218 changed files with 10441 additions and 628 deletions
+10 -24
View File
@@ -1,28 +1,14 @@
# Art Design Pro 官方工程对接(可执行安装器)
# SiteForge V8.19 → Art Design Pro 集成模块
SiteForge V2 随包提供三个 Vue 3 + Element Plus 业务页面:`WebsiteFactory.vue`、`ThemeCenter.vue`、`EnterpriseCenter.vue`。
当前交付包含 9 个 Vue 业务页面(含新工作台和内容管理)、共享请求/会话工具 `_shared.ts`、正式单一导航树安装器,以及 FastAPI 授权菜单 `/api/console/bootstrap`。**未包含 Art Design Pro 官方完整源代码及依赖**,故不能直接执行 Art 的正式 `pnpm build`。
> **重要:** 由于本次代码执行环境无法访问 GitHub 与 npm,无法直接打包或编译 Art Design Pro 官方完整仓库。以下对接脚本已实现源码复制和路由注册逻辑,但尚未针对官方实际项目执行 `pnpm build`。默认可运行的 `/factory-studio` Web 管理台不依赖这些文件。
正式接入说明、所需反向代理和权限边界见 [`docs/V8_19_ART_UNIFIED_BACKEND.md`](../../docs/V8_19_ART_UNIFIED_BACKEND.md)。所有后台写操作由 SiteForge FastAPI 服务端会话、CSRF、站点角色权限控制;Art 演示登录/菜单不能代替服务端授权。官方项目从 <https://github.com/Daymychen/art-design-pro> 按适用许可证获取。
## 在联网设备对接
快速验证:
1. 依官方文档克隆 `https://github.com/Daymychen/art-design-pro`,使用符合要求的 Node 版本和 pnpm。
2. 在 SiteForge 根目录执行:
```bash
python scripts/install_into_art_design_pro.py /path/to/art-design-pro
python scripts/install_into_art_design_pro.py /path/to/art-design-pro --apply
```
3. 使用同域反向代理:
- Art 前端 `/` 为网站工厂管理 UI
- `/api` → SiteForge FastAPI
- `/editor`、`/preview`、`/ui`、`/local-media`、`/login`、`/factory-studio` → SiteForge FastAPI
4. 在 Art 工程目录执行 `pnpm install && pnpm build`,访问 `/siteforge/factory`、`/siteforge/themes`、`/siteforge/enterprise`。
5. SiteForge API 仍使用自己的服务端 Session、CSRF、站点级 RBAC;前端的隐藏菜单不构成授权。`/api/auth/me` 必须在同一 Cookie 域名可访问。正式发布需统一登录体验,并补齐 Art 当前版本的路由/权限约定。
安装脚本不会覆盖已有配置而不备份:原 `asyncRoutes.ts` 会先保存 `.ts.siteforge-backup`,同名 Vue 文件另存 `.vue.siteforge-backup`。重复执行不会重复插入路由。
官方路由结构和本项目的适配规则以 [Art Design Pro 官方路由文档](https://www.artd.pro/docs/zh/guide/essentials/route.html) 为准。
```bash
python scripts/install_into_art_design_pro.py /path/to/art-design-pro
python scripts/install_into_art_design_pro.py /path/to/art-design-pro --apply
python scripts/verify_art_design_pro_v819.py /path/to/art-design-pro
# 官方源码依赖安装后,才可额外执行 --build
```