fix(multi): 子 agent/worker 的事件与 usage 被 NullSink 吞掉——父会话里 worker 是黑盒且成本系统性低估
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- ai-infra-agents
Direzione di ricerca
Start in src/tools/agent.rs: read build_worker_runtime (~596-607) alongside the builder's default in src/runtime/builder.rs:90,265 to see that no event_sink or storage is ever attached, then follow run_worker (~641-683) and the background append_output path (~757-770) to see where outcome.usage/llm_latency_ms are dropped. Done means a worker runtime wired to a CompositeSink carrying a worker_id/task_id prefix, and worker usage folded back into the parent session's cost accounting; runtime visibility of that flow still needs Langfuse (#124), so acceptance here is diff-level per point.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
场景 gap 单(okguitar 提报)· 优先级 P1 · 依赖:无 · 验收:代码 diff 逐点核对;运行时可见性另需 Langfuse(#124)
基线 origin/main = fc29f3d4。
Summary
src/tools/agent.rs:596-607(build_worker_runtime)只设 llm/tools/max_steps/system_prompt/wall_timeout,不调.event_sink→ builder 默认 NullSink(runtime/builder.rs:90,265)。run_worker只取outcome.final_text/finish_label(agent.rs:641-683);outcome.usage生产代码无消费者;后台 worker 仅 append_output 纯文本(agent.rs:757-770);worker builder 也不注 storage → 用量无处落盘。
影响
parallel/团队 worker 卡在第几步、跑多久、烧多少 token,父侧(TUI/SSE/成本面板)全不可见;成本统计只算主 agent。#106 闭环了状态持久化,不含事件/用量回流。
建议
worker 运行时挂 CompositeSink(父 sink + worker_id/task_id 前缀);RuntimeOutcome.usage/llm_latency_ms 回注父会话 Usage/成本。
- Lingua principale
- Rust
- Stelle
- 4
- Fork
- 0
- Merge medio
- 5h 32m
- PR unite (30g)
- 7
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di jeffkit/recursive
-
Difficoltà 3/5 Mezza giornata Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
jeffkit/recursive#141 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 66/100
jeffkit/recursive#138 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
jeffkit/recursive#134 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 30/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di jeffkit/recursive
Issue simili
-
documentation
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
fastrevmd-lab/rustmistmcp#161 ·
-
arch-audit refactor
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
SocketDev/socket-patch#1011 ·
I maintainer di solito rispondono entro 1 giorno
-
bug user-priority/P2
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
I maintainer di solito rispondono entro 1 giorno
-
opencode: an unanswered --version probe launches opencode 2 without per-session service isolationAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
security-advisory
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
MinBZK/regelrecht#1686 ·
I maintainer di solito rispondono entro 1 giorno