codeaf do "" runs a paid job with an empty brief
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 88/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- go
- 領域
- cli, testing-qa
調査の方向性
cmd/codeaf/main.go の readText(1101-1112 行付近)と、1109、1121、1126 行の noGoalGiven チェックから始めます。説明されている再現 codeaf do "" と codeaf do " " を実行してから、unit と e2e のカバレッジを追加または更新します。両方の形式が既存の 1 行の usage とともに非ゼロで終了し、usage の行が書き込まれず、readText が空白の引数を goal がない場合と同じように扱えば完了です。
索引モデルが issue の本文から書いたものです。
説明
Seen on: dev 837b2b0.
Behaviour
codeaf do "" (one empty argument) starts a real, paid run. It exited 0 with stop:"done" and spent $0.057; the crew invented a goal from the repository (it fixed the failing tests). A missing brief should be refused the way a terminal with no piped text is refused, with nothing spent.
Replication
- Build dev 837b2b0 (
git checkout 837b2b0 && make build, binarybin/codeaf), or install the dev build withcurl -fsSL https://agentfield.ai/get/devaf | bash. - Use an isolated profile:
export HOME=$(mktemp -d), exportOPENROUTER_API_KEY, and keep the default model (~deepseek/deepseek-v4-flash-latest, crew on auto). - On a busy machine set
task.max_loadto0(/settings, Tasks) so the busy-machine gate does not hold tasks. - Make a small repo with a failing test:
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, then add any failing_test.gofile and commit it. - Run
codeaf do "" --json; echo exit=$?. - Read the JSON:
stopisdone,spend_usdis non-zero, andgit statusshows edits nobody asked for.
Evidence
- JSON record:
"stop":"done","spend_usd":0.057, exit 0. cmd/codeaf/main.go:1101-1112(readText): withlen(args) > 0it returnsstrings.TrimSpace(strings.Join(args, " ")), so one empty argument becomes an empty goal with no error. ThenoGoalGivencheck (main.go:1109,:1121,:1126) runs only on the no-argument and piped paths.
Guessed cause
A guess from reading the code, not a confirmed diagnosis. readText never checks the trimmed argument text for emptiness, so an empty brief reaches the crew and the planner fills the gap from the repository.
Acceptance
- e2e:
codeaf do ""andcodeaf do " "exit non-zero with the same one-line usage ascodeaf dowith no argument, and no usage row is written (codeaf logsshows no call). - Unit:
readTextreturns thenoGoalGivenerror for an all-blank argument list.
Found while writing the public docs; manual text differences are in #1545.
🤖 Generated with Claude Code
- 主要言語
- Go
- スター
- 115
- フォーク
- 14
- 平均マージ
- 9時間 37分
- マージ済み PR(30日)
- 755
環境構築
このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
Agent-Field/CodeAF のほかの issue
-
area:chat bug sev:papercut
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
Agent-Field/CodeAF#1592 ·
メンテナーはふだん 1 日以内に返信
-
area:chat feature
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
Agent-Field/CodeAF#1510 ·
メンテナーはふだん 1 日以内に返信
-
area:tests bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
Agent-Field/CodeAF#1489 ·
メンテナーはふだん 1 日以内に返信
-
area:chat bug good first issue sev:papercut
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Agent-Field/CodeAF#1470 ·
メンテナーはふだん 1 日以内に返信
-
area:chat bug good first issue sev:papercut
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
Agent-Field/CodeAF#1469 ·
メンテナーはふだん 1 日以内に返信
Agent-Field/CodeAF の issue をすべて見る
似ている issue
-
Remove CAAPFオープンkind/chore kind/cleanup needs-area
難易度 2/5 1〜3時間 初心者へのやさしさ 86/100
rancher/turtles#2848 · コメント 3 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
priority: low 🌱 type: enhancement 💅🏼
難易度 2/5 半日 初心者へのやさしさ 84/100
nebari-dev/llm-serving-pack#199 ·
メンテナーはふだん 3 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
kedacore/keda#8225 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信