davsclaus opened a new pull request, #29697: URL: https://github.com/apache/camel/pull/29697
A follow-up from r32 of the local-model benchmark (qwen3.6, 7 rounds). From the third identical call of a deterministic tool, the AI tools answer with a short note instead of the full answer. The note said what not to do: "camel_catalog_sample was already called with these same arguments 2 times in this session. Its answer does not change, so it is not sent again: it is in your earlier tool result." It did not say what to do instead. In 3 runs of test-citrus-orders step 1, the model asked `camel_catalog_sample` for "send message", which has no sample, 13 or 14 times in a row. It said sorry for the repeated calls and asked again, until the 25 calls of the step were spent, and it never wrote the test. Step runs of the new set with such a loop (4 or more identical calls): r30 13, r31 5, r32 7, and all 7 failed in r32. **What changes** - The note starts with the next step. Then it says how many times the call was asked, and that the answer is the same each time and is in the earlier tool result. The JSON keys (`repeated`, `tool`, `timesAsked`, `note`) are unchanged. - `camel_catalog_sample`: write the file now with `camel_write_file`; a sample that was not there is not there on the next call either. The write checks the file and says what to change (for a Citrus test: which actions it takes). - `camel_catalog_find`: use a match from the earlier answer, or ask with another term; then write the file. - `camel_catalog_doc`: go on with the options the earlier answer gave and write the file, which checks the options against the catalog. The sentence about `docPage` for a cut answer stays. - The hints of `camel_validate_source` and `camel_eval_expression` now start with the action too. A tool without a hint of its own gets "Go on with the next step of your task." - The camel-jbang-mcp page of the user manual describes the new note. **Tests** - `RepeatedToolCallsTest`: the r32 sample case with the exact note, `camel_catalog_find`, a tool without a hint, and that every hint is written as whole sentences. - camel-jbang-mcp `AuthoringToolsTest`: the repeated-call assertions check the `tool` key instead of the old text. - Run locally: the camel-jbang-core `ai` package, 1021 tests, 0 failures, 1 skipped; camel-jbang-mcp `AuthoringToolsTest`, 14 tests, 0 failures. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_016Y4dDi5iQNgtHrDdz2NpwF -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
