同步前后端联调与文档更新
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# Backend TodoList
|
||||
> 文档版本:v1.0
|
||||
> 最后更新:2026-04-02
|
||||
> 最后更新:2026-04-02 08:28:05
|
||||
|
||||
|
||||
## 1. 目标
|
||||
@@ -53,11 +53,11 @@
|
||||
- `channelCode = mini-demo`
|
||||
- `channelType = wechat_mini`
|
||||
|
||||
## 3. P0 必做
|
||||
## 3. P0 已完成
|
||||
|
||||
## 3.0 固定 session 状态语义
|
||||
|
||||
需要 backend 明确并固定:
|
||||
当前 backend 已明确并固定:
|
||||
|
||||
- `finished`
|
||||
- `failed`
|
||||
@@ -76,8 +76,6 @@
|
||||
|
||||
## 3.1 明确“放弃恢复”的后端处理
|
||||
|
||||
这是当前最值得后端配合确认的一点。
|
||||
|
||||
当前小程序本地恢复逻辑已经是:
|
||||
|
||||
- 进入程序检测到未正常结束对局
|
||||
@@ -86,11 +84,11 @@
|
||||
|
||||
现在本地“放弃”只会清除本地恢复快照。
|
||||
|
||||
backend 需要确认的目标语义是:
|
||||
backend 已确认的目标语义是:
|
||||
|
||||
> 玩家点击“放弃恢复”后,这一局是否应同时在业务后端标记为 `cancelled`。
|
||||
|
||||
我建议 backend 采用:
|
||||
当前结论:
|
||||
|
||||
- **是,应标记为 `cancelled`**
|
||||
|
||||
@@ -100,7 +98,7 @@ backend 需要确认的目标语义是:
|
||||
- `/events/{id}/play` 和 `/me/entry-home` 可能一直把它当成可继续的局
|
||||
- 会和小程序本地“已放弃”产生语义分叉
|
||||
|
||||
建议 backend 配合确认:
|
||||
当前 backend 已收口:
|
||||
|
||||
1. `POST /sessions/{id}/finish` 使用 `status=cancelled` 是否就是官方放弃语义
|
||||
2. 如果客户端持有旧 `sessionToken`,恢复放弃时是否允许直接调用 `finish(cancelled)`
|
||||
@@ -108,7 +106,7 @@ backend 需要确认的目标语义是:
|
||||
|
||||
备注:
|
||||
|
||||
- 如果 backend 认可这套语义,小程序侧下一步就可以把“点击放弃恢复”改成同步调用 `finish(cancelled)`。
|
||||
- 小程序侧现在可以把“点击放弃恢复”正式接成同步调用 `finish(cancelled)`。
|
||||
|
||||
## 3.2 保证 start / finish 幂等与重复调用安全
|
||||
|
||||
@@ -119,12 +117,12 @@ backend 需要确认的目标语义是:
|
||||
- 故障恢复后二次补报
|
||||
- 用户重复点击
|
||||
|
||||
backend 需要确认:
|
||||
当前 backend 已确认:
|
||||
|
||||
- `start` 重复调用的幂等语义
|
||||
- `finish` 重复调用的幂等语义
|
||||
|
||||
建议:
|
||||
当前实现:
|
||||
|
||||
- `start`:如果已 `running`,返回当前 session,视为成功
|
||||
- `finish`:如果已进入终态,返回当前 session/result,视为成功
|
||||
@@ -334,3 +332,4 @@ backend 现在最值得先做的,不是扩接口,而是先确认下面 3 条
|
||||
|
||||
> 先把 session 运行态语义、放弃恢复语义和 ongoing session 口径定稳,再继续扩后台配置系统。
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user