David Marchand <[email protected]> writes: > On Tue, 9 Jun 2026 at 20:26, Aaron Conole <[email protected]> wrote: >> >> Add an iterative tool-use loop to review-patch.py for the Anthropic >> and OpenAI providers. The reviewer can now look up additional context >> from the DPDK source tree when the patch alone is insufficient, >> rather than having to guess at surrounding code, API contracts, or >> function signatures. >> >> Tool calling is enabled by default with a limit of 10 rounds. Pass >> '--tool-rounds 0' to disable it and restore the previous single-shot >> behavior. The round limit prevents runaway cost on large patches >> that when reached will force the model to deliver a final judgement. >> >> Initial tool set: >> - grep Searches for regex across the file system with >> optional path restrictions and case-insensitive >> matches. >> - file_read Line range read of a specific path. >> >> Both tools are limited to the repository root to prevent path >> traversal. Path outputs are relative to the repo root. >> >> The system prompt is extended when tool calling is active to >> encourage the model to use tools only when genuinely needed, >> keeping unnecessary round trips and token costs under control >> and to a minimum. >> >> Internally, _common.py gains send_request_raw() (returning the >> raw response dict) so the tool-calling loops can inspect >> stop_reason / finish_reason before extracting text. >> >> Signed-off-by: Aaron Conole <[email protected]> > > - I got a strange comment that a (valid) sha1 (from a Fixes: tag) was > unknown to the grep tool. > > > - Are those tools returning results on the current working directory? > If so, the result may differ depending on whether you applied the series or > not. > > Did you consider wrapping around "git grep $pattern origin/main" / > "git show origin/main:$file" ? > (determining the correct git reference may be hard..)
I'll post a new revision. I've been testing with expended tools. Some of the errors are a result of not having the git log / git show / awk / sed commands available (model tool usage is *very* sensitive). I've added some safe versions and did quite a bit more testing. The result is quite a bit more promising.

