docs(05): 补一条硬纪律——合并 worktree 后当场清理(本批 8 个全残留、主人先发现的)+ 假后端进程同样是遗留
This commit is contained in:
1 parent
54e7b35e60
commit
b0b73d063b
2 files changed
+42
-1
No files matched your search
+23
-1
@@ -2041,7 +2041,7 @@ document extracted kind=text chars=10
|
||||
> | 子项 | 状态 | 完成后在本节补什么 |
|
||||
> |---|---|---|
|
||||
> | ① 思考流 —— 「**端点支持**」这条结论 | ✅ **已完成**(本次答复) | — |
|
||||
> | ① 思考流 —— 「**在哪开**」 | ⏳ **在办**(已派子代理追完整来源链:配置 → 请求 → 线格式,并给最小可照做的配置) | 查清后在本节补**具体配置位置 + 文件:行** |
|
||||
> | ① 思考流 —— 「**在哪开**」 | ✅ **已完成**(2026-10-05 补,见本节末「补」) | 已答复,含**一个我们必须一起面对的真缺陷** |
|
||||
> | ② `<p>` 半包 —— **裁定(能修 / 走写入侧规整)** | ✅ **已完成**(本次答复) | — |
|
||||
> | ② `<p>` 规整 —— **实现** | ⏳ **未开始**(同包有在途切片,收工后即派) | 落地后在本节补「**已完成 + commit + 生效范围**」 |
|
||||
|
||||
@@ -2102,3 +2102,25 @@ document extracted kind=text chars=10
|
||||
- 「并行」的**入口**也已做好(设置页「她忙时发消息」第三档,忙时上行 `chat.parallel=true`,**绝不发 interrupt**)。
|
||||
- ⇒ 我们**开始做真机验证**(服务端既已上线,就能验到「两路真的一起跑」)。
|
||||
- 若你们在 v0.66 升版时**动了任何形状**(哪怕一个字段名),**请务必先在这里登记再改** —— 我们按本节开工,形状一改我们就会照着错的东西做出返工。
|
||||
|
||||
|
||||
---
|
||||
|
||||
### 回执十七 · 补(2026-10-05 · 「思考开关在哪开」已查清)
|
||||
|
||||
> **状态**:①「在哪开」= ✅ **已完成**(本节)|② `<p>` 规整 = ⏳ **未开始**(同包刚让出,已立刻派单,落地后回原节补「已完成 + commit」)
|
||||
|
||||
**在哪开 —— 唯一载体是「角色」,没有别的开关**
|
||||
- 文件:`configs/personas/cyrene.yaml` 顶层加 `thinking: {mode: on}`
|
||||
- 面板等价入口:**人格 → 编辑 → 「思考配置 thinking」→ mode 选 `on`**
|
||||
- **项目里没有组级 / env / 会话级思考开关**;组级 `models.json.reasoning` 只是**线形状选择器**,对 anthropic **无效**(`validateReasoning` 会直接拒)
|
||||
- 生效:面板保存 ⇒ 写盘 + **热替换内存 registry** ⇒ **下一 turn 生效**;手改文件需重启/重载
|
||||
|
||||
**⚠️ 但你们看不到 `thinking` 键的真正原因,不是开关**
|
||||
强证据:`history.Message.Thinking`(`internal/runtime/history/types.go:30`)**全仓没有任何写入者** —— `loop.Result` 里没这个字段(`loop/loop.go:66-91`),`finalizeAnthropicStream`(`anthropic_stream.go:224-243`)**直接把思考文本丢了**。
|
||||
⇒ `GET /sessions/{id}/messages` 的 `thinking` **恒缺席** ⇒ **你们那条 REST 证据不能用来推断「思考没开」**。
|
||||
- **思考流的唯一出口** = 实时帧 `thinking.start/delta/end`(只投 `owner` + `admin`,且受角色 `showToUser` 门控制)
|
||||
|
||||
**⚠️ 我们自己的契约文本漂移(我们的账,会修)**
|
||||
`Docs/api-client.md` v0.65 写着「**历史思维链只有** `GET /sessions/{id}/messages` 返回」—— **与实现不符**(没有任何写入者 ⇒ 永远为空)。
|
||||
⇒ 要么改文档、要么补写入侧(把思考文本落进 assistant 消息)。**这是我们的裁决项,定论后回这里补。**
|
||||
@@ -1014,3 +1014,22 @@ PDF · 563 B · 24 字 · 已读入
|
||||
> - **模拟器今天很脆**:连 launcher 都 ANR 过,App 进程被系统重建。**新会话开工前先重启模拟器**。
|
||||
> - **假后端进程还占着 18080 / 18081 / 18083**(`taskkill` 对它们不太好使,重启机器最干净)。
|
||||
> - **我这次又犯了「先怀疑代码、而不是先怀疑自己的测量」**:截图上没看到横幅时,我先去查代码,其实当时只是**待发气泡为 0**(设计如此)。这条纪律写在上一节,**要一直记着**。
|
||||
|
||||
> ### ⚠️ 纪律补记(2026-10-05 上午 · 主人问「为什么项目文件夹里那么多本项目的文件夹」)
|
||||
>
|
||||
> **那些是 git worktree** —— 给并行子代理各开一个独立工作区用(避免两个代理同时改同一棵树)。
|
||||
> **问题不是它们存在,而是我合并完忘了清**:这一批(W28–W33 + FB/FB2)**8 个全都残留下来了**,
|
||||
> 主人先在文件管理器里发现的。上一次(W4–W24)我做过一轮「家务清理」,之后就再没做。
|
||||
>
|
||||
> **⇒ 从今往后写成硬规则:**
|
||||
> 1. **每合并一个 worktree,就 `git worktree remove` / `rm -rf` 它**(别攒着)——**同一次操作里做完**,
|
||||
> 不要留到「以后一起清」。
|
||||
> 2. 清理用 **Git Bash 的 `rm -rf`**(Windows 直接用 git 自带的删会撞 `MAX_PATH`),然后 `git worktree prune`。
|
||||
> 3. **删之前先验**:`git merge-base --is-ancestor <branch> android` —— 只有已并入的才删。
|
||||
> 4. **分支引用保留**(方便回退),只删目录。
|
||||
> 5. 收尾自检:`git worktree list` 应当**只剩主树**、`ls -d /d/Project/Code/Uni/Cyrene-Android-*` 应当**为空**。
|
||||
>
|
||||
> 本次已清:**8 个全删,`git worktree list` 只剩主树**;`feat/W4-*` … `feat/W33-*` 分支全部保留。
|
||||
>
|
||||
> **另一条同源的提醒**:我给子代理开的「假后端」进程(python,占 18080/18081/18083)**也是我留下的** ——
|
||||
> `taskkill` 对它们不太好使,**重启机器最干净**。以后用完就该关。
|
||||
Reference in new issue
Block a user