Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

feat(executor): impl 活性检测替代纯硬墙——转录停更早杀,有增长跑满预算

Geschlossen
#83 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
46/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
python, rust

Rechercherichtung

Start with the AGENTRUN timeout path and the preflight kill-stale code in .dev/flows/self_improve_flow_v2.py, including the referenced transcript and child-process checks. Add harness scenarios in .dev/flows/test/flow_v2_paths.py for stalled and growing transcripts, then document RECURSIVE_STALL_SECS and its relationship to RECURSIVE_IMPL_TIMEOUT in OPERATIONS.md. Done means stalled work is killed early, active work reaches its budget, and the unset-parameter behavior is unchanged.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Summary

impl/fix 等 AGENTRUN 长节点目前只有一条扁平的 timeout_secs 硬墙(self_improve_flow_v2.py:20 自注「watchdog(journal 增长/后代活性)暂由 AGENTRUN timeout_secs 硬墙替代」——本单就是还这笔账)。两个方向的代价都不对:

  • 合法长活被截断:10-03 实证 #78/#68 超时轮转录在满 1h57m 时仍活跃推进(566 轮、尾部在跑 rustc 编译)——工作真实在做,墙到即死,只能靠 engine_error 重派 + L2 会话续跑接续,每轮吃 reaper 周期与台账噪音。
  • 卡死烧满墙:若 agent 挂起(等输入/静默死循环),硬墙要等满整个预算(现 RECURSIVE_IMPL_TIMEOUT=14400s)才肯杀。

提案

给 AGENTRUN(执行器或宿主层)加活性检测:转录停止增长超过 stall 阈值且无活跃子进程 → 提前按 timeout 类击杀(沿用现有 SIGTERM watchdog 优雅刷盘链路);有增长则允许跑满预算。

  • 检测对象:--transcript-out 的 transcript.jsonl size/mtime 增长 + pgrep -f "recursive.*--transcript-out" 子进程活性(preflight 的 kill-stale 已用同款 pattern,.dev/flows/self_improve_flow_v2.py preflight code 段)。
  • stall 阈值可配:env RECURSIVE_STALL_SECS,缺省关闭 = 现状零变化,显式配置才启用。
  • 击杀语义沿用 timeout 类:engine_error + checkpoint/worktree 保留(10-03 起回收豁免)+ keeper 重派 L2 续跑;不引入新的重试类别。

验收

  1. harness(.dev/flows/test/flow_v2_paths.py)新场景:模拟转录停更 → 提前击杀(先红后绿);模拟持续增长 → 跑满预算不被误杀。
  2. 缺省(未配 RECURSIVE_STALL_SECS)行为与现状逐字节一致。
  3. OPERATIONS.md 补参数说明(与 RECURSIVE_IMPL_TIMEOUT 的关系:本参数解决「何时提前杀」,后者解决「预算多少」)。

边界

  • 纯 recursive 侧执行器/宿主改动,不改 agentproc 协议。
  • 不动 D4 语义(timeout 类不原地重试)。
Vorherrschende Sprache
Rust
Sterne
4
Forks
0
Ø Merge
5 Std. 32 Min.
Gemergte PRs (30 T.)
7

Entwicklungsumgebung

  • Enthält ein Dockerfile oder eine Docker-Compose-Datei
  • Keine Pull-Request-Vorlage
  • Kein Beitragsleitfaden

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus jeffkit/recursive

Alle Issues in jeffkit/recursive

Ähnliche Issues

Weitere Issues zu Rust

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.