落地输入合规、探索题库、报告日/时辰刷新、账号头像、OEJTS 量表,并补齐 H5 埋点与 Admin 漏斗;同步 ESS 工件、切至自建 Git、清理 GitHub Actions。 Co-authored-by: Cursor <cursoragent@cursor.com>
1.8 KiB
1.8 KiB
BD-2026-013 — Curated scale bank (explore)
Status: Approved
ECR: ECR-013
Date: 2026-08-13
Change Level: L2
Risk: Low–Med(题量大 · 文案非诊断)
Backend Change Boundary
In
- Package
internal/scalebank(embedcurated.json· Catalog/Category/Get/ScoreSum/QuestionID) service/scale:bank slug Get/Submit/LatestResult;EnsurePublishedstub 行handler/scale:/scale-bank/*repository.ScaleRepo.EnsurePublished
Out
- 新业务表存题目全文(题目仅 embed)· 临床类 · Admin 题库 CMS
Module
| Module | Change |
|---|---|
| scalebank | embed A 集 · 稳定 QuestionID |
| scale service | bank 分支计分 BuildResult + disclaimer |
| scale handler | catalog / category |
| OpenAPI | 上述路径 |
Data flow
H5 /explore → GET scale-bank/catalog
H5 /explore/bank/:key → GET scale-bank/categories/:key
H5 /scales/:slug → Get(bank|db) → optional GET result → POST result
Submit bank → EnsurePublished → ScoreSum → BuildResult → SaveResult
API
| Method | Path | Notes |
|---|---|---|
| GET | /api/v1/scale-bank/catalog |
featured + categories |
| GET | /api/v1/scale-bank/categories/:key |
category + items |
| GET/POST | /api/v1/scales/:slug / .../result |
bank slug 同契约 |
Migration
NO(EnsurePublished upsert scales 元数据行;题目不入库)
Test
- unit:
scalebankcatalog/featured icons unique - integration:
TestScaleBankResultRoundtrip(sm1) - H5:ScalePage latest result(含 bank slug)
Rollback
- 下线路由 + 回退 Explore UI;已写
scale_results可保留
Failure
- 未知 category → 40402
- 无结果 → 40411
- 无 Self profile → 提交 400