Files
digital-psychology/docs/CODE_REVIEW/ECR-001-phaseB.md
T
jackyu66gitandCursor 19d3cd5945 refactor(ECR-001): 接入 ESS 并完成结构对齐 Phase A–E
绑定 ESS 双轨治理,拆分超大 H5 页与 Go 引擎,抽出 membership 服务,
并将 star/fortune 重命名为 outlook(JSON 双写兼容);同时修复 /psy API 代理与首页 + 菜单层级。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-05 17:51:40 +08:00

50 lines
1.8 KiB
Markdown
Raw 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.
# CODE_REVIEW — ECR-001 Phase B
**Reviewer:** Cursor Agent (REVIEWER)
**Date:** 2026-08-05
**Decision:** PASS(带人工冒烟)
## Evidence
| Check | Result |
|-------|--------|
| Scope 仅 Phase BHome/Synastry 拆分) | PASS |
| 无 API / OpenAPI / schema 变更 | PASS |
| 页面行数 ≤400 | Home 133 · Synastry 187 PASS |
| BirthDateInputs 绑定与组件 API 一致 | PASSyear/month/day + update:* |
| `build:h5` | PASS(先轮) |
| `homeCatalog` 单测 | PASS |
| 行为冻结 | 逻辑迁入 composable,未见故意改文案/路由 |
## Nits(不阻断)
1. `SynastryPage``v-else-if="loading"``!report` 时不可达——与重构前一致,landing 按钮文案承担 loading。
2. Synastry props/emits 面偏宽;后续可改为注入 composable 或 provide(非本 Phase)。
3. `useSynastryPage` 390 行贴近上限,Phase 后续可再抽 chart helpers。
## Smoke(本会话)
| 项 | 结果 |
|----|------|
| API healthz | PASS |
| Home UI(心情卡/金刚区/推荐) | PASS · 截图 `/tmp/yuxingu-smoke/home.png` |
| Synastry UI 结构 | PASS |
| Synastry `listProfiles` | **BLOCKED initially**`baseURL=/psy/api` 但 Vite 只代理 `/api`,返回 HTML 200 |
### Fix appliedreview 中发现,非 Phase B 引入)
1. `vite.config.ts``base: '/psy/'` + `/psy/api``8080/api` rewrite
2. `client.ts``baseURL` 从错误的 `/psy/api` 改为 `/psy`SDK 路径已含 `/api/v1`,避免 `/psy/api/api/v1`
冒烟后再验:`GET /psy/api/v1/profiles` → 200 JSON;合盘页无「接口返回异常」。
## Risk
低(拆分本身)。代理缺口已修;合盘需至少两档案才可生成结果。
## Gate
- [x] Ready for local smoke
- [x] Human/agent smoke:首页 OK;合盘页 UI OK(代理已修)
- [x] Decision **PASS**