归属:335 六幕·第二幕「配置」a端(平台运营后台)消费侧核对
执行人:扣子二号(a端 admin-console)· 2026-09-16 12:5x
判据出处:docs/plans/335-drill-playbook.md §2(只记录核对,不单方面改剧本正文)
证据位:docs/delivery/evidence/335/02-config/(与一号实跑同目录,错位配合)
a端 admin-console 对 brand/site_config 的消费由 src/services/brand.ts 与 src/pages/BrandConfig.tsx 承载:
fetchBrand() → GET /api/miniapp/config/site(顶层打平 + 嵌套 brand 双读源)saveBrand() → PUT /api/miniapp/config/site/brand(body { value: BrandDraft })BrandConfig.tsx(品牌 6 字段表单)+ BrandPreview(C 端生效预览)+ ConfigVersion(版本/回退入口)| 判据项 | a端呈现 | 与一号/剧本一致性 |
|---|---|---|
| 品牌 6 字段界面 | BrandConfig.tsx 六字段齐备(brandName/slogan/tibetanText/themePrimary/logoUrl/heroBgUrl) | ✅ 与一号 B 端读源同源 |
| themePrimary 读源 | brand.ts:204 读源顺序=顶层→嵌套brand→空;normalizeHexColor HEX6 校验 + DEFAULT_THEME_PRIMARY=#9B2915 兜底 | ✅ 与剧本 2.3b 取值侧口径一致(非半截接线) |
| C 端生效呈现 | BrandConfig 保存后冷启动提示 + BrandPreview 实时预览根变量 | ✅ 与 2.3 读源「C 端读到」的界面侧对应 |
| 版本/回退入口 | ConfigVersion 提供版本回退(toVersion)入口 | ✅ 与剧本 2.4/6.2 rollback {"toVersion":n} 口径预留 |
| 保存→发布链路 | PUT /config/site/brand(直接保存)+ POST /admin/config/publish(发布)两条并存 | ⚠️ 见 Q-B 待裁 |
saveBrand 走 PUT /config/site/brand;若 Q-B 裁定收敛,2.1-2.2 a端下册需改写(保存即触发 publish)。GET /config/site 平台级全局配置、不按目的地返回(v1.5.1 勘误)⇒ 2.3 判据 BLOCKED-待澄清:C 端品牌是运行时读 or 构建期注入未定。a端 fetchBrand 读源已兼容嵌套 brand,无论读源路径取哪种均能呈现,不阻断 a端消费侧。_sync_brand 联动 upsert site_config(key='brand') 属 2.2 发布环节(二号命令执行),此处只核对 a端读源侧已兼容该嵌套结构——✅ 已兼容。