5c7643fcf2
- Overlay 26 changed files from SiteForge_Enterprise_V8_12 (UI layer only: professional-ui.js/css, workspace/factory-v2/operations/editor templates, +2 test files, compose/ci/scripts/docs) - Re-apply v8_workflows type-mapping fix (类型/分类) lost in upgrade - Pin compose project name to siteforge-v8-10 so existing data volumes (hesupipe site 483295c29ea0, 193 entries) keep attached - Drop stray .s10_* state files; ignore .s10_*/.sf_*/.s87_* patterns - Plan/spec revisions per plan-review round 1 (icons are new design, real test assertions, recorded deviations) Tests: 226 passed / 1 env-only failure (test needs node binary in PATH, absent in python:3.12-slim container; host node v24 --check all 9 JS OK) Co-Authored-By: Claude Code <noreply@anthropic.com>
45 lines
3.4 KiB
Markdown
45 lines
3.4 KiB
Markdown
# SiteForge Enterprise V8.12 — 工作台流程与任务可恢复性
|
|
|
|
## 本轮目标
|
|
|
|
在 V8.11 专业页面统一导航之后,继续修复普通用户实际操作中的断点。**本版不声称完成 Art Design Pro 官方前端或 P5 企业级远程发布**,数据库 schema、主题和已有构建引擎未作破坏性变更。
|
|
|
|
## 真实代码改动
|
|
|
|
| 旧问题 | 新功能 | 实现位置 |
|
|
|---|---|---|
|
|
| 刷新后回到首页,丢失当前站点 | 优先解析 URL 中 site/view,之后参考上次网站偏好;**都要先校验 /api/sites 可访问列表** | `app/static/workspace.js` |
|
|
| 无法前进/后退或分享指定页面 | 用 `history.pushState` 和 `popstate` 管理站点+菜单状态,避免浏览器刷新;异步选站采用序号避免慢响应覆盖当前站 | `workspace.js` |
|
|
| 工作台“完善设计”永远显示未完成 | 设计标为持续优化项,按已有内容与构建确定建议的下一步,不杜撰人工验收结果 | `workspace.js` |
|
|
| 关闭/刷新构建页后看不到运行中的任务 | 查询 `/api/enterprise/sites/{id}/jobs` 和已有构建版本;进入构建页自动刷新;有活跃任务时定期刷新并禁止重复点击 | `workspace.js` |
|
|
| 任务取消入口不直观 | 在构建页直观显示 Worker 状态与取消按钮,仍调用受权限保护的原 API | `workspace.js` |
|
|
| 构建未完成也显示预览/下载入口 | 仅完成状态提供预览、质量报告和 ZIP 下载 | `workspace.js` |
|
|
| “快速导入”默认直接写入且不可批次回滚 | 默认进入既有可暂存、预演、确认、回滚的专业导入工作台;快速直写保留在显式展开的高级区并要求确认 | `workspace.js` |
|
|
| 难以分清构建与正式发布 | 增加“交付前检查”按钮,调用既有 `/api/factory/sites/{id}/migration/readiness`,展示阻断及待审事项,不将构建完成误称为上线 | `workspace.js` |
|
|
|
|
## 验证与已知限制
|
|
|
|
- 后端使用现有 CSRF 与 RBAC,不引入第二套任务队列。
|
|
- 离线预览文件使用模拟 API 和示例数据,不连接真实后台,不能用于证明真实浏览器 E2E。
|
|
- 正式站点需要实测多网站切换、长耗时 Worker、真实数据导入和 SEO 审核;生产发布仍需 P5 完整实施。
|
|
- V8.12 没有声称已经完成 Elementor/WooCommerce 任意站点无损迁移、PostgreSQL/Redis 多实例生产验收或官方 Art Design Pro 编译。
|
|
|
|
## 推荐人工验收步骤
|
|
|
|
1. 登录,选择网站 A,进入内容管理;复制浏览器 URL 并刷新,仍在 A 内容页面。
|
|
2. 切换 B,使用浏览器返回/前进,正确恢复 A/B 且没有旧站 API 响应覆盖当前站。
|
|
3. 提交构建,跳到其他菜单再回来;Worker 运行时界面可恢复;取消按钮有确认。
|
|
4. 构建未完成时不提供下载;成功后出现预览、检查及 ZIP。
|
|
5. 导入页面的主要操作进入“安全导入”,直写只在高级折叠区。
|
|
6. 运行交付前检查,能识别阻断和待审核事项;检查通过也不会显示已上线。
|
|
7. 360px 与 390px 下侧边栏、任务列表、操作按钮可触达。
|
|
|
|
## 运行
|
|
|
|
```powershell
|
|
docker run --rm -v "${PWD}:/project" -w /project python:3.12-slim python scripts/init_config.py
|
|
docker compose up -d --build
|
|
```
|
|
|
|
**部署建议:** 在新测试卷启动,不直接覆盖原 V8.11 数据卷。检查 `/api/health` 版本为 `8.12.0-dev.1` 后再进行测试。
|