Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Run ends 'branch kept' with nothing blocking; /land says nothing is waiting

オープン
#1,574 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
55/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
git, go
領域
cli, tooling

調査の方向性

Start with internal/session/task_contract.go:659, task_store.go:1668, and programhold.go:239, then trace the run path into /land using the supplied reproduction. Confirm why a committed task branch becomes kept and whether it is registered for landing. Done means the e2e run merges into main or /land lists and lands it, with no *.orig files on the task branch.

索引モデルが issue の本文から書いたものです。

説明

area:session bug sev:critical

Seen on: dev 837b2b0.

Behaviour

A fan-out run ended branch kept although main had not moved. /land then said nothing is waiting, and the chat claimed that keeping the branch is the normal end. The manual says a run merges its work. The kept branch also carried a stray split/textkit.go.orig. A run with no conflict should land, and a kept branch should always be reachable from /land.

Replication

  1. Build dev 837b2b0 (git checkout 837b2b0 && make build, binary bin/codeaf), 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, and keep the default model (~deepseek/deepseek-v4-flash-latest, crew on auto).
  3. On a busy machine set task.max_load to 0 (/settings, Tasks) so the busy-machine gate does not hold tasks.
  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. codeaf, then /task Split main.go into three files by concern and add a test for each.
  6. When it ends, read the run's landing line and git log main; then /land.

Evidence

  • Landing line branch kept; main unchanged; /land → nothing is waiting.
  • The branch contains split/textkit.go.orig.
  • internal/session/task_contract.go:659 ("conflicted" (branch kept)), internal/session/task_store.go:1668 (no branch kept), internal/session/programhold.go:239 (branch kept, its copy not laid, a /land refused). The exact path taken was not traced.

Guessed cause

A guess from reading the code, not a confirmed diagnosis. A worker commits on the task branch itself, and the merge path then treats an already-committed branch as a kept one; the kept branch is not registered where /land looks.

Acceptance

  • e2e: the replication above ends with the work merged into main (or, if kept, /land lists it and lands it).
  • e2e: no *.orig files reach a task branch.

Found while writing the public docs; manual text differences are in #1545.

🤖 Generated with Claude Code

主要言語
Go
スター
115
フォーク
14
平均マージ
9時間 35分
マージ済み PR(30日)
752

環境構築

このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Agent-Field/CodeAF のほかの issue

Agent-Field/CodeAF の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。