Merge PR #60: fix synchronize dispatch
This commit was merged in pull request #60.
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
**基于**: PRD-v3.0 §4 四相架构 + architecture-v3.0.md
|
||||
**作者**: 庞统(副军师)🐦
|
||||
**日期**: 2026-05-29
|
||||
**状态**: 实现完成,待 E2E 验证
|
||||
**状态**: ✅ 已完成(E2E 已验证通过)
|
||||
**评审**: 司马懿
|
||||
|
||||
---
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
**日期**: 2026-05-30
|
||||
**作者**: 庞统
|
||||
**状态**: 已修订 v1.1(根据司马懿 2026-05-30 评审意见)
|
||||
**状态**: ✅ 已完成(spawner/ticker/dispatcher 全部 use_main_session=True)
|
||||
**前置**: `01-four-phase-loop.md`(四相循环 E2E 验证暴露 session 爆炸问题)
|
||||
|
||||
---
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
> 版本: v1.1
|
||||
> 日期: 2026-05-30
|
||||
> 作者: 庞统(副军师)
|
||||
> 状态: v1.1 修订(司马懿评审意见已纳入)
|
||||
> 状态: ✅ 已完成(@mention + mention_queue 已实现)
|
||||
> 前置: #02 Main Session + Delegation, #03 Prompt 进化
|
||||
|
||||
---
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
> 版本: v1.2
|
||||
> 日期: 2026-06-03
|
||||
> 作者: 庞统(副军师)
|
||||
> 状态: 待评审(v1.2)
|
||||
> 状态: ✅ 已完成(_startup_recover 7 个方法已实现)
|
||||
> 前置: spawner-monitor-design.md §5 A0(Agent crash 恢复)
|
||||
> 变更: v1.2 两个关键改进:(1) working→pending 保留 current_agent 让同一 agent 接手;(2) reviewing 精确恢复到前置状态而非硬推 done
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# #07 Spawner Acquire-First 设计
|
||||
|
||||
> 状态:#07.1 已实施 ✅ | #07.2 已实施 ✅ | #07.3 设计中
|
||||
> 状态:✅ 已完成(#07.1-#07.2 已实施)
|
||||
> 作者:庞统
|
||||
> 日期:2026-06-01
|
||||
> 评审:司马懿
|
||||
@@ -233,9 +233,9 @@ def _revive_session(agent_id: str) -> bool:
|
||||
pass
|
||||
```
|
||||
|
||||
### 4.5 O5: compact 检测(§24 rotation-only v3)
|
||||
### 4.5 O5: compact 检测(§15 rotation-only v3)
|
||||
|
||||
§24 设计文档:`docs/design/24-compact-detection-fix.md`
|
||||
§15 设计文档:`docs/design/24-compact-detection-fix.md`
|
||||
|
||||
**检测方法**:读 gateway 日志尾部 2MB,按 sessionKey 过滤 `[compaction] rotated active transcript` 事件。
|
||||
如果最近的 rotation 事件在 120s 窗口内 → 视为 compact 循环进行中(可能还在 post-compact retry)。
|
||||
@@ -243,7 +243,7 @@ def _revive_session(agent_id: str) -> bool:
|
||||
旧方法 `_check_recent_compaction_jsonl`(扫描 session jsonl 的 `type=compaction` 事件)保留作为 fallback。
|
||||
|
||||
```python
|
||||
# §24 v3: compact 检测优先用 gateway 日志 rotation 事件
|
||||
# §15 v3: compact 检测优先用 gateway 日志 rotation 事件
|
||||
if result["status"] not in ("idle", "unknown", None):
|
||||
session_key = f"agent:{agent_id}:main"
|
||||
result["recent_compact"] = AgentSpawner._check_compact_in_progress_gateway(
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
> 版本: v1.1
|
||||
> 日期: 2026-06-03
|
||||
> 作者: 庞统(副军师)
|
||||
> 状态: 待评审(v1.1)
|
||||
> 状态: ✅ 已完成(rebuttal on_complete + goal gate 已实现)
|
||||
> 前置: #04 黑板协作(@mention)+ #08 Classify Outcome
|
||||
> 关联: T4 审查体系完善
|
||||
> 变更: v1.1 纳入司马懿评审反馈 — verdict 读 reviews 表 + rebuttal mention spawn 带 on_complete 回调
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
> 版本: v1.1
|
||||
> 日期: 2026-06-03
|
||||
> 作者: 庞统(副军师)
|
||||
> 状态: 待终审(v1.1)
|
||||
> 状态: ✅ 已完成(SSE + TaskModal 自动刷新已实现)
|
||||
> 前置: #04 黑板协作(@mention + comment)
|
||||
> 关联: architecture-v3.0.md T3
|
||||
> 变更: v1.1 纳入司马懿评审反馈 — checkpoint SSE 触发文件修正为 checkpoint_routes.py,SSE payload 统一含 project_id
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# 三国团队工具链与开发流程设计
|
||||
|
||||
> **状态**: v3.3 — #19 上下文四层改造合并 + CI 修复 + A13 修订
|
||||
> **状态**: ✅ 已完成(E2E 验证通过,所有 8 步 PASS)
|
||||
> **作者**: 庞统(副军师)🐦
|
||||
> **评审**: 司马懿(仲达)🗡️
|
||||
> **日期**: 2026-06-06
|
||||
|
||||
@@ -4,6 +4,8 @@ created: 2026-06-10
|
||||
version: v3.0
|
||||
---
|
||||
|
||||
> 状态: ✅ 已完成(Step 1-5 全部合并,394 passed)
|
||||
|
||||
# §1 现状分析(v3.0 更新说明:§1-§13 保留原样,新增 §14-§18,更新 §3/§5/§7)
|
||||
|
||||
# §1 现状分析
|
||||
@@ -950,7 +952,7 @@ handler.post_complete(task_id, agent_id, outcome, db_path)
|
||||
|
||||
---
|
||||
|
||||
## §20. Mail 失败通知机制
|
||||
## §14. Mail 失败通知机制
|
||||
|
||||
### 20.1 背景
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# §24 — Compact 检测方案修正
|
||||
# §15 — Compact 检测方案修正
|
||||
|
||||
> 状态:**v5 已实现**(gateway log + jsonl 配对)
|
||||
> 状态:✅ 已完成(gateway log + jsonl 配对)
|
||||
> 作者:庞统
|
||||
> 日期:2026-06-11(v4),2026-06-13(v5)
|
||||
> 框架:基于 §07 Spawner Acquire-First
|
||||
@@ -342,6 +342,8 @@ async def _handle_pull_request(payload: Dict[str, Any]) -> None:
|
||||
await _handle_pr_opened(payload)
|
||||
elif action == "closed":
|
||||
await _handle_pr_closed(payload)
|
||||
elif action == "synchronize":
|
||||
await _handle_pr_synchronize(payload)
|
||||
|
||||
|
||||
async def _handle_pr_opened(payload: Dict[str, Any]) -> None:
|
||||
|
||||
Reference in New Issue
Block a user