Files
cms-SiteForge/docs/V8_15_P6_ACCEPTANCE.md
浅念 601451f22b 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>
2026-10-23 12:31:03 +08:00

35 lines
2.8 KiB
Markdown
Raw Permalink 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.
# SiteForge Enterprise V8.15 — P6 多语言建设与验收
## 本轮完成的能力
| 验收点 | 状态 | 证据 |
|---|---|---|
| 多语言站点组和默认语言 | 本地通过 | `language_groups` / `language_sites` / API |
| 同一内容关联不同语言页面 | 本地通过 | `translation_units` / `translation_members` |
| 已审核、已发布页面生成双向 hreflang | 本地通过 | 中英两站实际构建 + 自动化测试 |
| sitemap 含 XHTML hreflang | 本地通过 | 两站 sitemap.xml 验证 |
| 不存在的翻译不生成伪造链接 | 本地通过 | 缺失、草稿、noindex 测试 |
| 待翻译内容不能意外发布 | 本地通过 | 仅 draft 可 pending,误设 published 时拒绝静态构建 |
| x-default 指向默认语言 | 本地通过 | 明确默认语且存在审批页面才输出 |
| 前台语言切换导航 | 代码完成 | 动态注入,并需真实浏览器视觉验收 |
| 后台多语言菜单及表单 | 代码完成 | 集成 JS / API,真实浏览器端操作仍待验收 |
| 原 243 项测试兼容 | 本地通过 | 本地 pytest 248 passed(含 5 项 P6 专项) |
| 真实 Docker、Chrome、正式域名 | 待验收 | 当前环境无完整 Docker/远程域名实机测试 |
## 主要限制
1. **域名模式**:目前一个语言站一个独立 HTTPS 域名或子域名;同域子路径需进一步设计反向代理、站点构建根路径和 sitemap。
2. **翻译质量**:不自动翻译事实,`approved` 表示人工确认的状态标记,不包含另一人独立翻译审批的完整审计流程。
3. **动态语言链接**:已发布数据可生成对应 URL;必须额外核对真正上线服务器是否已有该版本,不等于远程可访问性证明。
4. **各主题国际化**:四套主题中部分组件和预设仍为中文。正式外语商业交付需按语言提供真实导航、字段标题和空状态文案。
5. **企业生产**:Art Design Pro 官方完整工程、PostgreSQL/Redis 多实例、真实 SFTP/S3 等依旧需要实机验收。
## 手工部署验收步骤
1. 在新 Docker 项目卷启动 V8.15;核对 `/api/health` 返回 `8.15.0-dev.1` 与期望提交 SHA。
2. 创建两个真实的 HTTPS 语言域名站,填写翻译过的公司主页和产品页。
3. 建立一组真实对应关系;分别构建和下载静态站,验证 URL、html lang、canonical、sitemap、hreflang 的对称性。
4. 随机挑选缺翻译、草稿和 noindex 的页面,确认其不会产生无效的互链;将 pending 内容错误设为 published,确认构建被拒绝。
5. Chrome/手机端点击前台语言切换,验证页面存在、焦点可达、移动布局无溢出。
6. 正式发布前审批,两站完成远程发布后从公网检查首页和内页的 hreflang 相互指向,不将示例 `.example.org` 域名当作有效服务。