Claus Ibsen created CAMEL-25358:
-----------------------------------

             Summary: camel-jbang - source editor: Shift+F8 (fix with AI) on a 
line that fails at runtime
                 Key: CAMEL-25358
                 URL: https://issues.apache.org/jira/browse/CAMEL-25358
             Project: Camel
          Issue Type: Improvement
          Components: camel-jbang
            Reporter: Claus Ibsen


In the inner loop a developer runs the app in dev mode, changes a route, and 
something fails: the log shows an exception, the Errors tab lists it, and the 
source editor's heat map shows the failures on the line (✗N). Today *Shift+F8* 
(fix with AI) does nothing there: {{SourceViewer.askAiToFix()}} only acts on a 
line with an inline problem from the editor's static checks (schema, endpoint 
options, Simple). A runtime failure is not an inline problem, so the developer 
has to type the question into the AI panel themselves.

Example (found while recording a demo with a local model): a route sends orders 
over 100 EUR to {{direct:big-orders}}, which no route consumes yet. After the 
reload those orders fail with {{DirectConsumerNotAvailableException}}, the line 
shows failures in the heat map, but Shift+F8 on it does nothing. (The static 
"direct: no route consumes" check is left out of the editor on purpose: it 
reads the whole project and the consumer is often written later; {{camel 
validate}} and the AI's {{camel_validate_source}} run it.)

Proposal:
* *Shift+F8* on a line whose processors failed at runtime (live data from the 
running integration, the error registry) opens the AI panel with a fix 
question, as {{AiFixPrompt}} does for an inline problem: the file and line, the 
exception class and message of the last failure on that line (and how many 
failed), and the line text.
* An inline problem on the line keeps priority; the runtime failure is used 
when there is none.
* The footer hint (Shift+F8 fix with AI) shows on such lines too, so the key is 
discoverable.
* Works the same for YAML, XML and Java routes, and with /write live, so the 
AI's fix is typed in the editor and saved by the developer, and dev mode 
reloads it.

This closes the loop the TUI is built for: run, see it fail, fix with AI, 
reload.

_Claude Code on behalf of Claus Ibsen_



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to