Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

A held (queued) task cannot be stopped and keeps the repo write-lock

Đã đóng
#1,571 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
68/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
go
Lĩnh vực
backend, cli, devtools

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

area:session bug sev:critical

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

  1. Build dev 837b2b0 (git checkout 837b2b0 && make build), or install the dev build with curl -fsSL https://agentfield.ai/get/devaf | bash.
  2. Use an isolated profile: export HOME=$(mktemp -d), export OPENROUTER_API_KEY, default model.
  3. Leave the busy-machine gate ON for this one (step 5 forces it).
  4. 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.
  5. Force the hold: set task.max_load to a value below the machine's current load per core (for example 0.01) under /settings.
  6. Ask a manager to hand a change to senior-dev (or run /task for a small change). The task shows queued.
  7. /stop, choose 1 stop it: the task stays queued.
  8. 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, still queued; 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 it ends the queued task at once (row stopped), 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

Ngôn ngữ chính
Go
Star
115
Fork
14
Merge trung bình
9 giờ 37 phút
Pull request đã merge (30 ngày)
755

Chuẩn bị môi trường

Chúng tôi chưa kiểm tra các tệp thiết lập môi trường của dự án này. Hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của Agent-Field/CodeAF

Tất cả issue của Agent-Field/CodeAF

Issue tương tự

Thêm issue về Go

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.