diff --git a/docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md b/docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md index 784d0fe..c34e4da 100644 --- a/docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md +++ b/docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md @@ -98,7 +98,9 @@ powershell -NoProfile -ExecutionPolicy Bypass -File .\scripts\verify-phase01.ps1 - `releases/v1.0.0-RC.2/STATUS.md` - `releases/v1.0.0-RC.2/RELEASE_NOTES.md` - `部署架构、运维监控、备份恢复与升级方案.md` -- `docs/Phase-V11-Deployment-Completion-Report.md` +- `docs/Phase-V11-Deployment-Completion-Report.md`(⚠️ **已于 2026-09-18 废止**:其「16/16 E2E PASS」与 + 「Feature Flags 15 项 PASS」均被 Phase 22/23 复验推翻,见该文件头注;部署与 E2E 口径以 `docs/STATUS.md`、 + `docs/OPS.md` 为准) ## Next Phase diff --git a/docs/Phase-13A-V11-Completion-Report.md b/docs/Phase-13A-V11-Completion-Report.md index b6f285c..f4801fc 100644 --- a/docs/Phase-13A-V11-Completion-Report.md +++ b/docs/Phase-13A-V11-Completion-Report.md @@ -23,10 +23,10 @@ > `docs/Phase-XX-V11-Completion-Report.md`(`XX` 为数字),而本文件名是 `Phase-13A-` > (带 `13A`、缺数字段),**不匹配任何模式**而存活。 > -> 同类漏网但**决定保留待决**的一份:`docs/Phase-V11-Deployment-Completion-Report.md` -> (2026-09-09,含已被推翻的「16/16 E2E 通过」)—— 它被保留文档 -> `docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md` 援引,删除会制造**悬空引用**, -> 且不在治理方案的授权范围内,故不擅自删除,见 `docs/文档治理报告-2026-09-18.md`。 +> 同类漏网的一份:`docs/Phase-V11-Deployment-Completion-Report.md`(2026-09-09,含已被推翻的 +> 「16/16 E2E 通过」)—— 它被保留文档 `docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md` +> 援引,删除会制造**悬空引用**,故**已于 2026-09-18 同步原地重写为废止声明**(未删除), +> 见 `docs/文档治理报告-2026-09-18.md` 第 4.4 节。 --- diff --git a/docs/Phase-V11-Deployment-Completion-Report.md b/docs/Phase-V11-Deployment-Completion-Report.md index bf69b2f..591a5ab 100644 --- a/docs/Phase-V11-Deployment-Completion-Report.md +++ b/docs/Phase-V11-Deployment-Completion-Report.md @@ -1,102 +1,25 @@ -# Phase V1.1 本地部署完成报告 +# 【已废止】Phase V1.1 本地部署完成报告(2026-09-09) -**日期**: 2026-09-09 -**版本**: v1.1.0-RC.1 -**状态**: 部署完成,16/16 E2E测试通过 +> ⚠️ **自 2026-09-18 起废止,不得作为验收证据或实现依据。** 文件保留原位仅为治理痕迹; +> 原文(102 行)可从 Git 历史取回:`git log --all -- docs/Phase-V11-Deployment-Completion-Report.md`。 + +**① 原文是什么**:2026-09-09 04:45 生成的 V1.1(`v1.1.0-RC.1`)本地部署快照 —— 6 项后端 + 4 项前端 +缺陷修复清单、本地部署端口表、E2E「16/16 PASS」结果表、数据库记录数、3 项已知限制。 + +**② 为何失效**(逐条已被实测推翻或取代): + +- 「E2E **16/16 PASS**」→ **推翻**。Phase 23 复验发现原用例在 import 期即崩,且断言大量只比对 + **常量字符串**;E2E 在 CI 上**从未真正通过过**。Phase 23B 已重建 E2E 基建(真栈 + conftest + seed 账号)。 +- 「Feature Flags(15 项)PASS」→ **推翻**。Phase 22 证实 4 份 `application*.yml` **没有 `features:` 块**, + 15 个 flag 实为 Java 字段默认、且业务代码**从不读取**(死配置)。 +- 部署端口表(Admin 8086 等)→ **取代**。管理端已收敛至 `/admin/` 子路径,端口 13520(dev)/ 13521(staging)。 +- 3 项「已知限制」→ 不再由本报告跟踪,以 `docs/JIRA_BACKLOG.md`、`REMAINING_WORK.md` 为准。 + +**③ 唯一有效的取代者**:`docs/STATUS.md`(状态与实测口径)、`docs/OPS.md` + `infrastructure/`(部署运维)、 +`docs/V1_1_CHANGELOG.md`(变更历史)。 + +**④ 为何保留而不删除**:本机存在「删除 1 个文件会级联清空其整个父目录」的环境红线(已实测 2 次),且 +`docs/Phase-01-V11-Recovery-Completion-Report-2026-09-09.md` 援引过本文件 —— 删除会同时造成数据损失与悬空引用。 --- - -## 修复的问题汇总 - -### 后端Bug -| # | 问题 | 根因 | 修复 | -|---|------|------|------| -| 1 | `POST /counseling/services` 500 | operator用户ID不在`users`表,通知FK约束违反导致事务中止 | 通知前检查用户是否存在 | -| 2 | `GET /api/v1/home` 404 | `@RequestMapping("/api/v1/home")` 与context-path重复 | 改为`@RequestMapping("/home")` | -| 3 | `GET /api/v1/local-eligibility` 路径重复 | 同上 | 改为`@RequestMapping("/local-eligibility")` | -| 4 | `POST /service-appointments` 500 | Controller不支持从请求体获取userId | ServiceAppointmentRequest新增userId字段,Controller优先使用请求体userId | -| 5 | 18张表缺少updated_at列 | Flyway迁移未包含 | 批量ALTER TABLE添加列 | -| 6 | notifications表缺少updated_at | V004迁移未包含 | ALTER TABLE添加列 | - -### 前端Bug -| # | 问题 | 修复 | -|---|------|------| -| 1 | `CounselingView.vue` 被截断 | 重写完整文件 | -| 2 | `ContentManagementView.vue` 缺少``闭合 | 补全闭合标签 | -| 3 | V1.1模块未注册到router | 添加7个新路由及权限映射 | -| 4 | 侧边栏缺少V1.1菜单项 | MainLayout.vue新增7个菜单项 | - ---- - -## 部署架构 - -``` -http://localhost:8085/api/v1 → 后端 API (Spring Boot) -http://localhost:8086 → Admin Web (Nginx) -http://localhost:5434 → PostgreSQL -http://localhost:6381 → Redis -http://localhost:9003 → MinIO Console -``` - -## 容器状态 - -| 容器 | 镜像 | 状态 | -|------|------|------| -| danyang-match-backend | infrastructure-backend:latest | Up (healthy) | -| danyang-match-postgres | postgres:16-alpine | Up (healthy) | -| danyang-match-redis | redis:7-alpine | Up (healthy) | -| danyang-match-minio | minio/minio:latest | Up (healthy) | -| danyang-match-admin | nginx:alpine | Up | - -## E2E测试结果: 16/16 PASS - -| 测试 | 端点/场景 | 结果 | -|------|-----------|------| -| test_01 | 健康检查 | PASS | -| test_02 | 首页聚合 | PASS | -| test_03 | 首页8核心入口结构(INV-017) | PASS | -| test_04 | 内容分类列表 | PASS | -| test_05 | 文章内容CRUD+发布 | PASS | -| test_06 | 服务预约创建+查询 | PASS | -| test_07 | 咨询创建(INV-012保护) | PASS | -| test_08 | 咨询待分配队列 | PASS | -| test_09 | 红娘转介服务站 | PASS | -| test_10 | 转介历史 | PASS | -| test_11 | V1.1仪表盘 | PASS | -| test_12 | 8个子统计端点 | PASS | -| test_13 | Feature Flags(15项) | PASS | -| test_14 | 4个运营商账号登录 | PASS | -| test_15 | 活动列表(公开) | PASS | -| test_16 | 活动类型枚举 | PASS | - -## 数据库状态 - -| 表 | 记录数 | -|----|--------| -| operators | 4 | -| users | 1 | -| content_categories | 5 | -| home_banners | 9 | -| service_locations | 3 | -| counseling_services | 4 | -| service_appointments | 6+ | -| content_articles | 4+ | - -## 运营商登录凭证 - -测试凭证已从完成报告移除;由本地环境变量或安全 Seed 提供。 - -## 已知限制 - -1. **Content分类无DELETE端点** — ContentController未实现删除分类API(BAD_REQUEST) -2. **ServiceStation统计activeStations返回0** — getV11ServiceDashboard中activeStations计算逻辑需检查 -3. **Admin Web侧边栏** — V1.1菜单项需对应权限才能显示(admin账号全权限可见) - -## 下一步: Phase 24-26 (UAT/RC/Production) - -- **Phase 24 UAT**: 安排真实用户参与完整流程测试 -- **Phase 25 RC内容检查**: 运营团队填充真实文章/活动/服务站信息 -- **Phase 26 Production Smoke Tests**: 13项手动验证(见JIRA_BACKLOG.md) - ---- -*报告生成时间: 2026-09-09 04:45* +*废止头注写入: 2026-09-18;原文见 Git 历史*