@andyqiu/codeforge 0.3.7 → 0.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,7 +10,7 @@ codeforge 元数据(opencode 不读,由 plugins / workflow-engine 解析)
10
10
  trigger_workflow: parallel-explore
11
11
  allowed_tools: smart_search, repo-map
12
12
  说明:subtask: true 强制走 opencode 子代理通道,不污染主上下文;agent 由 workflow 控制
13
- ADR-0008(gstack 单 markdown skill)/ ADR-0011(Roo Boomerang Tasks
13
+ ADR-0008(gstack 单 markdown skill)/ ADR-0011(Roo Boomerang Tasks)/ ADR-0054(父 session 反馈通道)
14
14
  -->
15
15
 
16
16
 
@@ -85,3 +85,40 @@ planner 会先出 3 路子任务方案,subtasks 并发执行,reviewer 汇总
85
85
  - `agent`: 不指定 —— 由 parallel-explore.yaml 控制 agent 切换
86
86
  - `subtask`: `true` —— opencode 原生字段,强制走子代理通道
87
87
  - `trigger_workflow`: `parallel-explore`
88
+
89
+ ## 反馈通道(ADR-0054)
90
+
91
+ `/parallel` 执行期间,父 session 会看到 4 类结构化文字反馈:
92
+
93
+ 1. **派出**:`🚀 /parallel 已派出 N 个子任务(并发=K)...` + 子任务清单
94
+ 2. **启动**:每个子任务跑起来时 `▶ 子任务 i/N 启动: <id> — <description>`
95
+ 3. **完成**:每个子任务结束时 `<emoji> 子任务 i/N 完成 [status] <id> (Xms, files=Y)`
96
+ - ✅ success / ⚠ need_review / ⏱ timeout / 🗑 cancelled / ❌ failed
97
+ 4. **总结**:所有子任务完成后吐既有的 digest(成功/失败/冲突)
98
+
99
+ 这些文字用 `synthetic+ignored+noReply` 三件套追加到 `session.messages`,
100
+ **用户可见但 LLM 不读**(不污染父 session 上下文)。
101
+
102
+ ### 随时查进度
103
+
104
+ 跑 `/parallel-status` 立刻看当前 inflight subagent:
105
+
106
+ ```
107
+ /parallel-status
108
+
109
+ 📊 当前 2 个 subagent 在跑:
110
+ | # | child id | parent id | agent | 已跑 | 最近工具 |
111
+ |---|----------|-----------|-------|------|----------|
112
+ | 1 | `ses_xxx1...` | `ses_yyy...` | coder | 1m20s | edit |
113
+ ```
114
+
115
+ 或没有时:
116
+
117
+ ```
118
+ ✅ 当前无 inflight subagent
119
+ ```
120
+
121
+ ### 失败降级
122
+
123
+ 如果 opencode SDK 太老(< v1.15)或 `promptAsync` 不可用,notice 会静默 noop(log warn)——
124
+ 此时退化到原有行为(只有最终 digest)。`/parallel-status` 不受影响(纯内存查询)。