# T2B 协作清单
> 文档版本：v2.1
> 最后更新：2026-04-07 22:35:00

说明：

- 本文件由总控维护，写给 backend 线程
- 只保留当前阶段信息
- 历史说明已归档到 [T2B阶段归档](D:/dev/cmr-mini/doc/archive/协作/T2B阶段归档.md)
- 正式架构以 [后台生产闭环架构草案](D:/dev/cmr-mini/doc/backend/后台生产闭环架构草案.md) 为准

---

## 当前阶段

当前 backend 所处阶段：

**活动系统最小成品闭环收口阶段**

当前目标：

1. 活动配置与发布链继续稳定
2. 默认活动与自定义活动统一走发布流
3. 一键测试与一键回归保持稳定
4. 配合 frontend 完成活动列表第一刀回归与小修
5. 接受第一阶段活动模型先按“单地图 + 单路线组 + 单玩法”收口

---

## 当前已完成基线

backend 当前已稳定具备：

- 生产骨架对象落库
- `MapRuntimeBinding -> EventRelease -> launch.runtime` 主链接通
- `EventPresentation / ContentBundle / EventRelease` 接通
- `Event` 默认 active 三元组固化
- publish 默认继承 active 三元组
- 第一阶段活动模型按：
  - 单地图
  - 单路线组
  - 单玩法
  收口推进
- `Bootstrap Demo`
- `一键补齐 Runtime 并发布`
- `一键标准回归`
- `回归结果汇总`
- `当前 Launch 实际配置摘要`
- `前端调试日志`
- 三条标准 demo 活动可用于联调
- 标准 demo 环境下已清理残留 `ongoing session`

---

## 当前任务

### 1. 稳定 demo 与回归环境

- 保持三条标准 demo 活动下无残留 `ongoing session`
- 保持：
  - `Bootstrap Demo`
  - `一键补齐 Runtime 并发布`
  - `一键标准回归`
  可从空白环境重复执行

### 2. 配合活动列表第一刀回归与小修

- 响应前端暴露的：
  - 字段缺失
  - 默认值不稳
  - 状态语义不清
  - 空值兜底不自然
- 保持活动列表页与活动详情页摘要语义一致

### 3. 为准备页地图预览 V1 预留最小字段

后续最小字段方向：

- `preview.mode`
- `baseTiles.tileBaseUrl`
- `baseTiles.zoom`
- `viewport.width / height`
- `viewport.minLon / minLat / maxLon / maxLat`
- `variants[].controls`
- `variants[].legs`
- 可选：`selectedVariantId`

说明：

- 这是准备页用户化增强项
- 不是新主链
- 不为此单独造新地图资源体系

### 4. 为下周运维后台第一期准备边界

- 只整理对象关系、接口边界、默认发布流
- 不开正式后台 UI

### 5. 保持活动模型第一阶段收口

- 当前活动先按：
  - 单地图
  - 单路线组
  - 单玩法
  推进
- 复杂多地图 / 多路线组 / 多玩法活动，后续通过：
  - 活动实例化
  - 组合入口层
  - 组合卡片层
  解决
- 当前不把复杂组合能力硬塞进单个活动对象

---

## 当前不做

- 活动列表第二刀
- 新玩家侧功能
- 奖励 / 成就 / 社交扩展
- workbench 膨胀成正式后台
- 更多新对象扩张
- 复杂后台管理 UI
- 在单个活动对象里提前塞入复杂多地图 / 多路线组 / 多玩法组合语义

---

## 一句话

当前 backend 最重要的事是：

**把活动系统最小成品闭环的后台链路稳住，按单地图/单路线组/单玩法先收模型，并配合 frontend 完成第一刀回归与小修。**
