A held (queued) task cannot be stopped and keeps the repo write-lock
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
- 68/100
Rechercherichtung
Build dev 837b2b0 and reproduce the held-task flow with task.max_load forced low. Read internal/session/task_run.go:1264 and task_pressure.go:447, then trace admission, folder locking, and the stop path for queued tasks. Done means the e2e cases pass: stopping a held task marks it stopped immediately, and a not-yet-started held task holds no repo write-lock.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Seen on: dev 837b2b0.
Behaviour
A senior-dev task held by the busy-machine gate read queued · 10m 47s with no reason. /stop then 1 stop it did not stop it (still queued). While it was held, another team's member could not edit the folder: the repo write-lock is held by the other window's still-running PATCH task. Only restarting the engine ended it, and after the restart tasks.json still said running for that task. A held task should be stoppable, and a task that has not started should not hold the folder's write-lock.
Replication
- Build dev 837b2b0 (
git checkout 837b2b0 && make build), or install the dev build withcurl -fsSL https://agentfield.ai/get/devaf | bash. - Use an isolated profile:
export HOME=$(mktemp -d), exportOPENROUTER_API_KEY, default model. - Leave the busy-machine gate ON for this one (step 5 forces it).
- Make a small repo:
R=$(mktemp -d) && cd "$R" && git init -q && printf 'package main\n\nfunc main() {}\n' > main.go && printf 'module demo\n\ngo 1.22\n' > go.mod && git add -A && git commit -qm init. - Force the hold: set
task.max_loadto a value below the machine's current load per core (for example0.01) under/settings. - Ask a manager to hand a change to senior-dev (or run
/taskfor a small change). The task showsqueued. /stop, choose1 stop it: the task staysqueued.- From another conversation in the same repo, ask for a small edit: it is refused with the write-lock line.
Evidence
- Screen:
queued · 10m 47s; after/stop→1 stop it, stillqueued; the other member:the repo write-lock is held by the other window's still-running PATCH task. - tasks.json
"state": "running", the task folder empty, the task branch already checked out, no model calls for 23 minutes. internal/session/task_run.go:1264:graph.governor = newAdmissionGovernor(a.config.TaskMaxLoad, ...); the hold happens at admission (task_pressure.go:447,heldBy = config.KeyTaskMaxLoad).
Guessed cause
A guess from reading the code, not a confirmed diagnosis. The busy-machine hold happens after the folder lock and branch are taken, and the stop path covers only tasks that have started.
Acceptance
- e2e: with the gate forced as above,
/stop→1 stop itends the queued task at once (rowstopped), and another conversation can then edit the repo. - e2e: while a task is held and not started, no write-lock is held on its repo.
Found while writing the public docs; manual text differences are in #1545.
🤖 Generated with Claude Code
- Vorherrschende Sprache
- Go
- Sterne
- 115
- Forks
- 14
- Ø Merge
- 9 Std. 37 Min.
- Gemergte PRs (30 T.)
- 755
Entwicklungsumgebung
Die Einrichtungsdateien dieses Projekts haben wir noch nicht geprüft. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus Agent-Field/CodeAF
-
area:chat bug sev:papercut
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
Agent-Field/CodeAF#1592 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:headless bug sev:critical
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Agent-Field/CodeAF#1566 · 1 zugewiesene Person ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:chat feature
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Agent-Field/CodeAF#1510 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:tests bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Agent-Field/CodeAF#1489 ·
Maintainer antworten meist innerhalb von 1 Tag
-
area:chat bug good first issue sev:papercut
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Agent-Field/CodeAF#1470 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in Agent-Field/CodeAF
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
rossoctl/context-guru#346 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
prime-radiant-inc/evener#2883 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
gravitational/teleport#69805 ·
Maintainer antworten meist innerhalb von 11 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Under Poisson sampling, the `PLDAccountant` composes the inner event both before and after samplingOffen
Schwierigkeit 2/5 Ein halber Tag Anfängerfreundlichkeit 78/100
google/differential-privacy#496 ·