抽出 AgentRun typed 生成执行器#952
Conversation
📊 状态卡片 — reviewer 派出
🤖 controller status banner ⟦AI:AUTO-LOOP⟧ |
📊 状态卡片 — fix 派出
🤖 controller status banner ⟦AI:AUTO-LOOP⟧ |
📊 codex 进展 review-pr952-omnibus-r1 (⏳ 进行中; 已跑 10 min)
|
事故: - #952 (cluster-069 AgentRun typed executor) implement codex 自跑 gh pr create - 默认 base = repo default branch = dev(应该是 auto-refact-dev) - 结果:PR base 错,与 dev CONFLICTING + 误发布到外部 base 修: - SKILL.md hard rule #4 显式列 git push / gh pr create / gh pr edit / git branch - prompts/implement.md 红线节加 'gh pr create' / 'gh pr edit' verbatim 禁令 - 引用 #952 事故记录 ⟦AI:AUTO-LOOP⟧
⟦AI:AUTO-LOOP⟧
…LlmReplyDroppedEvent)+ rebase PR #952 r1 reject blocker: - scheduler timeout 提前 fire → terminal Failed → executor 后续 completion 被忽略 → orphaned pending/loading state 修: - scheduler timeout 改先 dispatch DeferredLlmReplyDroppedEvent(reason=llm_reply_timeout)再 persist terminal Failed - conversation actor 收到 timeout signal,pending/loading state 清理 - late executor completion 仍被 terminal continuation gating 忽略(不再次 emit) - 新增 regression test:scheduler-timeout-before-executor-completion - 49/49 AgentRunGAgentTests pass ⟦AI:AUTO-LOOP⟧
a5dbf60 to
da696aa
Compare
📊 状态卡片 — reviewer 派出
🤖 controller status banner ⟦AI:AUTO-LOOP⟧ |
📊 codex 进展 review-pr952-omnibus-r3 (⏳ 进行中; 已跑 6 min)
|
Codecov Report✅ All modified and coverable lines are covered by tests. @@ Coverage Diff @@
## auto-refact-dev #952 +/- ##
===================================================
+ Coverage 82.83% 83.53% +0.70%
===================================================
Files 998 987 -11
Lines 63092 63559 +467
Branches 8161 8214 +53
===================================================
+ Hits 52261 53094 +833
+ Misses 7304 6906 -398
- Partials 3527 3559 +32
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
📊 codex 进展 prompts-audit-iter57 (⏳ 进行中; 已跑 4 min)
|
📊 codex 进展 implement-iter72-cluster-072-nyxid-stub (⏳ 进行中; 已跑 9 min)
|
📊 codex 进展 implement-iter71-cluster-071-identity-rebuild (⏳ 进行中; 已跑 8 min)
|
📊 codex 进展 implement-iter72-cluster-072-studio-legacy (⏳ 进行中; 已跑 7 min)
|
问题
#947 要求修复 AgentRunGAgent 在 actor turn 内直接执行 metadata enrichment、LLM/tool streaming generation 和 streaming chunk dispatch 的结构问题。r5 共识是保留 AgentRunGAgent 作为唯一 run fact owner,只抽出单一 typed stateless generation executor,accepted-only 的 LlmReplyReadyEvent handoff 继续留在 AgentRunGAgent。
方案
IAgentRunReplyGenerationExecutorPort与AgentRunReplyGenerationExecutor,把 metadata 构建、LLM reply generation、interactive intent capture、streaming chunk/finalize、generation failure classification 移出AgentRunGAgent。agent_run.proto增加ReplyGenerationRequested状态与 typed requested/completed/failed/timed-out continuation payload。AgentRunGAgent改为 admission/drop/stale gate 后持久化 generation requested fact,只做 accepted-only executor handoff;completion/failure/timeout 回到 actor 后再由 actor 持久化 produced/dispatched/failed/cleanup facts。LlmReplyReadyEvent SendToAsync在 AgentRunGAgent 内,不新增 actor type、envelope kind、projection phase 或第二 output executor stage。AgentRunGAgentTests,覆盖 requested handoff、duplicate requested 不二次启动 executor,并保持原有 ready handoff、streaming、metadata、retry、token echo 行为。验证
dotnet test test/Aevatar.GAgents.ChannelRuntime.Tests/Aevatar.GAgents.ChannelRuntime.Tests.csproj --no-restore --nologo --filter AgentRunGAgentTestsbash tools/ci/architecture_guards.shbash tools/ci/test_stability_guards.shdotnet build aevatar.slnx --nologoIMPLEMENT_DONE:cluster-069-agentrun-typed-executor:ok
⟦AI:AUTO-LOOP⟧