Claus Ibsen created CAMEL-26632:
-----------------------------------

             Summary: camel-jbang - AI tools and messages: resource: in a 
ternary, a header copied to itself, a condition under otherwise:, 
variableReceive under parameters:, a Groovy class without its import, and text 
after a Simple function
                 Key: CAMEL-26632
                 URL: https://issues.apache.org/jira/browse/CAMEL-26632
             Project: Camel
          Issue Type: Improvement
          Components: camel-jbang, camel-yaml-dsl, camel-groovy, 
camel-jbang-mcp, camel-core
            Reporter: Claus Ibsen
             Fix For: 4.24.0


Follow-ups from the r27 run of the local-model benchmark (qwen3.6, 7 rounds):
* The Simple ternary hint built its suggestion from the model's text and kept a 
quoted 'resource:file:order.json' inside the function. A function's result is 
never loaded as a resource, so the body became the text 
resource:file:order.json. The hint now writes resource:file: before the 
function, and a resource: that a function gives is refused at write time (it 
was accepted 5 times in r25 to r27 and failed every time when the route ran).
* A header copied to itself that no step sets (setHeader sku with ${header.sku} 
in a split) copies null: the HTTP call then had no SKU (98 errors). It is now 
reported at write time, with what to read instead (${body[sku]}).
* otherwise: written as a list that holds a second condition got a repair and 
the note "The YAML shape needs no change from you", while the block still had 
errors; the model sent the same edit 16 times. The schema hint now says that a 
second condition is another item of when: and that otherwise: holds only 
steps:, and the note is not given while the repaired lines still have errors.
* variableReceive (or pattern) under parameters: of a to: got "jms: Unknown 
option 'variableReceive'". The message now says that it is a key of the to:, 
next to uri:.
* camel-groovy: a class that is on the classpath but not imported (new 
JsonSlurper() without import groovy.json.JsonSlurper) got "it is not on the 
classpath. Add the library that provides it as a dependency". It now says which 
import to add. A class that is really missing keeps the old message.
* camel-core: Simple text after the closing brace of a function 
(${body.lines}.size() > 0) got "operators and values must be separated by a 
space". The parser hint now says that the method goes inside the braces: 
${body.lines.size()}. At write time, a filter written right after a function 
(${body}?.?[...]) and an unknown function with a nested one (${size:${body}}, 
which only failed when the route ran) are now caught.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to