merge: 合入本地 Ops 扩展与 origin/main(ECR-009–016)

保留远程用户侧 ECR-009–016 与本地 Ops 目录/RBAC/CMS/危机等能力;文档标注分叉期间 ECR 编号冲突。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
jackyu66git
2026-08-13 01:45:53 +08:00
co-authored by Cursor
593 changed files with 21918 additions and 328 deletions
+4 -2
View File
@@ -1,9 +1,10 @@
# ECR-007
**Title:** 运营行为分析 Ops-B(自有埋点采集 · 管理端数据看板)
**Status:** Approved
**Status:** Closed
**Date:** 2026-08-07
**Approved:** 2026-08-07Human
**Closed:** 2026-08-07Reviewer · Approve + ess-validate review PASS
**Change Level:** L2(新能力;栈与分层不变)
## Change
@@ -50,8 +51,9 @@
- [x] IntegrationH5 形态上报 → DB → admin analytics GET 非空且量级一致
- [x] `go test` 相关包绿;`npm run build:h5` · `build:admin` 绿
- [x] OpenAPI / TRACEABILITY / STATE / TEST_REPORT / CODE_REVIEW
- [ ] `python scripts/ess-validate.py --phase review --ecr ECR-007`Reviewer 门禁)
- [x] `python3 scripts/ess-validate.py --phase review --ecr ECR-007`Reviewer 门禁 PASS
- [x] Docs + CHANGELOG
- [x] Reviewer ClosedSTATE · TRACEABILITY
## Rollback
+4 -2
View File
@@ -1,9 +1,10 @@
# ECR-008
**Title:** 运营内容配置 Ops-C(首页宫格 CRUD · 测评上下架)
**Status:** Approved
**Status:** Closed
**Date:** 2026-08-07
**Approved:** 2026-08-07Human
**Closed:** 2026-08-07Reviewer · Approve + ess-validate review PASS
**Change Level:** L2(新能力;栈与分层不变)
## Change
@@ -48,8 +49,9 @@
- [x] IntegrationPUT tools → GET home/toolsPATCH scale draft → ListPublished 不含
- [x] `go test` · `build:h5` · `build:admin` 绿
- [x] OpenAPI / TRACEABILITY / STATE / TEST_REPORT / CODE_REVIEW
- [x] `ess-validate --phase review`
- [x] `python3 scripts/ess-validate.py --phase review --ecr ECR-008`PASS
- [x] Docs + CHANGELOG
- [x] Reviewer ClosedSTATE · TRACEABILITY
## Rollback
+80
View File
@@ -0,0 +1,80 @@
# ECR-012
**Title:** 星座对齐收口(星盘 · 运势 outlook · 合盘)
**Status:** Approved
**Date:** 2026-08-07
**Approved:** 2026-08-07Human
**Change Level: L2**(可见体验/契约文档对齐;栈与分层不变)
## Change
在已有 P2 星座/合盘实现上做 **Spec ↔ 实现对齐收口**(非真支付、非新探索模块):
1. 修订 Active Feature Spec`.ai/product/feature-spec/star-profile.md`Gaps · §12 用词 · Implementation Notes
2. H5`/star` · `/reports/:id`(type=star) · `/synastry*` 体验与文案对齐 Spec §5–12
3. 清理 ECR-003 残留:类型/组件内 `lucky` 字段、内部仍混用的 `fortune` JSON 读路径(**用户可见 Tab 文案「运势」保留**)
4. 报告页星座面板与星座主页运势信息密度对齐(dims / boost / caution / 日–一生)
5. 补强测试:integration/H5/e2e 对 outlook · 轮盘 · 合盘五主盘键的断言;lexicon 禁用词扫描覆盖合盘路径
6. 更新 `feature-map` / `P2-BACKLOG`:星座由「对齐中」→ 本 ECR Closed 后标 Done
## Motivation
P2-BACKLOG 已写「星盘/运势/合盘对齐中」:主路径可跑,但 Spec 验收措辞、报告页与主页体验、H5 命名卫生与 e2e mock 偏薄,导致无法宣称星座模块 Feature Complete。
## Scope
### Allowed
- 上列 Spec / H5 /(必要时)`internal/star` 文案或 summary 键卫生 · OpenAPI 描述补强
- 埋点:保持 `portrait_completed{source:star}` 与 Spec「`star_completed` / portrait_completed source=star」等价;若补 `star_completed` 别名须同步 analytics 白名单
- 分享:星座结果分享 payload 类型/标题与 lexicon 一致(若现用 `portrait` 类型属偏差则修正)
- TRACEABILITY · STATE · TEST_REPORT · CODE_REVIEW · CHANGELOG
### ForbiddenNon-goals
- **真支付网关**(支付仍 mock;另开 ECR,排期最后)
- 微信 OAuth / 短信 OTP · 原生分享 SDK · 短链服务
- 达人 / 消息 / UGC / 独立运势 Feed
- 换星历引擎、改宫位制(Whole Sign 冻结)、新表 migration(本 ECR **默认无 migration**
- 身心节律 / 意象卡片 / Ops-D+ / 小程序业务
## Risk
| Risk | Mitigation |
|------|------------|
| 改 Tab 内部 key 破坏深链 | 用户可见「运势」不变;URL/query 变更须兼容或写清迁移 |
| 过度改 JSON 破坏旧报告 | 只读 `outlook`;禁止写回 `fortune`;旧库报告无 outlook 时 H5 降级空态 |
| 文案踩 lexicon | 合盘免责已有;扫「占卜/算命」恐吓;允许运势分与匹配指数 |
| 范围膨胀成内容大修 | 深度版长文「明显缺段」才补;不重写整包星盘文案库 |
## Acceptance Criteria
- [x] Spec `star-profile.md` §12 用例可映射到测试;§14 Gaps 反映本 ECR 收口结果
- [x] `/star`Empty 生日表单 → Normal(轮盘 + outlook 日/周/月/年/一生 + 行运)+ Locked 深度墙;无禁用恐吓词
- [x] `/reports/:id` type=star:运势面板信息密度不低于主页基础层(score/label/tip + dims 或显式降级说明)
- [x] `/synastry`:三指数 + `charts` 五主盘 + 三推运 key 可见(无权益时 detail 剥离)
- [x] JSON summary **无** `fortune` 键;H5 **不读** `lucky`
- [x] Integration`TestFlowStarDeepAccess` + synastry charts 键保持绿;必要时增补断言
- [x] H5 单测 / e2ep2 star 路径)mock 含 outlook 最小字段
- [x] OpenAPI / TRACEABILITY / STATE / TEST_REPORTCODE_REVIEW 待 Reviewer
- [ ] `python3 scripts/ess-validate.py --phase review --ecr ECR-012`Reviewer
- [x] Docs + CHANGELOGP2-BACKLOG 星座行更新
## Rollback
- 回滚本 ECR 提交;不涉及 DB down migration
- 若仅文档 Closed 前中止:将 STATE 标 Rejected / 搁置
## Risk Review
- Path: N/A(非交易)
## Linked
- Feature Spec: `.ai/product/feature-spec/star-profile.md`
- PRODUCT_SPEC: `docs/PRODUCT_SPEC/ECR-012-star-alignment.md`
- ENGINEERING_SPEC: `docs/ENGINEERING_SPEC/ECR-012-star-alignment.md`
- BACKEND_DESIGN: `docs/BACKEND_DESIGN/BD-2026-012-star-alignment.md`BD-2026-012
- HANDOFF / TASK / STATE:同号前缀
- 前序:ECR-003 outlook 卫生 · ECR-004/005 拆分 · P2 星座已落地
- 明确后置:真支付 ECR(最后)
+75
View File
@@ -0,0 +1,75 @@
# ECR-013A
**Title:** Admin RBAC(角色 · 权限点 · API 强制鉴权)
**Status:** **Closed**
**Date:** 2026-08-07
**Approved:** 2026-08-07Human
**Coding Start Authorization:** 2026-08-07Human
**Closed:** 2026-08-07Reviewer Approve
**Parent:** WAVE0-FROZEN (`27f27a1`)
**Change Level: L2**(行为:管理员授权模型;栈与分层不变)
## Change
1. Active Feature Spec`.ai/product/feature-spec/ops-rbac.md`
2. Domain`AdminRole` · `AdminPermission``AdminAccount.role_id`
3. API 意图:`GET/PUT /api/v1/admin/roles*` · 扩展 `GET /me` permissions
4. 既有 admin 写路径挂 permission;缺权 403 + AuditLog
5. **contract_diff**`docs/CONTRACT_DIFF/ECR-013A.yaml`P0
6. **不含** UserStatus / 账户启停(ECR-013B
## Motivation
Ops-A 管理员权限扁平;进入多运营角色与 M1+ 前必须有可审计的最小权限模型。
## Scope
### Allowed
- 上列 Spec / Domain / API 意图 / BD Draft / AC(四类)
- feature-map §7 · TRACEABILITY · STATE · TASKarchitect
### ForbiddenNon-goals
- ECR-013B AccountLifecycle(另 Start Authorization
- 真支付 · UGC · Prompt · 兑换码 · Crisis · 完整角色编辑 UI(本切片 API-first + me 最小展示)
## Risk
| Risk | Mitigation |
|------|------------|
| 锁死全部管理员 | 种子 `super_admin` 不可删;bootstrap 保留 |
| 权限码膨胀 | 本切片冻结 catalog;新增须新 ECR |
| 与 Ops-B/C 路由遗漏挂权 | ENGINEERING_SPEC 列清单;integration 覆盖 grant/content |
## Acceptance Criteria
见 Spec `ops-rbac.md` L4AC-F-01..03 · AC-S-01..04 · AC-P-01 · AC-O-01..02(实现轮勾选)
契约 / 实现完成标准:
- [x] L0L4 填满
- [x] contract_diff 已交
- [x] BD Draft + HANDOFF
- [x] Human **Approve** ECR+BD + Coding Start Authorization
- [x] Migration + middleware + roles API + TEST_REPORT
- [x] Reviewer Approve → **Closed**
## Rollback
- down migration `000015` + 回退 permission middleware
## Risk Review
- Path: N/A
## Linked
- Feature Spec: `.ai/product/feature-spec/ops-rbac.md`
- PRODUCT_SPEC: `docs/PRODUCT_SPEC/ECR-013A-admin-rbac.md`
- ENGINEERING_SPEC: `docs/ENGINEERING_SPEC/ECR-013A-admin-rbac.md`
- BACKEND_DESIGN: `docs/BACKEND_DESIGN/BD-2026-013A-admin-rbac.md`
- CONTRACT_DIFF: `docs/CONTRACT_DIFF/ECR-013A.yaml`
- TEST_REPORT: `docs/TEST_REPORT/ECR-013A.md`
- CODE_REVIEW: `docs/CODE_REVIEW/ECR-013A.md`
- Parent: WAVE0-FROZEN
+72
View File
@@ -0,0 +1,72 @@
# ECR-013B
**Title:** AccountLifecycleUserStatus 状态机 · 运营启停/封禁 · C 端拒绝)
**Status:** **Closed**
**Date:** 2026-08-07
**Approved:** 2026-08-07Human
**Coding Start Authorization:** 2026-08-07Human
**Closed:** 2026-08-07Reviewer · Loop continuous
**Parent:** WAVE0-FROZEN (`27f27a1`)
**Predecessor:** ECR-013A **Closed**
**Change Level: L2**(行为:账户状态强制;栈与分层不变)
## Change
1. Active Feature Spec`.ai/product/feature-spec/ops-account-lifecycle.md`
2. Domain:落实 `UserStatus` · `AccountStateTransition`
3. API 意图:`POST /admin/users/:id/status` · `GET .../status-transitions`
4. C 端:非 `active` → DeviceAuth/Bearer **拒绝**
5. RBAC additive`admin.users.status.write`
6. **contract_diff**`docs/CONTRACT_DIFF/ECR-013B.yaml`P0
7. **不含** soft-delete / UGC / 真支付
## Motivation
`users.status` 已存在但无运营迁移与会话阻断;013A 权限门禁就绪后可落地最小风控闭环。
## Scope
### Allowed
- Spec L0L4 · Domain 对齐 · BD Draft · AC · feature-map §7 · TRACEABILITY · STATE · TASK
### ForbiddenNon-goals
- (实现轮已授权)soft-delete 仍禁;真支付 · UGC · Prompt
- soft-delete · GDPR 擦除
- 真支付 · UGC · Prompt · Crisis 深化
## Risk
| Risk | Mitigation |
|------|------------|
| 误封超级用户/自测号 | reason 必填;Audit + transitions;可回迁 active |
| 与 session 缓存不一致 | 每次请求读 User.status(本切片不引入长缓存) |
| 权限码遗漏种子 | migration 写入 super_adminintegration 覆盖 |
## Acceptance Criteria
见 Spec `ops-account-lifecycle.md` L4AC-F-01..04 · AC-S-01..04 · AC-P-01 · AC-O-01..02
契约轮完成标准:
- [x] L0L4 填满
- [x] contract_diff 已交
- [x] BD Draft + HANDOFF(禁 coding
- [x] Human **Approve** ECR+BD + Coding Start Authorization
- [x] Implemented + TEST_REPORT
- [x] Reviewer Closed
## Rollback
- 契约轮:废弃 Draft
- 实现轮:down migration + 回退 DeviceAuth 检查
## Linked
- Feature Spec: `.ai/product/feature-spec/ops-account-lifecycle.md`
- PRODUCT_SPEC: `docs/PRODUCT_SPEC/ECR-013B-account-lifecycle.md`
- ENGINEERING_SPEC: `docs/ENGINEERING_SPEC/ECR-013B-account-lifecycle.md`
- BACKEND_DESIGN: `docs/BACKEND_DESIGN/BD-2026-013B-account-lifecycle.md`
- CONTRACT_DIFF: `docs/CONTRACT_DIFF/ECR-013B.yaml`
- Parent: WAVE0-FROZEN · Predecessor: ECR-013A
+29
View File
@@ -0,0 +1,29 @@
# ECR-014
**Title:** MembershipPlan(会员套餐配置薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN (`27f27a1`)
**Predecessor:** ECR-013B **Closed**
**Change Level: L2**
## Change
1. Spec `ops-membership-plan.md`
2. Entity `MembershipPlan` 表 + 种子 month/quarter/year
3. Admin GET/PUT `/membership-plans*`
4. Grant / CreateOrder(membership) 读表
5. `docs/CONTRACT_DIFF/ECR-014.yaml`
6. **不含** 真支付 · 兑换码 · Entitlement · ask_pack
## Scope Forbidden
UGC · 真支付 · soft-delete User · 新建 plan code(本切片冻结三码)
## Acceptance
见 Spec L4。
## Linked
- Spec / PRODUCT / ENGINEERING / BD-2026-014 / CONTRACT_DIFF / HANDOFF / STATE / TASK
+19
View File
@@ -0,0 +1,19 @@
# ECR-015
**Title:** RedemptionCode(兑换码薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-014 Closed
**Change Level:** L2
## Change
批次生成兑换码 → C 端兑码延长 MembershipPlan 对应时长 · 可作废 · 审计
## Forbidden
真支付 · UGC · ask_pack 兑换 · soft-delete
## Linked
Spec `ops-redemption-code.md` · BD-2026-015 · CONTRACT_DIFF/ECR-015.yaml
+19
View File
@@ -0,0 +1,19 @@
# ECR-016
**Title:** UserIntelligence(用户洞察只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-015 Closed
**Change Level:** L2
## Change
`GET /admin/users/:id/insight` 聚合报告/标签/行为快照;admin-h5 用户详情「洞察」区。
## Forbidden
新表 · 写标签 · Ask 正文编辑 · 真支付 · UGC
## Linked
Spec `ops-user-intelligence.md` · BD-2026-016 · CONTRACT_DIFF/ECR-016.yaml · TEST_REPORT/ECR-016.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-017
**Title:** AskOperations(问答会话只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-016 Closed
**Change Level:** L2
## Change
`GET /admin/ask/threads` · `GET /admin/ask/threads/:id`AskSessionView);权限 `admin.ask.read`admin-h5「问答」页。
## Forbidden
改消息 · Prompt/Knowledge 配置 · QualityFeedback 写 · 真支付 · UGC
## Linked
Spec `ops-ask-operations.md` · BD-2026-017 · CONTRACT_DIFF/ECR-017.yaml · TEST_REPORT/ECR-017.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-018
**Title:** Entitlement(用户权益只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-017 Closed
**Change Level:** L2
## Change
`GET /admin/users/:id/entitlements` 聚合 Membership/DeepAccess/问答额度;admin-h5 用户详情「权益」区。
## Forbidden
真支付 · 新权益表 · 改订单 · UGC
## Linked
Spec `ops-entitlement.md` · BD-2026-018 · CONTRACT_DIFF/ECR-018.yaml · TEST_REPORT/ECR-018.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-019
**Title:** ContentSafety · FilterRule(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-018 Closed
**Change Level:** L2
## Change
`filter_rules` + `GET /admin/content-safety/filter-rules*` · `POST .../evaluate`;权限 `admin.content_safety.read`admin-h5「安全」页。
## Forbidden
ModerationCase 写 · Crisis 配置写 · UGC · 真支付 · 厂商审核接入
## Linked
Spec `ops-content-safety.md` · BD-2026-019 · CONTRACT_DIFF/ECR-019.yaml · TEST_REPORT/ECR-019.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-020
**Title:** QualityFeedback(问答质量反馈薄切片)
**Status:** **Closed**
**Closed:** 2026-08-07Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-019 Closed
**Change Level:** L2
## Change
`ask_quality_feedback`;运营 list/create · C 端评分;admin-h5 问答页反馈区。
## Forbidden
改消息 · Prompt 配置 · UGC · 真支付
## Linked
Spec `ops-quality-feedback.md` · BD-2026-020 · CONTRACT_DIFF/ECR-020.yaml · TEST_REPORT/ECR-020.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-021
**Title:** AICoreConfig · SystemPrompt(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-020 Closed
**Change Level:** L2
## Change
`system_prompts` + `GET /admin/ai/system-prompts*`;权限 `admin.ai_config.read`admin-h5「AI」页。
## Forbidden
Prompt 写发布 · Knowledge/Tools · UGC · 真支付
## Linked
Spec `ops-ai-core-config.md` · BD-2026-021 · CONTRACT_DIFF/ECR-021.yaml · TEST_REPORT/ECR-021.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-022
**Title:** CrisisCare · CrisisPolicy(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-021 Closed
**Change Level:** L2
## Change
`crisis_policies` + `GET /admin/crisis/policies*` · `POST .../evaluate`;权限 `admin.crisis.read`admin-h5「危机」页。
## Forbidden
CrisisEvent 写 · 策略写发布 · 医疗诊断 · UGC · 真支付
## Linked
Spec `ops-crisis-care.md` · BD-2026-022 · CONTRACT_DIFF/ECR-022.yaml · TEST_REPORT/ECR-022.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-023
**Title:** AICoreConfig · KnowledgeSource(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-022 Closed
**Change Level:** L2
## Change
`knowledge_sources` + `GET /admin/ai/knowledge-sources*`;复用 `admin.ai_config.read`;admin-h5「AI」页增知识源区。
## Forbidden
KnowledgeChunk/Embedding 写 · 源上传 · 在线发布 · UGC · 真支付
## Linked
Spec `ops-knowledge-source.md` · BD-2026-023 · CONTRACT_DIFF/ECR-023.yaml · TEST_REPORT/ECR-023.md
+19
View File
@@ -0,0 +1,19 @@
# ECR-024
**Title:** OpsCMS · Banner(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-023 Closed
**Change Level:** L2
## Change
`ops_banners` + `GET /admin/cms/banners*``admin.cms.read`admin-h5 `/cms`
## Forbidden
Banner 写发布 · FeedSlot · ScheduledPublication · UGC · 真支付
## Linked
Spec `ops-banner.md` · BD-2026-024 · CONTRACT_DIFF/ECR-024.yaml · TEST_REPORT/ECR-024.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-025
**Title:** OpsCMS · FeedSlot(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-024 Closed
**Change Level:** L2
## Change
FeedSlot 只读 · migration 000026 · admin-h5 /cms
## Linked
Spec `ops-feed-slot.md` · BD-2026-025 · CONTRACT_DIFF/ECR-025.yaml · TEST_REPORT/ECR-025.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-026
**Title:** OpsCMS · ScheduledPublication(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-025 Closed
**Change Level:** L2
## Change
ScheduledPublication 只读 · migration 000027 · admin-h5 client + /cms
## Linked
Spec `ops-scheduled-publication.md` · BD-2026-026 · CONTRACT_DIFF/ECR-026.yaml · TEST_REPORT/ECR-026.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-027
**Title:** AICoreConfig · KnowledgeChunk(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-026 Closed
**Change Level:** L2
## Change
KnowledgeChunk 只读 · migration 000028 · admin client · /ai/knowledge-chunks
## Linked
Spec `ops-knowledge-chunk.md` · BD-2026-027 · CONTRACT_DIFF/ECR-027.yaml · TEST_REPORT/ECR-027.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-028
**Title:** AICoreConfig · ToolDefinition(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-027 Closed
**Change Level:** L2
## Change
ToolDefinition 只读 · migration 000029 · admin client · /ai/tools
## Linked
Spec `ops-tool-definition.md` · BD-2026-028 · CONTRACT_DIFF/ECR-028.yaml · TEST_REPORT/ECR-028.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-029
**Title:** ContentSafety · BlockPolicy(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-028 Closed
**Change Level:** L2
## Change
BlockPolicy 只读 · migration 000030 · admin client · /content-safety/block-policies
## Linked
Spec `ops-block-policy.md` · BD-2026-029 · CONTRACT_DIFF/ECR-029.yaml · TEST_REPORT/ECR-029.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-030
**Title:** ContentSafety · ModerationCase(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-029 Closed
**Change Level:** L2
## Change
ModerationCase 只读 · migration 000031 · admin client · /content-safety/cases
## Linked
Spec `ops-moderation-case.md` · BD-2026-030 · CONTRACT_DIFF/ECR-030.yaml · TEST_REPORT/ECR-030.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-031
**Title:** CrisisCare · CrisisEvent(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-030 Closed
**Change Level:** L2
## Change
CrisisEvent 只读 · migration 000032 · admin client · /crisis/events
## Linked
Spec `ops-crisis-event.md` · BD-2026-031 · CONTRACT_DIFF/ECR-031.yaml · TEST_REPORT/ECR-031.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-032
**Title:** CrisisCare · InterventionOutcome(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-031 Closed
**Change Level:** L2
## Change
InterventionOutcome 只读 · migration 000033 · admin client · /crisis/interventions
## Linked
Spec `ops-intervention-outcome.md` · BD-2026-032 · CONTRACT_DIFF/ECR-032.yaml · TEST_REPORT/ECR-032.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-033
**Title:** AskOperations · HandoffCase(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-032 Closed
**Change Level:** L2
## Change
HandoffCase 只读 · migration 000034 · admin client · /ask/handoffs
## Linked
Spec `ops-handoff-case.md` · BD-2026-033 · CONTRACT_DIFF/ECR-033.yaml · TEST_REPORT/ECR-033.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-034
**Title:** AdminGovernance · PrivacyRequest(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-033 Closed
**Change Level:** L2
## Change
PrivacyRequest 只读 · migration 000035 · admin client · /privacy/requests
## Linked
Spec `ops-privacy-request.md` · BD-2026-034 · CONTRACT_DIFF/ECR-034.yaml · TEST_REPORT/ECR-034.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-035
**Title:** ExploreConfig · StarConfig(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-034 Closed
**Change Level:** L2
## Change
StarConfig 只读 · migration 000036 · admin client · /explore/star-configs
## Linked
Spec `ops-star-config.md` · BD-2026-035 · CONTRACT_DIFF/ECR-035.yaml · TEST_REPORT/ECR-035.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-036
**Title:** ExploreConfig · RhythmConfig(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-035 Closed
**Change Level:** L2
## Change
RhythmConfig 只读 · migration 000037 · admin client · /explore/rhythm-configs
## Linked
Spec `ops-rhythm-config.md` · BD-2026-036 · CONTRACT_DIFF/ECR-036.yaml · TEST_REPORT/ECR-036.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-037
**Title:** ExploreConfig · ImageCardDeck(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-036 Closed
**Change Level:** L2
## Change
ImageCardDeck 只读 · migration 000038 · admin client · /explore/image-card-decks
## Linked
Spec `ops-image-card-deck.md` · BD-2026-037 · CONTRACT_DIFF/ECR-037.yaml · TEST_REPORT/ECR-037.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-038
**Title:** GrowthInsights · ReportTemplate(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-037 Closed
**Change Level:** L2
## Change
ReportTemplate 只读 · migration 000039 · admin client · /growth/report-templates
## Linked
Spec `ops-report-template.md` · BD-2026-038 · CONTRACT_DIFF/ECR-038.yaml · TEST_REPORT/ECR-038.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-039
**Title:** GrowthInsights · FunnelDefinition(只读薄切片)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-038 Closed
**Change Level:** L2
## Change
FunnelDefinition 只读 · migration 000040 · admin client · /analytics/funnel-definitions
## Linked
Spec `ops-funnel-definition.md` · BD-2026-039 · CONTRACT_DIFF/ECR-039.yaml · TEST_REPORT/ECR-039.md
+15
View File
@@ -0,0 +1,15 @@
# ECR-040
**Title:** ExploreConfig · ScaleDefinition(只读投影)
**Status:** **Closed**
**Closed:** 2026-08-08Loop continuous
**Parent:** WAVE0-FROZEN · **Predecessor:** ECR-039 Closed
**Change Level:** L2
## Change
ScaleDefinition 只读 · migration NO · admin-h5 /catalogs
## Linked
Spec `ops-scale-definition.md` · BD-2026-040 · CONTRACT_DIFF/ECR-040.yaml · TEST_REPORT/ECR-040.md